You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Power Automate中正确设置orderHint保留Microsoft Planner清单项顺序

解决Power Automate中Planner清单项顺序保留问题

核心原理

Planner的orderHint字段仅尊重符合字典序排序规则的唯一字符串,默认生成的是18位数字格式字符串。只要自定义的orderHint满足「长度一致、按目标顺序递增、无重复」的要求,Planner就不会覆盖它。

具体实现步骤

1. 先对源清单项按标题数字排序

在Power Automate中,先获取源任务的所有清单项,使用sort()函数结合数字提取表达式,确保遍历顺序是目标顺序:

sort(
  outputs('获取源任务的清单项')?['body/value'],
  int(first(split(item()?['title'], ' - ')))
)

这里用int()把提取的数字字符串转为整数,保证排序是数字顺序而非字典序(避免"10"排在"2"前面的问题)。

2. 生成合规的orderHint值

  • 初始化一个整数变量orderIndex,初始值设为1。
  • 在遍历排序后的清单项时,用以下表达式生成18位的orderHint(和Planner默认格式一致):
formatNumber(variables('orderIndex'), '000000000000000000')
  • 创建清单项时,将这个表达式的结果填入「Order hint」输入框。
  • 每次创建完成后,执行「递增变量」动作,把orderIndex加1。

3. 关键注意事项

  • 必须先排序再创建,不要先批量创建再更新orderHint,后者容易被Planner自动调整排序逻辑。
  • orderHint必须唯一,且严格按目标顺序递增,不能出现跳号或重复值。
  • 保持18位长度是最优选择,和Planner内部生成的格式对齐,避免系统自动修正。

为什么之前的方案失效?

  1. 直接用提取的短数字(如"02")作为orderHint,长度不符合Planner默认格式,会被系统自动补全或替换。
  2. 先创建后更新的方式,Planner会判定为无序状态下的调整,优先使用自身排序逻辑覆盖自定义值。
  3. 重复创建动作不会改变Planner的排序规则,反而可能导致重复项或排序混乱。

内容的提问来源于stack exchange,提问作者Dario.Casciato

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 02:57:02