Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Einleitung

Die Schleifenfunktion ist ein leistungsstarkes Werkzeug, das es ermöglicht, über Arrays zu iterieren und Bedingungen auf Objekte anzuwenden. Sie kann auch verschachtelt werden, um komplexe Abfragen und Operationen durchzuführen.

Für das bessere Verständnis der Funktion, sollte das Bedingungen durch WENN Funktion in produkt templates bereits bekannt sein.

Syntax

Die allgemeine Syntax der Schleifenfunktion ist wie folgt:

Codeblock
__% Schleife( <Daten>, <Feld>, <Operator>, <Wert> ) %__
    <Template Code>
__% Ende() %__

Parameter

  • <Daten>: Dies ist das Array oder das Objekt, über das iteriert wird.

  • <Feld>: Dies ist das Feld im aktuellen Kontext, das überprüft wird.

  • <Operator>: Dies ist der Vergleichsoperator. Es kann '=', 'EXIST' usw. sein.

  • <Wert>: Dies ist der Wert, mit dem das Feld verglichen wird.

...

Operator

Beschreibung

=

Gleich

!=

Ungleich

Kleiner als

Größer als

<=

Kleiner oder gleich

>=

Größer oder gleich

HASITEMS

Überprüft, ob die Variable Elemente enthält

HASNOITEMS

Überprüft, ob die Variable keine Elemente enthält

EXIST

Überprüft, ob die Variable existiert

NOEXIST

Überprüft, ob die Variable nicht existiert

Verwendung

Wenn <Daten> ein Array ist, iteriert die Schleife über das Array und setzt den Kontext auf das aktuelle Element. Wenn <Daten> ein Objekt ist, verhält sich die Schleife wie eine If-Funktion und überprüft, ob die Bedingung erfüllt ist.

Beispiel: 

Daten

Codeblock
languagejson
"Regulierungen": [ 
{ 
    "Art": "Abschleppkosten", 
    "Betrag": "80€" 
  }, 
  { 
    "Art": "Reisekosten", 
    "Betrag": "280€" 
  } 
]

 

Template

Codeblock
__% Schleife( Regulierungen ) %__ 
__%Art%__: __%Betrag%__ 
__% Ende() %__ 

 

Ergebnis

Abschleppkosten: 80€ 

Reisekosten: 280€ 

 Bedingungen in Schleifen 

Die Schleifenfunktion kann auch Bedingungen akzeptieren. Wenn eine Bedingung angegeben ist, werden nur die Elemente des Arrays berücksichtigt, die die Bedingung erfüllen. 

Beispiel: 

Daten

Codeblock
languagejson
"Regulierungen": [ 
  { 
    "Art": "Abschleppkosten", 
    "Betrag": "80€" 
  }, 
  { 
    "Art": "Reisekosten", 
    "Betrag": "280€" 
  } 
]  

Template

Codeblock
__% Schleife( Regulierungen, Art, '=', 'Abschleppkosten' ) %__ 
__%Art%__: __%Betrag%__ 
__% Ende() %__ 

Ergebnis

Abschleppkosten: 80€ 

Schleifen mit Objekten

Wenn die Schleifenfunktion auf ein Objekt angewendet wird, verhält sie sich wie eine If-Funktion. 

Beispiel: 

Daten

Codeblock
"Data": { 
  "Art": "Abschleppkosten", 
  "Betrag": "80€" 
}

Template

Codeblock
__% Schleife( Data , Art, '=', 'Abschleppkosten' ) %__ 
__%Art%__: __%Betrag%__ 
__% Ende() %__ 

Ergebnis

Abschleppkosten: 80€ 

Verschachtelte Schleifen 

Schleifen können verschachtelt werden, um komplexere Bedingungen und Strukturen zu ermöglichen. 

Beispiel: 

Daten

Codeblock
"Data": { 
  "Art": "Abschleppkosten", 
  "Betrag": "80€", 
  "Fahrer": { 
    "Vorname": "Max" 
  } 
} 

Template

Codeblock
__% Schleife( Data , Art, '=', 'Abschleppkosten' ) %__ 
  __% Schleife( %Selbst% , Fahrer, 'EXIST') %__ 
    __%Art%__: __%Betrag%__, Fahrer: __%Fahrer.Vorname%__ 
  __% Ende() %__ 
__% Ende() %__ 

Ergebnis

Abschleppkosten: 80€, Fahrer: Max

...

Praktische Beispiele

Ein paar Beispiele für die Verwendung der SCHLEIFE Funktion:

Erklärung

Quellcode

Gibt innerhalb einer SCHLEIFE eine Variable aus (bei WENN nicht möglich)

Codeblock
__%SCHLEIFE(Kunden)%__
wohnt in der in der __%VN_STR%__
__%ENDE()%__

Prüfung ob es sich um keinen Privatkunden handelt und gibt dann einen Hinweis mit Verwendung einer Variablen aus.

Codeblock
__%SCHLEIFE(Kunden, ZUORDNUNG, '!=', 'PRIVAT') %__
Kunde __%VNAME%__ ist keine Privatperson
__%ENDE()%__

Anmerkungen

  • Achten Sie auf die unterschiedlichen Quellangaben zwischen WENN und SCHLEIFE. Anstatt

    Codeblock
    __%WENN(KUNDE.ZUORDNUNG,...

    muss

    Codeblock
    __%SCHLEIFE(Kunden, ZUORDNUNG,…

    angegeben werden. Die entsprechenden Bezeichnung lauten:

WENN

SCHLEIFE

KUNDE

Kunden

VERTRAG

Vertraege

SCHADEN

Schaden

GESELL

Gesellschaften

FORMSPROCESS

FormsProcess