我对我面临的问题有疑问。有没有什么方法可以让工作流等待另一个工作流完成(或者至少在第一个工作流执行后几秒钟开火)?
我的场景:我的工作流程等到合同到期日期前6个月,一旦达到该日期,它就会创建一个自定义实体,并且在cutom实体上我有一个注册的插件,它创建了一个机会并插入一个机会产品line(对于过期的合约行)。
问题:合同可能有多个合同在同一天到期,因此工作流程启动并创建多个机会,在一个机会中添加每一行,这不应该发生,因为我希望所有合同行最终合并为一个机会。这种情况不会经常发生,但我相信当worflows在同一时间执行时,我会得到这种奇怪的行为。
非常感谢任何帮助。感谢。
答案 0 :(得分:1)
我通常采用的方法是: 等待一段时间,然后检查相关记录上的查询字段(在这种情况下是合同行或合同)。如果没有填写,请创建一个记录(在您的情况下为Opp)并填写查找以指向它。
现在调用子工作流程或者只是对查找中的记录执行一些步骤,我们知道这些记录现在以某种方式填充。
所以第一个点击它的WF看不到Opp,创建一个然后做它的东西(例如在自定义工作流程组装中)。
第二个WF到达那里并发现Opp已经存在,所以使用它。
您遇到的问题是,一旦开具发票/激活,您就无法更新合同。因此,您可能必须首先创建机会(未来的est关闭日期),然后让您的工作流程运行,等待并在它们到达时使用此工作流程。
如果你真的不喜欢那么多开放的Opps,那么在它们之间创建一个层 - 从Contract转到“续订”自定义实体,它本身除了持有机会查找之外什么都不做。在创建合同(wf或插件)时创建续订,以便已填充查找。