>
>Sei que 21/12/204 é uma data inválida. O caso é que quando esta data é digitada em um TextBox o Fox gera o erro que mencionei. Queria que o Fox não executasse esta validação de data. Já fiz outros sistemas e nenhum deles aparecia esta mensagem nestas circunstâncias. Passei o Set Strictdate para 0 e a menssagem persiste.
>>
>>O que faço?>
>Ok. Não ficó claro.
>Nesse casso vc pode validar (no txtBox.valid por ex.) que a data é válida antes de passar a data para o programa/tabela.
>
>Algo assim como:
>
>* ou usar ON ERROR pre-VFP8
>local llError, xx, lcTmpData
>lcTmpData = This.Value
>try
> xx = date(Val(Substr(lcTmpData,7)), Val(Substr(lcTmpData,4,2)), val(Left(lcTmpData,2)))
>catch
> llError = .T.
>endtry
>if llError
> * data inválida
> return .F.
>endif
>
Alô Alex, Ricardo;
Desculpem-me a intromissão.. Acho que está havendo um certo problema tipo "missing comunication" por "Language barrier" :)
Ou, talvez eu é que não tenha compreendido corretamente..
Mas.. O que eu entendi o que o Ricardo quer é exatamente ao contrário.. Ele quer desabilitar o comportamento "default" do valid do V.F.P. para Textbox..
Se estou certo então a coisa ficaria:
Procedure thisform.text1.valid
local llError, xx, lcTmpData
lcTmpData = This.Value
try
xx = date(Val(Substr(lcTmpData,7)), Val(Substr(lcTmpData,4,2)), val(Left(lcTmpData,2)))
catch
llError = .T.
endtry
if llError
nodefault
endif
"Now to him who is able to do immeasurably more than all we ask or imagine, according to his power that is at work within us, Ephesians 3:20