使用变量值在 Azure Logic App 中设置 SQL 存储过程路径

Posted

技术标签:

【中文标题】使用变量值在 Azure Logic App 中设置 SQL 存储过程路径【英文标题】:Set SQL Stored Procedure path in Azure Logical App using a variable value 【发布时间】:2019-03-17 14:14:20 【问题描述】:

我大部分时间都在通过逻辑应用程序,但被困在下面的代码行上,该代码旨在插入从 ReportTabQuery 的上一步中解析的 json 所需的 sp 路径:

"path": "/datasets/default/procedures/@encodeURIComponent(encodeURIComponent('[dbo].[@body('ReportTabQuery')?['query']]'))"

错误如下:

无法解析模板语言表达式 'encodeURIComponent(encodeURIComponent('[dbo].[@body('ReportTabQuery')?['query']]'))': 预期的令牌“RightParenthesis”和实际的“标识符”。”。'。

我认为这是关于转义像这个问题here 这样的单引号,但我似乎无法解决。所有改变的是所需的令牌和位置值。到目前为止,我已经尝试过以下方法以及 concat() 等其他变体:

"path": "/datasets/default/procedures/@encodeURIComponent(encodeURIComponent('[dbo].[@body('ReportTabQuery')?['query']]'))"

"path": "/datasets/default/procedures/@encodeURIComponent(encodeURIComponent('[dbo].[@body('ReportTabQuery')?['query']]'))"

非常感谢任何帮助。非常感谢。

【问题讨论】:

【参考方案1】:

如果我正确理解了您要执行的操作,则需要将变量值连接到其他部分:

"path": "/datasets/default/procedures/@encodeURIComponent(encodeURIComponent(concat('[dbo].[', body('ReportTabQuery')?['query'], ']')))"

顺便说一句,我认为您不需要两次encodeURIComponent

"path": "/datasets/default/procedures/@encodeURIComponent(concat('[dbo].[', body('ReportTabQuery')?['query'], ']'))"

HTH

【讨论】:

嗨。谢谢你的回答。我现在要试试。

以上是关于使用变量值在 Azure Logic App 中设置 SQL 存储过程路径的主要内容,如果未能解决你的问题,请参考以下文章

使用Logic App监控Azure事件

我可以使用哪些操作通过 Azure Logic App 在 SharePoint Online 中创建文件夹?

在 Azure Logic App 中从 JSON 转换为 XML 时如何防止按字母排序

无法在 Java 8 中设置实例变量值

在 Azure Devops 中使用从一个 PowerShell 任务到另一个任务的变量值

Azure Logic App“对于每个”循环不起作用