在CRM机会中自动生成编号

时间:2009-05-19 12:24:04

标签: c# plugins dynamics-crm dynamics-crm-4

假设我在Account中添加了一个名为Acc Code的字段。在此字段中,用户可以手动输入2位数字母。示例:用户创建名称为“Successful Company Pty Ltd”的帐户,用户手动输入带有“SC”的Acc代码。用户使用名称“Another Company Pty Ltd”创建另一个帐户,用户输入Acc代码“AC”。

在机会上,我添加了一个名为Opp Code的字段。此字段包含5位数字,来自潜在客户的Acc代码的2位数字母表(由Opportunity作为客户引用的帐户),3位数字是自动编号。自动编号取决于潜在客户。这意味着,对于潜在客户“Succesful Company Pty Ltd”,Opp代码为SC001,如果再次有新的机会,则代码为SC002。如果为潜在客户“Another Company Pty Ltd”创建商机,则开头的Opp代码为AC001。

我需要有关如何实施自动编号的建议取决于潜在客户。我想象使用插件,但不确定如何搜索最后的Opp代码编号(因为数字取决于Acc代码)。有人会介意帮忙或举例说明如何做到这一点吗?

谢谢:)

3 个答案:

答案 0 :(得分:1)

这是一个伪代码解决方案。

  • 您可以搜索以“Acc Code”开头的所有“Opp Code”。
  • 然后解析那些“Opp代码”(你知道它是AA000,所以你删除那两个首字母)然后取最大数字然后加1。
  • 然后,您可以将新的“Opp代码”设置为您的机会。
祝你好运

答案 1 :(得分:1)

插件路线似乎确实是最好的方法。我首先要在白板或纸上画出我的过程。当发生的事情发生时你需要非常清楚。然后你可以开始编写插件,因为你知道在哪里需要发生什么。

我相信你已经找到了很多关于如何编写Crm插件的资源。为Crm开发最棘手的事情是对任何类型的开发来说都是最艰难的事情,你必须决定如何做事。例如:

  • 可以从Outlook客户端创建/修改商机吗?
  • 如果我使用的是联系人而不是帐户会怎样?
  • 那么它会接收联系人的父帐户吗?
  • 创建帐户后,是否可以更改帐户?

一旦你清楚地了解了你想做什么,我相信当你遇到特定的问题时,社区可以给你很多帮助。

基于所有这些问题,将是如何最好地解决这个问题的答案。可能是客户对此非常期待,并且您必须提出一个可能不是非常强大,但比完整插件更快开发的解决方案。

答案 2 :(得分:0)

我将如何做:

  1. 在帐户实体上创建可以保留机会计数器的附加字段
  2. 创建新帐户时,将该字段设置为1,因为这将是分配给该帐户作为潜在客户的商机的下一个编号。
  3. 创建新商机时,在帐户的字段中查找下一个号码。
  4. 将该号码分配给机会opp代码
  5. 增加帐号。
  6. 步骤3 - 5应该是插件。重要的是它们作为原子操作执行,当时只执行一次。使用Mutex类来确保,因为crm插件在多个进程中执行。 (除非你有农场部署。在这种情况下,互斥不起作用。)