FOR-Anweisung

Die FOR-Anweisung durchläuft eine Liste (z. B. einen Nachrichtenbereich).

SYNTAX

Für jede Iteration erstellt die FOR-Anweisung die Korrelationsvariable (Korrelationsname im Syntaxdiagramm) entsprechend dem aktuellen Mitglied der Liste (Feldreverenz) und führt anschließend den Anweisungsblock aus. Der Vorteil der FOR-Anweisung besteht darin, dass sie eine Liste durchläuft, ohne dass ein Schleifenkonstrukt geschrieben werden muss (und dass die Möglichkeit von Endlosschleifen ausgeschlossen wird).

Ein Beispiel dafür ist der folgende ESQL-Code:
SET OutputRoot.MQMD=InputRoot.MQMD;
SET Environment.SourceData.Folder[1].Field1 = 'Field11Value';
SET Environment.SourceData.Folder[1].Field2 = 'Field12Value';
SET Environment.SourceData.Folder[2].Field1 = 'Field21Value';
SET Environment.SourceData.Folder[2].Field2 = 'Field22Value';
DECLARE i INTEGER 1;
FOR source AS Environment.SourceData.Folder[] DO
CREATE LASTCHILD OF OutputRoot.XML.Data.ResultData.MessageArrayTest.Folder[i] 
NAME 'FieldA' VALUE '\' || source.Field1 || '\' || CAST(i AS CHAR);
CREATE LASTCHILD OF OutputRoot.XML.Data.ResultData.MessageArrayTest.Folder[i] 
NAME 'FieldB' VALUE '\' || source.Field2 || '\' || CAST(i AS CHAR);
SET i = i + 1;
END FOR;
Er generiert folgende Ausgabenachricht:
<Data>
<ResultData>
<MessageArrayTest>
<Folder>
<FieldA>Field11Value1</FieldA>
<FieldB>Field12Value1</FieldB>
</Folder>
<Folder>
<FieldA>Field21Value2</FieldA>
<FieldB>Field22Value2</FieldB>
</Folder>
</MessageArrayTest>
</ResultData>
</Data>
Zugehörige Konzepte
Übersicht zu ESQL
Zugehörige Tasks
ESQL erstellen
Zugehörige Verweise
Syntaxdiagramme: verfügbare Typen
ESQL-Anweisungen
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Rückmeldung
Copyright IBM Corporation 1999, 2006 Letzte Aktualisierung: 18.05.2006
ak05030_