Buenas.
Pero por lo que entiendo, el problema no lo tienes en el trigger...sino en 
el RUNRMTCMD posterior, que mueve cosas entre servidores, no?

Albert Martinez de Urda
  Director TIC
  Grupo FSJ



De:     "Dpto. Informática (José Sánchez)" 
<[email protected]>
Para:   "forum.help400" <[email protected]>
Fecha:  15/07/2020 17:23
Asunto: ** Newsletter ** RE: ODBC/Trigger y RUNRMTCMD
Enviado por:    "Forum.help400" 
<[email protected]>



Hola Alex, tiene su lógica
 
Pero he hecho, para probar, un nuevo programa que lee el archivo generado 
por ODBC (trigger desconectado) y ejecuta mediante un call el trigger. 
Dicho trigger, convertido a programa con parámetros, genera unas tablas y 
ejecuta RUNRMTCMD para mover unos pdf entre servidores Windows. La 
generación de registros es ok pero el comando “move /Y origen destino” no 
lo es.
 
Hay veces que mueve el 70% de pdf, otras el 80% y solo lo soluciono si 
inserto un dlyjob entre bucles, así que creo que es el Windows que se 
satura y pierde instrucciones porque no le veo otra explicación.
 
Runrmtcmd genera por defecto un QSYSPRT y no me da error de objeto no 
encontrado. Genera tantos spools como pdf hay pero se los deja por el 
camino.
 
Seguire mirando….
 
José Sánchez
Dpto.Informática
 
Productos Climax, 
S.A                                                        
Pol. Ind. Sector Mollet C/Llobregat Nº 
1                                           
08150 - Parets del Valles (Barcelona)
Teléfono: +34 935621311
Fax: +34 935621413 
www.productosclimax.com
  

 
 
De: Forum.help400 [mailto:[email protected]] En 
nombre de Alex Martínez
Enviado el: miércoles, 15 de julio de 2020 15:05
Para: forum.help400
Asunto: Re: ODBC/Trigger y RUNRMTCMD
 
Hola
 
Conozco casos de trigger que actualizan otras tablas vía conexiones DDM a 
archivos remotos.... y aún se preguntaban porque les iba lento.
 
Un trigger tiene que ser un proceso "agil" y "a prueba de bombas";-)
 
Cuando un trigger tiene que lidiar con "otros mundos" (bien tablas lentas, 
lanzar procesos java o actualizar, mover archivos, etc) mi opinión es que 
el trigger grabe un cola de datos con la tarea pendiente....
 
y un proceso independiente que lea dicha cola, se dedique a realizar esas 
tareas que no son del mundo de las bases de datos.
 
El texto que te copio sino recuerdo mal es de un artículo de ServerNews
 
Trigger programs can also significantly impact performance. Keep in mind 
that the trigger is firing as part of the operating system’s database 
functionality. No matter what process writes, changes, or deletes a record 
in a file, the triggers will be fired. Whenever an application writes a 
record to a file, it will not receive notification that the disk I/O is 
complete until the trigger program returns control to the application that 
caused the trigger to fire. Therefore, you should take care to keep the 
trigger program streamlined and make sure it is written in the most 
efficient manner in order to improve overall performance. (This is not a 
bad idea in all development cases.)

Consider designs that use asynchronous update methods. For example, if 
there is to be a considerable amount of processing once a trigger is 
fired, you might consider creating a batch “monitor” program that waits 
for entries to arrive on a data queue. The trigger program can then 
immediately dispatch an entry onto the data queue and return control to 
the application that requested the file I/O. The application can continue 
processing while the trigger processing continues in a separate job.


 
El mié., 15 jul. 2020 a las 9:54, Dpto. Informática (José Sánchez) (<
[email protected]>) escribió:
Buenas, a ver si me explico bien
 
Mediante ODBC un software de escaneo de documentos graba en el iseries el 
documento que ha renombrado en una tabla. Dicha tabla tiene un Trigger 
asociado para hacer X cosas, pero….. no siempre se disparaba el Trigger y 
buscando por internet, ha sido mi solución, he tenido que registrar dicha 
tabla en un diario para que el motor de la base de datos se entere.
¿alguien sabría explicarme el motivo? Es pura curiosidad…
 
