2016-05-12 62 views
0

在下面的代碼片段中,我試圖獲得子帳戶(如果父帳戶ID匹配)。它按預期填充帳戶名稱,例如ABC Title CompanyTest Tile Co.,但它會將帳戶ID填充爲undefinedDynamics CRM 2016:不要使用XRM服務工具套件檢索帳戶ID

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

對於您的代碼片段,您可以使用類似這樣的內容,因爲會給你帳戶的ID。

alert(childAccounts [0] .id);

您可以使用調試,並把手錶來獲得值的表達式。

相關問題