javascript - 使用 REST 端点检索实体的自定义实体的 ODataSetName

标签 javascript ajax dynamics-crm-2011 odata

在我的 restendpoint.js 中,我有定义的 retrieveRecord 函数 here

我有一个函数应该在应用程序实体上的程序(查找字段)更改时运行。它应该基本上检索程序记录的属性。

我对 oDataSetName 应该是什么感到有点困惑?

我的实体的显示名称是 Program 实体名称为ntt_programme

我尝试过 ProgrammeSet 和 ntt_ProgrammeSet 但没有成功。 ajax 调用导致失败回调方法,即,在我的情况下,我收到警报 In ProgrammeErrorCallBack

  1. 为什么会导致回调方法失败?
  2. oDataSetName 应该是什么以及它在 CRM 中的确切存储位置 - 它总是 EntityName 后跟 Set 吗?

我在这里有点迷路,因为我对 JS/AJAX/REST/JSON 是全新的!


ProgrammeOnChange: function () {
    var programmeLookup = Xrm.Page.getAttribute("new_programmeid").getValue();
    if (programmeLookup != null && programmeLookup[0] && programmeLookup[0].name != null) {
        var programmeId = programmeLookup[0].id;
        alert(programmeId);
        var oDataSetName = "ProgrammeSet";
        CRM2011Common.Functions.retrieveRecord(programmeId, oDataSetName, CRM2011.Application.ProgrammeSuccessCallBack, CRM2011.Application.ProgrammeErrorCallBack);
    }
},

ProgrammeSuccessCallBack: function (result) {
    alert("In ProgrammeSuccessCallBack");
    var programme = result;
    alert(programme.new_name);
},

ProgrammeErrorCallBack: function (XmlHttpRequest, textStatus, errorThrown) {
    alert("In ProgrammeErrorCallBack");
    alert('Error retrieving Programme: ' + textStatus + ' ' + errorThrown);
}

最佳答案

我猜你遇到了大写问题。它应该是 ntt_programmeSet,或类似的东西,但大小写不同。

我总是推荐使用 LinqPad首先测试 REST oData 调用。它可以防止您因套管问题而出现任何错误。您可以创建一个新的到 CRM SDK 端点的 odata 连接,然后编写一个 linq 语句来拉回信息。如果您单击 Lambda 符号,它将为您提供 odata URL。只要您的 javascript 生成准确的 url,您就可以了。

关于javascript - 使用 REST 端点检索实体的自定义实体的 ODataSetName,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15505998/

相关文章:

javascript - 如何使用 DRY 概念获取这些数据?

ajax - Backbone 通过 AJAX 向服务器发送参数

php - AJAX、JSON 和 PHP 返回值问题

javascript - 使用 jQuery 从 JSON 文件中仅选择前 10 个值

c# - Dynamics CRM 2011 实体

javascript - 用于输入 val 的 jQuery 对话框脚本

javascript - 页面加载时停止触发 JavaScript

ruby-on-rails - 添加订单详细信息 Microsoft Dynamics CRM Online API

javascript - Pixi.js 绘制下落的方 block

dynamics-crm-2011 - Dynamics CRM - 访问自定义产品选项值