Calcular idade e mostrar no dbgrid
Bom dia pessoal, é o seguinte:
Tenho na tabela o campo DATANASC. O que eu quero fazer é calcular a idade e mostrar no DBGrid. Como posso fazer isso?
Tenho na tabela o campo DATANASC. O que eu quero fazer é calcular a idade e mostrar no DBGrid. Como posso fazer isso?
Frederico Brigatte***
Curtidas 0
Respostas
Frederico Brigatte***
05/05/2013
Eu fiz assim:
Não está trazendo nada. Quando debuguei deu a mensagem: Variable 'Self' inaccessible here due to optimization
function 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 TDM.cds_DependentesCalcFields(DataSet: TDataSet); var Idade : TDateTime; begin Idade := cds_DependentesDATA_NASC.AsVariant; cds_DependentesIdade.AsVariant := IntToStr(CalcAnos(Idade, Date)); end;
Não está trazendo nada. Quando debuguei deu a mensagem: Variable 'Self' inaccessible here due to optimization
GOSTEI 0
Frederico Brigatte***
05/05/2013
Resolvido.
GOSTEI 0
Wellingthon Oliveira
05/05/2013
como foi que vc conseguiu resolver seu problema amigo??
GOSTEI 0
Frederico Brigatte***
05/05/2013
Você está com o mesmo problema?
GOSTEI 0
Wellingthon Oliveira
05/05/2013
basicamente sim amigo..
GOSTEI 0
Frederico Brigatte***
05/05/2013
o que vc está fazendo?
GOSTEI 0
Wellingthon Oliveira
05/05/2013
o meu problema e o seguinte...tenho uma tela de cadastro de crianças onde insiro todos os dados, inclusive a data de nascimento DD/MM/AAAA
e tenho uma tela de cadastro de festas, e cadastro nessa tela as crianças que irão participar da festa, e os nomes das crianças são mostradas no dbgrid.
o cliente pediu que aparecesse a idade nessa grid ao lado do nome.
não tenho ideia de como somar a idade da tela de cadastro de crianças e mostrar na tela de cadastro de festas.
uso IBDataBase - IBDataSet - DataSource - IBUpdateSQL.
e tenho uma tela de cadastro de festas, e cadastro nessa tela as crianças que irão participar da festa, e os nomes das crianças são mostradas no dbgrid.
o cliente pediu que aparecesse a idade nessa grid ao lado do nome.
não tenho ideia de como somar a idade da tela de cadastro de crianças e mostrar na tela de cadastro de festas.
uso IBDataBase - IBDataSet - DataSource - IBUpdateSQL.
GOSTEI 0
Frederico Brigatte***
05/05/2013
que banco vc está usando e qual delphi?
GOSTEI 0
Wellingthon Oliveira
05/05/2013
SQL Mananger 2005 - Firebird - Delphi XE2
GOSTEI 0
Frederico Brigatte***
05/05/2013
Quer mandar o projeto para eu ver?
frederico.brigatte@gmail.com
Dou uma olhada e te mando.
frederico.brigatte@gmail.com
Dou uma olhada e te mando.
GOSTEI 0
Frederico Brigatte***
05/05/2013
tem skype ou gtalk?
skype: frederico.brigatte@itelefonica.com.br
gtalk: frederico.brigatte@gmail.com
Ta usando dois bancos ou o primeiro é um gerenciador?
skype: frederico.brigatte@itelefonica.com.br
gtalk: frederico.brigatte@gmail.com
Ta usando dois bancos ou o primeiro é um gerenciador?
GOSTEI 0
Wellingthon Oliveira
05/05/2013
Enviado o projeto..me add no skype wellingthon..g.o
GOSTEI 0
Wellingthon Oliveira
05/05/2013
add vc no skype
GOSTEI 0
Frederico Brigatte***
05/05/2013
qual é seu skype? não entendi. Não recebi.
GOSTEI 0
José
05/05/2013
Como a duvida inicial foi solucionada, estou marcando o tópico como concluído.
Fiquem a vontade para abrir novos, tópicos, ou solicitar a reabertura deste.
Fiquem a vontade para abrir novos, tópicos, ou solicitar a reabertura deste.
GOSTEI 0