SalesforceWSDLAPIでPHPを使用しています。
私が行っているのは、いくつかのことを行うPHPページです。
- WSDLを介してSalesforceにインフォームを作成し、IDを返すようにします。
作成されたIDを使用して変数に割り当て、WSDLを介してSalesforceにレコードを更新できるようにします
function createRecord($ Object、$ FieldData){// Salesforceに接続して魔法をかけ、$Idを返します。}
$ newRecord = createRecord();
$ record-> contact__c = $ newRecord; $ sfConn-> update(array($ record)、'キャンペーン');
つまり、$ newRecordは関数createRecordから値を使用して割り当てを取得すると想定され、createRecordは十分な速度で処理されないため、$newRecordはNULLを使用して割り当てを取得します。
「$record->contact__c」が呼び出される前にcreateRecordの実行を確実に終了させるためにできることはありますか?
createRecord($ Object、$ FieldData)内にこのコードがあります
$sfConn2 = new SforceEnterpriseClient();
$sfClient = $sfConn2->createConnection(WSDL_FILE);
$sfLogin = $sfConn2->login(SF_UN, SF_PW);
$newRec = new stdclass();
foreach ($FieldData as $key => $value){
$newRec->$key = $value;
}
$createResponse = $sfConn2->create(array($newRec), $Object);
if($createResponse->success == 1){
return $createResponse->id;
}else{
return FALSE;
}
したがって、最も可能性の高い原因は、createRecord内の接続の切断などの例外があることです。
その場合、createRecordを$ newRecord変数に割り当てるときに、createRecord関数内または関数外で処理する必要がありますか?