0

我在 Microsoft CRM (4.0) 中有一个自定义实体。用户必须输入记录,但通常他们有一批 20 多条记录,除了需要更改的 2 或 3 个字段之外几乎相同。我知道我需要编写一些自定义代码来启用此功能。但是,任何人都可以推荐任何方法来做到这一点。

理想情况下,应该有一个按钮可以将副本保存并创建为新实体。

我目前的想法是将所有详细信息作为 URL 的一部分传递,并使用 javascript 在页面加载事件中将它们剥离。欢迎任何想法。

谢谢卢克

4

3 回答 3

2

我在这里找到了答案:

http://mscrm4ever.blogspot.com/2008/06/cloning-entity-using-javascript.html

我用过它,它似乎工作得很好。

于 2009-07-17T13:28:52.710 回答
0

由于有许多字段,但只有某些字段值不同,所以我正在考虑为所有字段设置默认值,以便用户只需要在需要时更改这些值。

在我的方法中,我将在加载表单数据输入屏幕时挂钩一个 javascript 函数,并使用 XmlHttp 方法/Ajax 方法挂钩到自定义 Web 服务以提取/检索每个字段的默认值。或者您可以在 javascript 函数本身设置这些值,但这样做的缺点是以后很难自定义。因此,我将选择挂钩到自定义 Web 服务并从某个应用程序参数实体中检索这些值的方法。

您提供“克隆”按钮的想法也是一个好主意,这意味着它将先前记录的所有属性复制到新记录中,这样可以节省数据输入人员自定义不同值的时间

编辑

既然您将以批处理模式输入记录,那么如何自定义 .ASPX 屏幕来输入记录。通过 .ASPX 屏幕进行自定义,您可以使用选项卡,以便用户可以通过选项卡浏览,自定义每条记录的值/属性。

将有一个“保存”按钮以及“克隆”按钮来克隆一些常见的属性或值。

于 2009-07-10T14:01:58.607 回答
0

我将创建一个自定义 Web 服务,该服务将接受实体类型和我正在克隆的记录的 ID。您的“保存并克隆”按钮将调用该服务,该服务将处理检索当前记录并决定在新记录上设置哪些字段的详细信息。该服务创建记录,并将记录的 Guid 发送回您的按钮,然后打开新创建的记录。

这样,您可以避免在 JavaScript 中设置/获取值以及将要设置/检索的字段直接绑定到 OnLoads 的混乱,以及避免查询字符串太长的可能性。

该服务可以很容易地被充分概括,因此您所要做的就是将您的按钮添加到任何实体,它会工作,假设您设置您的服务来处理该特定实体。

一个可能的缺点是,由于克隆记录按钮实际上会创建记录,如果用户决定他们根本不想克隆记录,他们将被迫删除克隆的记录。

于 2009-07-10T14:33:49.327 回答