2017-02-02 2 views
0

Ich habe eine Aktion namens Get_row, die "Package1Id" und "Package2Id" Werte ausgibt. Ich möchte eine foreach-Schleife verwenden, um diese Werte zuzugreifen, wie unten dargestellt:Logik App foreach - variabler Körper?

"parameters": { 
    "packages": { 
    "type": "array", 
    "defaultValue": "\"[ \"Package1\", \"Package2\" ]\"" 
    } 
} 

"forEach_package": { 
    "type": "foreach", 
    "foreach": "[parameters('packages')]", 
    "actions": { 
    "process_package": { 
     "type": "Compose", 
     "inputs": { 
     "what": "@{body('Get_row')?[coalesce(item(), 'Id')]}" 
     } 
    } 
    } 
} 

So ist das „was“ Werte im Wesentlichen sein sollte:

"what": "@{body('Get_row')?['Package1Id']}" 
"what": "@{body('Get_row')?['Package2Id']}" 

Ich kann es nicht scheinen, um jede Arbeit oder finden Beispiele überall. Irgendwelche Ideen, wenn ich das machen kann? TIA

Antwort

0

Sie haben einen Tippfehler in Ihrer "foreach" -Eigenschaft. Um einen Parameterwert zu verweisen, sollten Sie die @Parameter() Funktion verwenden, wie unten

"foreach": "@parameters('packages')" 

Siehe https://docs.microsoft.com/en-us/rest/api/logic/definition-language für Details (unter dem Abschnitt 'Ausdrücke')

+0

"foreach": „[Parameter ("Pakete")] "funktioniert gut, das ist nicht das Problem, aber danke für die Hilfe. Ich habe deinen Vorschlag versucht, aber das ist fehlgeschlagen. – Andy