Re: [delphi-br] Re: calculo da idade de nascimento no momento do cadastro

2009-09-16 Por tôpico Rodinei
Estudando um pouco.
Rodinei Amorim 
Programador Delphi
(11) 8208-9503
rodinei_amo...@hotmail.com rodinei.amo...@terra.com.br



From: gustavoandref 
Sent: Wednesday, September 16, 2009 8:27 AM
To: delphi-br@yahoogrupos.com.br 
Subject: [delphi-br] Re: calculo da idade de nascimento no momento do cadastro


  Luciano,
fico muito grato pela sua ajuda, mas estou precisando pegar esse valor e 
colocar em um outro dbedit, como faço isso?
um abraço,

--- Em delphi-br@yahoogrupos.com.br, Luciano Angelini luciano.angel...@... 
escreveu

 
 Boa Tarde Gustavo .
 
 
 Eu uso assim 
 
 
 function TForm1.CalcAnos(const Data1, Data2: TDateTime): integer;
 var
 D1, M1, A1,
 D2, M2, A2: Word;
 begin
 DecodeDate(Data1, A1, M1, D1);
 DecodeDate(Data2, A2, M2, D2);
 
 Result := A2 - A1;
 
 if (M1  M2) or ((M1 = M2) and (D1  D2)) then
 Dec(Result);
 end;
 
 procedure TForm1.Button1Click(Sender: TObject);
 var
 DataNasc: TDateTime;
 begin
 DataNasc := StrToDate(MaskEdit1.Text);
 ShowMessage(IntToStr(CalcAnos(DataNasc, Date)) + ' anos');
 
 end;
 
 Espero ter ajudado !1
 
 
 Luciano Angelini
 Prefeitura de Lupionópolis-Pr
 
 gustavoandref escreveu:
  
 
  Pessoal,
  estou precisando que na tela de cadastro de pacientes ao digitar a 
  data de nascimento apareça em outro campo a idade do paciente (isso é 
  necessário para definir qual especialidade médica ele será direcionado).
 
  sei que é possível fazer via eventos do delphi, mas não sei como 
  fazer. se alguém tiver a solução por favor poste aqui,
 
  um grande abraço,
 
  Gustavo Freitas
  Hospital Geral de Linhares
 
 






[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Re: calculo da idade de nascimento no momento do cadastro

2009-09-16 Por tôpico Luciano Angelini
Gustavo 

  Aparentemente seria só substituir o message pelo seu DBedit, mas eu 
penso que isso daria errado gravar a idade em
um campo de dados, quando passar um certo tempo ja não estara correto os 
dados (idade), o correto seria fazer que calcula-se essa idade e jogaria 
em uma variavel, se vc por pra calcular a idade, tipo toda vez que vc 
abrir o sistema, imagine um sistema rodando em rede com 20 micros, com 
1 pacientes/clientes, toda vez que uma maquina entra no sistema tem 
que fazer esse calculo, dar um while na tabela alterando e gravando, é 
de matar qualquer rede !! Eu tinha um sistema para imprimir cartão 
de aniversariantes do municipio que eu colocava uma Label só pra mostrar 
a idade !!


Espero ter ajudado 


Luciano Angelini




gustavoandref escreveu:
  

 Luciano,
 fico muito grato pela sua ajuda, mas estou precisando pegar esse valor 
 e colocar em um outro dbedit, como faço isso?
 um abraço,

 --- Em delphi-br@yahoogrupos.com.br 
 mailto:delphi-br%40yahoogrupos.com.br, Luciano Angelini 
 luciano.angel...@... escreveu
 
 
  Boa Tarde Gustavo .
 
 
  Eu uso assim 
 
 
  function TForm1.CalcAnos(const Data1, Data2: TDateTime): integer;
  var
  D1, M1, A1,
  D2, M2, A2: Word;
  begin
  DecodeDate(Data1, A1, M1, D1);
  DecodeDate(Data2, A2, M2, D2);
 
  Result := A2 - A1;
 
  if (M1  M2) or ((M1 = M2) and (D1  D2)) then
  Dec(Result);
  end;
 
  procedure TForm1.Button1Click(Sender: TObject);
  var
  DataNasc: TDateTime;
  begin
  DataNasc := StrToDate(MaskEdit1.Text);
  ShowMessage(IntToStr(CalcAnos(DataNasc, Date)) + ' anos');
 
  end;
 
  Espero ter ajudado !1
 
 
  Luciano Angelini
  Prefeitura de Lupionópolis-Pr
 
  gustavoandref escreveu:
  
  
   Pessoal,
   estou precisando que na tela de cadastro de pacientes ao digitar a
   data de nascimento apareça em outro campo a idade do paciente (isso é
   necessário para definir qual especialidade médica ele será 
 direcionado).
  
   sei que é possível fazer via eventos do delphi, mas não sei como
   fazer. se alguém tiver a solução por favor poste aqui,
  
   um grande abraço,
  
   Gustavo Freitas
   Hospital Geral de Linhares