CRM 2011将静态值设置为以两种不同形式设置的相同选项

时间:2013-04-18 18:06:15

标签: javascript xml dynamics-crm-2011 crm

我创建了两个潜在表单。一个用于办公家具产品线,另一个用于家用家具产品线。现在,我将一个字段设置为选项类型,其值为Office Furniture和Home Furniture。当用户选择Home Furniture Lead Form时,表单必须能够将Home Furniture设置为静态值并且只读。同样,如果是Office Furniture的主要表单,Office Furniture必须设置为只读的静态值。在某种程度上,我们希望从用户那里取消该字段的编辑功能。我在这里面临挑战,因为两种形式都引用了相同的字段。如果我将Home Furniture设置为默认值并将其设置为只读,则办公室家具主导形式也会显示相同的值。如果有人可以帮助我使用脚本根据Lead表单选择分配2个不同的值,那将是一个很好的帮助。

2 个答案:

答案 0 :(得分:1)

我能够通过这个显示结果。但是我为每个表单编写了两个不同的函数

function HomeFurniture() {
Xrm.Page.getAttribute("new_lineofbusiness").setValue(100000000);
}

在另一个表格中,我插入了相同的功能

function OfficeFurniture() {
Xrm.Page.getAttribute("new_lineofbusiness").setValue(100000000);
}

答案 1 :(得分:0)

您需要检查自己的表格并设置字段,您可以从此示例开始:

var currentForm = Xrm.Page.ui.formSelector.getCurrentItem();
if (currentForm != null) {
    var formValue = null;
    var currentFormLabel = currentForm.getLabel();
    switch (currentFormLabel) {
        case "Office Furniture":
            formValue = 1;
            break;
        case "Home Furniture":
            formValue = 2;
            break;
    }
    if (formValue != null) {
        Xrm.Page.getAttribute("new_formtype").setValue(formValue);
        Xrm.Page.getAttribute("new_formtype").setSubmitMode("always");
        Xrm.Page.getControl("new_formtype").setDisabled(true);
    }   
}

当然只有这段代码是不够的,你需要在用户更改表格时注意(如果你想保留这种可能性)或者使用导航方法自动更改表格。

我建议这篇msdn文章,会有所帮助:

http://msdn.microsoft.com/en-us/library/gg328253.aspx