我已经在CRM 2011中创建了一个简单的工作流,它检查一个实体中的字段值,并在另一个实体中创建新记录。然而,有时,创建并没有发生,只是看起来条件没有在它应该满足的时候得到满足。
考虑一个名为"Car“的实体,它有一个名为"Task”的文本字段。此任务字段将始终保存为以下4个可能值中的一个:"“、"Add”、"Change“、"Delete”。
该值用于确定工作流的处理方式。
当一个不同的字段-“驱动程序”改变时,工作流被设置为触发。
工作流程是这样设置的……
- Condition
- If "Task" == "Add"
- create new record
- Else if "Task" == "Change"
- create new record
- Else if "Task" == "Delete"
- create new record
- Reset "Task" to ""注意:根据任务的不同,创建的记录使用不同的值
我可以看到,工作流总是在预期的时候触发,并且“条件”和“重置”都会被处理。问题是有时(尽管目前还没有)没有创建任何记录-这表明没有任何IF条件被满足。然而,我没有理由解释为什么。我可以看到,字段"Task“在保存之前总是按照预期设置的(拼写/大小写和全部)
那么,CRM工作流程中有没有什么已知的问题可以解释这个问题呢?有没有更深入的方法来调试这些问题?(即在"Condition“检查时检查"Task”的值)
我想知道有没有可能工作流的“重置”部分是在条件出现之前以某种方式进行处理的?对于该条件,检查一个空白字段。
任何帮助都将不胜感激,谢谢!
发布于 2011-10-06 23:24:50
不幸的是,自从我第一次创建工作流以来,我就再也没有遇到过这个问题。
然而,在评论中提供了一些关于如何调试这类问题的好技术-感谢那些人!
首先,你可以打开Entity Auditing,它将帮助你追踪哪里出了问题。
另一种选择是从工作流中发送带有当前数据值的电子邮件以进行调试,或者在没有满足任何条件时添加最后一个"else“子句来发送电子邮件(即使所有条件似乎都在工作,这也可能是一个很好的故障保护措施)-我喜欢第二种选择,因为它更具”开箱即用“的思维方式;)
无论如何,您可以在here工作流程中找到有关发送电子邮件的信息
https://stackoverflow.com/questions/7594493
复制相似问题