Невозможно установить значение переменной, оно всегда принимает начальное значение в приложении логики - PullRequest
0 голосов
/ 26 июня 2019

У меня есть одна переменная, я устанавливаю значение по умолчанию как 0.

В for_each я устанавливаю новое значение в переменную startIndex и использую эту переменную в For_each, но она все еще использует старое 0 значение.

код приложения логики -

{
    "definition": {
        "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
        "actions": {
            "For_each_2": {
                "actions": {
                    "Set_variable_3": {
                        "inputs": {
                            "name": "output",
                            "value": "@{split(items('For_each_2'),':')[0]}:@{substring(variables('mydata'),variables('startindex'),int(split(items('For_each_2'),':')[1]))}"
                        },
                        "runAfter": {},
                        "type": "SetVariable"
                    },
                    "Set_variable_4": {
                        "inputs": {
                            "name": "startIndex",
                            "value": "@int(split(items('For_each_2'),':')[1])"
                        },
                        "runAfter": {
                            "Set_variable_3": [
                                "Succeeded"
                            ]
                        },
                        "type": "SetVariable"
                    }
                },
                "foreach": "@variables('splitvar')",
                "runAfter": {
                    "Initialize_variable_9": [
                        "Succeeded"
                    ]
                },
                "type": "Foreach"
            },
            "Initialize_variable_5": {
                "inputs": {
                    "variables": [
                        {
                            "name": "mydata",
                            "type": "String",
                            "value": "abcdefg"
                        }
                    ]
                },
                "runAfter": {},
                "type": "InitializeVariable"
            },
            "Initialize_variable_6": {
                "inputs": {
                    "variables": [
                        {
                            "name": "key",
                            "type": "String",
                            "value": "AA:3;BB:2"
                        }
                    ]
                },
                "runAfter": {
                    "Initialize_variable_5": [
                        "Succeeded"
                    ]
                },
                "type": "InitializeVariable"
            },
            "Initialize_variable_7": {
                "inputs": {
                    "variables": [
                        {
                            "name": "splitvar",
                            "type": "Array",
                            "value": "@split(variables('key'),';')"
                        }
                    ]
                },
                "runAfter": {
                    "Initialize_variable_6": [
                        "Succeeded"
                    ]
                },
                "type": "InitializeVariable"
            },
            "Initialize_variable_8": {
                "inputs": {
                    "variables": [
                        {
                            "name": "output",
                            "type": "String"
                        }
                    ]
                },
                "runAfter": {
                    "Initialize_variable_7": [
                        "Succeeded"
                    ]
                },
                "type": "InitializeVariable"
            },
            "Initialize_variable_9": {
                "inputs": {
                    "variables": [
                        {
                            "name": "startIndex",
                            "type": "Integer",
                            "value": 0
                        }
                    ]
                },
                "runAfter": {
                    "Initialize_variable_8": [
                        "Succeeded"
                    ]
                },
                "type": "InitializeVariable"
            }
        },
        "contentVersion": "1.0.0.0",
        "outputs": {},
        "parameters": {},
        "triggers": {
            "manual": {
                "inputs": {
                    "schema": {}
                },
                "kind": "Http",
                "type": "Request"
            }
        }
    }
}

1 Ответ

1 голос
/ 26 июня 2019

Вам необходимо включить контроль параллелизма для каждого действия.По умолчанию для каждого действия запускается Degree of Parallelism set to 20.Таким образом, он выполняет действие 20 раз параллельно, как поведение по умолчанию.Уменьшите до 1.

Settings[1]

Degree of Parallelism] 2

...