2011-10-27 66 views
2

默认情况下,Microsoft Dynamics CRM 2011中的国家和州/省字段是纯文本框。将MS CRM国家和州字段转换为下拉列表

我希望它们是下拉菜单,而状态下拉菜单则根据国家/地区下拉菜单中的选择进行更新。但是,我不想为世界上的每个国家推出州和省,所以任何未配置的应该只显示正常的文本框。

回答

3

经过许多不同的解决方案,我们没有找到任何符合我们要求的方式,所以我们创建了一个新的解决方案。

我们创建了一个countries_and_states.js脚本,该脚本将国家/地区字段转换为驱动州/省字段的下拉列表。州/省字段将作为已配置国家/地区的下拉菜单(默认情况下为美国和加拿大,但很容易添加您自己的国家/地区)。如果国家/地区尚未配置,州/省字段将回退到默认文本框。

有关如何使用它的更多信息可以在on this blog post上找到。

1

有一个动态控制(我认为组合框描述了你想要实现的)唯一的'批准'方式是使用可以通过JavaScript与表单数据交互的Silverlight/HTML Web资源。

我们一直在使用类似于您的方法来创建多选择选择列表(将文本字段转换为复选框列表,然后将结果存储为CSV),但是我们遇到了一个问题,您可能会遇到想要知道。

为了让ISV通过MS CRM Marketplace获得其产品,产品需要通过ISV软件测试(.doc available here)。 DOM的改变不被该测试允许:

直接修改CRM UI 组件的文档对象模型(DOM)能够破坏该应用程序和/或完全打破它。

如何遵守

•不要直接访问或修改文档对象模型(DOM)任何CRM UI组件/控制的 。

因此,我们发现我们必须重新访问我们的代码才能更换JavaScript DOM,以支持更重的Silverlight控件,但最终还是支持Silverlight控件。

如果您不打算利用市场,那么这不需要影响您,除了要知道您的修改可能不会在将来的CRM更新中被支持。

+0

我们只是对单个实例进行自定义,所以DOM摆弄对我们来说是很好的(现在,显然)。我们已经考虑过生产一些CRM Marketplace解决方案,所以这是非常有用的信息,谢谢。 – phloopy