私はいくつかのCRM 2011オンラインカスタマイズを行っており、JavaScriptを使用してエンティティを取得する必要があります。CRM 2011:Javascriptでエンティティを取得する
必要なエンティティは、別のフィールド(連絡先エンティティ)のID値に基づいています。この連絡先IDはうまくいきます。
私が望むエンティティはカスタムエンティティです。 ...ので、私は、リスト内の最初の1(重要ではないため)これまでのところ、私はこれを行うにはいくつかの方法に見てきました
を取得したい連絡先のIDに基づいて、複数の一致があるかもしれません
のOData - 私は何のクエリ式を作成することができますするようカスタムエンティティ
FetchXMLのためにこの作品を作る方法/場合、また、私は知らないこの上に十分な例を見つけることができませんでした - 私が作成することができます組み込みの "高度な検索"を使用して素敵なFetchXMLクエリも誰かが助けることができる場合はJavaScriptからこれを呼び出すことができますか?私は1つの有望な答えhereを見つけましたが、私は「結果」は、データがセット(Service.Fetch機能)
SOAPリクエストされた返却方法を見ることができませんでした - 私はCRMに行っている可能性があるので、私が試した最初のものは、同様の方法であります4しかし、これは動作していないようです。要求は実行されますが、私の結果データは空のようです。これは私がコードを持っているので、下のコードで誰かが問題を見つけることができればそれはすばらしいでしょう。
EDIT:私は(私は終了タグをタグを開くリンクを削除しますが残っていた)いくつかの冗長なクエリデータを発見している - 私は今、XML結果データを取得し、これを削除するので...しかし、where句はしていません大きなコードのポストについては申し訳ありません
var xml = "<?xml version='1.0' encoding='utf-8'?>" +
"<soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">" +
GenerateAuthenticationHeader() +
"<soap:Body>" +
"<RetrieveMultiple xmlns=\"http://schemas.microsoft.com/crm/2007/WebServices\">" +
"<query xmlns:q1=\"http://schemas.microsoft.com/crm/2006/Query\" xsi:type=\"q1:QueryExpression\">" +
"<q1:EntityName>new_vehicle</q1:EntityName>" +
"<q1:ColumnSet xsi:type='q1:ColumnSet'>" +
"<q1:Attributes>" +
"<q1:Attribute>new_vehicleid</q1:Attribute>" +
"<q1:Attribute>new_primarydriver</q1:Attribute>" +
"<q1:Attribute>statuscode</q1:Attribute>" +
"<q1:Attribute>new_registration</q1:Attribute>" +
"</q1:Attributes>" +
"</q1:ColumnSet>" +
"<q1:Distinct>false</q1:Distinct>" +
"<q1:Conditions>" +
"<q1:Condition>" +
"<q1:AttributeName>new_primarydriver</q1:AttributeName>" +
"<q1:Operator>Equal</q1:Operator>" +
"<q1:Values>" +
"<q1:Value xmlns:q2='http://microsoft.com/wsdl/types/' xsi:type='q2:guid'>" +
customerID +
"</q1:Value></q1:Values></q1:Condition>" +
"</q1:Conditions>" +
"</query></RetrieveMultiple>" +
"</soap:Body></soap:Envelope>";
var xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP");
xmlHttpRequest.Open("POST", "/mscrmservices/2007/CrmService.asmx", false);
xmlHttpRequest.setRequestHeader("SOAPAction", "http://schemas.microsoft.com/crm/2007/WebServices/RetrieveMultiple");
xmlHttpRequest.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
xmlHttpRequest.setRequestHeader("Content-Length", xml.length);
xmlHttpRequest.send(xml);
var result = xmlHttpRequest.responseXML.xml;
var doc = new ActiveXObject("MSXML2.DOMDocument");
doc.async = false;
doc.loadXML(result);
var id = doc.selectSingleNode("//new_vehicleid");
var registration = doc.selectSingleNode("//new_registration");
if(id == null)
return null;
var vehicle = new Array();
value[0] = new Object();
value[0].id = id;
value[0].name = registration;
value[0].entityType = "new_vehicle";
return vehicle;
(ちょうどすべてのエンティティのリストを取得)を適用するように見えるが、うまくいけば、より良い理解を持っている誰かが、まず彼の答えポストのためGlennFerrieLiveのおかげで
CRM Dynamicsの?あなたはカスタマイズが必要な場合は、それを購入していない:D シンプルな要件、複雑な実装を... – Legends