退出自定义 C# CRM 工作流回到设计器工作流
Exit custom C# CRM Workflow back into designer workflow
我正在开发一些自定义 CRM 工作流程,其中一些需要发送电子邮件。据我所知,这不能通过代码来完成。我想要实现的是 - 运行 一些自定义代码,并根据该代码期间发生的情况,即 Web 服务的超时异常引发异常或所述 Web 服务发生验证错误,工作流程将重试或发送电子邮件。
因此,使用上面的示例,自定义工作流程是 运行 当 CRM 字段更改时。工作流调用 Web 服务,该服务超时。然后工作流发现它是 TimeoutException
,并添加一个步骤来重试工作流。工作流重新启动,并抛出 ArgumentException
。工作流拾取此异常,并在表单中设置一个字段。 (我知道这可以在代码中完成,这只是一个例子,因为我希望在许多工作流程的许多领域使用这个功能!)
我想到的唯一方法是在表单上创建一个名为工作流操作的新字段,让工作流检测更改,然后自定义代码更改此字段。工作流知道它已更改为什么状态并相应地进行操作。
谢谢。
Plusheen,
您可以根据需要在自定义代码中设置输出参数,并在开箱即用的工作流设计器中的下一步中访问该参数。在设计器中使用条件表达式来检查输出并根据自定义代码的结果执行您想执行的操作。
希望这是您要找的东西。如果您需要更多信息,请告诉我。
我正在开发一些自定义 CRM 工作流程,其中一些需要发送电子邮件。据我所知,这不能通过代码来完成。我想要实现的是 - 运行 一些自定义代码,并根据该代码期间发生的情况,即 Web 服务的超时异常引发异常或所述 Web 服务发生验证错误,工作流程将重试或发送电子邮件。
因此,使用上面的示例,自定义工作流程是 运行 当 CRM 字段更改时。工作流调用 Web 服务,该服务超时。然后工作流发现它是 TimeoutException
,并添加一个步骤来重试工作流。工作流重新启动,并抛出 ArgumentException
。工作流拾取此异常,并在表单中设置一个字段。 (我知道这可以在代码中完成,这只是一个例子,因为我希望在许多工作流程的许多领域使用这个功能!)
我想到的唯一方法是在表单上创建一个名为工作流操作的新字段,让工作流检测更改,然后自定义代码更改此字段。工作流知道它已更改为什么状态并相应地进行操作。
谢谢。
Plusheen,
您可以根据需要在自定义代码中设置输出参数,并在开箱即用的工作流设计器中的下一步中访问该参数。在设计器中使用条件表达式来检查输出并根据自定义代码的结果执行您想执行的操作。
希望这是您要找的东西。如果您需要更多信息,请告诉我。