Ver Mensaje Individual
  #1  
Antiguo 29-11-2003
gendelphi gendelphi is offline
Miembro
 
Registrado: jul 2003
Ubicación: Tlaxcala Mexico
Posts: 73
Reputación: 21
gendelphi Va por buen camino
IBDataSet no asigna valores a las variables de campo

Hola a todos, nuevamente yo.

Anteriormente pedi ayuda sobre el mal funcionamiento de un IBDataSet con base de datos con sql dialect 3, he notado que el problema esta en que el IBDataSet no almacena correctamente el valor de las variables de cada campo, por ejemplo:
la propiedad SelectSQL del IBDataSet esta asi:

SELECT campo1, campo2 FROM tabla

lo que significa que existiran dos variables o parametros llamados :campo1 y :campo2, que contienen los valores introducidos desde algun componente de la paleta DataControls, como un DBGrid, o un DBEdit, es decir, que si la propiedad ModifySQL del IBDataSet, esta configurada asi:

UPDATE tabla SET campo1 = :campo1, campo2 = :campo2
WHERE campo1 =:OLD_campo1

despues de hacer un Post al IBDataset, deberia de enviarse al servidor la sentencia SQL que asigna a campo1, el valor de :campo1, y a campo2 el valor de :campo2, es decir, asignar los valores que se tecleen en el DBGrid o DBEdit. Pero no lo hace asi.

Si la base de datos es Dialecto 3, y el componente IBDatabase se configura como Dialecto 1, todo funciona BIEN. Pero si el componente IBDatabase se configura como dialecto 3 los parametros :campo1 y :campo2, no toman los valores que se hayan dado en el DBGrid o DBEdit, sino que :campo1 vale cero, y :campo2 vale 17/11/1858, dado que campo1 es INTEGER y campo2 es DATE.

Podria alguien orientarme, en que estoy haciendo mal?
o acaso IBDataset no funciona con bases de datos Dialecto 3?

Nuevamente: Uso Delphi 5, con los componentes para interbase que ya trae, mi BD esta creada con FireBird 1.02 y en Dialecto 3.
Responder Con Cita