我遇到了需要在工作流程结束时打开新创建的报价单的情况。我有一种感觉,这将需要我创建一个使用“window.open”的非常简单的自定义工作流程,但如果有人有更好的主意,我想避免这种情况。
因此,我需要在工作流中创建新报价后立即打开它。有人对如何做到这一点有任何好主意吗?
我遇到了需要在工作流程结束时打开新创建的报价单的情况。我有一种感觉,这将需要我创建一个使用“window.open”的非常简单的自定义工作流程,但如果有人有更好的主意,我想避免这种情况。
因此,我需要在工作流中创建新报价后立即打开它。有人对如何做到这一点有任何好主意吗?
工作流程是异步的;它们在服务器上运行(而不是客户端)并且不实时运行。例如,由创建记录触发的工作流将在创建记录后的某个时间在服务器上运行(取决于系统负载等 - 它可能是一两秒,也可能是半小时后。如果您已停止服务器上的 CRM Async 服务,它们很可能永远不会运行。)
因为它们在服务器上运行,所以用户与它们没有交互。结果,您无法打开窗口,因为没有用户参与打开窗口...
您可能想要做的是使用Dialogs(在 CRM 2011 中引入)。您将无法使用window.open()
,但只要您在服务器上安装了最近的更新汇总,您就可以向用户提供指向大多数 CRM 记录的超链接。
对话框的设置与工作流非常相似,并且它们在后台使用相同的机制。不同之处在于它们是同步的(即实时运行)并且它们是客户端的。Technet 上有一些详细信息:http ://technet.microsoft.com/en-us/library/gg334463.aspx