• SieGeL2k9
  • NEWBIE
  • 0 Points
  • Member since 2009

  • Chatter
    Feed
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 1
    Questions
  • 1
    Replies

Hi everbody,

I'm currently developing a synchronisation script with the PHP Toolkit 13.0 do have all major data from Salesforce available in our local Oracle Database.

So far everything works, however today I've tried to sync the "LeadHistory" object from Salesforce. This object contains two fields "oldvalue" and "newvalue", both are defined as "xs:anyType" in the WDSL file.

 

As long as there is no content in these fields the PHP API returns them as empty fields, which is correct behavour.

 

However as soon as there is any content available in these fields, the "$queryResult->records as $record" call did not contain these fields anymore? I was not able to find them in the result set returned from the API. The dataloader 15 exports these fields without problems.

 

I've checked the record where the oldvalue/newvalue fields are missing, and in the Dataloader output it is clearly shown that there is content in these fields.

 

Here is the code snippet to retrieve the data:

 

$response = $sforce->query("SELECT Id,IsDeleted,LeadId,CreatedById,CreatedDate,Field,OldValue,NewValue FROM LEADHISTORY");
$queryResult = new QueryResult($response);
if ($queryResult->size > 0) {

  foreach($queryResult->records as $record) {

      // Here the code extracts the data from $record->fields. And here are also the fields missing as soon as they contain data

   } 

}

 

If anyone has any idea how to solve this I would be glad to hear from you. For now I have to skip the LeadHistory object as the necessary informations are not available anyway. IMO the oldvalue/newvalue fields are used in the Leadhistory object whenever a Lead status change is performed, and these infos are of course necessary to have a real history available.

 

 

Hi everbody,

I'm currently developing a synchronisation script with the PHP Toolkit 13.0 do have all major data from Salesforce available in our local Oracle Database.

So far everything works, however today I've tried to sync the "LeadHistory" object from Salesforce. This object contains two fields "oldvalue" and "newvalue", both are defined as "xs:anyType" in the WDSL file.

 

As long as there is no content in these fields the PHP API returns them as empty fields, which is correct behavour.

 

However as soon as there is any content available in these fields, the "$queryResult->records as $record" call did not contain these fields anymore? I was not able to find them in the result set returned from the API. The dataloader 15 exports these fields without problems.

 

I've checked the record where the oldvalue/newvalue fields are missing, and in the Dataloader output it is clearly shown that there is content in these fields.

 

Here is the code snippet to retrieve the data:

 

$response = $sforce->query("SELECT Id,IsDeleted,LeadId,CreatedById,CreatedDate,Field,OldValue,NewValue FROM LEADHISTORY");
$queryResult = new QueryResult($response);
if ($queryResult->size > 0) {

  foreach($queryResult->records as $record) {

      // Here the code extracts the data from $record->fields. And here are also the fields missing as soon as they contain data

   } 

}

 

If anyone has any idea how to solve this I would be glad to hear from you. For now I have to skip the LeadHistory object as the necessary informations are not available anyway. IMO the oldvalue/newvalue fields are used in the Leadhistory object whenever a Lead status change is performed, and these infos are of course necessary to have a real history available.