Problema aceptar con evento


(ricardoriobo.indexneo) #1

Hola a todos

Tengo un problema al aceptar un formulario con un evento, pero para que lo entendais os explico la situación.

 

Una tabla de tareas, una rejilla y un formulario, en el que el boton aceptar realiza una serie de controles y finalmente usa la instrucción "Interfaz aceptar". Esto funciona perfectamente.

 

Otra tabla de tareas identica pero en memoria, y con un campo mas para guardar el id del registro en la tabla en disco. Esta tabla en memoria tiene asociada una rejilla y desde ella con la conexión de evento "Item doble clic" ejecuto un evento que busca el registro de la tabla en disco y presenta un formulario para modificar. Podeis ver el proceso llamador en la imagen.

El caso es que llamando desde aquí al formulario no me funciona la instrucción "Interfaz aceptar", cuando realmente es el mismo formulario con el mismo evento.

 

Se os ocurre que puede ser?

 

Gracias  y un saludo.

[attachment=2630,277]


([N4] rcueto.velneo) #2

Hola:

Te agradeceríamos que nos confirmases si lo que sucede es que sí se dispara el evento pero no acepta el formulario, o si lo que ocurre es que no se dispara el evento en sí.
Gracias por tu colaboración.

Un saludo.


(ricardoriobo.indexneo) #3

Pues le acabo de poner un mensaje al principio y el evento si que se dispara, pero otro detalle es que una vez que pulso aceptar so queda el reloj de arena un rato, aun que no da ningun mensaje de error.

 

Un saludo


(ricardoriobo.indexneo) #4

Para segurarme del todo, comenté todas las lineas del evento y deje activa solo la de "Interfaz aceptar" y hace exactamente lo mismo.

 

Un saludo


([N4] fgutierrez.velneo) #5

Entendemos que al final tienes un botón que lanza un evento que únicamente tiene el comando de Interfaz: Aceptar. ¿Es así?

Este evento se llama desde una rejilla. ¿Cómo muestras la rejilla: desde una acción como salida de una búsqueda o proceso, un control objeto...?

Entendemos que la única diferencia en el funcionamiento sería el hecho de que la tabla está en memoria, ¿es así?

Gracias por tu colaboración, así podremos reproducir el problema.

 

Un saludo


(ricardoriobo.indexneo) #6

Vale, te lo explico con mas detalle.

 

En un formulario sin origen tengo un control objeto, que carga una busqueda sobre la tabla en memoria y se muestra el resultado en una rejilla.

 

Con la conexión de evento "Item doble clic" sobre la rejilla disparo el evento que puedes ver en la imagen adjunta al inicio de este hilo.

 

El evento me devuelve correctamente el registro de la tabla en disco, pero al pulsar el boton aceptar, este no hace nada. El  boton dispara directamente el comando ejecutar evento, y ejecuta un evento con una unica linea "Interfaz aceptar".

 

Si pongo un mensaje antes de aceptar, el mensaje sale correctamente, pero la orden de aceptar no funciona. Parece como si el formulario mostrara correctamen la ficha, pero no pudiera tratarla.

 

Si necesitais mas datos avisar.

 

Un saludo


([N4] fgutierrez.velneo) #7

En tu primer post comentas:

 

 

Una tabla de tareas, una rejilla y un formulario, en el que el boton

aceptar realiza una serie de controles y finalmente usa la instrucción

"Interfaz aceptar". Esto funciona perfectamente.

 

 

Por eso mi pregunta. La diferencia con cuando sí funciona, ¿es el hecho de que la tabla esté en memoria o que se trata de un control objeto y no directamente una rejilla?

¿Has visto en el log de mensajes de error que puedes ver en Velneo vAdmin V7 si aparece alguno cuando realizas la acción? ¿Aparece algún mensaje de error a la izquierda de la barra de estado cuando realizas la operación?

Un saludo.

 


(ricardoriobo.indexneo) #8

Entendemos que la única diferencia en el funcionamiento sería el hecho de que la tabla está en memoria, ¿es así?

La diferencia es que si abro el formulario de edición directamente desde una rejilla de la tabla en disco, funciona perfectamente, pero no funciona al llamarlo desde el evento de la rejilla.

 

Para que lo tengas mas claro se trata de una agenda de tareas, que para mostrarla al mas puro estilo outlook, duplico los registros de un dia en la tabla en memoria y doy altas nuevas para rellenar los huecos vacios, de esta forma es mas agradable a la vista. Con cada cambio de dia en un calendario repito el proceso y va como un tiro.

La unica diferencia entre las dos tablas es que la que está en memoria guarda en un campo el id del registro original de la tabla en disco.

 

Gracias y un saludo


(ricardoriobo.indexneo) #9

Si tengo un error en el formulario pero creo que no tiene nada que ver, y es el siguiente.

Función BusLee Error 22 ficha inexistente, pero se trata de un enlace a maestro que no interviene para nada.

 

Un saludo


(ricardoriobo.indexneo) #10

Me olvidaba, el error anterior aparece en el log del servidor y en la barra de estado.


([N4] fgutierrez.velneo) #11

Ahora creo que te entiendo, es una rejilla con un evento, que abre un formulario que a su vez tiene el evento que da el problema. ¿Es así, no?

El error que comentas es normal, es simplemente que no encuentra más registros. Entiendo que en Velneo vAdmin V7 no ves ningún error de la operación correspondiente (pudiera haber problema con claves únicas o algo que haga que aunque el comando aceptar actúe, no pueda aceptar realmente).

Vamos a ver si podemos reproducir el problema y te comentamos.

Un saludo.


(ricardoriobo.indexneo) #12

Ahora creo que te entiendo, es una rejilla con un evento, que abre un formulario que a su vez tiene el evento que da el problema. ¿Es así, no?

Si, así es, pero ten en cuenta que la rejilla pertenece a la tabla en memoria y el formulario a la tabla en disco.

 

No, en vAdmin no hay ningun error aparte del comentado anteriormente.

 

Un saludo


([N4] rcueto.velneo) #13

Hola, Ricardo:

Muchas gracias por tu colaboración.
 
Te confirmamos que hemos podido reproducir la incidencia y que la hemos incluido en nuestro sistema de gestión de incidencias con el código de referencia: 1380.
 
Con este código puedes hacer referencia a la incidencia en el caso de que quieras conocer su estado en el futuro.

Si el formulario es obtenido no mediante un evento de rejilla sino como formulario de modificación de la rejilla, el comportamiento del comando de interfaz Aceptar será correcto.

Queremos agradecer de nuevo tu colaboración ya que con ella estás ayudando a mejorar Velneo V7.
 
Un saludo.


(ricardoriobo.indexneo) #14

Gracias a vosotros, intentaré hacerlo de otra forma.

 

Un saludo