快捷搜索:  as  2018  FtCWSyGV  С˵  test  xxx  Ψһ  w3viyKQx

澳门24小时0524:【Dynamics CRM客户端程序开发教程】16、获取表单界面上各种字段的值及其他属性



为了方便演示,我这里新建一个实体,实体定义如下:

还为它定义了如下的自定义字段,每种可定义的类型都有澳门24小时0524,基础上都是应用默认设置:

并且改动了它的窗体类型为主要的窗体,使它新建记录的界面如下所示:

我这里用代码演示,新建记录的时刻为每个字段设置默认值。代码当然是JavaScript代码,必要放到类型为JScript的Web资本中,上传到CRM中并宣布,然后和事故挂钩,这样就可以履行了。

我打开曩昔新建的办理规划,右击 CrmPackge 项眼前目今面的 WebResources 文件夹,选择 添加 > 新建项。

选择 JScript File这种类型,取个相宜的名称,然后点击添加按钮。

然后我的做法一样平常要改动这个文件的Display Name和Unique Name,如下。分外是Unique Name要留意,最好鄙人划线后面加上一个 / ,这样后面方便引用。

然后便是撰写代码了,我这里应用的代码如下,有个值得留意的地便利是字段名称整个用逻辑名称,也便是全小写。

if (typeof (LuoYong) == "undefined")

{ LuoYong = { __namespace: true }; }

LuoYong.DemoScript = {

OnLoadHandler: function () {

if (Xrm.Page.ui.getFormType() == 1) {//新建记录

//主属性,名称字段,只能是单行文本

Xrm.Page.getAttribute("new_name").setValue("名称字段的值");

//为单行文本字段赋值

Xrm.Page.getAttribute("new_singleline").setValue("单行文本的值");

//为两个选项字段赋值,只能赋值为true或者false

Xrm.Page.getAttribute("new_twooptionset").setValue(true);

//为选项集字段赋值,为整数,是选项集的存储值,不是显示值

Xrm.Page.getAttribute("new_optionset").setValue(100000001);

//为泉币字段赋值,小数即可

Xrm.Page.getAttribute("new_currency").setValue(100.5);

//为浮点数字段赋值,小数即可

Xrm.Page.getAttribute("new_float").setValue(101.5);

//为十进制字段赋值,小数即可

Xrm.Page.getAttribute("new_decimal").setValue(102.5);

//为整数字段赋值

Xrm.Page.getAttribute("new_integer").setValue(100);

//为日期和光阴字段赋值

Xrm.Page.getAttribute("new_datetime").setValue(new Date());

//为多行文本字段赋值

Xrm.Page.getAttribute("new_multiline").setValue("多行文本字段的值多行文本字段的值多行文本字段的值多行文本字段的值多行文本字段澳门24小时0524的值");

//为查找字段赋值

var lookValue = new Array();

lookValue[0] = new Object();

lookValue[0].id = "F3A0BB75-F3AD-E311-80B4-00155D016705";

lookValue[0].entityType = "account";

lookValue[0].name = "A. Datum 公司 (示例)";

Xrm.Page.getAttribute("new_lookup").setValue(lookValue);

//使用新版本的alertDialog做提示

Xrm.Utility.alertDialog("新建状态下为字段赋值完毕!", function () { });

}

}

}

这里用到的getFormType,SDK中的讲解如下澳门24小时0524,用来判断打开的表单的表单类型,我这里是用来判断是不是新建记录的表单。

Xrm.Page.ui.getFormType()

Return Value

Type: Number

The following table lists the form types that correspond to the return value.

Value

Form Type

0

Undefined

1

Create

2

Update

3

Read Only

4

Disabled

5

Quick Create (Deprecated)

6

Bulk Edit

11

Read Optimized (Deprecated)

Note

Quick Create fo澳门24小时0524rms return 1. The value 5 was used for an earlier type of quick create form that was removed.

右击 CrmPackage 办理规划,选择 支配 ,支配完成后,我们到这个Visual Studio的办理规划连接的CRM办理规划中查看,你会发明多了你刚才的Web资本,名称便是之前设置的Unique Name,显示名称便是之前设置的 Display Name,还有个URL,由于我的CRM做了IFD支配,以是可澳门24小时0524能和你的有点不一样。这个支配的历程只是将Web资本上传,并没有宣布,最好宣布下。

然后便是将代码和事故挂钩了。打开 测试实体 的窗体类型为 主要 的窗体,点击Ribbon区的 窗体属性 按钮,弹出如下的 窗体属性 对话框,点击 添加 按钮。

将前面我们新增的Web Resource添加进去。

然后点击事故处置惩罚法度榜样下面的 添加 按钮,在弹出的处置惩罚法度榜样属性对话框中,库选择我们前面创建的Web资本,函数我这里输入 LuoYong.DemoScript.OnLoadHandler ,然后点击确定按钮。

设置的窗体属性综合起来,如下图所示。

然后保存窗体,最好宣布全部办理规划,至少也要宣布这个实体和之前我们创建的Web资本。

然后我们去测试看看,效果如下,基础相符我的要求。

您可能还会对下面的文章感兴趣: