Logic App中Set Variable使用ConvertTimeZone表达式报错咨询
Logic App Set Variable表达式报错问题排查
1. 表达式输入模式错误
Set Variable操作中若未切换到表达式模式(点击输入框右侧的fx按钮),直接输入表达式文本会被当作普通字符串处理,引发解析报错。而Create Blob的文件名设置可能默认或你当时正确切换了模式,所以能正常运行。
解决办法:点击Set Variable输入框右侧的fx按钮进入表达式编辑模式,再输入完整表达式:
formatDateTime(convertTimeZone(utcNow(),'UTC','GMT Standard Time'),'yyyy-MM-dd')
2. 时区标识符解析差异
不同Logic App操作对微软时区标识符(如GMT Standard Time)的解析存在细微差异,Create Blob支持但Set Variable的表达式引擎可能无法识别。
解决办法:替换为IANA标准时区标识符(如Europe/London,对应GMT/BST),修改后表达式:
formatDateTime(convertTimeZone(utcNow(),'UTC','Europe/London'),'yyyy-MM-dd')
3. 隐式类型转换失败
尽管formatDateTime返回字符串类型,但Set Variable的字符串类型校验更严格,可能出现隐式转换失败。
解决办法:用string()显式转换结果为字符串:
string(formatDateTime(convertTimeZone(utcNow(),'UTC','GMT Standard Time'),'yyyy-MM-dd'))
内容的提问来源于stack exchange,提问作者Vivek KB
相关产品推荐
相关产品推荐

