在以下代码段中,如果父帐户ID匹配,我正在尝试获取子帐户。它会按预期填充帐户名称,例如ABC Title Company
或Test Tile Co.
,但会将帐户ID填充为undefined
。
我XRM Service Toolkit用于在CRM 2016上检索子帐户的详细信息。我不知道在帐户ID出现问题时我会仔细检查属性的拼写但没有任何好处。
functiongetChildAccounts(pAccountId)
{
var query =
"<a:ColumnSet>" +
"<a:AllColumns>false</a:AllColumns>" +
"<a:Columns xmlns:b='http://schemas.microsoft.com/2003/10/Serialization/Arrays'>" +
"<b:string>name</b:string>" +
"<b:string>accountid</b:string>" +
"</a:Columns>" +
"</a:ColumnSet>" +
"<a:Criteria>" +
"<a:Conditions />" +
"<a:FilterOperator>And</a:FilterOperator>" +
"<a:Filters>" +
"<a:FilterExpression>" +
"<a:Conditions>" +
"<a:ConditionExpression>" +
"<a:AttributeName>parentaccountid</a:AttributeName>" +
"<a:Operator>Equal</a:Operator>" +
"<a:Values xmlns:b='http://schemas.microsoft.com/2003/10/Serialization/Arrays'>" +
"<b:anyType i:type='c:string' xmlns:c='http://www.w3.org/2001/XMLSchema'>"+ pAccountId +"</b:anyType>" +
"</a:Values>" +
"</a:ConditionExpression>" +
"</a:Conditions>" +
"<a:FilterOperator>And</a:FilterOperator>" +
"<a:Filters />" +
"</a:FilterExpression>" +
"</a:Filters>" +
"</a:Criteria>" +
"<a:Distinct>false</a:Distinct>" +
"<a:EntityName>account</a:EntityName>" +
"<a:LinkEntities />" +
"<a:Orders />" +
"<a:PageInfo>" +
"<a:Count>0</a:Count>" +
"<a:PageNumber>0</a:PageNumber>" +
"<a:PagingCookie i:nil='true' />" +
"<a:ReturnTotalRecordCount>false</a:ReturnTotalRecordCount>" +
"</a:PageInfo>" +
"<a:NoLock>false</a:NoLock>";
var childAccounts = XrmServiceToolkit.Soap.RetrieveMultiple(query);
alert(childAccounts[0].attributes['name'].value);
alert(childAccounts[0].attributes['accountid'].id);
}
答案 0 :(得分:0)
对于您的代码,您可以使用这样的代码,因为它会为您提供帐户的ID。
警报(childAccounts [0] .ID);
您可以使用调试并设置监视来获取值的表达。