Hämtar fel med null-fält

Den här artikeln innehåller en lösning på ett fel som uppstår när du skapar ett flöde i Microsoft Power Automate.

Gäller för: Power Automate
Ursprungligt KB-nummer: 4535432

Symptom

När du skapar ett flöde i Microsoft Power Automate kan det här hända med ett null-fält som orsakar problem:

  1. Du kanske förväntar dig fel beteende när du utför en åtgärd med null-fält.

  2. Om du inte hanterar null-fält korrekt kanske du förväntar dig körningsfel som:

    • InvalidTemplate. Det går inte att bearbeta mallspråkuttryck. Det angivna värdet är av typen Null.

    Skärmbild av det ogiltiga körningsfelet för mallen.

Orsak

  • Om ett flöde körs med ett null-fält orsakar det:
    • Fel beteende: flödesåtgärdens indata tar emot null-fält när den förväntar sig ett annat värde.
  • Använd uttryck mot null-fält. Det kommer att orsaka:
    • Körningsfel: uttrycket förväntar sig att parametern är en sträng, ett objekt eller en matris men får null.

Lösning av flödesfel

Du kan konfigurera en villkorskontroll för null-fält. Här följer stegen för att skapa en villkorskontroll för null.

  1. Lägg till en ny villkorsåtgärd.

    Skärmbild för att lägga till en ny villkorsåtgärd i fönstret Välj en åtgärd.

  2. Välj utdata för dynamiskt innehåll (till exempel e-post för användare) som du vill kontrollera.

    Skärmbild där du väljer utdata för dynamiskt innehåll som du vill kontrollera.

  3. Ange att åtgärden ska vara (till exempel) inte är lika med.

  4. Ange värdefältet som uttrycksvärdet null.

    Skärmbild som anger värdefältet som uttrycksvärdet null.

Körningsfelmatchning

Du kan också använda funktionen coalesce för att ange standardvärden när ett värde är null. Om du till exempel använder coalesce(trigger().outputs kommer '') som standard att vara tom sträng när trigger().outputs är null.

Skärmbild där funktionen coalesce används för att ange standardvärdena när ett värde är null.

Obs!

Om du fortfarande får ett körningsfel kan det bero på null-referensegenskaper i ett objekt. Du bör använda frågeteckenoperatorn ?. Om du till exempel vill hantera null-utdata från en utlösare kan du använda det här uttrycket:
@coalesce(trigger().outputs?.body?.<someProperty>, '<property-default-value>').

Mer information finns i Coalesce och Operatorer.