0

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,
);
4

2 に答える 2

1

suiteCRM に組み込まれている set_entry と Bean の関係を使用して、qb_studentid と accoutingclass をプルし、別の関数を使用してそれらを隠しフィールドとして設定し、実際の API 呼び出しで get entry を使用してプルしたときに配列に表示されるようにしました。大規模な配列。このファイルはロジック フックを使用して呼び出され、支払いが同期された後にすべての qb_student ID がプルされるようにします。これについてもう少し詳細が必要な場合は、お気軽にお知らせください。私はしばらくこの問題に苦しんでいましたが、ここでも、sugarcrm または suitecrm コミュニティ フォーラム以外からも回答がありません。どちらかといえば、これは回避策です。

于 2015-01-08T16:42:13.100 に答える