Next, we will create the AL code to calculate a fan's age (in years) based on their birth date and the current WORKDATE. The logic is simple—subtract the birthdate from the WORKDATE. This gives a number of days. So, we will divide by 365 (not worrying about leap years) and round down to integer years (if someone is 25 years, 10 months, and 2 days old, we will just consider them 25). In the following code, we did the division as though the result were a decimal field. However, because our math is done in integers, we could have used the simpler expression:
FanAge := ((WORKDATE - "Birth Date") DIV 365);
Finally, we'll write the code to check each Fan record data against our selection criteria, determining whether we want to include that fan in our output data (SelectThisFan set to True). This code will select each fan who fits any of the checked criteria; there is no combination logic here.
The following is our commented AL code...