首页 > 其他分享 >Dynamics CRM - 使用 JS 对字段取值、赋值、实体属性设置等

Dynamics CRM - 使用 JS 对字段取值、赋值、实体属性设置等

时间:2023-09-15 16:00:31浏览次数:44  
标签:Xrm getControl 对字段 getAttribute sFieldName JS var Dynamics Page

整理下平时CRM开发中用到的一些基本的js操作

取值:

var oResult = Xrm.Page.getAttribute(sFieldName).getValue();

var oResult = Xrm.Page.getControl(sFieldName).getAttribute().getValue();

赋值:

复制代码
一般类型:Xrm.Page.getAttribute(sFieldName).setValue(object);

OptionSet类型: Xrm.Page.getAttribute(sFieldName).setValue(1);//OptionSet的对应选项的Value

Lookup类型: Xrm.Page.getAttribute(sFieldName).setValue([{ id:"record id", name: "sValue", entityType: "Entity Name" }]);

DateOnly类型: Xrm.Page.getAttribute(sFieldName).setValue(new Date());
复制代码

提示指定错误:

Xrm.Page.getControl(sFieldName).setNotification(sErrorMessage);

清除错误提示:

Xrm.Page.getConrol(sFieldName).clearNotification();

设置Read Only:

Xrm.Page.getControl(sFieldName).setDisabled(true);

设置Enable:

Xrm.Page.getControl(sFieldName).setDisabled(false);

控制Tab是否可见:

Xrm.Page.ui.tabs.get("tab_Name").setVisible(true);

控制Section是否可见:

Xrm.Page.ui.tabs.get("tab_Name").sections.get("section_name").setVisible(true);

设置必填:

Xrm.Page.getAttribute(sFieldName).setRequiredLevel("required");

设置可选:

Xrm.Page.getAttribute(sFieldName).setRequiredLevel("none");

设置字段可见:

Xrm.Page.getControl(sFieldName).setVisible(true);

隐藏字段:

Xrm.Page.getControl(sFieldName).setVisible(false);

获取当前 Entity Id:

var entityId = Xrm.Page.data.entity.getId();

获取当前 Entity 的 Name:

var entityName = Xrm.Page.data.entity.getEntityName();

获取当前 User Id:

var userId = Xrm.Page.context.getUserId();

判断当前 form 的状态:

复制代码
if (Xrm.Page.ui.getFormType() == 1){
    //1:Create
}
else{
    //0:Undefined
    //2:Update
    //3:Read Only
    //4:Disabled
    //6:Bulk Edit
}
复制代码

添加事件:

Xrm.Page.getControl(sFieldName).getAttribute().addOnChange(fnOnChange);

有時需要獲取當前頁面,所有賦值字段的情況(Debug需要,比如儅出現unsaved changes):

console.log(Xrm.Page.data.entity.getDataXml());

 阻止当前页面保存,需要勾选 Pass execution context as first parameter

exeContext.getEventArgs().preventDefault();

标签:Xrm,getControl,对字段,getAttribute,sFieldName,JS,var,Dynamics,Page
From: https://www.cnblogs.com/jiangyuhu/p/17705209.html

相关文章

  • How to fix Fetch TypeError in Node.js All In One
    HowtofixFetchTypeErrorinNode.jsAllInOneTypeError:terminatedatFetch.onAborted(node:internal/deps/undici/undici:11000:53)Errorundici//❌❌videourlhttps://edu.xgqfrms.xyz/dc9bb2-1733219a4a8.mp4TypeError:terminatedatFetch.onAbor......
  • uniapp VUE-H5页面微信公众号内使用微信JSAPI支付
    注意看本文主要讲解uniapp打包成h5页面并部署在公众号时使用JSAPI的微信支付问题前期准备工作.首先要有一个开通商户注册的公众号,我们需要他的appid;.其次要开通商户公众号的公众号支付的功能并添加域名,开通完成后就可以基本开始我们的开发了既然是jsapi开发自然是要引入的......
  • Nodejs+Express+MongoDB实战
    项目安装安装express脚手架:npminstallexpress-generator-g创建项目:express-eproject-e代表使用ejs模板,project是项目名称进入项目:npminstall下载依赖包安装nodemon:npminstallnodemon-g使用nodemon来启动项目,不用node来启动启动项目:npmstart,端口号在www启动文件中可以......
  • js - callback()回调函数
    1、回调函数的定义和概念回调函数是一种特殊的函数,它作为参数传递给另一个函数,并在被调用函数执行完毕后被调用。即:函数a的参数为函数b,当函数a执行完之后再去执行b作用:回调函数通常用于事件处理、异步编程和处理各种操作系统和框架的API2、代码展示functiona(callback){......
  • 详解Node.js开发中不可或缺的7个库
    详解Node.js开发中不可或缺的7个库news/2023/9/1414:26:05在Node.js开发中,选择合适的库对于提高开发效率和优化应用程序性能至关重要。本文将介绍七个备受关注的Node.js库,它们在各自的领域中展现了出色的功能和性能。这些库分别是:Config、Fetch、Ioredis、Multer、Cache......
  • nodejs+koa2+mongodb 从0到1搭建自己的项目
    nodejs+koa2+mongodb从0到1搭建自己的项目YDJFE2018-09-2811:2419207   相信这对于想要入门写nodejs的朋友来说,一定会有所收获,那么,下面开始我们的正题(这里不使用koa-generator脚手架,我们直接自己搭建项目,适用于前后端分离)一:创建项目可以在全局中安装koa依赖包......
  • @DatetimeFormat与@JsonFormat
    @DateTimeFormat(pattern=“yyyy-MM-ddHH:mm:ss”)是将String转换成Date,一般前台给后台传值时用@JsonFormat(pattern=“yyyy-MM-ddHH:mm:ss”,timezone=”GMT+8”)将Date转换成String一般后台传值给前台时......
  • 在nodejs中使用Typescript 金字教程
    1.首先新建一个项目npminit-yes2.开启Typescript依赖npminstalltypescript--save-dev安装typescript,现在我们可以通过命令行来使用tsc命令3.安装nodejs类型npminstall@types/node--save-dev4.使用命令创建一个tsconfig.json文件npxtsc--init--rootDir......
  • js 四舍五入toFixe和Math.round(
    toFixed四舍五入偶尔不正确的问题原因:因为toFixed是一个四舍六入五成双的方法四舍六入好理解,那什么叫五成双呢"五"指的是根据5后面的数字来定,当5后有数时,舍5入1;当5后无有效数字时,需要分两种情况来讲:①5前为奇数,舍5入1;②5前为偶数,舍5不进。(0是偶数)(0.5251).toFixed(2)=>0.53......
  • JSon
    json数据类型:对象、数组、字符串、数字对象:使用花括号{}括起来的表示一个对象;数组:使用中括号[]括起来的一个数组;字符串:使用常规双引号“”括起来的表示一个字符串;数字:包括整形和浮点型,直接使用。jsoncpp库用于实现json格式的序列化和反序列化序列化:是指将多个数据对象组织成......