Hopefully someone here can help. We are trying to synchronize accounts between salesforce.com and an internal system. Salesforce.com is the master, so when an account is created/edited i have an outbound message with account information sent to the internal system. That is working ok.
Now i'm trying to initiate an upsert back to Salesforce.com with the unique ID for the internal system record. The problem is, what i really want to be able to do is "update the internal_system_id where the salesforce_id = x" - since the internal system ID is created after the salesforce account is created. I thought i could accomplish like this:
Code:
$results = $client->upsert("Id", $sObjects);
This fails when i try to execute a test using this CSV file with one record:
Code:
"0018000000MuZf8AAF","48954_CA"
"0018000000MuZf8AAF" is the salesforce ID & "48954_CA" is the internal system id.
A var dump of $sObjects before the upsert looks like this:
Code:
array(1) {
[0]=>
object(SObject)#6 (3) {
["type"]=>
string(7) "Account"
["fields"]=>
array(2) {
["Id"]=>
string(18) "0018000000MuZf8AAF"
["Customer_Code__c"]=>
string(8) "48954_CA"
}
["any"]=>
string(72) "<Id>0018000000MuZf8AAF</Id><Customer_Code__c>48954_CA</Customer_Code__c>"
}
}
The custom field "Customer_Code__c" is Text(8) (External ID) (Unique Case Insensitive).
What am i doing wrong?
Bookmarks