Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Refrescar datos en 3 capas (https://www.clubdelphi.com/foros/showthread.php?t=30832)

CHiCoLiTa 20-04-2006 13:28:20

Refrescar datos en 3 capas
 
Hola, que tal todo por ahi?
Tengo una aplicacion en 3 capas bastante sencillita, pero hay cosas que no me funcionan como me gustaria
Estoy usando Delphi 6, SQL Server y la aplicacion esta creada con ventanas MDI
En una de ellas, tengo el Maestro (Contactos) y debajo una regilla con uno de sus detalles (Ventas).

Para modificar un dato, hago doble click sobre la regilla, se me abre otra ventana hija y modifico los datos, pero en la regilla no se actualizan los datos, sin embargo si se estan guardando. Si vuelvo a abrir la ventana esos datos aparece correctamente, pero en la regilla solo se actualiza en el momento que vuelvo a buscar ese registro Maestro.
En el caso de hacer una insercion, en la regilla solo me apareceria el Codigo de cliente.
Con todo esto quiero decir que el programa graba los datos y trabaja como deberia, salvo que esos datos no se estan actualizando en la regilla

Donde puedo tener el error?
En el OnCloseQuery del Ventas, hago un Ventas.ApplyUpdates(0)
Los controles de la ventana de Ventas y la regilla tienen su DataSource en el mismo dsVentas


y no se, tampoco hago muchas virguerias, solo grabo cuando se cierra la ventana del detalle

Alguna pista?

Kosmo 20-04-2006 13:53:32

Intenta hacer un Ventas.Refresh para refrescar los datos despues de cada ApplyUpdates

CHiCoLiTa 20-04-2006 17:23:34

En ventas no me dejaria, en todo caso tendria que ser en Contactos, porque ventas no tiene data provider
Un Refresh implica que se haga una peticion a la base de datos, para que me los traiga, cuando realemnte esos datos los tengo yo en cache en el lado del cliente

Para este mismo caso cuando borro a traves de un prodecimiento almacenado, como el lado cliente no se ha enterado, si hago un refresh, y mira que no me acaba de convencer tampoco

Pero ahora que me dices eso, modifico un poco la pregunta y la complico un poco mas. Como tengo que hacer para sincronizar lo que escribo con la regilla. Es decir que segun vaya escribiendo me aparezcan los datos en la regilla como si lo hiciera sin capas?


La franja horaria es GMT +2. Ahora son las 17:47:57.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi