• Dynamics 365利用Web API对视图进行查询


    我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面的微软最有价值专家(Microsoft MVP),欢迎关注我的微信公众号 MSFTDynamics365erLuoYong ,回复383或者20191202可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me!

    Dynamics 365 Customer Engagement中的视图分为公共视图和私有视图,分别对应视图savedquery 和 userquery ,有时候需要做些查询,这个和对普通实体进行查询没有多大区别,我这里做些简单的代码示例。

    比如可以直接在浏览器中输入类似如下的URL查询,查询视图使用的fetchxml包括modifiedon字符,且视图针对的实体是 ly_workorder。

    https://demo.luoyong.me/api/data/v9.0/userqueries?$filter=contains(fetchxml,'modifiedon') and returnedtypecode eq 'ly_workorder'

    效果如下:

     如果我要对视图使用的FetchXml进行筛选以便知晓是哪个视图的性能有问题,这个在性能调试的时候常用到,我这里具个例子。就是如果公共视图配置了两个排序条件,我用代码将其搜索出来,当然啦,需要打开某个实体记录的窗体,然后按F12,输入如下代码:

    var reg = /<order attribute/ig;
    Xrm.WebApi.retrieveMultipleRecords("savedquery", "?$select=fetchxml,name,returnedtypecode").then(
        function success(result) {
            if (result.entities.length >= 1) {
                result.entities.forEach(function (element) {
                    if (element.fetchxml != null) {
                        var found = element.fetchxml.match(reg);
                        if (found != null && found.length >= 2) {
                            //console.log(element.fetchxml);
                            console.log(element.name + "," + element.returnedtypecode);
                        }
                    }
                });
            }
        },
        function (error) {
            alert(error.message);
        }
    );

    效果如下:

     你可能会问可以搜索私有视图userquery实体吗?可以,只是那怕你具有系统管理员角色,也只能搜索到自己的私有视图和共享给自己的私有视图。

  • 相关阅读:
    计算机系统概述
    Qt学习--初学注意事项
    Qt实现一个简单的TextEditor
    Qt 用户登录界面
    C++ 模板
    多态与虚函数
    继承与派生
    C++ 运算符重载
    web安全-点击劫持
    web安全问题-cookie
  • 原文地址:https://www.cnblogs.com/luoyong0201/p/Dynamics_365_Query_View_By_Web_API.html
Copyright © 2020-2023  润新知