Tema: tipo date
Ver Mensaje Individual
  #8  
Antiguo 14-11-2007
jSr jSr is offline
Miembro
 
Registrado: nov 2007
Posts: 16
Reputación: 0
jSr Va por buen camino
Problema

Al: no sabia que estaban estandarizando lo de la fecha, pero lo que te dije, en los años que llevo en esto y en las bd que toque eran otras las caracteristicas de fecha. tendre que mantenerme mas al dia.

Por este tipo de cosas es bueno entrar a los foros, jejeje

bueno mira, te describo el problema que lo puse tambien en otro topico en conexiones.

Ojo, el error da solo cuando se graba con cacheupdates en delphi, cuando el query es requeslive no pasa eso y cuando se usan ttables tampoco, es con tquerys con la propiedad cachedupdates =true.

Tengo un DM donde declaro una DataBase conectado a un alias en el ODBC. Aparentemente esta todo bien.

Ademas cuento con un tQuery con una select sencilla sobre una de las tablas, este query esta conectado a un updateSQL que contiene las sentencias de Insert/modify/delete.

En el mismo DM esta definida una funcion que recibe como argumento un TDataSet:

Código Delphi [-]
procedure  Tdm.Grabar(DataSet: TDataSet);
begin
inherited;
with (DataSet As  TQuery) do begin
if not Database.InTransaction  then
Database.StartTransaction;
try
ApplyUpdates;
database.Commit;
except
database.Rollback;
raise;
end;
CommitUpdates;
end;
end;

Cuando el tQuery tiene la propiedad requestLive a True (el codigo de arriba comentado), los cambios son grabados correctamente en la BD.

Pero cuando utilizo el codigo de arriba, y configuro en el TQuery la propiedad cachepUpdates a TRUE; y la propiedad requestLive a FALSE, al ejecutar la Linea "ApplyUpdates" me da un error de "...EDBEngineError with message 'Operation not applicable'..."

Con las TTables tampoco da error, pero no se por donde atacar el problema.

he probado todo lo que la experiencia me ha dicho que puede ser pero igual se me escapa algun detalle. Sospecho que pueden ser dos cosas:

1- La configuracion de ODBC
2- La configuracion del Servidor de MySQL Server.

Alguno tiene alguna idea o tuvo el mismo problema?

El Problema real son los campos de tipo DATE en MySql que tienen definido en una variable el formato 'YYYY-MM-DD', la solucion probablemente sea cambiar el formato de esa variable en MySql de manera que Delphi pueda aceptar esos datos.

por otro lado el delphi no me permite introducir otro formato de fecha que no sea 'dd/mm/yyyy' y ahi es donde me da el Error 'Operation not applicable'



PD: No quisiera utilizar otros componentes que los mencionados arriba, porque la aplicacion esta ya terminada y solamente queremos migrarla de Paradox.

Muchas Gracias

Última edición por dec fecha: 14-11-2007 a las 08:39:30.
Responder Con Cita