Una de las cosas que hace el Trigger es mover el PDF entre servidores 
Windows mediante RUNRMTCMD (move /y &Origen %destino) y aquí otro 
problema, al mandar comando remoto a un servidor creo que se colapsaba y a 
veces no movía algunos documentos, ¿solucion? Un dlyjob de x segundos para 
que le de tiempo a ejecutar el anterior RUNRMTCMD al servidor Windows. He 
intentado monitorizar el mandato para reintentar el mandato pero no lo 
consigo, creo que es un tema del Server Windows, ¿tenéis algo montado de 
este estilo? Lo del dlyjob no me convence mucho porque ralentiza algo que 
deberían de ser segundos. 
 
 
Saludos
 
 
José Sánchez
Dpto.Informática
 
Productos Climax, 
S.A                                                        
Pol. Ind. Sector Mollet C/Llobregat Nº 
1                                           
08150 - Parets del Valles (Barcelona)
Teléfono: +34 935621311
Fax: +34 935621413 
www.productosclimax.com
  

 
 
 
 Nota de Confidencialidad

Este mensaje se envía desde el sistema de correo electrónico de la 
empresa Productos Climax, S.A.. Podría contener por lo tanto secretos de 
empresa y otra información confidencial tutelados por las leyes de la 
Unión Europea y otros Estados. Si Vd. lo recibiera por error o sin ser una 
de las personas indicadas en el encabezamiento, deberá destruirlo sin 
copiarlo ni revelarlo o cualquier otra acción relacionada con el contenido 
del mensaje e informar inmediatamente por correo electrónico al emisor del 
mensaje. Las personas y entidades que violen sus deberes de 
confidencialidad podrán ser perseguidas ante los Tribunales de Justicia al 
amparo de la legislación civil, penal y administrativa nacional e 
internacional. Gracias por su colaboración.
Política de Privacidad
En base al  Reglamento (UE) 2016/679 del Parlamento Europeo y del Consejo 
de 27 de abril de 2016 relativo a la protección de las personas físicas 
(RGPD), así como con la Ley 34/2002, de 11 de julio, de Servicios de la 
Sociedad de la Información y Comercio Electrónico (LSSICE o LSSI), le 
comunicamos que su dirección de correo electrónico forma parte de nuestro 
fichero automatizado, al objeto de continuar enviándole ofertas de 
nuestros servicios y / o el mantenimiento de las comunicaciones en 
nuestras relaciones contractuales. En virtud de las Leyes antes 
mencionadas, tiene derecho de oposición, acceso, rectificación y 
cancelación de sus datos. Le recordamos que sus datos nunca son 
suministrados a terceros bajo ningún concepto, siendo únicamente 
utilizados para el envío de nuestras comunicaciones con Vd.

____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.

 Nota de Confidencialidad

Este mensaje se envía desde el sistema de correo electrónico de la 
empresa Productos Climax, S.A.. Podría contener por lo tanto secretos de 
empresa y otra información confidencial tutelados por las leyes de la 
Unión Europea y otros Estados. Si Vd. lo recibiera por error o sin ser una 
de las personas indicadas en el encabezamiento, deberá destruirlo sin 
copiarlo ni revelarlo o cualquier otra acción relacionada con el contenido 
del mensaje e informar inmediatamente por correo electrónico al emisor del 
mensaje. Las personas y entidades que violen sus deberes de 
confidencialidad podrán ser perseguidas ante los Tribunales de Justicia al 
amparo de la legislación civil, penal y administrativa nacional e 
internacional. Gracias por su colaboración.

Política de Privacidad
En base al  Reglamento (UE) 2016/679 del Parlamento Europeo y del Consejo 
de 27 de abril de 2016 relativo a la protección de las personas físicas 
(RGPD), así como con la Ley 34/2002, de 11 de julio, de Servicios de la 
Sociedad de la Información y Comercio Electrónico (LSSICE o LSSI), le 
comunicamos que su dirección de correo electrónico forma parte de nuestro 
fichero automatizado, al objeto de continuar enviándole ofertas de 
nuestros servicios y / o el mantenimiento de las comunicaciones en 
nuestras relaciones contractuales. En virtud de las Leyes antes 
mencionadas, tiene derecho de oposición, acceso, rectificación y 
cancelación de sus datos. Le recordamos que sus datos nunca son 
suministrados a terceros bajo ningún concepto, siendo únicamente 
utilizados para el envío de nuestras comunicaciones con Vd.
____________________________________________________
nete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400  Publicaciones Help400, S.L.

____________________________________________________
�nete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 � Publicaciones Help400, S.L.

Reply via email to