Amigos, Tenho o bco de Dados Clientes com o Campo DAT_NASC definido com o tipo DATE.
Eu Preciso Fazer uma rotina que busque o aniversariante do dia, comparando se o campo DAT_NASC é igual a DATA do dia do sistema DATE() tipo hoje.
Preciso fazer uma busca que compare o Dia e Mês do Campo DAT_NASC com o DIA e Mês DA DATA do sistema DATE(). Se encontrou temos aniversariantes hoje!. Lista os aniversariantes .
Amigos, sei que para vcs não é difícil esta rotina mas, eu não sei fazer este tipo de verificação em data, verificando somente o dia e mês, tanto no campo DAT_NASC do Cliente e no DATE() do sistema.
Alguém por favor pode me Ajudar?.
Preciso somente de um exemplo de como fazer este tipo de verificação, não sei muito bem trabalhar com datas desta forma.
Agradeço muito a todos pela atenção e a quem me ajudar é muito importante para mim.
O pouco que sei em algumas situações também darei dicas no fórum.
Duvidas com datas!
Moderador: Moderadores
Olá Vaninho,
Em meu sistema eu uso um campo DAT_ANIV do tipo caracter com quatro caracteres no formato "MMDD" onde: MM=Mês do aniversário e DD=Dia do aniversário, quando quero fazer a consulta faço por esse campo, tipo:
Select Clientes
Set Order to 1 // Indice do campo DAT_ANIV
dt_hoje:=StrZero(Month(Date()),2) + StrZero(Day(Date()),2)
Seek dt_hoje
Espero que te ajude....
Barreto
la.barreto@uol.com.br
Em meu sistema eu uso um campo DAT_ANIV do tipo caracter com quatro caracteres no formato "MMDD" onde: MM=Mês do aniversário e DD=Dia do aniversário, quando quero fazer a consulta faço por esse campo, tipo:
Select Clientes
Set Order to 1 // Indice do campo DAT_ANIV
dt_hoje:=StrZero(Month(Date()),2) + StrZero(Day(Date()),2)
Seek dt_hoje
Espero que te ajude....
Barreto
la.barreto@uol.com.br
-
Dudu_XBase
- Membro Master

- Mensagens: 1071
- Registrado em: 25 Ago 2003 16:55
Teve um cliente q me pediu isso....fiz um relatório...um pedaço do Código...
Código: Selecionar todos
// Seleciono clientes
use clientes
//Crio o indice cli_nasc
// dtos(date()) = AAAAMMDD ....entendeu...
index on right(dtos(DATA_NASC),4) to cli_nasc
// Atribuo a essas variaveis o valores com a data corrente
cMes := strzero(month(date()),2)
cDia := strzero(day(date()),2)
// faço a busca
if dbseek(cMes+cDia)
while right(dtos(DATA_NASC),4)=cMes+cDia .and. !eof()
? clientes->NOME
dbskip()
enddo
else // Dados nao encontrados
? "Sem Aniversariantes Hoje !!!"
endif
________________________________________________________________________________________________________
(Aow Saudade) Clipper 5.2e, Blinker 7, RDD SIXNSX, DBFCDX /Xharbour 1.0, Rdd Mediator (Mysql) Free , RDD Sqlrdd (Sql Server) Comercial
(Hoje) C# Python Sql Server e Oracle
