Calcular la edad de una persona
Hola a todos,
He creado un método para calcular la edad de una persona, o la edade de un porceso, contrato o cualquier otra cosa que quieras.
/// Calculate the age from date of birth and other date (by default shoud be today).
/// <b>dateOfBird</b> Date of birth in cache format. ie. $ZDH("1972-01-01",3)
/// <b>day</b> Date to calculate to. ie: $H
ClassMethod AgeAt(dateOfBirth, day) As %Integer{
quit:dateOfBirth=""
quit:day=""
set yeardob=$SYSTEM.SQL.DATEPART("year",dateOfBirth)
set yearday=$SYSTEM.SQL.DATEPART("year",day)
set years=yearday-yeardob
kill yeardob, yearday
set monthdob=$SYSTEM.SQL.DATEPART("month",dateOfBirth)
set monthday=$SYSTEM.SQL.DATEPART("month",day)
if (monthday-monthdob)<0 set years=years-1
if (monthdob-monthday)=0
{
if ($SYSTEM.SQL.DATEPART("day",day) - $SYSTEM.SQL.DATEPART("day",dateOfBirth)) < 0
{
set years=years-1
}
}
kill monthdob, monthday
quit years
}
Espero que este método te sea util
Saludos cordiales