How Age at First Service Is Calculated
How TRIOPilot calculates Age at First Service from the date of birth, when it calculates it again, and which ages it leaves alone.
Age at First Service is a value on each program year's record. For EOC and Talent Search, TRIOPilot can calculate it from the student's date of birth and keep it matched to the student's first service in that program year. The note under the field on the profile says whether it does that for a record.
What Age at First Service Means
The federal APR instructions for EOC and Talent Search (Section II.E) say: "The data reported here should reflect the age of project participants at the time of first service in the reporting period." So a student's age belongs to one program year. A returning student has a new age each year: their age on the day of their first service in that year, not last year's age, and not last year's age plus one.
TRIOPilot treats the student's first contact in the program year as their first service. Your APR's age block counts this value. For EOC it also decides the student's Section III line, because Block B is for students 18 or under.
How TRIOPilot Calculates It
- When a program year's record is created, TRIOPilot calculates the age from the date of birth. If the student already has a contact in that year, it uses the date of the first one. If not, it uses the day the record is created: for example, the day an application arrives, the day you add a student with Add New Student, the day you add a returning student with Add to the current year, or the day you first save something in a year that has no record. A record created before its program year begins, such as a student rolled into a new year, uses September 1, the year's first day. A record created after its program year ended uses August 31, the year's last day.
- When the year's first contact is logged, TRIOPilot calculates the age again, as of that contact's Date of Contact. A contact you log later with an earlier date becomes the new first service, and the age follows it. An event counts the same way: its date is each attendee's contact date.
- TRIOPilot also calculates the age again when the first contact's date is changed, when a correction by support moves or removes the first contact, when two records are merged, and when the date of birth is corrected. A merge calculates the kept record's ages once, after the merge, from its date of birth and all of its contacts. When the first contact moves or is removed, TRIOPilot uses the next contact in the year; with none left, it uses the day from step 1: the day the record was created, September 1 for a record created before its year began (such as a rolled record), or August 31 for one created after its year ended.
This applies to every age whose note starts with Calculated from the date of birth or Left blank. It never applies to an age entered by hand, or to an age whose note says TRIOPilot does not keep this age current (see Ages TRIOPilot Does Not Keep Current, below).
A contact's date is the date you enter. When TRIOPilot uses the day a record was created, it uses your program's time zone.
See Whether TRIOPilot Keeps an Age Current
Under Age at First Service on the profile, a short note says where the age came from:
- Calculated from the date of birth, with the day it was taken as of and why that day: the first contact in PY 26-27, the day this year's record was created, the first day of PY 26-27, or the last day of PY 26-27 (each with the year you are viewing). TRIOPilot calculated it and calculates it again when the first contact or the date of birth changes.
- Left blank, with the reason. TRIOPilot keeps this age current but cannot calculate it yet, because the date of birth is missing, is after the first service, or gives an impossible age. Fix the date of birth and TRIOPilot calculates it.
- Entered by hand. TRIOPilot does not calculate it again. Someone typed this age, over one TRIOPilot had calculated or when the year's record was created.
- TRIOPilot does not keep this age current. The age was saved before TRIOPilot began keeping ages current, or imported from a previous system, or someone typed it on such a record. It stays as it is when contacts are logged or the date of birth changes.
You can type an age on the profile at any time, and TRIOPilot never replaces an age entered by hand. To have TRIOPilot calculate an age and keep it current, choose Calculate From Date of Birth under the field. The button appears for people who can edit the field. TRIOPilot shows the age it would store and the day it is taken as of, and changes nothing until you choose Calculate, after which it keeps the age current. Cancel leaves the age as it is.
Calculate From Date of Birth is not offered for a program year that ended with no contact logged, because that year has no first service to calculate from. Leave those ages as they are; on imported records they are the previous system's values.
To list ages by where they came from, filter the Students page on Age at First Service Source: Calculated from the date of birth, Entered by hand, or Is Empty for the ages TRIOPilot does not keep current. See Find and filter students.
Ages TRIOPilot Does Not Keep Current
An age whose note says TRIOPilot does not keep this age current keeps its value when a contact is logged or the date of birth is corrected. Most of these ages were saved before TRIOPilot began keeping ages current, even when TRIOPilot calculated the age when the record was created; every age imported from a previous system is one. To list them, filter the Students page on Age at First Service Source with Is Empty.
Before you file your APR, check each of these ages in the year you report against the student's first service in that year:
- An age saved in TRIOPilot: the first service is the student's first contact in that year. If the age does not match it, choose Calculate From Date of Birth to have TRIOPilot calculate it and keep it current.
- A record imported from a previous system: the imported contacts may not include the student's first service in the year, because some services were recorded only in the previous system. Check the age against your program's own record of the first service, for example in the previous system. Choose Calculate From Date of Birth only when the student's first contact in TRIOPilot is that first service. Otherwise leave the imported age as it is, or type the correct one.
Who Is Named in the Activity Feed
Each time a calculation changes the age, the student's Activity Feed gets an entry that shows the old and new age and reads Calculated again from the date of birth, as of the day and why that day, or Left blank when calculated again with the reason. The Audit Log records it as Edited Student. The entry names the person whose save caused it: the person who logged the contact or recorded the event (even when the event names another host), changed the contact's date, corrected the date of birth, or merged the two records. When no one person caused the change, for example when support corrects a record, the entry shows no name. These entries do not count as that person's profile edits on their staff page.
When the Age Stays Blank
TRIOPilot leaves a calculated age blank, and the APR counts the student on the Unknown line, when:
- the record has no date of birth;
- the date of birth is after the first service; or
- the date of birth gives an age under 5 or over 130, which no participant can have. This usually means the year was typed wrong.
The note under the field starts with Left blank and says which one applies. Correct the date of birth and TRIOPilot calculates the age; you do not need to type it.
An age from 5 to 9 is kept. The instructions place participants "younger than 11 years old" on the first line of the age table, so the EOC and Talent Search reports count anyone younger than 10 on that line and list them so you can check each one.
Which Programs This Applies To
EOC and Talent Search, whose APR instructions define the age at first service in each reporting period.
The APRs for Upward Bound, Upward Bound Math-Science, SSS, McNair, and VUB have no age table; their record files carry the date of birth instead. For those programs, TRIOPilot fills in the age from the date of birth when an application arrives or you add a student with Add New Student. At rollover it adds 1 to last year's age, unless your program's setting for the field is A value each year, carried forward from last year or A value each year, starting blank, or the run's Field Actions row says Carry forward or Reset. It does not calculate the age again at a contact, and the profile shows no note.
At Rollover
For EOC and Talent Search, rollover always calculates a rolled student's age from the date of birth, as of September 1, the first day of the new program year, because the student has no contact in that year yet. When their first contact in the new year is logged, TRIOPilot calculates it again as of that contact, so you do not need to check rolled students' ages by hand. These two programs have no other rollover action for this field: Settings shows A value each year, calculated from the date of birth, and the run's Field Actions card shows From date of birth. See Roll students into a new program year.