2

在我的实体中,我使用了两个选项集...选项集一个(名称---> new_location)包含海得拉巴,孟买等项目

选项集二(名称---> new_places)包含 Hussainsagar、Tank Bund、Imax、Bandra-Worli Sea Link、Marine Drive、Mount Mary Church 等项目。

如果我在选项集中选择海得拉巴,则选项集二显示前 3 个项目,即 Hussainsagar、Tank Bund、Imax 如果我选择 Mumbai 选项集二显示剩余项目...

何可能..??

请帮我!

4

2 回答 2

2

这是执行此操作的示例代码:

optionSetChanged = function () {
var optionsetControl = Xrm.Page.ui.controls.get("new_places");
var options = optionsetControl.getAttribute().getOptions();

 var value = Xrm.Page.getAttribute("new_location").getValue();
// first option is selected
if (value == 1) {
    optionsetControl.clearOptions();
    for (var i = 0; i < options.length - 1; i++) {
        if (i == 0 || i == 1) {
            optionsetControl.addOption(options[i]);
        }
    }
}
// else is second option is selected
else if (value == 2) {
    optionsetControl.clearOptions();
    for (var i = 0; i < options.length - 1; i++) {
        if (i == 2 || i == 3 || i == 4) {
            optionsetControl.addOption(options[i]);
        }

    }
  }
} 

希望清楚!

于 2012-09-28T08:31:14.000 回答
1

这对于非常短的集合来说是可以的,但很快就会变得难以管理并且脚本变得非常大。考虑改为使用两个自定义实体 - 一个用于城市,一个用于区域/区域/地点(无论您想如何称呼它)

从 Account 中添加与这些中的每一个的关系(因此 Account N:1 city / place)并在 Account 表单中添加这些新的查找字段

在区域实体上添加对其所在城市的查找并将其设为必填字段。

现在,您无需脚本即可轻松地根据城市过滤地点 - 编辑帐户表单上的地点字段,并在“显示”选项卡上查找“相关记录过滤”。过滤地点,使其仅显示已在帐户中选择的城市中的地点。

您可以使用普通数据导入方法轻松导入城市及其地点(而不是手动构建选项集)。您还可以控制哪些用户可以添加新城市或地点(即使用查找中的“新建”按钮),而无需任何管理员访问权限,因此经理可以添加新城市,而其他员工可能只能在现有的城市。

您可以使用这些相同的实体来查找客户、联系人、潜在客户 - 真正想要的任何地方!

不要忘记用户都需要对新实体的一些权限,特别是“读取”和“附加到”权限。

于 2012-09-28T10:24:00.817 回答