CRM 2013动态OptionSet问题

时间:2013-12-18 12:42:06

标签: dynamics-crm dynamics-crm-2013

我在内部使用CRM 2013,其中有一个属性,其中包含一个选项集(非全局),其文本和值为“Dummy Entry”“0”。默认值未分配。

我的代码是使用一些业务逻辑在此选项集中添加选项。所以我可以通过Javascript添加新的选项。

当我通过Javascript添加选项时,它不允许我更改值,让我们说

Option1 val1 选项2 val1被添加然后它不允许我选择这些值,并且每次选择它们将恢复到默认条目“ - ”并且什么都不会改变。

但是我想补充说      “Option1”“0”      “Option2”“0”

作为文本和值,它们被精确显示并选择其中任何一个将文本更改为“Dummy Entry”。

基本上某种程度上,如果值存在于Options列表中(它是静态的而不是通过JS添加的),它接受并选择它并显示它的文本。

如果在静态选项列表中找不到该值,则它不会选择任何内容并显示默认值“ - ”

我希望我很清楚,如果有任何混淆,请告诉我。以下代码段在CRM 2011中有效,但在CRM 2013中无效。

// testing function
populateBundleLists: function () {
    var bundleListControl = Xrm.Page.getControl("XXX_bundlelist");
    var bundleOptions = bundleListControl.getAttribute().getOptions();
    var bundleOption = bundleOptions[0];
    bundleListControl.clearOptions();

    // add some arbitrary values to control
    for (var i = 1; i <= 7; i++) {
        bundleOption.value = i;
        bundleOption.text = 'Dummy bundle ' + i.toString();
        bundleListControl.addOption(bundleOption, i - 1);  

    }
},

1 个答案:

答案 0 :(得分:1)

CRM在实体配置中存储OptionSets,并且需要了解可能值的所有。您无法使用JS b / c添加新选项当有人使用不同的机制(获取XML,高级查找,过滤视图等)进行查询时,系统将无法解析您的值。