Dynamics CRM 365 - 零基础入门学习前端系统自动生成实体ID自增(代码)

Dynamics CRM 365 - 零基础入门学习前端实现系统自动实体生成ID编号(代码)

在上一篇文章中我写了如何在Dynamics CRM 365 中使用插件的方法实现后端id自增,本篇文章我讲一下如何在CRM前端实现ID编号

var clientUrl = Xrm.Utility.getGlobalContext().getClientUrl();
var req = new XMLHttpRequest()
req.open("POST", encodeURI(clientUrl + "/api/data/v9.0/EntityDefinitions(LogicalName='hs_reimburse')/Attributes"), true);
req.setRequestHeader("Accept", "application/json");
req.setRequestHeader("Content-Type", "application/json; charset=utf-8");
req.setRequestHeader("OData-MaxVersion", "4.0");
req.setRequestHeader("OData-Version", "4.0");
req.onreadystatechange = function () {
    if (this.readyState == 4 /* complete */) {
        req.onreadystatechange = null;
        if (this.status == 204) {
            var alertStrings = { text: "操作成功!" };
            var alertOptions = { height: 300, width: 400 };
            Xrm.Navigation.openAlertDialog(alertStrings, alertOptions);
        }
        else {
            Xrm.Navigation.openErrorDialog({ message: this.responseText });
        }
    }
};
var requestMsg = JSON.parse('{'+
 '"AttributeType": "String",'+
    '"AttributeTypeName": {'+
        '"Value": "StringType"'+
    '},' +
    '"Description": {' +
    '"@odata.type": "Microsoft.Dynamics.CRM.Label",' +
    '"LocalizedLabels": [' +
    '{' +
    '"@odata.type": "Microsoft.Dynamics.CRM.LocalizedLabel",' +
    '"Label": "编号",' +
    '"LanguageCode": 2052' +
    '}' +
    ']' +
    '},' +
    '"DisplayName": {' +
    '"@odata.type": "Microsoft.Dynamics.CRM.Label",' +
    '"LocalizedLabels": [' +
    '{' +
    '"@odata.type": "Microsoft.Dynamics.CRM.LocalizedLabel",' + '"Label": "申请编号",' +
    '"LanguageCode": 2052' +
    '}' +
    ']' +
    '},' +
    '"RequiredLevel": {' +
    '"Value": "None",' +
    '"CanBeChanged": true,' +
    '"ManagedPropertyLogicalName": "canmodifyrequirementlevelsettings"' +
    '},' +
    '"SchemaName": "lt_numbers",' +
    '"AutoNumberFormat": "PRO-{SEQNUM:9}",' +
    '"@odata.type": "Microsoft.Dynamics.CRM.StringAttributeMetadata",' +
    '"FormatName": {' +
    '"Value": "Text"' +
    '},' +
    '"MaxLength": 100' +
'}');
req.send(JSON.stringify(requestMsg));
此代码中需要注意三个地方
  1. LogicalName=‘hs_reimburse’ 这里需要更改你的实体名称。
  2. SchemaName": “lt_numbers”,这里是系统要自动生成的编号字段,申请编号,这个是生成字段的显示名称。
  3. AutoNumberFormat": "PRO-{SEQNUM:9}"这里是编号ID,这里可以根据需求来更改自己的编号,SEQNUM是生成随机数。
部署代码

我们打开自定义项
Dynamics CRM 365 - 零基础入门学习前端系统自动生成实体ID自增(代码)_第1张图片
打开开发人员资源,并按F12打开开发者管理工具,插入我们的代码
Dynamics CRM 365 - 零基础入门学习前端系统自动生成实体ID自增(代码)_第2张图片

敲入回车之后,就生成成功了
Dynamics CRM 365 - 零基础入门学习前端系统自动生成实体ID自增(代码)_第3张图片
其他文章:

Dynamics CRM 365 - 零基础入门学习后端实现实体ID自增插件(代码).

到此就结束啦,快去练习一下吧!欢迎大佬和小Monkey沟通。
在这里插入图片描述

感谢大佬指正 小Monkey
如果你觉得有用的话,就留个赞吧!蟹蟹

你可能感兴趣的:(Dynamics,CRM,crm,js,jquery,微软)