Report on membership now and month by month
Purpose
Associations count their members constantly: for boards, for dues, and for trend reports month after month. Today's numbers come from the live data. A month's numbers must never shift because someone corrected a record later, unless the report is deliberately restated.
How It Works
Analysts query four live datasets: memberships, terms, lifecycle events and term affiliations, each behind its own permission. The memberships dataset carries today's status, the current type, the number of continuity episodes and the units each member belongs to. Once each month ends, Rhythm takes a snapshot of every membership as it stood at the month's end, as known at that moment in the workspace's own time zone. Each member is described by the term covering the month's end, with its chapter ties placed in the tree as it was then. The month's counts are grouped by type, package, status, grace and origin, with the month's joins, renewals, lapses and reinstatements. A snapshot is checked before it is published, and a month that fails publishes nothing. Rerunning a month reproduces it exactly unless the rerun asks for a later "as known" moment. The workspace chooses which characteristics, such as a member's rank, each month freezes beside its members. Reports read only each month's current published version. The product should keep blank contact values from failing a month, and should make the first months after a migration hold the migrated members. Today neither holds.
Relationships
- Depends on
CAP-MBR-MEM-018because snapshots read the same recorded versions as the past-date reads. - Depends on Platform's queries and snapshots (
MOD-PFM-QRY) for the query layer, the snapshot ledger and run scheduling.