[firebase-br] Ajuda com Select

Guionardo Furlan guionardo em gmail.com
Ter Mar 7 08:55:12 -03 2006


Não precisa complicar tanto. Olha só:

function Idade(dtNasc: TDateTime): String;
begin
  Result:=FormatDateTime('YY "ano(s)," M "mes(es) e "D
"dia(s)"',Now-dtNasc);
end;

Bem mais fácil, não?

Grande abraço.

Em 06/03/06, Magno <magnoscosta em bol.com.br> escreveu:
>
> Será q isso te resolve?
>
> function Idade(dtNasc:TDateTime) : String;
> Type
> Data = Record
>        Ano : Word;
>        Mes : Word;
>        Dia : Word;
>        End;
> Const
> Qdm:String = '312831303130313130313031';
> Var
> Dth : Data;
> Dtn : Data;
> anos, meses, dias, nrd : Shortint;
> a,m,d: string;
> begin
> DecodeDate(Date,Dth.Ano,Dth.Mes,Dth.Dia);
> DecodeDate(dtNasc,Dtn.Ano,Dtn.Mes,Dtn.Dia);
> anos := Dth.Ano - Dtn.Ano;
> if anos = 1 then
>   a := ' ano, '
> else
>   a := ' anos, ';
> meses := Dth.Mes - Dtn.Mes;
> if meses < 0 then
>    begin
>    Dec(anos);
>    meses := meses+12;
>    end;
> if meses = 1 then
>   m := ' mês e '
> else
>   m := ' meses e ';
> dias := Dth.Dia - Dtn.Dia;
> if dias < 0 then
>    begin
>    nrd := StrToInt(Copy(Qdm,(Dth.Mes-1)*2-1,2));
>    if ((Dth.Mes-1)=2) and ((Dth.Ano Div 4)=0) then
>       begin
>       Inc(nrd);
>       end;
>    dias := dias+nrd;
>    meses := meses-1;
>    end;
> if dias = 1 then
>   d := ' dia'
> else
>   d := ' dias';
> Result := IntToStr(anos)+ a +
>           IntToStr(meses) + m +
>           IntToStr(dias)+ d;
> end;
>
> Nao usei.. mas acho q o retorno é XX anos, XX Meses, XX dias... ok...
> Vlw
> Magno
>
> ----- Original Message -----
> From: "Márcio" <marcioecruz em ig.com.br>
> To: <lista em firebase.com.br>
> Sent: Monday, March 06, 2006 7:35 PM
> Subject: [firebase-br] Ajuda com Select
>
>
> Sou iniciante com o Firebird, queria saber como retornar a idade baseado
> na
> data de nascimento do cliente.
> No Access e faria assim.
>
> Select Codigo,Nome,((Date()-Nascimento)-365.25) As Idade From Cliente
>
> [],s
> Marcio
>
>
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



--

Timeo hominem unius libri
Cogito ergo sum - Carpe diem

[]s
Guionardo Furlan



Mais detalhes sobre a lista de discussão lista