Connect Celebration Dates: People List or a Separate Dates List
Zenpo Birthdays and Anniversaries reads celebration dates from SharePoint data you point at. A mapped date value determines whether a celebration appears. Zenpo does not define how those dates are collected, approved, or maintained.
Two data modes
The pane label is Dates come from.
| Mode | Where the dates live | When a celebration appears |
|---|---|---|
| The People list (recommended) (default) | Birthday and/or Hire date columns on the People list | The mapped date field contains a value. An empty cell never renders. |
| A separate dates list | A second SharePoint list joined to the People list | A matching row supplies that person's dates. Rows that do not resolve to a person are never rendered. |
You can map either date, or both. Map only the dates you store.
People list mode
- Set Dates come from to The People list (recommended).
- Map Birthday (optional) and/or Hire date (optional).
The pane note is Map either date, or both. A person appears only when the mapped date contains a value.
Separate dates list mode
- Set Dates come from to A separate dates list.
- Set Dates list and its View.
- Set Person (join) on the dates list.
- If the join is a text key, set Matching key on the People list.
- Map Birthday (optional) and Hire date (optional) on the dates list.
Join rules
The join is a Lookup item ID or a text key (for example PersonID). A matching row supplies the person's celebration dates.
SharePoint Person/User columns are not offered as the join. They identify a site user, not a People-list row.
Rows that do not resolve to a person are never rendered. They are counted in the editor-only {N} not shown diagnostics. See Set Up and Configure Birthdays and Anniversaries.
Date math
These rules apply in both modes.
Today and stored dates
Today is the viewer's local calendar day. Stored dates are treated as floating calendar dates. A date stored as 1993-08-05T00:00:00Z renders 5 August in every time zone.
Lookahead window
Lookahead is 7 days, 14 days (default), or 31 days. The window includes today and the last day. It wraps month and year boundaries. A 4 January birthday appears in a late-December window.
Results group into:
- Today (prominent cards)
- This week (days 1–6)
- This month (7+)
Empty groups do not render. Sorting is nearest day first. Within a day, birthdays come before anniversaries, then name.
29 February
A 29 February birthday is celebrated on 28 February in non-leap years.
A 29 February hire date is not shifted. It produces no anniversary in non-leap years. That difference is by design.
Years of service and milestone badges
Years of service is the occurrence year minus the hire year. An anniversary renders only when years of service are greater than 0. The web part never shows 0 years.
Milestone badges appear at 1 year and every 5th year. Examples: 1 YEAR, 15 YEARS.
Who appears
- A person appears when the mapped date field contains a value.
- An empty date cell never renders.
- In separate-list mode, a matching joined row supplies the dates. Unresolved join rows do not render.
- People marked with the optional External marker are excluded unless Include external people is on.
- Readers only see people they have permission to see in SharePoint.