sharepoint - Microsoft 流程执行顺序
问题描述
我创建了一组短流程,它们作用于单个 SharePoint 列表项以降低复杂性,但我遇到了它们执行顺序的问题。我想我可以用一个例子来最好地解释这一点,所以请看下面:
假设有三个流,SetTitle、SetPermissions和SendEmail(在列更改后根据新值发送电子邮件)。理想情况下,SetPermissions将首先运行,然后是SendEmail,最后是 SetTitle ,因为它会修改项目。该修改是一个问题,因为它向版本历史添加了一个版本,我正在SendEmail流中检查该版本以查看列的值是否已更改。
但是,目前,SetTitle有时会先运行,这会破坏SendEmail,因为现在最近替换的版本不包含两个版本之前发生的列更改的记录。
我想避免在项目中创建额外的列来跟踪列更改或发送的电子邮件,因为我们正在创建这些流来避免那种混乱的复杂性。
我希望某处有一些隐藏的执行顺序选项,因为正如我所说,我真的不想基于 HTTP 调用创建额外的列或触发流。当然,我现在正在做的事情是行不通的,所以我知道我可能不得不妥协。
解决方案
我认为您正在寻找的东西不可能。
我知道您说过您不想创建更多列,但我能想到的唯一解决方案只需要创建 1 个额外的列。使用它以正确的顺序运行流程。
例如,如果有两个流:f1和f2,则将新列(我们称之为'stage')的默认值设置为0。然后,给f1添加一个条件,使其仅在stage为0时运行,并且将列更新为 1。然后 f2 还进行初始条件检查,仅在“阶段”为“1”时运行,并将“阶段”设置为“2”。
希望这可以帮助。
推荐阅读
- reactjs - 我如何将 React 前端连接到烧瓶后端
- firebase-realtime-database - 来自 js 的本机调用异常??react-native-firebase/数据库错误
- entity-framework - Entity Framework Core EF 格式化日期时间在 Azure CosmoDB 中保存为 enstring 类型
- javascript - 如何在博客主页中为每个帖子添加预览链接?
- python - 无法使用 Python 在 Selenium 中定位元素?
- python - 熊猫将列乘以分钟
- haskell - 如何使函数具有不同数量的参数
- java - Java Jackson 构造 BeanSerializer 失败
- github - 无法启动并运行我的 Github 工作流程
- java - Java:如何将列表转换为设置然后比较缺失值