TimeStamp X DateTime X Date

05/03/2003

0

OI pessoal!

Eu tinha um sistema em Delphi 5 c/ paradox e acabo de converter todo ele p/ Delphi 7 c/ Interbase.

O fato é que durante a conversão, eu mudei todos os campos da tabela que era do tipo Date para TimeStamp.
Agora estou c/ um grave problema.

Todos os meus Sqls e até locates estão fazendo comparacoes c/ apenas as datas. Mas, c/ o campo timestamp, ele requer a hora tb.

Ai algo como

´ ... where data >= :data_ini and ´
´ data <= :data_fim and ...´

parambyname(´data_ini´).value := StrToDate(data_ini.text);
parambyname(´data_fim´).value := StrToDate(data_fim.text);

Não funciona qdo as dtas solicitadas é exatamente a mesma do registro em questao.
Eu tive que mudar a passagem dos parâmetros p/:

parambyname(´data_ini´).value := StrToDateTime(data_ini.text + ´ 00:00:00´);
parambyname(´data_fim´).value := StrToDateTime(data_fim.text + ´ 23:59:59´);

Neste caso funciona.
Mas as vezes quero passar como parametro uma data que esta na tabela. Algo como:

parambyname(´data´).value := minhatabelaData_admissao.value;

Só que ai nao funciona por causa da bendita hora que o Interbase compara. Não tem como eu desabilitar esta comparacao c/ as horas???


Grata,


Renata

Renata

Responder

Posts

05/03/2003

Anonymous

Vc Já experimentou criar uma variável do tipo data, e mover o conteúdo (parâmetro) para esta variável e depois fazer o seguinte, Suponhamos que o nome da variável seja Data1.

parambyname(´data_ini´).asDate := Data1;

Tive este mesmo problema e fazendo isso funcionou.


Espero ter à ajudado e qualquer coisa me comunique ! ! !

eduardo_urbano@bol.com.br


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar