首页 > 解决方案 > 无法访问在工作流定义模板中定义的参数

问题描述

我正在为逻辑应用设置工作流部署模板,并尝试在逻辑应用定义中设置参数,但无法在逻辑应用中访问它。

我已将现有逻辑应用程序下载到 Visual Studio 中,并在逻辑应用程序内(在工作流定义部分)创建了参数 Get_Profisee_Integrator_output_Path_LA。我还设置了这个参数的值。当我尝试在逻辑应用程序中访问此参数时,它显示该参数未定义。

工作流部署模板内的参数声明:

"azure_automation_account_ARM": {
      "type": "string",
      "defaultValue": "BFC-Automation"
    }

工作流定义中的参数声明:

"parameters": {           
            "Get_Profisee_Integrator_output_Path_LA": {
              "defaultValue": "[concat(subscription().id,'/resourceGroups/',resourceGroup().name,'/providers/Microsoft.Automation/automationAccounts/',parameters('azure_automation_account_ARM'),'/jobs/@{encodeURIComponent(body(''Run_Profisee_Integrator_Job'')?[''properties'']?[''jobId''])}/output')]",
              "type": "String"
            }
          }

**Parameter set value:**

          "Get_Profisee_Integrator_output_Path_LA": {
            "value": "[concat(subscription().id,'/resourceGroups/',resourceGroup().name,'/providers/Microsoft.Automation/automationAccounts/',parameters('azure_automation_account_ARM'),'/jobs/@{encodeURIComponent(body(''Run_Profisee_Integrator_Job'')?[''properties'']?[''jobId''])}/output')]"

        }

在逻辑应用程序中访问参数 Get_Profisee_Integrator_output_Path_LA:

"definition": {
          "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
          "actions": {
            "Get_Profisee_Integrator_output": {
              "runAfter": {
                "Run_Profisee_Integrator_Job": [
                  "Succeeded"
                ]
              },
              "type": "ApiConnection",
    "inputs": {
                                "host": {
                                    "connection": {
                                        "name": "@parameters('$connections')['azureautomation']['connectionId']"
                                    }
                                },
                                "method": "get",

                                "path": "[parameters('Get_Profisee_Integrator_output_Path_LA')]",
                                "queries": {
                                    "x-ms-api-version": "2015-10-31"
                                }
                            }
            }

我应该能够访问参数 Get_Profisee_Integrator_output_Path_LA 来设置操作的路径,但不能。请帮忙。

标签: parameter-passingazure-logic-apps

解决方案


我通过为路径参数创建单独的参数并使用它们来评估路径来使其工作。

"path": "/subscriptions/@{encodeURIComponent(parameters('subscription_Id_LA'))}/resourceGroups/@{encodeURIComponent(parameters('resource_Group_Name_LA'))}/providers/Microsoft.Automation/automationAccounts/@{encodeURIComponent(parameters('bfc_Automation_Account_Name_LA'))}/jobs/@{encodeURIComponent(body('Run_Profisee_Integrator_Job')?['properties']?['jobId'])}/output",

推荐阅读