Página 1 de 1

criticar data

Enviado: 01 Out 2010 14:52
por Netavin
Boa tarde amigos!
Em meu sistema, quando da solicitação de data de entrada, faço a crítica para bloquear entrada como "30/02" , etc . . .
Em outros casos, para verificar se a data da baixa não é menor que a data da entrada do produto.
Porém, não consigo evitar a entrada de uma data como "26/06/1010", por exemplo; como se vê o ano não é analisado e foi aceito.
Gostaria de ajuda neste sentido, para evitar esse tipo de entrada inválida.

Obrigado a todos!

[]´s
Netavin

Re: criticar data

Enviado: 01 Out 2010 15:49
por Maligno
Por meio de uma cláusula VALID teste o ano usando a função Year().

Re: criticar data

Enviado: 01 Out 2010 18:13
por Toledo
Netavin escreveu:faço a crítica para bloquear entrada como "30/02"
Netavin, se o campo for do tipo data mesmo, o próprio Clipper ou Harbour já faz esta crítica. Se você digitar uma data que não existe (30/02, 31/09, etc), você não consegui sair do GET.

Agora segue um exemplo da dica do Maligno:

Código: Selecionar todos

vdata:=date()
@ 10,10 get vdata valid verdata(vdata)
read
...
...

func verdata(dData)
Local ret:=.T.
if year(dData) < 1900
 Alert("Data Invalida")
 ret:=.F.
endif
retu (ret)
Abraços,

Re: criticar data

Enviado: 02 Out 2010 10:24
por TerraSoftware
Caros colegas.
O comando set epoch pode ajudar.
Isso facilita para as pessoas que costumao digitar o ano com apenas os 2 ultimos digitos.
Eu uso sempre o ano que estamos menos 70, isso facilita na hora de digitar a data de nascimento de pessoas.

Código: Selecionar todos

SET EPOCH TO (YEAR(DATE())-70)

Re: criticar data

Enviado: 06 Out 2010 09:58
por Netavin
Bom dia.
Agradeço a tds que me ajudaram na solução do problema.
Com as informações consegui resolver a questão.
Um abraço a todos.

[]´s
Netavin