Azure Logic Apps中如何生成3天前日期筛选SharePoint列表项?
你不需要单独初始化日期变量,直接在SharePoint「获取项」动作的筛选查询字段里用表达式生成符合要求的日期即可,具体步骤和写法如下:
核心写法(UTC时间)
在「筛选查询」中输入以下表达式:
Created lt '@{addDays(utcNow(), -3, 'yyyy-MM-ddTHH:mm:ssZ')}'
表达式说明
utcNow():获取当前UTC时间addDays(utcNow(), -3, 'yyyy-MM-ddTHH:mm:ssZ'):将当前时间减去3天,同时格式化为SharePoint OData筛选要求的ISO 8601 UTC格式(带Z后缀)- 外层的单引号是OData筛选语法要求,必须给日期值加上单引号,
@{...}是Logic App的表达式解析标记,确保内部代码被执行
若需使用本地时间
如果你的SharePoint列表用的是本地时间而非UTC,可先用convertFromUtc转换时区,再计算3天前的日期,比如中国标准时间:
Created lt '@{addDays(convertFromUtc(utcNow(), 'China Standard Time'), -3, 'yyyy-MM-ddTHH:mm:ss')}'
将China Standard Time替换为你实际需要的时区即可。
注意事项
- 确认「Created」字段的内部名称正确:如果筛选无效果,可能是字段的显示名称和内部名称不一致,可通过列表设置中查看字段的URL获取内部名称
- 日期格式必须严格符合ISO 8601要求,否则SharePoint无法识别筛选条件
内容的提问来源于stack exchange,提问作者Ofer Gal
相关产品推荐
相关产品推荐

