aniversariantes no mes
17/05/2003
0
Tenho uma base de dados que têm um cadastro de varios clientes com a data de nascimento de cada um, estou precisando de uma consulta que procure os aniversariantes do mes, quando for digitado o parâmetro do mes em questao...
Ex: base de dados (tbper) campo(dn), parametro no form (comboxmes),
quando fosse escolhido o mes na combo, retornasse todos os aniversariantes daquele mes?
espero a ajuda de vcs!!!
Ex: base de dados (tbper) campo(dn), parametro no form (comboxmes),
quando fosse escolhido o mes na combo, retornasse todos os aniversariantes daquele mes?
espero a ajuda de vcs!!!
Fernandocneto
Curtir tópico
+ 0
Responder
Posts
17/05/2003
Jose Almeida
Tenho este código.
Você pode adaptá-lo as suas nescessidades.
Nome da tabela: TabNomes
Campos: Nome e Nasc
O Resultado serão os aniversariantes do mes corrente.
ex: 17 - José
25 - Maria
procedure TForm1.Button1Click(Sender: TObject);
var
StrMes,Nome,Col1,Col2:string;
Ano, Mes, Dia: word;
Aux:TDateTime;
begin
DecodeDate(Now, Ano, Mes,Dia);
StrMes:=IntToStr(Mes);
Query1.SQL.Clear;
Query1.SQL.Add(´Select Nome,Nasc,Extract( day From Nasc) From TabNomes ´);
Query1.SQL.Add(´Where Extract( Month From Nasc)=´ + StrMes );
Query1.SQL.Add(´Order By Nasc´);
Query1.Active:= True;
while (not (Query1.eof)) do
begin
Aux:=Query1.FieldByName(´Nasc´).AsDateTime;
DecodeDate(Aux, Ano, Mes,Dia);
Col1:=InttoStr(Dia);
Col2:=Query1.FieldByName(´Nome´).AsString;
ListBox1.Items.Add( Col1 +´ - ´+ Col2);
Query1.Next;
end;
end;
Disponha. :P
Você pode adaptá-lo as suas nescessidades.
Nome da tabela: TabNomes
Campos: Nome e Nasc
O Resultado serão os aniversariantes do mes corrente.
ex: 17 - José
25 - Maria
procedure TForm1.Button1Click(Sender: TObject);
var
StrMes,Nome,Col1,Col2:string;
Ano, Mes, Dia: word;
Aux:TDateTime;
begin
DecodeDate(Now, Ano, Mes,Dia);
StrMes:=IntToStr(Mes);
Query1.SQL.Clear;
Query1.SQL.Add(´Select Nome,Nasc,Extract( day From Nasc) From TabNomes ´);
Query1.SQL.Add(´Where Extract( Month From Nasc)=´ + StrMes );
Query1.SQL.Add(´Order By Nasc´);
Query1.Active:= True;
while (not (Query1.eof)) do
begin
Aux:=Query1.FieldByName(´Nasc´).AsDateTime;
DecodeDate(Aux, Ano, Mes,Dia);
Col1:=InttoStr(Dia);
Col2:=Query1.FieldByName(´Nome´).AsString;
ListBox1.Items.Add( Col1 +´ - ´+ Col2);
Query1.Next;
end;
end;
Disponha. :P
Responder
Clique aqui para fazer login e interagir na Comunidade :)