Microsoft Dynamics CRM4.0 和 Microsoft Dynamics CRM 2011 JScript 方法对比
CRM 2011 如果需要再IE里面调试,可以按F12在前面加上contentIFrame,比如
contentIFrame.document.getElementById("字段")或contentIFrame.Xrm.Page.context.getUserId()(获取当前登录用户的GUID)。
| 方法名 | Microsoft Dynamics CRM 4.0 | Microsoft Dynamics CRM 2011 |
| 保存 | crmForm.Save() | Xrm.Page.data.entity.save() |
| 保存并关闭 | crmForm.SaveAndClose() | Xrm.Page.data.entity.save("saveandclose") |
| 保存并新建 | crmForm.SaveAndNew() | Xrm.Page.data.entity.save("saveandnew") |
| 获取实体名 | crmForm.ObjectTypeName | Xrm.Page.data.entity.getEntityName() |
| 获取当前表单记录的GUID | crmForm.ObjectId | Xrm.Page.data.entity.getId() |
| 实体类型代码 | crmForm.ObjectTypeCode | 没有 |
| 表单类型 | crmForm.FormType | Xrm.Page.ui.getFormType() |
| 未定义(0) | FORM_TYPE_UNDEFINED | FORM_TYPE_UNDEFINED |
| 创建(1) | FORM_TYPE_CREATE | FORM_TYPE_CREATE |
| 更新(2) | FORM_TYPE_UPDATE | FORM_TYPE_UPDATE |
| 只读模式(3) | FORM_TYPE_READ_ONLY | FORM_TYPE_READ_ONLY |
| 已禁用(4) | FORM_TYPE_DISABLED | FORM_TYPE_DISABLED |
| 快速创建(5) | FORM_TYPE_QUICK_CREATE | FORM_TYPE_QUICK_CREATE(已弃用) |
| 批量编辑(6) | FORM_TYPE_BULK_EDIT | FORM_TYPE_BULK_EDIT |
| 读优化(11) | 没有 | FORM_TYPE_READ_OPTIMIZED |
| 阻止保存 | event.returnValue = false; return; | event.getEventArgs().preventDefault() (event为表单保存事件方法的参数) |
| 当前组织名称 | Xrm.Page.context.getOrgUniqueName() | |
| 设为焦点 | crmForm.all.字段.SetFocus() | Xrm.Page.getControl("字段").setFocus()或
Xrm.Page.data.entity.attributes.get("字段").controls.get(0).setFocus(); |
| 获取字段的值 | crmForm.all.字段.DataValue | Xrm.Page.getAttribute("字段").getValue() |
| 获取字段是否禁用 | crmForm.all.字段.Disabled= true |
Xrm.Page.getControl("字段").setDisabled(true) contentIFrame.window.Xrm.Page.getAttribute("字段").controls.get(0).setDisabled(false) |
| 获取语言编码 | 常量USER_LANGUAGE_CODE | Xrm.Page.context.getOrgLcid() |
| 是否修改 | crmForm.all.字段.IsDirty | Xrm.Page.data.entity.getIsDirty() |
| 强制执行OnChange | crmForm.all.字段.FireOnChange() 说明该字段必须为可编辑的才可以执行。 |
Xrm.Page.getAttribute("字段").fireOnChange() |
| 只读的字段强制提交 | crmForm.all.字段.ForceSubmit = true; | Xrm.Page.getAttribute("字段").setSubmitMode("always") |
| 字段需求级别 | crmForm.all.字段.RequiredLevel | Xrm.Page.getAttribute("字段").getRequiredLevel() |
| 没有约束(正常)(0) | No constraint (normal) | 无 |
| 业务推荐的(1) | Business recommended | 所需Xrm.Page.getAttribute("字段").setRequiredLevel("required") 该字段为业务必填的 |
| 业务必需的(2) | Business required | 建议 |
| 时间类型字段赋值 | crmForm.all.字段.DataValue = new Date("2013/01/01") 时间的格式必须为yyy/mm/dd,如果为yyy-mm-dd,就会报错, 需要replace(/-/g, "/")进行替换。 |
Xrm.Page.getAttribute("字段").setValue(new Date ("Tue Jun 18 00:00:00 UTC+0800 2013"));//改为2013/6/18 |
| 弹出框 | 可以用js的windows.showdialog | openStdDlg(url, lookupViewArgs, 800, 500); |
| 加载JS文件 | 没有,不过可以另外写js方法: | loadScriptAdv("脚本URL","任意ID",false); |
| 禁用表单上所有的字段 | for (var i = 0; i < crmForm.all.length; i++) { var field = crmForm.all[i]; if (field.id != null && field.id != "") { field.Disabled = true; } } |
var controls = Xrm.Page.ui.controls.get(); for (var i in controls) { var control = controls[i]; if (control.getDisabled() == false) { control.setDisabled(true); } }或 Xrm.Page.data.entity.attributes.forEach(function (item, index) { item.controls.get(0).setDisabled(true); }); |
| 禁用节下面所有的字段 |
能一个一个字段禁用,循环目前还没有找到方法,哪位大侠知道可以告诉我 |
//调用:sectionDisable("section_1_1",true);//section_1_1为名称 //禁用节点下所有字段的信息 for CRM 2011 function sectionDisable (sectionname, disablestatus){ var ctrlName = Xrm.Page.ui.controls.get(); for(var i in ctrlName) { var ctrl = ctrlName[i]; var ctrlSection = ctrl.getParent().getName(); if (ctrlSection == sectionname) { ctrl.setDisabled(disablestatus); } } } |
| 禁用节下面所有的字段2 |
只能一个一个字段禁用,循环目前还没有找到方法,哪位大侠知道可以告诉我 |
//调用:sectionDisable("网点基本信息",true);//网点基本信息为标签 |
| 禁用选项卡下所有的字段1 |
没有 |
//调用:tabsDisable("基本信息",true);//基本信息为标签 |
| 禁用选项卡下所有的字段2 |
没有 |
//调用:tabsDisable("tab_1",true);//tab_1为名称 |
| 获取当前登录用户的GUID | function GetCurrentUserId() { var soapBody = "<soap:Body>"+ "<Execute xmlns='http://schemas.microsoft.com/crm/2007/WebServices'>"+ "<Request xsi:type='WhoAmIRequest' />"+ "</Execute></soap:Body>"; var soapXml = "<soap:Envelope " + var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); |
Xrm.Page.context.getUserId();把crm4.0 |
|
//获取当前的用户 var soapXml = "<soap:Envelope xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema'>"; var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); |
||
Microsoft Dynamics CRM4.0 和 Microsoft Dynamics CRM 2011 JScript 方法对比的更多相关文章
- Microsoft Dynamics CRM4.0编程---说明
Introduction(说明) If your organization has customers, you need a software system to help you manage y ...
- error MSB4019: 未找到导入的项目“C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets”
error MSB4019: 未找到导入的项目“C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications\ ...
- 未找到导入的项目“C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\DotNet\Microsoft.DotNet.Props”
未找到导入的项目“C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\DotNet\Microsoft.DotNet.Props” ...
- C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppBuild.targets(388,5): warning MSB8028: The intermediate directory (Debug) contains files shared from another project (GU.vcxproj). T
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppBuild.targets(388,5): warni ...
- Dynamics CRM4.0 和 Dynamics CRM2011 Plugin 实现一样的功能的方法的比较
1.给类型赋值不同 CRM4 plugin给lookup赋值为空 : Lookup lookupnull = new Lookup(); lookupnull.IsNull = true; looku ...
- Microsoft Dynamics CRM4.0 JScript 过滤lookup 出现 Microsoft Dynamics CRM 窗口无法打开,可能已被弹出窗口阻止程序所阻止。
一.现象:JScript过滤lookup字段,选择lookup字段出现下图的情况: 出现:Microsoft Dynamics CRM 窗口无法打开,可能已被弹出窗口阻止程序所阻止.请将这台Micro ...
- Microsoft Dynamics CRM4.0 创建单据的时候,自动生成单据编号的通用方法
一.新建两个实体,具体如下: 单据流水号(new_maxbillcode) 显示名称 名称 类型 格式 最大长度 需求级别 IME模式 备注 名称 new_name nvarchar 文本 100 业 ...
- [Bug] 未找到导入的项目“C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets”
This is very easy to do. Open your build definition and go to the "Process" page. Then und ...
- C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.CppCommon.targets(249,5): error MSB6006: “CL.exe”已退出,代码为 -1073741515。
解决: Add this to your PATH environment variables: C:\Program Files (x86)\Microsoft Visual Studio 11.0 ...
随机推荐
- vm options设置
-Dfile.encoding=UTF-8 vmopiton.properties 加入 8A7674
- POJ 1008 简单模拟题
e.... 虽然这是一道灰常简单的模拟题.但是米做的时候没有读懂第二个日历的计时方法.然后捏.敲完之后华丽的WA了进一个点.坑点就在一年的最后一天你是该输出本年的.e ...但是我好想并没有..看di ...
- 集合list里存储list,要遍历最底层list的对象元素的遍历方法
package com.wtd; import java.util.ArrayList; import java.util.HashSet; import java.util.Iterator; im ...
- Kafka消费者APi
Kafka客户端从集群中消费消息,并透明地处理kafka集群中出现故障服务器,透明地调节适应集群中变化的数据分区.也和服务器交互,平衡均衡消费者. public class KafkaConsumer ...
- 栈(stack),C++模板实现
body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...
- http指定状态码
Http状态代码 1.指定状态码: setStatus HttpServletResponse的setStatus方法.如果响应的状态代码比较特殊,并且伴有相关的文档内容,那么一定要在用PrintWr ...
- TouchJSON的简单使用
TouchJSON是OC转换JSON的一个第三方类库,使用简单.在GitHub上可以轻松获取:TouchJSON 以下是简单的事例演示从douban movie请求JSON数据并转为字典对象后对控件赋 ...
- 《Effective Python:编写高质量Python代码的59个有效方法》读书笔记(完结)
Effective Python 第1章 用Pythonic方式来思考 be pythonic 遵守pep8 python3有两种字符序列类型:bytes(原始的字节)和str(Unicode字符). ...
- opencv-python教程学习系列10-颜色空间转换
前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍颜色空间转换,坚持学习,共同进步. 系列教程参照OpenCV-Python中文教程: 系统环境 系 ...
- Markdown的写法
这里只介绍Markdown的书写格式.在github中显示出来. 当你看到下面两张图片时,你会发现区别还是蛮大的. 标题: 首先>就是最左边的那条竖线,但是=(最高阶标题)和-(第二阶标题). ...