Quote from
CSSystems on February 18, 2023, 5:36 pm
I thought I had working code to calculate the age of a member. Just discovered the inaccuracy.
This is the code I developed. Could you find my error?
:CalcAge
IfEx "[AddrBook.Contacts.ActiveStatus] = True AND [AddrBook.Contacts.DOB]=[#34][#34]"
SetVar "[AddrBook.Contacts.Age]" "NA"
Else
If "[AddrBook.Contacts.ActiveStatus]" "=" "True"
.************
If "[AddrBook.Contacts.LastAgeCalc]" "<>" "[DateShort]"
DateToNum "[AddrBook.Contacts.DOB]" "m/d/y" "[BDayNum]"
DateToNum "[DateShort]" "m/d/y" "[Today]"
Math "[Today]-[BDayNum]" "0" "[DaysDif]"
Math "[DaysDif]/365.25" "1" "[AgeResult]"
. Update Age
SetVar "[AddrBook.Contacts.Age]" "[AgeResult]"
. set last date age was updated
. convert number back to date
NumToDate "[Today]" "m/d/yyyy" "[Today2]"
SetVar "[AddrBook.Contacts.LastAgeCalc]" "![Today2]"
EndIf
.****************
EndIf
Endif
Return
I thought I had working code to calculate the age of a member. Just discovered the inaccuracy.
This is the code I developed. Could you find my error?
:CalcAge
IfEx "[AddrBook.Contacts.ActiveStatus] = True AND [AddrBook.Contacts.DOB]=[#34][#34]"
SetVar "[AddrBook.Contacts.Age]" "NA"
Else
If "[AddrBook.Contacts.ActiveStatus]" "=" "True"
.************
If "[AddrBook.Contacts.LastAgeCalc]" "<>" "[DateShort]"
DateToNum "[AddrBook.Contacts.DOB]" "m/d/y" "[BDayNum]"
DateToNum "[DateShort]" "m/d/y" "[Today]"
Math "[Today]-[BDayNum]" "0" "[DaysDif]"
Math "[DaysDif]/365.25" "1" "[AgeResult]"
. Update Age
SetVar "[AddrBook.Contacts.Age]" "[AgeResult]"
. set last date age was updated
. convert number back to date
NumToDate "[Today]" "m/d/yyyy" "[Today2]"
SetVar "[AddrBook.Contacts.LastAgeCalc]" "![Today2]"
EndIf
.****************
EndIf
Endif
Return