[firebase-br] Win7+FB2.5.2 + D7 + MDO

Mário Reis secretariadogeral em acra.pt
Qui Ago 15 20:05:10 -03 2013


Olá pessoal,

"Db sqldialect-1 charset NONE VS FB2.5.2 sqldialect-3 charset WIN1252no 
Win7+FB252+D7+MDO

Estou experimentando o seguinte problema: tenho um tabela Agenda em um Db

FB2.5.2 Db sqldialect-1 charset NONE:



No campo Data_Agenda onde  consigo perfeitamente carregar a partir da minha 
aplicação D7 a seguinte instrução:

 StrHora := ' 08:10:00';

 StrData := FormatDateTime('yyyy-mm-dd',mcMes.CalendarDate) + Hora;

e depois:   

 DataModule3.MDODSAgendaDT_AGENDA.AsString        := Data;      

 DataModule3.MDODSAgendaDT_AGENDA.Post;

Onde resulta

 DataModule3.MDODSAgendaDT_AGENDA.AsString='2013-08-15 08:10:00'



Equanto que na FB2.5.2 Db sqldialect-3 charset WIN1252 exatamente a mesma 
instrução obtenho a exceção:

exception class EMDOFirebirdError with message 

'conversion error from string "2013-08-15 00:00:00"' e o mesmo acontece 
quando vou pegar a informação ao ficheiro para esta data das 00H00m00s até

às 23H59M59S, ou seja no dialeto 1 funciona já no 3 não, exemplo:

    DataModuleIus.MDODSAgenda.Close;

    DataModuleIus.MDODSAgenda.SelectSQL.Clear;

    DataModuleIus.MDODSAgenda.SelectSQL.Add('SELECT '+

                    '  AGENDA_ID '+

                    ' ,PROCESSO_ID '+

                    ' ,CTRL_ID '+

                    ' ,COLABORADOR_ID '+

                    ' ,DT_AGENDA '+

                    ' ,CONCLUSO '+

                    ' ,DESCRICAO '+

                    ' ,USER_ID '+

                    ' ,ESTACAO '+

                    ' ,DATA '+

                    ' ,HORA '+

                    ' ,ACCAO ' +

                    'FROM AGENDA '+

                    ' WHERE '+

                    ' DT_AGENDA >= '+

                    ''''+FormatDateTime('yyyy-mm-dd',mcMes.CalendarDate)
+ //Data Inicial

                    ' 00:00:00'''+

                    ' and '+

                    ' DT_AGENDA < '+

                    ''''+FormatDateTime('yyyy-mm-dd',mcMes.CalendarDate)
+ //Data Final

                    ' 23:59:00'''+

                    ' and COLABORADOR_ID = '+IntToStr
(cbColaboradorID.KeyValue));



    DataModuleIus.MDODSAgenda.Open;



Alguém passou por isto, ou alguém me pode explicar porque acontece e se há 
como ultrapassar este erro sem mudar os tipos de campos? Obrigado







Mais detalhes sobre a lista de discussão lista