Array
(
)

Erro: Invalid Argument to date Encode

Weliton Oliveira
   - 21 set 2004

Olá colegas!!
Estou me deparando com o erro acima quando vou gravar um registro ou alteração no meu Sistema.
Detalhes:
* Uso Delphi 6 e Interbase 6.
* O erro não acontece em qualquer gravação dentro do sistema.
Acontece quando estão envolvidas operações com data.
Ou quando eu uso DECODEDATE para ´quebrar´ uma data de vencimento antiga, guardo o mês e ano e insiro o novo dia de vencimento que é digitado pelo usuário em um TEdit. Eu transforno o conteúdo do TEdit com ´StrToInt´ e depois uso ENCODEDATE.
* O campo DataVenc na tabela é do tipo TimeStamp.
DETALHE PRINCIPAL:
** ESTE PROBLEMA SÓ ACONTECE NO COMPUTADOR DO MEU CLIENTE QUE USA WINDOWS XP.
No meu computador com Windows 98, ele funciona normalmente sem qualquer problema.
Agradeço pela atenção!!!


:arrow: Título alterado pelo Moderador oTTo.
:idea: Seja mais claro no título.
:idea: [url=http://delphiforum.icft.com.br/forum/viewtopic.php?t=16976]Saiba como obter resposta rápida..[/url]
:idea: Leia sempre [url=http://delphiforum.icft.com.br/forum/viewtopic.php?t=6689]Regras de Conduta.[/url]
:idea: Use sempre o Link [url=http://delphiforum.icft.com.br/forum/search.php][img:3db6c7c350]http://delphiforum.icft.com.br/forum/templates/subSilver/images/icon_mini_search.gif[/img:3db6c7c350] Pesquisar[/url] no topo da Página.
:idea: Evite usar caixa alta nos títulos.


Welter
   - 21 set 2004

Se me permite vou dar um chute.

Como voce sabe o delphi para operar com datas usa a formatacao que o Windows tem, ja o banco pode usar uma formatacao diferente, neste caso o Delphi (drivers, etc) passam para o banco uma informacao que ele julga certa mas que o banco julga incorreta.
Imagino que a inversao de mes e dia seja a causa deste problema, experimente fazer testes com datas como 12/12, 01/01 etc e ver se assim funciona corretamente, depois faca o mesmo processo com datas como 20/12 ou 12/20 e comprove se este e o erro.

Abração

Marcelo Welter
www.welter.pro.br/sultan