Extrañisimo: Vserver se rompe


([N3] ereitmann) #1

Hola estoy experimentando un comportamiento muy extraño y es que se rompe el Vserver, cuando doy de alta una ficha en una aplicación en la que estoy trabajando, Ultima versión de velneo, con Windows 7 y en local,
El servicio vatp se apaga luego del error, aparece un mensaje de error de alta de ficha y luego se desconecta del servidor local y tengo que iniciar los servicios vatp
Alguien ha experimentado algo similar con esta versión de velneo?
estoy tratando de analizar todos los procesos que intervienen en el alta de ficha pero recién comienzo


([N1] levip) #2

Te refieres a que se para el servidor el solo

Sldo


([N3] ereitmann) #3

asi es solo se para, el vclient mumuestra un mensaje en la barra de estado inferior algo asi como imposible conectarse con el servidor, vas a los servicios y lo encuentras parado


([N1] aztecmexico) #4

¿Qué mensajes marca el vAdmin?


([N3] ereitmann) #5

ninguno al parecer se desconecta o rompe el vserver y ya no guarda nada en el vadmin


([N3] ereitmann) #6

al parecer esta relacionado con lo siguiente, llamo a un formulario de alta de ficha la cual tiene actualizaciones a una tabla maestra, . tanto la tabla maestra como la plural tienen enlaces a hermano contiguo anterior y posterior a traves del indice fecha.
Antes de dar el alta de la ficha en cuestión se verifica por un manejador de evento si existe la ficha de maestro, si no existe previamente debe dar de alta el maestro.

cuando quiero dar un alta con una fecha anterior a la que corresponde al primer registro con que se comenzó a dar de alta a la maestra allí rompe el vserver supongo que las actualizaciones con los hermanos a enlace anterior de la tabla maestra generan el conflicto al querer dar un alta con fecha anterior al primer id que se grabo. lo raro que rompa el vserver (se apague) y no el v client que no rompe


([N3] ereitmann) #7

continuo lo anterior si quiero dar de alta al maestro con fecha posterior al primer id de esa tabla no hay problemas
la causa esta en los enlaces a hermano contiguo, pero no se cual es el conflicto


([N3] ereitmann) #8

Aztecmexico los mensajes que aparecen son:
Transacción desecha: 1 On Init Server
Transacción desecha: 77
Reconstrucción del area de datos de Expertto_prueba:LIBRO_DIARIO
Reconstrucción del area de datos de Expertto_prueba:RESUMEN_DIA
Regeneración de los indices de Expertto_prueba:LIBRO_DIARIO
Regeneración de los indices de Expertto_prueba:RESUMEN_DIA

que son las dos tablas que en cuestion estan con las actualizaciones y ennlaces a hermano contiguo, anterior y posterior


([N4] Infortic) #9

Condiciona el actualizador para que no intente actualizar si no hay anterior, para probar si es eso.


([N3] ereitmann) #10

Infortic, tiene que ver con eso, hay también en cada tabla de las implicadas hay un proceso por trigger posterior a alta de ficha:

que realiza una busqueda para actualizar el saldo que recorre la lista y utilizando el enlace hermano anterior actualiza el saldo

este proceso se hace tanto en la maestro como en la hija pero primero se hace en la maestra si se dio un alta y es alli donde rompe ya que si anulo el trigger de la maestra el vserver no rompe


([N4] Infortic) #11

¿Tienes en los triggers de modificación algo?

¿Es posible que el recorrido desencadene otro recorrido y entre en bucle?

Porque tiene la pinta de eso.

Si has a hacer un recorrido actualizando digamos “a mano (por código)” los saldos, puede que necesites que no se ejecuten los actualizadores ni los triggers (porque ya lo estás calculando tú a mano, y no quieres que se vuelva a lanzar el proceso entrando en bucle).

Mira esta explicación de cálculo de arrastrados:

http://jarboleya.com/2013/04/21/actualizaciones-y-arrastrados-con-condicion-dinamica-en-velneo-v7/

No se si van por aquí los tiros, pero tiene pinta.


([N3] ereitmann) #12

La solución fue que faltaba incluir una actualización en la tabla maestra entre los hermanos contiguos La actualización a través de los campos previo y siguiente y con acumulación a un campo saldo anterior que es un campo calculado entre los ingresos menos los egresos,
Al haber agregado esa actualización ya no se rompió mas, esto lo hice por que así estaba en una openapp vieja llamada salesdaybook (libro de caja) que baje de las openapp, y sobre la que copie como arrastrar los saldos.
El por que se rompia si no estaba eso ni lo se pero era eso