Alguien me podría explicar el siguiente fragmento de un procedimiento almacenado:

Begin
for i in retry loop

if (i.rownum > 1) then
ln_num_orden:= i.order_id;
begin
om_process_user.pkg_proc_order_process.proc_order_retry4ful_batch(ln_num_orden,lv_user);
--dbms_output.put_line(''orden r: ''||ln_num_orden);
end;
end if;
end loop;
dbms_output.put_line(''fin'');
exception
when others then
dbms_output.put_line(''error de ejecucion: ''||sqlerrm||'',''||sqlcode);
end;

1 Respuesta

Respuesta
1

1.- Inicia recorriendo algun elemento, matriz u objeto con el for loop (termina donde dice end loop)

2.- Valida si el numero de la fila actual e smayor a 1, es decir que existan filas (datos).

3.- Luego si tiene datos entra al if y asigna a la variable ln_num_orden el numero que vaya recorriendo en el for (i) que sera el valor de i-order_id, en resumen es un numero de la lista.

4.- El contexto siguiente no esta muy claro pero parece que asigna a cada usuario un numero identificador de algo.

5.- Luego imprime ese numero id, parece ser un numero de orden.

6.- Finaliza el if, el ciclo for, i, prime "fin"

7.- Maneja una excepción sobre que cuando exista algún error solo envíe un mensaje de error de ejecución y temrina el procedimiento.

En resumen asigna folios o números a los usuarios existentes.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas