Bienvenidos a Iseries Venezuela

Las mejores prácticas, recursos, tips, enlaces, videos y artículos para informáticos relacionados con el Iseries y el As/400 lenguajes de programación RPG, ILE RPG y SQL.

The best practices, resources, tips, links, videoes and articles for computer related to the Iseries and the As/400 languages of programming RPG, ILE RPG and SQL.

Thursday, May 31, 2012

Monitoreando Errores en Acceso a Archivos. Segunda Parte




 







Al actualizar un archivo, el registro actualizado es  desbloqueado (deallocated) y cualquier otro programa o proceso puede accederlo y modificarlo sin problemas.

Cuando trabajamos con subfiles, es necesario recargar el subfile cada vez que  la data ha sido actualizada en el programa a fin de mostrar la información actualizada.
Al leer un archivo para cargar el subfile y  evitar bloqueos innecesarios de un registro se deben realizar los read o chain sin bloqueos.
 Luego, una vez que el usuario ha confirmado su petición de grabar la información, realiza nuevamente, un chain pero con Bloqueo de registro y actualiza inmediatamente para permitir que otros procesos que están ejecutándose paralelamente al tuyo puedan acceder a la información y actualizarla en caso de ser necesario.

-------------------------
En este punto hago un paréntesis:
Cuando se realiza el segundo CHAIN o READ para grabar la información, tradicionalmente se usaba el “pool” de variables auxiliares declaradas para guardar los valores nuevos de los campos del archivo y que no se perdieran al hacer el Chain de actualización.
 Recuerda que utilizando el OCCUR puedes ahorrarte este inconveniente y ahorrar espacio y tiempo de programación. 
Puedes consultar este tema en un artículo anterior de este mismo blog:

-----------------------


Para cargar el subfile utiliza: la (N) permite hacer lecturas sin bloqueo de registro

KeyField       Chain (N)  FileName

O también:

               Read  (N)  FileName


Para actualizar un registro utiliza:

KeyField       Chain   FileName

En general, los desarrolladores no acostumbran realizar pruebas de la aplicación en un ambiente multiusuario. Para evitar errores innecesarios en el ambiente de producción solicita a varios programadores entrar a tu aplicación al mismo tiempo y te sorprenderás de cuantos se quedan “colgados” en alguna parte del proceso.


Otro error frecuente en la actualización de archivos es el de “CLAVE DUPLICADA”

Con estas instrucciones puedes monitorear el error y dar el mensaje sin producir esa fea caida de la pantalla que da muy mala impresiòn:

Chequear que se va a grabar clave duplicada:

C          Monitor
C          WRITE(E) FILENAME
C          On-Error 01021
C          CALL      PROGX
C          EndMon



Si te pareció interesante, reenvialo a un amigo haciendo click en el sobrecito que está al final del artículo. El conocimiento es valioso, compártelo.

Autor: Ing. Liliana Suárez

No comments: