これは、これに対するフォローアップの質問のようなものです。Freeform を介して Web フォーム データを MS Dynamics 2011 に送信しようとしています。データを MS Dynamics に送信する拡張機能があり、必要に応じてフィールドを追加できるように構築されています。そのデータを収集します。
そのスレッドの何人かの辛抱強い人々と、私の側でのいくつかの調査のおかげで、ルックアップ値には数値ではなく、一意の ID (GUID) があることがわかりました。ルックアップ値の GUID を特定する方法もわかりました。しかし、その後、フィールド データを MS Dynamics にマップするために GUID を使用して配列を構築しようとしたとき、データが取り込まれませんでした。
コードの一部を次に示します。
$configData['fieldMapping'] = array(
'first_name' => array('name' => 'firstname', 'value' => null),
'last_name' => array('name' => 'lastname', 'value' => null),
'email' => array('name' => 'emailaddress1', 'value' => null),
'email_address' => array('name' => 'emailaddress1', 'value' => null),
'phone' => array('name' => 'telephone2', 'value' => null),
'credit_history' => array(
'name' => 'new_selfreportedcredithistory',
'value' => array(
'excellent' => 100000000,
'Good' => 100000001,
'Fair' => 100000002,
'Poor' => 100000003,
'Bad' => 100000005,
)
),
'campaign_name' => array(
'name' => 'campaignid',
'value' => array(
'USDA' => 'B53EA05A-2C29-E211-8C3A-78E3B5101ED7',
'Radio Ads' => '8F254BB4-5575-E211-8AAB-78E3B510ED7',
'Postcards' => '4F8E216D-9C1D-E211-8DA=-78E3B508542D',
)
),
'how_referred' => array('name' => 'leadsourcecode', 'value' => null)
);
GUID を引用符で囲んでいないのは、引用符で囲んでいないと、Dreamweaver から PHP 構文エラーの警告が表示されたためです。ただし、フォームの 1 つをテストして、フォーム内のテキスト値 (左側の列) の 1 つを返し、その GUID がここで識別されている場合、そのフィールドはまだマッピングされていません。credit_history フィールドは問題なくマッピングされていますが、ルックアップ フィールドではなく、オプション セット フィールドに入ります。オプション セットのフィールド マッピングをコピーしたのは、機能するように見えたからです。これは、フォームが送信する可能性のあるものを、MS Dynamics がそのフィールドに対して認識する値に「変換」して、データを入力する方法を知っている配列を構築していました。 .
なぜこれが機能しないのかについて、誰か考えがありますか? 代わりに、私の質問はトラブルシューティングするのに少し曖昧ですか? (拡張機能の完全なコードを提供していないことは承知しています。拡張機能に別の変更を加えるために、このグループを再び雇う予定であり、これらのフィールドのマッピングを依頼することもできますが...私は'できれば、自分でそれを理解できるようにしたいのですが。)