get next inParent

Tal como se utiliza para el acceso a DL/I, la sentencia get next inParent de EGL lee el siguiente segmento hijo que tiene el mismo padre que el segmento en la posición de base de datos actual.

Diagrama de sintaxis de la sentencia get next inparent
nombre de registro
Nombre del objeto de E/S que recibe los valores del segmento leído. EGL da soporte actualmente a esta palabra clave sólo para registros DLISegment.
forUpdate
Opción que permite utilizar una sentencia EGL posterior para sustituir o suprimir los datos recuperados del archivo o base de datos.

Si el recurso es recuperable, la opción forUpdate bloquea el registro de forma que otros programas no puedean cambiarlo hasta que se produzca un compromiso. Encontrará los detalles sobre el proceso de compromiso en Unidad lógica de trabajo.

usingPCB nombrePCB
Opción que permite especificar el nombre de un PCB, según lo definido en el registro PSB, para utilizarlo en lugar del PCB por omisión.
with #dli{ sentencia DLI }
Opción que permite una sentencia explícita DL/I GNP o GHNP, como se describe en la sección dedicada a la directiva #dli. No deje espacios entre #dli y el corchete de apertura.

En el siguiente fragmento, el código imprime información para cada pedido (segmento hijo) de una ubicación (segmento padre) de un cliente:

while (record1 not endOfFile)
		try
			get next inparent record1; 
			onException
myErrorHandler(12);
		end
		ordersForLocation = ordersForLocation + 1;
		printOrderDetail(record1);
end // fin de while

Registro DL/I

La sentencia get next inParent genera una sentencia DL/I GNP (sin modificador "forUpdate") o GHNP (con modificador "forUpdate"). Los usos principales de la sentencia get next inParent son los siguientes:
  • Para leer un segmento a fin de realizar alguna acción con los datos de ese segmento, como por ejemplo imprimir un informe o una factura.
  • Para retener un segmento (en combinación con la opción forUpdate) a fin de utilizar las palabras clave EGL delete o replace para eliminar o actualizar un segmento. No es necesario ejecutar get next inParent antes de utilizar add (añadir) en un registro, ya que el registro se añadirá en secuencia o según el valor del elemento de clave correspondiente a ese registro.
Comentarios
(C) Copyright IBM Corporation 2000, 2005. Reservados todos los derechos.