如何搜索动态CRM中的特定联系人?

时间:2014-10-15 13:06:17

标签: javascript html dynamics-crm-2011 xrm

我尝试使用mobileNumber,telephone1等字段搜索联系人。但是当我尝试使用以下代码查看对象的所有属性时,

for (var property in primaryContact) {
                        document.write(property);
                    }

我输出为,

__metadata , FullName , ContactId ,

我使用了动态CRM SDK中的SDK.Rest。

如何使用任何特定属性搜索动态CRM中的联系人?

完整代码,

//adding new_SDK.REST
var script = document.createElement('script');
script.src = 'new_SDK.REST';
script.type = 'text/javascript';
document.getElementsByTagName('head')[0].appendChild(script);

//adding new_json2
var script = document.createElement('script');
script.src = 'new_json2';
script.type = 'text/javascript';
document.getElementsByTagName('head')[0].appendChild(script);

function getFirstContactToBePrimaryContact() {

    SDK.REST.retrieveMultipleRecords(
        "Contact",
        "$select=ContactId,FullName&$top=4",
        function (results) {
            var firstResult = results[0];
            if (firstResult != null) {
                primaryContact = results[0];

                for (var property in primaryContact) {
                    document.write(property);
                }
                document.write(primaryContact.FullName + ' ' + primaryContact.address1_telephone1);

            }
            else {
                writeMessage("No Contact records are available to set as the primary contact for the account.");
            }
        },
        errorHandler,
        function () {
            //OnComplete handler
        }
      );
}


function errorHandler(error) {
    writeMessage(error.message);
}

1 个答案:

答案 0 :(得分:0)

您必须在查询的选定部分设置要从CRM检索的所有参数。在this link上有一个例子。

所以它会像:

SDK.REST.retrieveMultipleRecords(
    "Contact",
    "$select=ContactId,FullName,mobilephone&$top=4",

对于基于特定参数的搜索,请使用过滤器表达式 - link。 例如:

/ContactSet?$filter=mobilephone eq '123456'

希望这有帮助。