2017-03-07 11 views
1

Was ist der richtige Weg, um Booleans in Logic Apps-Bedingungen zu verwenden? Wenn der bool-Wert auf "true" gesetzt ist, sollte der Workflow im JA-Zweig fortgesetzt werden, aber ich erhalte immer die folgende Fehlermeldung:Boolean funktioniert nicht in Logic App-Bedingung

ActionBranchingConditionNotSatisfied. Die Ausführung der Vorlagenaktion 'HTTP' wurde übersprungen: Die Verzweigungsbedingung für diese Aktion wurde nicht erfüllt.

{ 
    "reservations": { 
    "sendBooking": true 
}} 

enter image description here

Antwort

3

Wenn Sie schalten Sie auf "Erweitert-Modus" in der Bedingung Karte, sollten Sie den Ausdruck sehen sieht aus wie @equals(triggerBody()?['sendBooking'], 'true')

es ein Update auf @equals(triggerBody()?['sendBooking'], true) und Ihre Logik sollte Arbeit.

Dies liegt daran, dass wir true standardmäßig als String behandeln, aber in diesem Fall muss es ein Boolescher Wert sein.

Workaround oben sollten Sie entsperren, werde ich mit dem Team diskutieren, um zu sehen, wie dieses Szenario besser behandelt werden kann.

+0

Das funktioniert auch nicht "ist Bedingung zu komplex oder ungültig. Kann nicht in den Grundzustand wechseln." @ Equals (triggerBody()? [ 'Reservierungen']? [‘ sendBooking '], true) –

+1

Die Fehlermeldung wird angezeigt, dass die Statuskarte nicht zur Basisansicht zurückkehren kann. Sie sollten jedoch in der Lage sein, Logic Apps unabhängig von dieser bestimmten Nachricht zu speichern und auszuführen. –

+0

@DerekLi Wann wird das behoben und gibt es einen besseren Weg? Sollten wir eine boolesche Variable verwenden? – Chris76786777

0

Die Problemumgehung war das Entfernen der '' in Codeansicht, dann konnte ich die Logik-App speichern. Aber der Fehler existiert immer noch im Designer.

enter image description here

enter image description here