SuiteCRM, как получить все контакты, связанные с учетной записью

У меня проблема с получением всех контактов, связанных с учетной записью, с помощью REST API v4_1. Я использую SuiteCRM.

Как я вижу по структуре таблицы, есть таблица account и accounts_contacts, которая содержит идентификатор для контактов. Я использую этот код для получения всех учетных записей, связанных с зарегистрированным пользователем.

$get_entry_parameters = array
(
//session id
'session' => $this->session_id,

//The name of the module from which to retrieve records
'module_name' => "Accounts",

//The ID of the record to retrieve.
//'id' => NULL,

//Where conditions without "where" keyword
'query' => "accounts.assigned_user_id='" . $this->user_id . "'",

//Sort result by
'order_by' => NULL,

//offset
'offset'  => 0,

//The list of fields to be returned in the results
'select_fields' => array( 'id'),

//optional
'link_name_to_fields_array' => array(array()),

//Max number of results to list
'max_results' => 20,

'deleted' => false
);

$response = $this->call("get_entry_list", $get_entry_parameters);

Тогда мне бы хотелось, чтобы для каждой из этих учетных записей были найдены соответствующие контакты, но я не знаю, как мне это сделать.

0

Решение

Я не знаю, что пошло не так, но этот код теперь производит то, что я хочу. Я не правильно определил значение возвращаемых полей для связанных данных. Я должен был определить их в массиве. Я думаю, это была единственная проблема. Если кто-то еще обнаружит другую проблему, дайте мне знать, так как я только что узнал о сахарных / сюитных crms и где что-то подходит.

function account_data()
{
$get_entry_parameters = array
(
//session id
'session' => $this->session_id,

//The name of the module from which to retrieve records
'module_name' => "Accounts",

//The ID of the record to retrieve.
//'id' => NULL,

//Where conditions without "where" keyword
'query' => "accounts.assigned_user_id='" . $this->user_id . "'",

//Sort result by
'order_by' => NULL,

//offset
'offset'  => 0,

//The list of fields to be returned in the results
'select_fields' => array('id', 'name'),

//optional
'link_name_to_fields_array' => array(
array(
'name' => 'contacts',
'value' => array('id', 'name')
)
),

//Max number of results to list
'max_results' => 20,

'deleted' => false
);

return $response = $this->call("get_entry_list", $get_entry_parameters);
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]