Ver Mensaje Individual
  #11  
Antiguo 14-07-2003
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Reputación: 24
guillotmarc Va por buen camino
Hola.

El problema de ese retraso, lo tienes porqué hasta que no haya finalizado el Post, los datos no van a la Base de Datos. Por lo que hasta ese momento, si haces un SELECT SUM(), aún no aparece ese valor.

Como el evento BeforePost se ejecuta antes de realizarse el Post, los datos aún no están en la base de Datos.

Si utilizas el evento AfterPost, entonces el resultado de la consulta con el SELECT SUM() será correcto, peró si intentas asignar el valor al TDbEdit, te saltará un error indicando que ya no estás en modo edición o inserción (puesto que el Post ya ha finalizado, finalizando por tanto el estado de edición del registro).

Una posible solución es poner el código en el AfterPost (imprescindible puesto que sinó no obtendrás correctamente el valor de la suma), y antes de asignar el valor al DbEdit, fuerza el registro a entrar de nuevo en Edición mediante un Edit.

Es feo, porqué siempre que hagas un Post, el registro acabará volviendo a estado de Edición, pero tiene que funcionarte para lo que quieres.

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita