Fórum Pegando valores errados #294503

05/09/2005

0

Uso Delphi 6 e Firebird 1,5 com os componentes da paleta Interbase

Utilizo a seguinte sql para conseguir verificar se a comunicação já foi vista ou nao pela pessoa.

Só que parece que as vezes o time e o date nao trazem o valor para ela, será que alguem consegue me dizer o que está errado.

QueComunicacao.SQL.Clear;
QueComunicacao.SQL.Add(´Select * from Comunicacao ´+
´where UsuReceptor = ´´´+IntToStr(UsuAdm)+´´´ ´+
´and DataEntrega <= ´´´+FormatDateTime(´MM/DD/YYYY´,Now)+´´´ ´+
´and HoraEntrega <= ´´´+TimeToStr(Time)+´´´ ´+
´and DataRecepcao = ´´´+FormatDateTime(´MM/DD/YYYY´,StrToDate(´30/12/1899´))+´´´ ´);
QueComunicacao.Open;

Agradeço antecipadamente qualquer ajuda.

Sandro


Salupe

Salupe

Responder

Posts

05/09/2005

Martins

Isso acontece sempre ou somente as vezes ??

Confirme se o código é esse mesmo:
QueComunicacao.Close;
QueComunicacao.SQL.Clear; 
QueComunicacao.SQL.Add(´Select * from Comunicacao ´+ 
´where UsuReceptor = ´´´+IntToStr(UsuAdm)+´´´ ´+ 
´and DataEntrega <= ´´´+FormatDateTime(´MM/DD/YYYY´,Now)+´´´ ´+ 
´and HoraEntrega <= ´´´+TimeToStr(Time)+´´´ ´+ 
´and DataRecepcao = ´´´+FormatDateTime(´MM/DD/YYYY´,StrToDate(´30/12/1899´))+´´´ ´); // ñ entendi aqui...



Responder

Gostei + 0

05/09/2005

Salupe

o valor indicado na horarecepcao é pra verificar se ainda nao foi lida a mensagem, o 30/12/1899 é como o sql interpreta a data nula ou 0.

isso eu já faço em outras procuras mas nessa nao sei porque está passando alguma das datas sem demonstrar a data correta ou sei lá o que.


Responder

Gostei + 0

05/09/2005

Martins

As outras chamadas assim, funcionam nessa mesma máquina, pergunto isso imaginando q o problema é apenas nessa máquina, q ainda não foi testado em outra.

Não posso nem testar aqui, pq não tenho Delphi nessa máquina nem IB.

Mas, aguenta aí q o pessoal ajuda.


Boa Sorte!!!


Responder

Gostei + 0

05/09/2005

Martins

o valor indicado na horarecepcao é pra verificar se ainda nao foi lida a mensagem, o 30/12/1899 é como o sql interpreta a data nula ou 0. isso eu já faço em outras procuras mas nessa nao sei porque está passando alguma das datas sem demonstrar a data correta ou sei lá o que.


O erro não poderia ser causado por essa data, pq Ib não trabalha com datas no formato mm/dd/aaaa ?


Responder

Gostei + 0

05/09/2005

Salupe

Concordo que o ib e até o fb nao trabalham com o formato mm/dd/aaaa, mas quando se forma o sql ele trabalha nesse formato, forçando a data ser traduzida para o formato especificado.

Existe alguma possibilidade de as funções do delphi date ou time nao estarem trazendo a data corretamente.


Responder

Gostei + 0

05/09/2005

Martins

Concordo que o ib e até o fb nao trabalham com o formato mm/dd/aaaa, mas quando se forma o sql ele trabalha nesse formato, forçando a data ser traduzida para o formato especificado. Existe alguma possibilidade de as funções do delphi date ou time nao estarem trazendo a data corretamente.


Elas trazem certinho, só se seu PC está com algum problema com relação a essas datas e hora.

Me responda uma coisa, ele pelo traz algum registro, ou nunca fez o q era pra fazer?


Responder

Gostei + 0

05/09/2005

Salupe

ele de vez em quando traz as datas corretamente e de vez em quando não, fica com se nao tivesse data, até mesmo pelo debug, as vezes mostra as vezes nao, assim ele faz com que de repente uma mensagem fique muito tempo sem ser mostrada, e de repente mostra ela, parece que nesse momentos os dados aparecem corretamente. E esse mesmo estilo de busca de datas eu utilizo em outras buscas e nunca me deu problema, em qualquer maquina que eu faça a busca sempre é assim, pra buscar a comunicacao as vezes funciona as vezes nao o resto funciona corretamente.


Responder

Gostei + 0

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

Aceitar