2

我有一个关于我面临的问题的问题。有什么方法可以让工作流程等待另一个工作流程完成(或者至少在第一个工作流程执行后几秒钟触发)?

我的场景:我有一个工作流等到合同到期日期前 6 个月,一旦到达该日期,它就会创建一个自定义实体,并且在自定义实体上我注册了一个插件,它创建一个机会并插入一个机会产品线(对于到期的合同行)。

问题:合同可以有多个合同行在同一日期到期,因此工作流程开始并创建多个机会,将每一行添加到一个机会中,这不应该发生,因为我希望所有合同行最终都在一个机会中。这不会经常发生,但我相信当工作流同时执行时,我会得到这种奇怪的行为。

任何帮助将非常感激。谢谢。

4

1 回答 1

1

我通常会采取的方法是这样的:稍等片刻,然后检查相关记录(在这种情况下为合同行或合同)上的查找字段。如果未填写,请创建一条记录(在您的情况下为 Opp)并填写查找以指向它。

现在调用一个子工作流,或者只是对查找中的记录执行一些步骤,我们知道现在以一种或另一种方式填充。

因此,第一个 WF 看到没有 Opp,创建一个然后对其进行处理(例如,在自定义工作流程序集中)。

第二个 WF 到了那里,发现 Opp 已经在那里,所以使用它。

您遇到的问题是,一旦开具发票/激活合同,您就无法更新合同。因此,您可能必须首先创建机会(未来的结束日期打开),然后让您的工作流程运行,等待并在他们到达那里时使用这个机会。

如果你真的不喜欢那么多开放的 Opps,那么在两者之间创建一个层 - 从 Contract 查找到“更新”自定义实体,它本身除了保存 Opportunity 查找之外什么都不做。在创建合同(wf 或插件)时创建续订,以便已填充查找。

于 2013-03-15T14:21:02.173 回答