Journal d'activité du membre
Chaque profil de membre a un onglet Activité qui affiche une chronologie de tout ce qui est arrivé à cette personne : quand elle a été ajoutée, à quels groupes elle a adhéré, quels dimanches elle a participé, quels dons elle a faits, quels messages de workflow elle a reçus, et quand (le cas échéant) elle a été marquée perdue et récupérée.
Ouvrez-le depuis le profil de n'importe quel membre.

Ce qui apparaît sur la chronologie
La chronologie est alimentée par la table member_activity_log, qui capture les événements de cycle de vie et d'engagement écrits par le code applicatif (pas par le trigger d'audit générique qui alimente le journal d'audit de l'organisation). Les événements proviennent de partout dans l'application :
| Source | Exemples |
|---|---|
| Cycle de vie du membre | créé, mis à jour, type changé, marqué perdu, récupéré, supprimé |
| Structure org | unité assignée/retirée, groupe assigné/retiré, ministère assigné/retiré |
| Écoles | inscrit, diplômé, retiré |
| Engagement | présence marquée, don enregistré |
| Messagerie | message envoyé, message en échec (avec nom du canal et du modèle) |
| Workflows | workflow démarré, action de workflow exécutée, workflow terminé, workflow en échec |
| Notes | note ajoutée par un membre du personnel |
Chaque événement a une icône, un titre, et (quand pertinent) une courte description. Les événements de workflow incluent également le nom du workflow comme badge pour que vous sachiez quelle automatisation a touché le membre.
Lire la chronologie
Les entrées sont groupées par date avec le jour le plus récent en haut. Dans un jour, elles sont listées du plus récent au plus ancien. Chaque ligne affiche :
- Icône + couleur indiquant le type d'événement (vert pour les événements « rejoint », rouge pour « perdu »/en échec, violet pour les changements de type, etc.)
- Titre — une courte phrase humaine comme « A rejoint le groupe de jeunes » ou « Dîme enregistrée — 50,00 $ »
- Description — une ligne plus longue avec le contexte (l'acteur, le nom du workflow, le type de réunion)
- Heure dans le fuseau horaire de l'organisation
La liste défile à l'intérieur de l'onglet, donc le reste du profil reste visible. Les 100 entrées les plus récentes se chargent par défaut ; l'historique plus ancien est paginé quand il est présent.
Pourquoi un journal séparé au lieu du journal d'audit de l'organisation ?
Le journal d'audit de l'organisation est générique et piloté par trigger — il sait « une ligne dans members a été mise à jour » mais pas « cette personne s'est inscrite à la chorale des jeunes ». Le journal d'activité du membre est conçu pour raconter l'histoire orientée membre :
- Multi-tables. La présence et les dons sont dans des tables différentes ; la chronologie les tisse ensemble.
- Titres lisibles par les humains. Le code applicatif écrit le titre et la description dans la langue de l'utilisateur, pour que le personnel non technique puisse lire la chronologie sans connaître le schéma.
- Intégration des workflows. Les exécutions de workflow écrivent des métadonnées riches (quelle automatisation, quelle action, ce qui s'est passé) que le trigger générique ne peut pas capturer.
Les deux journaux ne se dupliquent pas pour les requêtes en lecture seule : une modification de membre apparaît dans les deux parce qu'elle est suivie par le trigger générique et fait surface comme une entrée de chronologie « Profil mis à jour ».
Permissions
L'onglet Activité est visible par toute personne qui peut voir le profil du membre (pasteurs avec members.read, leaders de groupe dans leur portée). Il n'y a pas de permission séparée pour la chronologie parce qu'elle est déjà filtrée à ce seul membre — la frontière de confidentialité est la permission de vue du membre, pas le journal lui-même.
Quand utiliser la chronologie vs le journal d'audit de l'organisation
| Question | Utilisez |
|---|---|
| « Quand cette personne a-t-elle rejoint l'église ? » | Journal d'activité du membre |
| « Quel est son schéma de présence cette année ? » | Journal d'activité du membre (ou le rapport de présence) |
| « Quels workflows l'ont touchée ? » | Journal d'activité du membre |
| « Qui a modifié son adresse e-mail ? » | Journal d'audit de l'org filtré à ce membre |
| « Pourquoi son type de membre a-t-il été changé ? » | Les deux — la chronologie montre l'événement, le journal d'org montre l'acteur |
Réserves
- Les importations en masse écrivent un seul événement « member.created » par ligne mais ne remplissent pas les assignations de groupe/ministère comme entrées de chronologie distinctes — celles-ci écrivent directement dans les lignes. Si un membre manque d'événements d'adhésion attendus, vérifiez l'historique des importations pour confirmer que l'importation a réussi.
- Les éditions hors ligne PowerSync sont mises en file et horodatées au moment de la synchronisation, pas au moment de l'édition. Attendez-vous à un petit décalage entre l'horodatage d'activité et ce que le bénévole a vu sur l'appareil.
- Entrées d'activité supprimées. Supprimer doucement un membre n'efface pas sa chronologie. La restaurer la ramène intacte. Les suppressions définitives (rares, demandes RGPD) effacent la chronologie en même temps que le membre.
Voir aussi
- Journal d'audit de l'organisation pour l'historique filtrable au niveau organisation
- Exécutions de workflow pour le côté workflow de l'histoire
- Détail du membre pour le reste du profil
