如何删除工作流

How to remove a workflow

当仍有记录 'in process' 时,是否有办法从应用程序中完全删除工作流?我已经尝试停用工作流程,但当然它不会允许,虽然仍有记录 'in' 工作流程。

更新: 我确实尝试将字段设置为 0/false。这确实允许我删除工作流字段,但不允许删除工作流本身。我开始查看数据库表并找到 tblEnrolledContenttblContentReviewStage。在 tblEnrolledContent 中,我在 review_stage id 中找到了与 tblContentReviewStage 中的工作流阶段匹配的记录 'stuck'。我删除了等于该阶段 ID 的记录,然后我能够毫无问题地删除工作流。我确实在开发环境中尝试过这个。我对应用程序没有任何问题,在应用程序上创建新工作流也没有问题。

射手v6.x解法:
您可以通过 管理 -> 高级工作流程 -> 作业故障排除 终止 Archer 中现有的工作流程作业。您可以在那里 sort/filter 并确定适用于您所处理的应用程序的工作流作业。您可以 select 所有适用的,然后按键盘上的 "Delete" 按钮批量删除。

这应该会删除工作流作业,但保留应用程序记录。之后,您应该能够在您的应用程序中停用高级工作流程。

射手v5.x推荐:
RSA 建议不要使用 Archer v5.x 中的工作流功能,原因有很多(不灵活、文档不完整、记录卡住等)。这就是为什么在 v6 中它已在后端的新引擎上被 Advanced Workflow 运行 取代。
如果您想在记录卡在那里时删除工作流程,我会执行以下操作:

  1. 确定应用程序中由工作流创建和使用的所有字段。
  2. 使用 SQL 使用 GUID 在 table "tblFieldDef" 中找到这些字段并将以下标志设置为 FALSE(或 0)(如果可用):system、aso、locked
  3. 将这些标志设置为 0 后,您将能够使用应用程序生成器删除这些字段,因此请删除它们。
  4. 删除驱动工作流的字段后,尝试删除工作流本身。

我希望这对你有用。

注意:
[1] 在删除任何与工作流相关的内容之前,通过生成一个包并将其保存在本地来备份您的应用程序 fields.This 应首先在非生产环境中进行测试。
[2] 在非生产环境中进行测试。我自己没有测试过这种方法。

祝你好运!

在 5.5 中 - 找到的解决方案是删除 tblEnrolledContent 中的行,其中 stage_id = tblContentReviewStage 中工作流阶段的 ID。这让我可以在应用程序构建器中完全删除工作流。