Fórum Código Fonte #237667
14/06/2004
0
para a realização de um trabalho que é o seguinte:
Estou fazendo um cadastro de clientes, só que com um detalhe quando abrir o programa gostaria que o mesmo listasse os aniversariantes do dia o cadastro está pronto oque eu preciso é o código fonte para que todos os dias o programa liste os aniversariantes.Desde já agradeço a todos que me ajudarem.
Isabel Borges
Curtir tópico
+ 0Posts
14/06/2004
Vinicius2k
Se vc nos informar o Banco de dados(Interbase/Firebird, Paradox, etc...) e a camada de acesso que vc está utilizando (IBX, dbExpress, BDE, ADO, etc...), podemos, lhe ajudar a montar esta rotina...
Dica : procure ser mais clara nos títulos dos seus tópicos, para evitar bloqueio por parte da moderação e leia as regras de conduta ( http://delphiforum.icft.com.br/forum/viewtopic.php?t=6689 ), para que vc sempre possa ser ajudada pela comunidade... :wink:
T+
Gostei + 0
16/06/2004
Isabel Borges
Gostei + 0
16/06/2004
Vinicius2k
Bem, então vamos lá:
Estou supondo que em seu cadastro de Clientes a tabela se chama [b:b98bf4694f]Clientes[/b:b98bf4694f] com os campos [b:b98bf4694f]Nome[/b:b98bf4694f] e [b:b98bf4694f]DataNascimento[/b:b98bf4694f]...
1 - crie um Form, acrescente uma TQuery, um TDataSource e um TDBGrid.
2 - conecte a TQuery ao seu Alias (propriedade DatabaseName) de forma idêntica à ligação que vc fez com as TTables.
3 - conecte o TDataSource à TQuery.
4 - conecte o TDBGrid ao TDataSouce.
5 - Neste ponto vc precisa escolher qual será o evento mais indicado no seu caso para exibir este formulário, vou supor que seja o OnActivate do Form principal... então basta usar a rotina abaixo, logicamente adaptada aos nomes de campos e componentes que vc utilizou...
uses DateUtils; procedure TForm1.FormActivate(Sender: TObject); begin with Query1 do begin Close; SQL.Clear; SQL.Add(´select * from CLIENTES´); SQL.Add(´where EXTRACT( DAY from DATANASCIMENTO ) = :dia´); SQL.Add(´and EXTRACT( MONTH from DATANASCIMENTO ) = :mes´); SQL.Add(´order by NOME´); ParamByName(´dia´).AsInteger:= DayOf(date); ParamByName(´mes´).AsInteger:= MonthOf(date); Prepared:= True; Open; end; end;
* o uso das funções [b:b98bf4694f]DayOf[/b:b98bf4694f] e [b:b98bf4694f]MonthOf[/b:b98bf4694f] requer a unit [b:b98bf4694f]DateUtils[/b:b98bf4694f] na lista de uses... honestamente, não me recordo se o Delphi 3 possui esta Unit e/ou funções... caso o compilador não reconheça esta unit e/ou funções teremos q adaptar fazendo as conversões manualmente... então, se desejar, poste novamente para que possamos lhe ajudar com esta conversão...
Espero ter ajudado.
T+
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)