получение пустого ответа от сервера RETS с использованием PHrets

Я подключился к серверу RETS, и я могу получить все метаданные, используя функции в библиотеке PHrets, такие как GetMetadataResources, GetMetadataClasses и все поля в каждом классе, но я не могу получить данные с этого сервера с помощью SearchQuery, я пытался всеми способами, но не повезло.

<pre>
    /* Initialize Object */
 require("PHRets_CREA.php");
require("credentials.php");
$rets = new PHRets();
$connect=$rets->Connect($RETSURL, $RETSUsername, $RETSPassword);
    /* Connect */
    /* Query Server */
    if ($connect) {
        echo "Connected";
$resources = $rets->GetMetadataResources();
foreach ($resources as $resource) {
        echo "+ Resource {$resource['ResourceID']}\n";
        $classes = $rets->GetMetadataClasses($resource['ResourceID']);
        foreach ($classes as $class) {
                echo "   + Class {$class['ClassName']} described as " . $class['Description'] . "\n";
        $rets_metadata = $rets->GetMetadata($resource['ResourceID'],$class['ClassName']);
        foreach ($rets_metadata as $field) {
            echo "    + Field: {$field['SystemName']} ({$field['DataType']})\n";
        }
        }
}
/*
$search = $rets->SearchQuery("Property","RE_1","(L_ListingDate=2010-03-02-2010-03-03)");
while ($listing = $rets->FetchRow($search)) {
  echo $listing['L_ListingID'];
        }*/
$search = $rets->SearchQuery("Property","ResidentialProperty","(ListDate=1990-01-01+)",
array( "Count" => 1, "Format" => "COMPACT", "Limit" => "2", "Offset" => "2",
"RestrictedIndicator" => "****", "StandardNames" => 1 )
);
echo "data";
print_r($search);
while ($listing = $rets->FetchRow($search)) 
 echo "{$listing['L_City']}";exit; 
}
$rets->FreeResult($search);
}</pre>

Thanks

person Maneesha Yallanti    schedule 05.12.2015    source источник


Ответы (2)


Сначала убедитесь, что имя вашего ресурса и класса указано правильно. Используйте http://retsmd.com для подтверждения. Ресурсом обычно является «Собственность», но проверьте имя вашего класса, которое у вас есть в настоящее время, на «ResidentialProperty». Это может быть «RE_1», который у вас был в приведенном выше коде.

Затем измените свой SearchQuery. Возможно, используйте меньше параметров в массиве параметров и попробуйте удалить стандартные имена и использовать системные имена по умолчанию.

Что-то вроде этого:

$search = $rets->SearchQuery("Property","RE_1","(L_ListingDate=1990-01-01+)", array("Limit" => "10"));
person Andrew Briggs    schedule 05.12.2015
comment
Спасибо за ответ. Я уже проверил в retsmd.com, что и ресурсы, и имена классов верны, хотя я использовал поиск выше запрос я получаю пустой массив для print_r($search), но данные есть на сервере RETS - person Maneesha Yallanti; 07.12.2015

Пожалуйста, попробуйте это, мы получаем все активные свойства для этого.

$search = $rets->SearchQuery("Свойство","1","(135=1990-01-01+),(246=A)");

person Dexter Paul Lirio    schedule 22.12.2015