Macro para calculo de idade

Boa noite amigos
Sou novato no Scriptcase, embora desenvolva há muitos anos em outras linguagens.
Pediria a ajuda aos amigos para utilização da macro sc_date_dif_2

Codigo abaixo para achar a idade a partir da data de nascimento

$hoje = date(‘d-m-y’);
$datanasc = {DN};

{diferenca} = sc_date_dif_2 ($datanasc, “dd-mm-yyyy”, $hoje, “dd-mm-yyyy”, 0);

$dif_dias = {diferenca[0]};
$dif_meses = {diferenca[1]};
$dif_anos = {diferenca[2]};

echo " $dif_anos anos, $dif_meses meses e $dif_dias dias";

Obs: acredito que o erro esta na formatação do campo DN na atribuição da variavel.

Agradeço amigos qualquer ajuda. Grato

Mario

Espero que lhe ajude.
Exemplo em sistema de funerária:

EVENTOS AJAX

data_falecimento_onChange

$dt1 = strtotime({data_nascimento});
$dt2 = strtotime({data_falecimento});
$dataatual = strtotime(date(‘d-m-Y’));

if($dt1 == $dt2){

// Javascript message parameters
$javascript_title = ‘ATENÇÂO’; // Javascript message title
$javascript_message = ‘As datas do nascimento e do falecimento não podem ser iguais.’; // Javascript message contents
sc_set_focus(‘data_falecimento’);
{data_falecimento}=’’;

// Display javascript message
sc_ajax_message($javascript_message, $javascript_title);
}

elseif($dt1 > $dt2){
$javascript_title = ‘ATENÇÂO’; // Javascript message title
$javascript_message = ‘A data do nascimento não pode ser maior que do falecimento.’; // Javascript message contents
sc_set_focus(‘data_falecimento’);
{data_falecimento}=’’;

// Display javascript message
sc_ajax_message($javascript_message, $javascript_title);

}

elseif($dt2 > $dataatual){
$javascript_title = ‘ATENÇÂO’; // Javascript message title
$javascript_message = ‘A data do falecimento não pode ser maior que a data atual.’; // Javascript message contents
sc_set_focus(‘data_falecimento’);
{data_falecimento}=’’;

// Display javascript message
sc_ajax_message($javascript_message, $javascript_title);
}

data_nascimento_onChange

$datahoje = date(“d-m-Y”);
//$datahoje = {data_falecimento};

{data} = sc_dif_date_2 ({data_nascimento}, “aaaa-mm-dd”, $datahoje, “dd-mm-aaaa”, 2);

if ({data[2]}>‘0’){
{idade} = {data[2]}. ’ anos’;
sc_field_display({idade}, ‘on’);
}

elseif ({data[1]}==‘0’){
{idade} = {data[0]}. ’ dias’;
sc_field_display({idade}, ‘on’);
}

elseif ({data[1]}>‘1’){
{idade} = {data[1]}. ’ meses’;
sc_field_display({idade}, ‘on’);
}

elseif ({data[1]}<‘2’){
{idade} = {data[1]}. ’ mês’;
sc_field_display({idade}, ‘on’);
}

else {
sc_field_display({idade}, ‘off’);
}

Use a função interna do teu banco.
Não sei qual teu banco de dados, mas no PostgreSQL é simples assim:

SELECT age(current_date, data_nascimento);