Обновите запись в ZohoCRM, используя PHP SDK на основе ID - PullRequest
0 голосов
/ 12 сентября 2018

Я интегрирую PHP SDK ZohoCRM с нашим приложением Laravel 5 (https://github.com/zoho/zcrm-php-sdk), но у меня возникают проблемы при выполнении простого обновления записи.

Я использую этот код для извлечения записи и ее обновления -

$record = \ZCRMRecord::getInstance('Products', $entityId);
$data = $record->getData();
if (count($data) > 0) {
       $record->setFieldValue('Product_Name', 'Test Update');
       $response = $record->update();
}

Однако $data - это всегда пустой массив.

Я получил переменную $entityId, выбрав записи из модуля «Продукты» и сохранив значение из метода $record->getEntityId(), например

$records = \ZCRMModule::getInstance('Products')->getRecords()->getData();
if (count($records) > 0) {
       foreach ($records as $record) {
           $id = $record->getEntityId();
           // store id in RDS...
       }
}

Я не уверен, что мой метод получения записи для обновления неправильный или мой метод получения идентификатора записи неправильный.

С уважением,

Phil

Ответы [ 2 ]

0 голосов
/ 14 сентября 2018

Используйте приведенный ниже код для обновления записи

$apiResponse=ZCRMModule::getInstance('Products')->getRecord($entityId);
$record = $apiResponse->getData(); 
$record->setFieldValue('Product_Name', 'Test Update');
$response = $record->update();
0 голосов
/ 13 сентября 2018

Оказывается, код верен - проверка, содержит ли $record->getData() какие-либо элементы, не нужна (она всегда будет пустой).

Кроме того, хотя я столкнулся с ошибками из-за этой проблемы при использовании SDK с PHP 7.2 - https://github.com/zoho/zcrm-php-sdk/pull/14

Требуется ручное изменение класса ZohoHTTPConnector, пока этот запрос извлечения не будет объединен.

...