La sentencia FOR repite una lista (por ejemplo, una matriz de mensajes).
Para cada repetición, la sentencia FOR hace que la variable de correlación sea igual al miembro actual de la lista y, a continuación, ejecuta el bloque de sentencias. La ventaja de la sentencia FOR es que se repite en la lista sin tener que escribir ninguna clase de construcción de bucle (y elimina la posibilidad de bucles infinitos).
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;genera el mensaje de salida:
<Data> <ResultData> <MessageArrayTest> <Folder> <FieldA>Field11Value1</FieldA> <FieldB>Field12Value1</FieldB> </Folder> <Folder> <FieldA>Field21Value2</FieldA> <FieldB>Field22Value2</FieldB> </Folder> </MessageArrayTest> </ResultData> </Data>
Conceptos relacionados
ESQL
Tareas relacionadas
Desarrollo de ESQL
Referencia relacionada
Preferencia de sintaxis
Sentencias ESQL
Avisos |
Marcas registradas |
Descargas |
Biblioteca |
Soporte |
Información de retorno (feedback)
![]() ![]() |
ak05030_ |