Conocer campo modificado


([N1] Giuseppe::Komenco) #1

Hola a todos,

Desde un Evento de Tabla: Modificación, se puede saber "automáticamente" qué campo fué el que sufrió modificaciones, así como su valor anterior, y posterior? o tendría que comprobarlo campo a campo manualmente, con dos eventos? (Anterior a modificación, y posterior a modificación?)

Un saludo.




([N2] bannu) #2

Comando en Ficha y campos: ¿Ha cambiado el campo?(CAMPO).


([N1] Giuseppe::Komenco) #3

Hola sonovisión, gracias por la rapidez,

Esto en el Interno a la modificación? supongo

En Velneo existe algo como el rollback?


([N1] Pepeto) #4

Tienes los comandos:

¿Ha cambiado el campo? (#CAMPO)
¿Ha cambiado la ficha?

El segundo comando te indica si ha sido modificado algun campo, aunque no sepas cual.
en cualquiera de los casos, para controlar las modificaciones de cada campo lo debes hacer tu

un saludo
Jose Luis


([N2] bannu) #5

Va a ser que no, te lo tienes que montar tu solito a pelo, al inicio de la edición guardar con un tubo el registro en una tabla en memoria, para luego utilizarlo según lo que quieras hacer.


([N4] eic) #6

Hola.

Sólo añadir que esas instrucciones deben ejecutarse en el evento previo a la modificación/alta, ya que en el evento interno a la modificación/alta la ficha ya está guardada en disco y, por tanto, ya no habrá diferencias entre el dato en memoria y el dato en disco.

Lo puedes ver aquí: http://velneo.es/info_v7_76_es/velneo_vdevelop_v7/proyectos_objetos_y_editores/proyecto_de_datos/tabla/evento_de_tabla

En 6.x se evitaba el alta/modificación desde el evento con "Set retorno = NO". En V7 no lo encuentro en la documentación, y no lo he probado. En cualquier caso, al ser algo que se ejecuta en el servidor no se puede presentar ningún mensaje al usuario, por lo que es interesante chequear esto *antes* de llegar al evento (o generar una tabla de errores que luego se pueda consultar, por ejemplo).

Saludos,

Fran Varona