SetUnderAgeFlag = function() { var birthDate = Xrm.Page.getAttribute('birthdate').getValue(); if (birthDate != null) { var today = new Date(); var nowyear = today.getFullYear(); var nowmonth = today.getMonth(); var nowday = today.getDate(); var birthyear = birthDate.getFullYear(); var birthmonth = birthDate.getMonth(); var birthday = birthDate.getDate(); var age = nowyear - birthyear; var age_month = nowmonth - birthmonth; var age_day = nowday - birthday; if ( (age < 18) || ((age==18) && (age_month<0)) || ((age==18) && (age_month==0) && (age_day <0)) ) { Xrm.Page.getAttribute('new_under18flag').setValue(true); } else { Xrm.Page.getAttribute('new_under18flag').setValue(false); } Xrm.Page.getAttribute('new_under18flag').setSubmitMode('always'); } }
Mar 20, 2017
Track Underage contact based on birthday
Dynamics 365 doesn’t give a functionality to identify under age contacts though it captures the birthday by default. Here is a simple code snippet to switch a flag based on age. We can now simply distinguish under age (<18) contact easily through a view.
This comment has been removed by the author.
ReplyDeleteWouldn't this only reflect their underage status at the time the record is created/updated? Wouldn't a calculated field of DIFFINYEARS(birthDate,NOW()) > 18 work better?
ReplyDeleteYep, you are correct. Thanks for sharing the thought.
ReplyDelete