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)
-   -   DataSource (https://www.clubdelphi.com/foros/showthread.php?t=11443)

jzk 14-06-2004 18:38:11

DataSource
 
Hola, ya estoy aquí de nuevo.

Tengo una duda que no se si será posible disipar.

¿Es posible saber a través de un Datasource, si se ha modificado el/los campos de una tabla, editados a traves de dbedit????

No se si estoy fliplando o por el contrario es posible hacerlo....:confused: :confused: :confused:

__cadetill 14-06-2004 18:45:38

A trabés del TDataSource puedes saber lo que quieras (ya que puedes acceder al TDataset mediante la propiedad Dataset del TDataSource)

Código Delphi [-]
if Datasource1.Dataset.Modified then
  // registro modificado

o también

if Datasource1.Dataset.State in [dsEdit, dsInsert] then
  // modificando o añadiendo registro

Espero que te sirva

jzk 14-06-2004 18:56:22

Con el primer método obtengo si se ha modificado algún campo de la tabla,que me viene al pelo, pero aunque sea rizar el rizo y sin que tengas que dedicarle mucho tiempo, es posible averiguar que campos han sido modificados.

El segundo metodo me permite saber si estamos en modo edición o inserción que tambíen es muy útil, pero quizás el primero sea más provechoso.

__cadetill 14-06-2004 19:01:51

Cita:

Empezado por jzk
Con el primer método obtengo si se ha modificado algún campo de la tabla,que me viene al pelo, pero aunque sea rizar el rizo y sin que tengas que dedicarle mucho tiempo, es posible averiguar que campos han sido modificados.

Hasta donde yo se no :(

delphi.com.ar 14-06-2004 19:11:44

Los campos tienen una propiedad OldValue, podrías comparar este valor contra el actual. (Note: the OldValue property is only usable when the data is accessed using a TClientDataSet component or cached updates is enabled.)
Otra opción es utilizar el Modified del editor que muestra este campo (DBEdit1.Modified).

Saludos!

jzk 15-06-2004 08:56:00

He probado con la propiedad Oldvalue y el principio me daba un error el programa referente a la propiedad cached updates, pero al poner esta a True ha ido todo perfecto.

:D :D :D Muchas gracias :D :D :D


La franja horaria es GMT +2. Ahora son las 03:12:13.

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