anonymous Log in
Search
Recents:
v3.0
gx-l
Problema con proceso asincrónico en GXev16
24/07/20 13:06

leandro79337933

Replies: 7

Hola, quien hace el submit del PAUT_ctacte01? Se dispara desde un webpanel?
No soy experto en .Net pero los procesos de tipo batch te recomendaría
manejarlos con el administrador de tareas de Windows. Le pones al PRC "Main
program = True" y "Call protocol = Command line". Si mal no recuerdo,
GeneXus te va a generar un EXE en lugar de una DLL y ese EXE lo podes
agendar directamente en el Administrador de Tareas de Windows.
Slds
On Fri, Jul 24, 2020 at 7:01 AM Mito Choque <rafael_choque@hotmail.com>
wrote:
> Espero me puedan ayudar con algún antecedente si alguien tiene
> conocimiento o le ocurrió el mismo problema.
>
>
>
> Tengo una aplicación WEB creada en GXev16 U6, generador .Net.
>
> Servidor IIS 6.1 y Base de datos SQL Server 2008 R2
>
> Esta fue migrada a web/NET SQLSERVER cuyo origen era una aplicación
> escritorio de la versión 9.0. Fue migrada de la forma que GX sugiere
>
>
>
>
>
> En la aplicación existen procedimientos masivos que por el volumen de la
> información estos se procesan de manera asincrónica ejemplo
> PAUT_ctacte01.Submit("",var1,vr2). Cada proceso asincrónico tiene un
> control de inicio y de fin muy simple que consiste en marcar un registro en
> una tabla de control.
>
>
>
> El problema es que los procesos no concluyen correctamente, es decir no
> finaliza la ejecución de su lógica, no se procesan todos los registros,
> siempre queda una gran cantidad de registros sin procesar que es aleatoria
> y nunca llega a marcar el registro de finalización.
>
> He revisado la gran mayoría de la literatura existente de Genexus, IIS y
> SQL que pudiera ayudar en mi problema y nada.
>
> Los procesos no arrojan error de cancelación, aunque no lo sabemos ya que
> al ser asincrónico perdemos el control del proceso.
>
>
>
> Todo nos sirve dado que en base a esto se podrá concluir o no el producto.
>
>
>
> Envío las Properties del proceso “PAUT_ctacte01”
>
>
>
>
>
> Enviado desde Correo <https://go.microsoft.com/fwlink/?LinkId=550986>
> para Windows 10
>
>
>
Replies

Aluziner

24/07/20 15:28
Yo manejo los procesos batch que no necesitan interfaz de usuario como dice Leandro. Algun envio de informe automatico o cosas por el estilo. El vie., 24 de jul. de 2020 a la(s) 06:07, Leandro Minatel ( leandro@minatel.com.ar)

Rafael Hamilton Choq

27/07/20 14:01
Muchas gracias por sus respuestas. Los procesos se disparan desde webpanel, estos necesitan interfaz de usuario dado que es necesario ingresar parámetros de entrada. Probaremos esta forma de procesar que nos sugieren y si esta es la solución la incorporaremos. ________________________________

Google

27/07/20 18:06
Hola Rafael, Tu problema principal no es dispara el submit, lo es, NO saber el punto en que se encuentra actualmente. Lo primero que yo haria es hacer un procedure de log, donde registro la entrada y salida de cada pedazo del programa, y asi saber en donde entra en loop, o se detiene, etc. Empeza por ahi, es mi sugerencia. Saludos Alberto El vie., 24 jul. 2020 a las 6:01, Mito Choque ()

carlosnavarro938

28/07/20 07:13
Buen día, ¿Cómo están? Coincido con Alberto, una opción es crear un log, sea en un archivo de texto o en base de datos asegurándose de que cada registro que se va a procesar se persista en el log. Puede ser que existan registros con inconsistencias en la integridad referencial, etc.. que produzcan una excepción y finaliza el proceso y en ese caso es muy importante saber cuál es el último registro procesado con éxito y cuál es el registro que va a ser procesado a continuación y que no culmina correctamente. Saludos. Carlos Navarro El lun., 27 jul. 2020 a las 15:06, Alberto Fernandez ()

Rafael Hamilton Choq

28/07/20 13:27
Alberto muchas gracias por tu respuesta. No es este el caso tenemos un control de inicio y fin de proceso, esto lo indico en el correo "Cada proceso asincrónico tiene un control de inicio y de fin muy simple que consiste en marcar un registro en una tabla de control." El problema es que en algún momento el objeto asincrónico no continúa procesando. ________________________________

Google

28/07/20 14:07
Hola Rafael, Si, conozco el caso, yo tambien hice varias tareas agendadas para el cierre diario, y para procesos que toman mucho tiempo. En uno de ellos el usuario queria saber demasiado en que punto del proceso estaba, y lo que hice fue mostrarle mi log en el webpanel, que se actualizaba cada 2 segundos. Y el mismo usuario ya sabia en donde se cortaba el proceso. El mar., 28 jul. 2020 a las 10:00, Mito Choque ()

Rafael Hamilton Choq

28/07/20 16:08
Alberto muchas gracias. Lo incorporare ________________________________


Back to gx-l