Buenas, estoy haciendo pruebas con el esperado comando "Aceptar sin cerrar", pero no veo que funcione o no lo estoy haciendo bien.
Simplemente he cogido un formulario totalmente funcional, y al botón que ejecutaba el comando "Aceptar" le he cambiado el comando para que ejecute "Aceptar sin cerrar". He observado 2 comportamientos:
1- Si estoy dando un alta al pulsar el botón, me cierra el formulario y me lo vuelve a abrir pero sin ningún dato, como si fuese a crear otro registro nuevo.
2- Si estoy editando una ficha ya creada y pulso el botón, simplemente me cierra el formulario guardando cambios. Osea exactamente igual que el antiguo "Aceptar".
Yo le dediqué ayer 10 segundos, y juraría que ví refrescarse la rejilla por debajo. Has mirado el log de vserver a ver si te está lanzando algún error?
El nuevo comando de aceptar sin cerrar sólo es funcional para altas y el funcionamiento es como dices: cierra el formulario y lo abre otra vez para meter una nueva ficha.
Me ha decepcionado, supongo que estará metiendo los códigos de la tecla Ins en el buffer de teclado como el antiguo truco de V6 sendkey, haré algunas pruebas, a ver que ocurre.
Seria mas lógico añadir una instrucción en los comandos de interfaz. Tal y como está ahora no podemos ejecutar ningún proceso antes de aceptar el formulario.
Ahora ya está funcional la señal "botón pulsado" que se ejecuta antes que el evento asociado al proceso.
El problema, que aún no he probado del todo, es que después siempre te ejecuta el botón. No puedo controlar que no ejecute el evento asociado al botón.
Hay dos novedades con respecto al "Aceptar sin cerrar formulario":
1.- Comando de botón,. Este es el que estais probando y funciona como el que existía en v6, es decir sirve para realizar altas continuadas (al pulsar el botón en alta graba la ficha y pasa a una nueva alta)
2.- Comando de instrucción "Interfaz: Guardar ficha en alta o modificación". Esta instrucción es la que se usaría en un evento, y permite realizar instrucciones del tipo "post". En el botón llamaría a un evento y en este todo lo que se haga a continuación de esta instrucción será el equivalente al "post". Esta instrucción te permite consolidar datos tanto en altas como en modificaciones, para luego realizar, por ejemplo, procesos sobre la ficha, informes,....
La instrucción "Set retorno NO", no te sirve para evitar la acción de pulsar. Estos controles se hacen asociando al botón un evento, en él chequeas lo que quieras, y si todo es conforme ejecutas la instrucción "Interfaz: Aceptar".
También puedes probar con la instrucción "Interfaz: Activar foco a".
Afirmativo , pero no aprovecho los veneficios de aceptar sin cerrar formulario.
Lo tengo de la forma que explica pero es muy lento cuando se trata de instroducir lineas de facturacion ya que el usuario debe presionar insert o doble clic en rejilla para dar alta nuevamente.
1- Realice un evento con de pre-aceptar con set retorno no.2- un botón denominado oculto, que ejecuta el evento pre-aceptar3- luego un segundo evento llamado activ_foco con el comando interfaz:establecer foco donde coloco el botón llamado oculto.4- conecto al botón que contiene la función aceptar sin cerrar el evento activ_foco con la función botón pulsado
no me ha dado resultado sigue igual no reconose la funcionalidad.
sigue aceptando sin cerrar formulario, y sin ejecucion del evento previo<!--[endif]-->