Atualize hoje para o Scriptcase 9 e ganhe 35% de desconto! Atualize hoje para o Scriptcase 9 e ganhe 35% de desconto! COMPRAR AGORA!

Autor Tópico: Exibir idade na grid  (Lida 3485 vezes)

George Carvalho

  • Expert
  • *****
  • Mensagens: 1447
    • Email
Exibir idade na grid
« Online: Janeiro 27, 2008, 07:37:13 pm »
Em uma consulta tenho os nomes e as datas de nascimento das pessoas, como mostrar na grid a idade?

Obrigado.
George Carvalho
Porto de Galinhas/PE

netsoft

  • Visitante
Re: Exibir idade na grid
« Responder #1 Online: Janeiro 27, 2008, 08:20:13 pm »
utiliza esta macro.

sc_dif_date_2(data1, formato data1, data2, formato data2, opção)
sc_dif_date_2(data1, formato data1, data2, formato data2, opção)

Calcula diferença de datas, retornando a quantidade de dias, meses e anos.
O resultado será retornado em forma de array, no qual o índice 0 terá a  a quantidade de dias, o índice 1 terá a quantidade de meses e o índice 2 terá a quantidade de anos.


data1 -  Valor ou variável contendo a primeira data.
formato data1 -  Valor ou variável contendo o formato no qual está armazenada a data1.
data2 - Valor ou variável contendo a segunda data.
formato data2 -  Valor ou variável contendo o formato no qual está armazenada a data2.
opção - 1 = não considera o dia inicial; 2 = considera o dia inicial inclusive.



Ex1:
  {diferenças} = sc_dif_date_2 ({data1}, "aaaa-mm-dd", {data2}, "dd/mm/aaaa", 1);
   {dif_dias}      =  {diferencas[0]};
   {dif_meses}  =  {diferencas[1]};
   {dif_anos  }  =  {diferencas[2]};

Ex2:
  {diferenças} = sc_dif_date_2 ("2000-05-01",  "aaaa-mm-dd", "21/04/2004", "dd/mm/aaaa", 1);
     {diferencas[0]} seria igual a 20 (dias)
     {diferencas[1]} seria igual a 11  (meses)
     {diferencas[2]} seria igual a 3 (anos).

Ex3: Utilizando a opção 2
  {diferenças} = sc_dif_date_2 ("2000-05-01",  "aaaa-mm-dd", "21/04/2004", "dd/mm/aaaa", 2);
     {diferencas[0]} seria igual a 21 (dias)
     {diferencas[1]} seria igual a 11  (meses)
     {diferencas[2]} seria igual a 3 (anos).

Obs: Embora os formatos possam ser diferentes, as datas devem ser compostas de dia, mês e ano.

Vc retorna o dia mes e ano.

George Carvalho

  • Expert
  • *****
  • Mensagens: 1447
    • Email
Re: Exibir idade na grid
« Responder #2 Online: Janeiro 28, 2008, 07:58:47 am »
Entendi, obrigado.

Mas como colocar na grid da consulta????
George Carvalho
Porto de Galinhas/PE

George Carvalho

  • Expert
  • *****
  • Mensagens: 1447
    • Email
Re: Exibir idade na grid
« Responder #3 Online: Janeiro 28, 2008, 08:09:48 am »
Já consegui, obrigado.

Procedimentos adotados:

Criei um campo chamado 'idade';

No evento onRecord coloquei:

$datahoje = date("d-m-Y");
{data} = sc_dif_date_2 ({data_nascimento}, "aaaa-mm-dd", $datahoje, "dd-mm-aaaa", 2);
{idade} = {data[2]};
« Última modificação: Janeiro 28, 2008, 08:39:51 am por gcarvalho »
George Carvalho
Porto de Galinhas/PE

netsoft

  • Visitante
Re: Exibir idade na grid
« Responder #4 Online: Janeiro 28, 2008, 09:51:53 am »
isto mesmo