【发布时间】:2017-07-12 14:54:28
【问题描述】:
理想情况下,当我通过 PHPToolkit 在 salesforce 上执行单个 SOQL 查询时,我没有任何问题。
示例代码:
$querySourceQueues = "SELECT Id, AccountId, CaseNumber FROM Case WHERE CaseNumber = '00491258'";
$result = $mySforceConnection->query($querySourceQueues);
if ($result->size > 0) {
foreach ($result->records as $case) {
$CaseId = $case->Id;
$AccountId = $case->AccountId;
$CaseNum = $case->CaseNumber;
echo "Case ID: ".$CaseId."<br>";
echo "Account ID: ".$AccountId."<br>";
echo "Case Number: ".$CaseNum."<br>";
}
} else {
echo "No Result";
}
但是当我做嵌套 SOQL 查询时,我不知道如何从子查询的结果中提取数据。下面是我的代码:
$querySourceQueues2 = "SELECT Id, AccountId, CaseNumber, (SELECT ActivityDate, Subject, Description FROM ActivityHistories ORDER BY ActivityDate DESC, LastModifiedDate DESC LIMIT 500) FROM Case WHERE CaseNumber = '00491258'";
$result2 = $mySforceConnection->query($querySourceQueues2);
if ($result->size > 0) {
foreach ($result2->records as $case) {
////No Error in this part
$CaseId = $case->Id;
$AccountId = $case->AccountId;
$CaseNum = $case->CaseNumber;
echo "Case ID: ".$CaseId."<br>";
echo "Account ID: ".$AccountId."<br>";
echo "Case Number: ".$CaseNum."<br>";
////I got the error on this part
$ActivityDate = $case->ActivityHistories->ActivityDate; // Line 66
$Subject = $case->ActivityHistories->Subject; // Line 67
$Description = $case->ActivityHistories->Description; // Line 68
echo "Activity Date: ".$ActivityDate."<br>";
echo "Subject: ".$Subject."<br>";
echo "Description: ".$Description."<br>";
}
} else {
echo "No result.";
}
这是我从上面得到的错误代码。
注意: 未定义属性:C:\xampp\htdocs\automation\tcse\engine\nested_query.php 中的 stdClass::$ActivityDate 在第 66 行
注意: 未定义属性:stdClass::$Subject in C:\xampp\htdocs\automation\tcse\engine\nested_query.php 在第 67
行注意: 未定义属性:stdClass::$Description in C:\xampp\htdocs\automation\tcse\engine\nested_query.php在第 68
行
当我执行 echo print_r($result2->records); 这就是我得到的结果:
Array (
[0] => stdClass Object (
[Id] => 5000B00000cfiq2QAA
[AccountId] => 001U000000aBVbIIAW
[ActivityHistories] => stdClass Object (
[done] => 1 [queryLocator] => [records] => Array (
[0] => stdClass Object (
[Id] => [ActivityDate] => 2017-07-06
[Description] => This is a system-generated email...
[Subject] => Request has been updated
)
[1] => stdClass Object (
[Id] => [ActivityDate] => 2017-07-06
[Description] => This is a system-generated email...
[Subject] => Email: Request has been updated
)
) [size] => 2
)
[CaseNumber] => 00491258
)
) 1
我的目标是获取 ActivityHistories 中的数据(ID、描述和主题),以便我可以将其分配给变量并继续我的项目。我需要你们的帮助。
【问题讨论】:
标签: php salesforce