function queryRecord($type, $filter, $field, $sortType, $sortField, $pgSize)
{
    $queryParams = new VMware_VCloud_SDK_Query_Params();
    if (isset($filter)) {
        $queryParams->setFilter($filter);
    }
    if (isset($field)) {
        $queryParams->setFields($field);
    }
    if (isset($sortType)) {
        if (isset($sortField) && $sortType == "a") {
            $queryParams->setSortAsc($sortField);
        } else {
            $queryParams->setSortDesc($sortField);
        }
    }
    if (isset($pgSize)) {
        $queryParams->setPageSize($pgSize);
    } else {
        $queryParams->setPageSize(128);
    }
    // look for record types only
    $queryFormat = "Records";
    $qr = "query{$queryFormat}";
    $recObj = $GLOBALS['sdkQuery']->{$qr}($type, $queryParams);
    $records = $recObj->getRecord();
    return $records;
}
}
// parameters validation
if (!isset($server) || !isset($user) || !isset($pswd)) {
    echo "Error: missing required parameters\n";
    usage();
    exit(1);
}
// login
$service = VMware_VCloud_SDK_Service::getService();
$service->login($server, array('username' => $user, 'password' => $pswd), $httpConfig);
// create an SDK Query object
$sdkQuery = VMware_VCloud_SDK_Query::getInstance($service);
$qm = "queryRecords";
$type = "adminVM";
$params = new VMware_VCloud_SDK_Query_Params();
$params->setSortAsc('name');
$params->setPageSize(128);
$recsObj = $sdkQuery->{$qm}($type, $params);
// table to store output
$tbl = new Console_Table();
$tbl->setHeaders(array('VirtualMachine', 'vApp', 'vAppTemplate', 'vCenter Server', 'VM MoRef', 'ChainLength'));
// array to store URL pages
$pageUrls = array();
// retrieve all pages
getPages($recsObj->get_href());
foreach ($pageUrls as $url) {
    // GET operation on URL
    $record = $service->get($url);
    // query all adminVM using query service
    foreach ($record->getRecord() as $vm) {
        if ($vm->get_status() == "UNRESOLVED") {