FOR-Anweisung

Die FOR-Anweisung (Für-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 die folgende ESQL: Beginn der Änderung
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.XMLNSC.Data.ResultData.MessageArrayTest.Folder[i] 
            NAME 'FieldA' VALUE '\' || source.Field1 || '\' || CAST(i AS CHAR);

     CREATE LASTCHILD OF OutputRoot.XMLNSC.Data.ResultData.MessageArrayTest.Folder[i] 
            NAME 'FieldB' VALUE '\' || source.Field2 || '\' || CAST(i AS CHAR);
     SET i = i + 1;
END FOR;
Ende der Änderung Sie generiert folgende Ausgabenachricht: Beginn der Änderung
<Data>
 <ResultData>
  <MessageArrayTest>
   <Folder>
    <FieldA>Field11Value\1</FieldA>
    <FieldB>Field12Value\1</FieldB>
   </Folder>
   <Folder>
    <FieldA>Field21Value\2</FieldA>
    <FieldB>Field22Value\2</FieldB>
   </Folder>
  </MessageArrayTest>
 </ResultData>
</Data>
Ende der Änderung
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 | Feedback

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009.
Letzte Aktualisierung : 2009-02-17 15:29:27

ak05030_