我正在尝试使用SugarCRM的传统REST API提取个人计费记录和一些特定字段。 我正在SuiteCRM上工作,他们使用相同的传统REST API调用。 我还有另一个与此类似的foreach,它确实工作得很好。 唯一的问题是,这个只会返回请求的信息,而不是我link_name_to_fields_array调用的关系。
提前谢谢。 如果需要更多信息,请告诉我。
我在这里遵循了这个例子
我的代码如下
foreach ( $uids as $uid ) {
//retrieve records -----------------------------------
$get_entries_parameters = array(
//session id
'session' => $session,
//The name of the module from which to retrieve records
'module_name' => 'fs_payments',
//An array of SugarBean IDs
'ids' => array(
$uid
),
'query' => "",
'order_by' => "",
'offset' => "0",
'link_name_to_fields_array' => array(
array(
'name' => 'fs_billing_fs_payments_1',
'value' => array(
'first_name',
'qb_studentid'
),
),
),
);
刚刚做了一个 API 调用来获取所有链接,我确实确认了链接名称应该是它应该是什么,并且没有理由它应该返回一个空数组。
Linked Fields for fs_payments
fs_billing_fs_payments_1
[name] -> 'fs_billing_fs_payments_1'
[type] -> 'link'
[relationship] -> 'fs_billing_fs_payments_1'
[module] -> 'fs_billing'
[bean_name] -> 'fs_billing'
有没有人有比这更好的例子(也如下所示),因为在我看来它不是很有帮助,因为 CRM 中的真实关系/链接具有诸如"fs_billing_fs_payments_1"之类的名称,并且似乎无法像示例所示那样工作。
$get_entries_parameters = array(
//session id
'session' => $session_id,
//The name of the module from which to retrieve records
'module_name' => 'Accounts',
//An array of record IDs
'ids' => array(
'14b0c0ca-3ea2-0ee8-f3be-50aa57c11ee7',
),
//The list of fields to be returned in the results
'select_fields' => array(
'name',
'billing_address_state',
'billing_address_country'
),
//A list of link names and the fields to be returned for each link name
'link_name_to_fields_array' => array(
array(
'name' => 'email_addresses',
'value' => array(
'email_address',
'opt_out',
'primary_address'
),
),
),
//Flag the record as a recently viewed item
'track_view' => true,
);
我能够使用suiteCRM中内置的set_entry和bean关系来拉动qb_studentid和 accoutingclass 并使用单独的函数将它们设置为隐藏字段,以便在实际 API 调用中使用 get 条目拉取以获取大数组时,它们将显示在数组中。使用逻辑挂钩调用此文件,以确保拉取所有qb_student ID同步付款后。如果您需要更多详细信息,请随时告诉我。 我在这个问题上挣扎了一段时间,仍然没有得到任何不在这里的回答,也没有在 sugarcrm 或 suitecrm 社区论坛中得到答案。 如果有的话,这更像是一种解决方法。
您在link_name_to_fields_array
中传递了错误的链接名称。
您的链接字段名称fs_billing_fs_payments_1
但您正在传递fs_billing_fs_payments_1_c
。