2011-05-23 68 views
6

我有一个自定义日期字段在Salesforce的帐户:LastCheckedDate(API名称:LastCheckedDate__c)Salesforce的API查询不显示自定义字段

我试图使用Salesforce的企业API基于该查询账户领域。它返回结果,我可以在查询的WHERE部分使用自定义字段,但是我无法让它实际显示结果中自定义字段的值。

这PHP代码应该让我的ID,姓名,并已在2011年被检查的任何帐户的LastCheckedDate:

$query = "SELECT Id,Name,LastCheckedDate__c FROM Account WHERE LastCheckedDate__c > 2011-01-01"; 
$response = $salesforceConnection->query($query); 

foreach ($response->records as $record) {    
    print_r($record); 
} 

它正确地只返回已在2011年检查账户,但结果没有按不包括该自定义字段的值:

stdClass Object 
(
    [Id] => 0015000000abcdefgh 
    [Name] => Bob's Widget Factory 
) 

如何获取它以在结果对象中包含LastCheckedDate?

+0

我遇到同样的问题。我有一个更新日期WSDL,我知道我的代码是正确的,因为它在TEST中完美工作。移动到Prod,更新了WSDL,它只是不显示自定义字段。 – 2013-12-06 17:03:37

回答

4

好像你遇到了同样的问题,就像在这个问题中提到的那样:SalesForce.com: Retrieve custom fields via PHP

这与您如何解析返回的数据有关。

+4

啊......这不是我解析结果的方式,但是这个线程指出了我正确的方向 - 我需要用新的自定义字段生成更新的enterprise.wsdl.xml。谢谢! – NChase 2011-05-23 23:28:05

7

更新您的wsdl文件。因此,您无法选择或更新不在wsdl文件中的任何字段。

+0

你对答案的回答有什么改进?这应该是一个评论,而不是一个答案 – Yaroslav 2012-10-06 13:10:43

+0

其实,这是非常有用的。重新生成我的wsdl文件后,我的自定义字段开始显示不仅仅是Ids。 ref:https://github.com/developerforce/Force.com-Toolkit-for-PHP/issues/52 – 2016-04-27 22:01:53