Dynamics crm 2011 如何在不破坏Web UI的情况下编辑CRM工作流xaml

Dynamics crm 2011 如何在不破坏Web UI的情况下编辑CRM工作流xaml,dynamics-crm-2011,sharepoint-workflow,Dynamics Crm 2011,Sharepoint Workflow,我有一个使用CRM工作流UI创建的工作流。不知何故,UI允许我使用自定义活动创建工作流,该活动将SystemUserRole作为输入实体。您不能将其用作输入实体,因为它是多个关系实体。因此,尽管UI最初允许它,但尝试打开工作流以在以后编辑它会导致一个异常,即CRM无法“检索”SystemUserRole实体 因此,由于我无法在UI中打开工作流来解决此问题,因此我导出了工作流,并使用我导出的另一个工作流中的某个示例xaml编辑了xaml,该工作流引用了正确/预期的输入实体类型“角色” 但是,现在当

我有一个使用CRM工作流UI创建的工作流。不知何故,UI允许我使用自定义活动创建工作流,该活动将SystemUserRole作为输入实体。您不能将其用作输入实体,因为它是多个关系实体。因此,尽管UI最初允许它,但尝试打开工作流以在以后编辑它会导致一个异常,即CRM无法“检索”SystemUserRole实体

因此,由于我无法在UI中打开工作流来解决此问题,因此我导出了工作流,并使用我导出的另一个工作流中的某个示例xaml编辑了xaml,该工作流引用了正确/预期的输入实体类型“角色”

但是,现在当我将工作流导入CRM时,UI显示:

Processes designed outside the Microsoft Dynamics CRM web application 
cannot be viewed or edited in the web application.
关于这一点,我有几个问题:

  • crm是如何知道工作流已编辑的?我使用CRM生成的xaml来解决这个问题,其他一切都保持不变
  • 在导出的工作流中是否存储了哈希或md5
  • 我可以生成一个新的哈希来愚弄CRM,使其认为工作流源自Web UI吗

  • 各位好消息!CRM 2011不知道您是否编辑了xaml,没有隐藏的哈希或其他机制确保导入的xaml仅由CRM生成

    但是,如果xaml中存在任何不一致,则会出现上面的误导性消息

    在我的例子中,工作流中的每个变量都有一个唯一的TypeArgument名称。我没有将从工作示例xaml复制的名称更新为已在中断的工作流中使用的TypeArgument名称

    一旦我解决了这个问题,CRM很高兴地导入了工作流,我可以编辑它