Compare commits

..

36 Commits

Author SHA1 Message Date
ad64d60721
précisions sur statut du parcours
All checks were successful
continuous-integration/drone/push Build is passing
2023-11-10 14:21:52 +01:00
d71934b6d8
carte des entités et des relations un-à-plusieurs
All checks were successful
continuous-integration/drone/push Build is passing
2023-11-07 21:47:23 +01:00
73d5e35809
nouveaux filtres dans les échanges 2023-11-07 21:47:19 +01:00
15cf0c045a Merge pull request 'add a page for export and explanations about filters and aggregators' (#6) from documentation-export-base into main
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
Reviewed-on: Chill-project/manuals#6
2023-10-24 13:15:22 +00:00
147f1c29f4 Merge pull request 'improve doc for variable thirdParty in Doc gen' (#7) from docgen-add-third-party into main
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: Chill-project/manuals#7
2023-10-24 13:14:59 +00:00
7e9bb952b8
concepts for exports
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-10-24 15:14:24 +02:00
5af59d6c69
add a new "accompanyingPeriodInfo"
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-10-24 13:15:13 +02:00
1165b5edbd
aggregators for person, accompanying period and activity 2023-10-24 13:14:36 +02:00
3128fa299d
add the exports files to build script
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-10-23 23:05:22 +02:00
6cbf663de8
Merge remote-tracking branch 'origin/documentation-export-base' into documentation-export-base 2023-10-23 23:04:24 +02:00
185e93afd8 more docs on exports
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-10-23 21:03:41 +00:00
fad78b1c19 new exports 2023-10-23 21:03:41 +00:00
9b14326edc Doc filtre groupement par localisation de l'échange 2023-10-23 21:03:41 +00:00
3a3aedaec1 add new filters and grouping and precise about intervention / intervenants 2023-10-23 21:03:41 +00:00
589742894c add filter 2023-10-23 21:03:41 +00:00
81cc08aaf7 rename the label of some filters 2023-10-23 21:03:41 +00:00
5fab83927e add a page for export and explanations about some filters 2023-10-23 21:03:41 +00:00
24ef4f919a
more docs on exports
Some checks reported errors
continuous-integration/drone/push Build was killed
continuous-integration/drone/pr Build was killed
2023-10-23 14:29:39 +02:00
180daf4e9d
new exports
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-10-20 14:10:41 +02:00
1756474c64 improve doc for variable thirdParty in Doc gen
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
Signed-off-by: Julien Fastré <julienfastre@noreply.localhost>
2023-10-19 16:01:32 +00:00
d3f68d6258
Doc filtre groupement par localisation de l'échange
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-07-11 15:14:39 +02:00
09d11a0d3a
force to display figure before title 2023-07-11 15:14:39 +02:00
082f67710e
make numbering starts to 1 2023-07-11 15:14:39 +02:00
7efd5873da
fix numbering 2023-07-11 15:14:39 +02:00
05deae0684
add new filters and grouping and precise about intervention / intervenants
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-06-30 15:08:54 +02:00
b7d5734caa
add filter
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-06-27 15:56:05 +02:00
369cf0c714
rename the label of some filters 2023-06-27 15:54:01 +02:00
3b7619486f
force to display figure before title
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-27 14:01:47 +02:00
78bc7128f9
make numbering starts to 1 2023-06-27 14:01:31 +02:00
99e8bc2c7f
fix numbering 2023-06-27 13:52:40 +02:00
b7f7b68d72
add a page for export and explanations about some filters
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-06-27 13:04:16 +02:00
e8aeab1ac7
more templates in admin / generation document
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-27 13:03:58 +02:00
558461b3fb Transférer les fichiers vers 'admin/generation-documents-templates'
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-15 10:51:07 +00:00
e037b4fff8 Transférer les fichiers vers 'admin/generation-documents-templates'
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-15 10:50:36 +00:00
7e8b8bd2d4 Transférer les fichiers vers 'admin/generation-documents-templates'
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-15 10:15:37 +00:00
0e2b5b3201 Transférer les fichiers vers 'admin/generation-documents-templates'
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-14 09:39:24 +00:00
24 changed files with 1366 additions and 58 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -159,6 +159,7 @@ Les administrateurs fonctionnels peuvent activer les paramètres suivants:
* un champ "usager 1", qui permet ensuite à l'utilisateur de choisir un usager parmi ceux concernés par le parcours, les interlocuteurs privilégiés qui sont des usagers (à l'exclusion des tiers), et les personnes ressources associées à un usager concerné du parcours (à l'exclusion des ressources tiers et "texte libre"); * un champ "usager 1", qui permet ensuite à l'utilisateur de choisir un usager parmi ceux concernés par le parcours, les interlocuteurs privilégiés qui sont des usagers (à l'exclusion des tiers), et les personnes ressources associées à un usager concerné du parcours (à l'exclusion des ressources tiers et "texte libre");
* un champ "usager 2", qui permet aux utilisateurs de choisir un deuxième usager parmis ceux concernés par le parcours, les interlocuteurs privilégiés qui sont des usagers (à l'exclusion des tiers), et les personnes ressources associées à un usager concerné du parcours (à l'exclusion des ressources tiers et "texte libre"); * un champ "usager 2", qui permet aux utilisateurs de choisir un deuxième usager parmis ceux concernés par le parcours, les interlocuteurs privilégiés qui sont des usagers (à l'exclusion des tiers), et les personnes ressources associées à un usager concerné du parcours (à l'exclusion des ressources tiers et "texte libre");
* un champ "usager principal du parcours", qui permet, cette fois, de choisir parmi les usagers concernés par le parcours, les interlocuteurs privilégiés qui sont des usagers (à l'exclusion des tiers), et les personnes ressources associées à un usager concerné du parcours (à l'exclusion des ressources tiers et "texte libre"); * un champ "usager principal du parcours", qui permet, cette fois, de choisir parmi les usagers concernés par le parcours, les interlocuteurs privilégiés qui sont des usagers (à l'exclusion des tiers), et les personnes ressources associées à un usager concerné du parcours (à l'exclusion des ressources tiers et "texte libre");
* un champ "tiers", qui permet de choisir un tiers parmi les tiers "personnes ressources" du parcours, ou le demandeur du parcours (s'il s'agit d'un tiers);
#### Variables #### Variables
@ -168,6 +169,7 @@ Le document présente:
* si `usager principal du parcours` est coché, une variable `mainPerson`, de type `Person`, avec les variants `relations`, `household` (ménage) et `budget`; * si `usager principal du parcours` est coché, une variable `mainPerson`, de type `Person`, avec les variants `relations`, `household` (ménage) et `budget`;
* si `usager 1` est coché, une variable `person1`, de type Person, avec les variants `relations`, `household` (ménage) et `budget`; * si `usager 1` est coché, une variable `person1`, de type Person, avec les variants `relations`, `household` (ménage) et `budget`;
* si `usager 2` est coché, une variable `person2`, de type Person, avec les variants `relations`, `household` (ménage) et `budget`; * si `usager 2` est coché, une variable `person2`, de type Person, avec les variants `relations`, `household` (ménage) et `budget`;
* une variable `thirdParty`, de type `ThirdParty`, uniquement si l'administrateur fonctionnel l'a configuré.
### Document générés pour un parcours, contexte "liste des activités" ### Document générés pour un parcours, contexte "liste des activités"
@ -187,6 +189,7 @@ Le document présente:
* si `usager principal du parcours` est coché, une variable `mainPerson`, de type `Person`, avec les variants `relations`, `household` (ménage) et `budget`; * si `usager principal du parcours` est coché, une variable `mainPerson`, de type `Person`, avec les variants `relations`, `household` (ménage) et `budget`;
* si `usager 1` est coché, une variable `person1`, de type Person, avec les variants `relations`, `household` (ménage) et `budget`; * si `usager 1` est coché, une variable `person1`, de type Person, avec les variants `relations`, `household` (ménage) et `budget`;
* si `usager 2` est coché, une variable `person2`, de type Person, avec les variants `relations`, `household` (ménage) et `budget`; * si `usager 2` est coché, une variable `person2`, de type Person, avec les variants `relations`, `household` (ménage) et `budget`;
* une variable `thirdParty`, de type `ThirdParty`, uniquement si l'administrateur fonctionnel l'a configuré.
### Document générés pour un échange ### Document générés pour un échange
@ -204,7 +207,8 @@ Il est possible également d'injecter des dossiers d'usagers, parmi ceux associ
### Documents générés dans le dossier d'une personne: contexte "personne basique" ### Documents générés dans le dossier d'une personne: contexte "personne basique"
* une variable `person`, de type `Person`, avec les variants `relations`, `household` (ménage) et `budget`. * une variable `person`, de type `Person`, avec les variants `relations`, `household` (ménage) et `budget`;
* une variable `thirdParty`, de type `ThirdParty`, uniquement si l'administrateur fonctionnel l'a configuré.
### Documents générés dans le dossier d'une personne: contexte "personne avec un tiers" ### Documents générés dans le dossier d'une personne: contexte "personne avec un tiers"

View File

@ -37,9 +37,18 @@ if [ $kind = 'user' ]; then
tasks.md tasks.md
workflows.md workflows.md
adresses.md adresses.md
gestion-doublon.md exports.md
exports_person.md
exports_activity.md
exports_accompanying_period.md
nouveautes.md nouveautes.md
" "
# missing pages to once completed
# exports_accompanying_period_work.md
# exports_accompanying_period_work_evaluation.md
# exports_aside_activity.md
# exports_calendar.md
# exports_household.md
elif [ $kind = 'admin' ]; then elif [ $kind = 'admin' ]; then
export files=" export files="
start.md start.md

208
user/exports.md Normal file
View File

@ -0,0 +1,208 @@
```{=latex}
\cleardoublepage
```
# Exports
Chill permet d'exporter les données sous différentes formes:
- des listes;
- des tableaux reprenant un ou plusieurs indicateurs.
Les listes peuvent être filtrées selon différents paramètres: âge de l'usager, date de l'échange, etc.
Les tableaux reprennent un indicateur (par exemple: nombre de parcours, nombre d'usager, durée moyenne des échanges), dont les données servant de base au calcul de cet indicateur peut également être filtré, mais aussi regroupé selon différents paramètres (exemple: statut du parcours, type d'échange, etc.). Ces exports ressemblent donc aux "tableaux croisés dynamiques" disponibles dans les logiciels de tableur.
## Fonctionnement général et concepts
### Export d'indicateurs
Les exports fonctionnent comme des tableaux croisés:
- un "export" permet de choisir l'indicateur.
Quelques exemples d'export: nombre de parcours, durée moyenne des parcours, nombre d'usagers, etc.
- des filtres permettent de ne retenir qu'une partie des données.
Exemple de filtre: uniquement les parcours urgent, les usagers de plus de 18 ans, etc.
- des regroupements créent des "classes statistiques" et permettent d'aggréger les données dans ces classes.
Cela permet de connaitre, par exemple, le "nombre d'échange par type d'échange", "le nombre de parcours par référent", etc.
### Listes de données
Au sein des exports, Chill propose des "listes" de données: liste des parcours, liste des usagers, etc.
Ces listes sont des données au format tableur, et chaque colonne comporte une information.
Les filtres des exports d'indicateurs sont disponibles pour les listes: il est donc possible de connaitre la liste des usagers de plus de 18 ans, etc.[^grouping-non-sense]
[^grouping-non-sense]: Les regroupements ne sont pas, eux disponibles: ils n'ont pas de sens dans ce contexte.
### Sauvegarde des exports configurés
Lorsqu'un export est configuré, il peut être sauvegardé par l'utilisateur. Ce dernier lui indique donc un titre et une description. L'export peut alors être re-joué plusieurs fois à partir des exports sauvegardés.
![Sélecteur qui permet d'accéder à la liste des exports enregistrés](img/export_select_saved_exports.png)
Les exports enregistrés peuvent être modifiés et sauvegardés sous un autre nom.
### Filtres
Les filtres permettent donc de filtrer les données avant l'export.
Ils peuvent être additionnés les uns aux autres: activer deux filtres lors d'un export filtrera les données pour ne retenir que les données qui correspondent aux deux filtres combinés.
Certains filtres demandent des paramètres pour être complétés.
### Regroupements
Les regroupements permettent de créer des classes statistiques pour regrouper les indicateurs.
Typiquement, chaque regroupement va ajouter une colonne dans le résultat, indiquant la nature de la donnée regroupée. Par exemple, le genre des usagers comptabilisés, le nom du référent du parcours, etc.
Ils peuvent également être combinés les uns aux autres. Dans ce cas, cela se matérialise par l'existence de plusieurs colonnes dans le résultat final: une colonne par regroupement.
Lorsque certaines données ne comportent pas de valeur, la cellule de la colonne du regroupement est généralement vide, ou son libellé est explicite.
#### Regroupements dans le cas de relation un-à-plusieurs
Il existe des relations un-à-plusieurs entre différents éléments, et qui font l'objet d'un regroupement. Quelques exemples: un parcours comporte plusieurs problématiques sociales, un échange peut comporter plusieurs utilisateurs participants, etc.
Dans ce cas, l'indicateur est comptabilisé plusieurs fois: une fois en regard de chaque ligne.
Prenons pour exemple les parcours et les problématiques sociales:
- le parcours n°1 comporte les problématiques "Logement", "Santé" et "Emploi";
- le parcours n°2 comporte les problématiues "Logement" et "Santé".
Le résultat sera le suivant:
| Problématique | Nombre de parcours | Explication |
|--------------:|---------:|-----------------------------------------------------|
|Emploi|1|Seul le parcours n°1 est comptabilisé |
|Logement|2|Le parcours n°1 et 2 sont concernés|
|Santé|2|Le parcours n°1 et 2 sont concernés|
Notez que le total des colonnes "nombre de parcours" est supérieur à deux (en l'occurrence il est de 5), alors qu'il y a seulement deux parcours concernés. Il est important d'être attentif à ce comportement lors de la comptabilisation des résultats: l'usage de "totaux" (souvent indiqués en bas de colonne, par exemple) n'est pas pertinent.
### Données historiques
Le logiciel Chill enregistre des données historiques: les référents d'un parcours, les référents des actions, l'appartenance d'un utilisateur à un ménage, etc.
Dès lors, de nombreux filtres et regroupements demandent une "date de calcul" pour ces éléments: il s'agit de la date à laquelle le référent était en position de désignation sur un parcours, l'appartenance de l'usager à un ménage à la date indiquée, etc.
### Dates glissantes
Les parcours peuvent être enregistrés, et rejoués à des dates différentes.
Dès lors, le logiciel utilise des "dates glissantes" pour indiquer une date, plutôt qu'une valeur absolue. Les "dates glissantes" se matérialisent par un menu déroulant dans lequel l'utilisateur indique un calcul de date:
- le début de l'année précédente,
- le début de l'année courante;
- la date du jour,
- etc.
Cet indicateur est converti **au moment de la génération de l'export**. Ainsi, le "début du mois précédent" sera le 1er janvier 2023 lorsque l'export est généré le 15 février 2023. Lorsqu'il sera généré le 15 mars 2023, le "début du mois précédent" sera le 1er février 2023.
Il n'y a pas de mention de "fin" d'une période ("fin du mois courant", "fin du mois précédent", etc.), car la fin d'une période est le début de la période suivante.
### Couches et zones géographiques
Les adresses sont localisées, dans Chill. La localisation géographique est enregistrée à l'endroit exact lorsque l'utilisateur a choisi l'adresse dans une liste de référence. Lorsque seul le code postal est choisi parmi les suggestions, alors l'adresse est géolocalisée à l'intérieur de la zone géographique du code postal, de manière aléatoire.
Les administrateurs peuvent injecter dans le logiciel des zones géographiques, qui appartiennent chacune à une "couche". Chaque zone est définie par une frontière (un polygone géographique). Ainsi, la couche des "communes" comportent plusieurs communes, appelées par leur nom. Chaque adresse peut être géographiquement associée à une zone géographique en fonction de la localisation: toutes les adresses à l'intérieur des frontières de la zone est associée à cette zone.
Chill est en mesure de proposer, dès lors,
- des filtres par zone géographiques;
- des regroupements par couche géographiques;
::: {.warning}
Lorsqu'une adresse n'est pas choisie dans la liste des adresses de référence, l'adresse n'est pas géolocalisée. Les statistiques sont donc inopérantes.
Cependant, Chill "essaie" de donner un géolocalisation aux adresses nouvellement créées par comparaison avec une adresse existante dans la base de donnée de référence, en comparant le nom de la rue et les codes postaux. Cependant, cet essai n'est pas toujours fructueux.
:::
::: {.info}
L'association entre les zones géographiques et les adresses est une opération couteuse, et donc lente, en termes informatiques. Pour permettre de générer des exports rapidement, cette association est calculée une fois par nuit.
En conséquence, l'association entre la zone géographique et les adresses du jour ne sera pas disponible.
:::
## Liste des filtres et regroupements
<!-- PHPFILE: this list was extracted through this command: find src/ -type f -iname '*.php' | grep Export | grep --invert-match Test | grep --invert-match Helper | grep --invert-match Controller | grep --invert-match Constraint | grep --invert-match DependencyInjection | grep --invert-match Interface | grep --invert-match Declaration | sort -->
<!-- PHPFILE: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php-->
<!-- PHPFILE: src/Bundle/ChillMainBundle/Export/Formatter/CSVListFormatter.php-->
<!-- PHPFILE: src/Bundle/ChillMainBundle/Export/Formatter/CSVPivotedListFormatter.php-->
<!-- PHPFILE: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php-->
<!-- PHPFILE: src/Bundle/ChillMainBundle/Export/Formatter/SpreadsheetListFormatter.php-->
<!-- PHPFILE: src/Bundle/ChillMainBundle/Form/DataMapper/ExportPickCenterDataMapper.php-->
<!-- PHPFILE: src/Bundle/ChillMainBundle/Form/SavedExportType.php-->
<!-- PHPFILE: src/Bundle/ChillMainBundle/Form/Type/Export/AggregatorType.php-->
<!-- PHPFILE: src/Bundle/ChillMainBundle/Form/Type/Export/ExportType.php-->
<!-- PHPFILE: src/Bundle/ChillMainBundle/Form/Type/Export/FilterType.php-->
<!-- PHPFILE: src/Bundle/ChillMainBundle/Form/Type/Export/FormatterType.php-->
<!-- PHPFILE: src/Bundle/ChillMainBundle/Form/Type/Export/PickCenterType.php-->
<!-- PHPFILE: src/Bundle/ChillMainBundle/Form/Type/Export/PickFormatterType.php-->
<!-- PHPFILE: src/Bundle/ChillMainBundle/Repository/SavedExportRepository.php-->
<!-- PHPFILE: src/Bundle/ChillMainBundle/Security/Authorization/ChillExportVoter.php-->
<!-- PHPFILE: src/Bundle/ChillMainBundle/Security/Authorization/SavedExportVoter.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/AbstractAccompanyingPeriodExportElement.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/ActionTypeAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/CurrentActionAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/GoalAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/GoalResultAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/JobAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/ReferrerAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/ResultAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/ScopeAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Export/CountAccompanyingCourse.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Export/CountAccompanyingPeriodWork.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Export/CountEvaluation.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Export/CountHousehold.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Export/CountPerson.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Export/CountPersonWithAccompanyingCourse.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Export/ListAccompanyingPeriod.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Export/ListAccompanyingPeriodWork.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Export/ListEvaluation.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Export/ListHouseholdInPeriod.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Export/ListPersonDuplicate.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Export/ListPersonWithAccompanyingPeriod.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Export/StatAccompanyingCourseDuration.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/EvaluationFilters/ByEndDateFilter.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/EvaluationFilters/ByStartDateFilter.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/EvaluationFilters/CurrentEvaluationsFilter.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/EvaluationFilters/EvaluationTypeFilter.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/EvaluationFilters/MaxDateFilter.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/HouseholdFilters/CompositionFilter.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/AccompanyingPeriodWorkEndDateBetweenDateFilter.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/AccompanyingPeriodWorkStartDateBetweenDateFilter.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/CurrentActionFilter.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/JobFilter.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/ReferrerFilter.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/ScopeFilter.php-->
<!-- PHPFILE: src/Bundle/ChillReportBundle/Export/Export/ReportList.php-->
<!-- PHPFILE: src/Bundle/ChillReportBundle/Export/Export/ReportListProvider.php-->
<!-- PHPFILE: src/Bundle/ChillReportBundle/Export/Filter/ReportDateFilter.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/SocialWorkTypeFilter.php-->

View File

@ -0,0 +1,506 @@
### Exports liés aux parcours
- liste des parcours;
- nombre de parcours;
- durée moyenne et nombre des participations des usagers aux parcours,
### Filtres liés aux parcours
#### Filtrer les parcours avec une localisation temporaire ou auprès d'un usager
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/HasTemporaryLocationFilter.php-->
Filtre les parcours associés à une localisation temporaire ou une localisation auprès d'un usager. La localisation doit être valable à une date indiquée en paramètre.
#### Filtrer les parcours ayant reçu un échange entre deux dates
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php -->
Ce filtre permet de ne prendre en compte que les parcours ayant reçu au moins un échange entre les deux dates indiquées en paramètre.
#### Filter les parcours ayant reçu une intervention entre deux dates
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/HavingAnAccompanyingPeriodInfoWithinDatesFilter.php-->
Ce filtre permet d'indiquer deux dates qui forment une période de recherche.
Filtre les parcours qui ont reçu au moins une intervention pendant cette période de recherche. La liste des interventions est identique à celle [utilisée pour le changement de statut des parcours](#sec:evenement-statut-parcours).
#### Filtrer les parcours dont la date d'ouverture est comprise entre deux dates
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/OpenBetweenDatesFilter.php-->
Ce filtre permet d'indiquer deux dates qui forment une période de recherche.
Filtre les parcours dont la date d'ouverture est comprise entre les deux dates indiquées en paramètre. La date de fin est non comprise dans la période de recherche.
Ce filtre permet de filtrer les "nouveaux parcours" qui ont débuté au cours d'une période.
#### Filtrer les parcours ouverts au moins un jour dans la période
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/ActiveOneDayBetweenDatesFilter.php-->
Ce filtre permet d'indiquer deux dates qui forment une période de recherche.
Filtre les parcours, pour ne retenir que les parcours qui ont été ouverts au moins un jour pendant la période de recherche. Autrement dit:
- la date d'ouverture est antérieure à la fin de la période de recherche;
- la date de fermeture est postérieure au début de la période de recherche, ou le parcours est toujours ouvert.
#### Filtrer les parcours ouverts à une date
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/ActiveOnDateFilter.php-->
Filtre les parcours, pour ne retenir que les parcours dont:
- la date d'ouverture est antérieure à la date communiquée,
- qui ne sont pas clôturés ou dont la date est de clôture est postérieure à la date communiquée.
#### Filtrer les parcours par action d'accompagnement
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/SocialActionFilter.php-->
Filtre les parcours ayant au moins une action d'accompagnement d'un type indiqué en paramètre.
#### Filtrer les parcours par confidentialité
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/ConfidentialFilter.php-->
Filtre les parcours marqués comme confidentiel ou non.
#### Filtrer les parcours par créateur
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/CreatorFilter.php-->
Filtre les parcours en fonction du créateur.
#### Filtrer les parcours par intensité
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/IntensityFilter.php-->
Filtre les parcours en fonction de l'intensité (ponctuel ou régulier).
#### Filter les parcours par intervenant, entre deux dates
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/UserWorkingOnCourseFilter.php-->
Ce filtre permet d'indiquer:
- une date de début et une date de fin, qui forment une période de recherche;
- un ou plusieurs utilisateurs
Le filtre ne retient que les parcours qui ont reçu une intervention de la part d'un des utilisateurs indiqués en paramètre, et pendant la période indiquée. La date de fin est non comprise dans la période de recherche.
La notion d'intervenant est définie [dans le chapitre correspondant](#sec:parcours-intervenant).
Exemples d'utilisation:
- ce filtre permet de répondre à la question "Sur combien de parcours l'utilisateur Y est-il intervenu, entre le début de cette année et aujourd'hui".
#### Filtrer les parcours par localisation administrative
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/AdministrativeLocationFilter.php-->
Filtre les parcours par localisation administrative.
#### Filtrer les parcours par motif de clôture
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/ClosingMotiveFilter.php-->
Filtre les parcours par motif de cloture.
#### Filtrer les parcours par métier de l'intervenant, entre deux dates
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/JobWorkingOnCourseFilter.php-->
Ce filtre permet d'indiquer:
- une date de début et une date de fin, qui forment une période de recherche;
- un ou plusieurs métiers
Le filtre ne retient que les parcours qui ont reçu une intervention de la part des utilisateurs ayant un des métiers indiqués en paramètre, et pendant la période indiquée. La date de fin est non comprise dans la période de recherche.
La notion d'intervenant est définie [dans le chapitre correspondant](#sec:parcours-intervenant).
Exemples d'utilisation:
- ce filtre permet de répondre à la question "Combien de parcours reçoivent une intervention des utilisateurs ayant le métier X et Y, entre le début de l'année et aujourd'hui ?"
#### Filtrer les parcours par métier du créateur
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/CreatorJobFilter.php-->
Filtre les parcours par métier du créateur.
Le métier du créateur est pris en compte au moment de la création du parcours.
#### Filtrer les parcours par métier du référent
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/UserJobFilter.php-->
Filtre les parcours par métier du référent.
Le métier du référent est pris en compte au moment où ce dernier a été désigné comme référent.
#### Filtrer les parcours par origine du parcours
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/OriginFilter.php-->
Filtre les parcours par origine.
L'origine est indiquée dans le formulaire "Modifier le parcours".
#### Filtrer les parcours par problématiques sociales
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/SocialIssueFilter.php-->
Filtre les parcours par problématiques sociales.
Un parcours est pris en compte dès qu'il est associé à au moins une problématique sociale indiquée en paramètre.
#### Filtrer les parcours par référent
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/ReferrerFilter.php-->
Filtre les parcours par référent.
Seuls les parcours dont le référent était un utilisateur indiqué en paramètre, et à la date indiquée en paramètre, sont pris en compte.
#### Filtrer les parcours par service de l'intervenant, entre deux dates
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/ScopeWorkingOnCourseFilter.php-->
Ce filtre permet d'indiquer:
- une date de début et une date de fin, qui forment une période de recherche;
- un ou plusieurs service
Le filtre ne retient que les parcours qui ont reçu une intervention de la part des utilisateurs ayant un des services indiqués en paramètre, et pendant la période indiquée. La date de fin est non comprise dans la période de recherche.
La notion d'intervenant est définie [dans le chapitre correspondant](#sec:parcours-intervenant).
Exemples d'utilisation:
- ce filtre permet de répondre à la question "Combien de parcours reçoivent une intervention des utilisateurs du service X et Y, entre le début de l'année et aujourd'hui ?"
#### Filtrer les parcours par service du référent
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/UserScopeFilter.php-->
Filtre les parcours par service du référent.
Le service du référent est pris en compte au moment où ce dernier a été désigné comme référent.
#### Filtrer les parcours par statut du parcours
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/StepFilterOnDate.php-->
Ce filtre permet d'indiquer une date en paramètre, ainsi qu'une liste de statuts.
Filtre les parcours qui avaient un des statuts sélectionné à la date indiquée.
Pour les différentes statuts, voir la section correspondante: [statuts du parcours](#sec:parcours-statut).
#### Filtrer les parcours par statut du parcours entre deux dates
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/StepFilterBetweenDates.php-->
Ce filtre permet d'indiquer deux dates qui forment une période de recherche, ainsi qu'une liste de statuts. La date de fin de la période est non comprise dans la période de recherche.
Filtre les parcours qui avaient un des statuts sélectionné pendant la période de recherche.
Note: comme un parcours peut avoir différents statuts au cours du temps, le présent filtre tiendra compte des parcours qui ont eu ce statut au moins un jour dans la période indiquée, même si ce statut a été changé pendant la période.
Pour les différentes statuts, voir la section correspondante: [statuts du parcours](#sec:parcours-statut).
#### Filtrer les parcours par type d'échange
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/ActivityTypeFilter.php -->
Ce filtre permet de ne retenir que les parcours qui sont associé à au moins un échange d'un type donné en paramètre.
#### Filtrer les parcours par urgence
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/EmergencyFilter.php-->
Filtre les parcours urgent, ou non.
#### Filtrer les parcours par zone géographique
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/GeographicalUnitStatFilter.php-->
Filtre les parcours par zone géographique.
La localisation de l'adresse du parcours doit être indiquée: il peut s'agir soit d'une adresse temporaire qu'une localisation auprès d'une adresse d'un usager.
Seules les adresses géolocalisées sont prises en compte. Les adresses sont géolocalisées lorsqu'elles sont choisies parmi les adresses de référence. Lorsque seul le code postal est choisi parmi les suggestions, alors l'adresse est géolocalisée à l'intérieur de la zone géographique du code postal, de manière aléatoire.
La date de prise en compte de l'adresse doit également être indiquée en paramètre. Il s'agira alors de l'adresse temporaire valable sur le parcours à la date indiquée, ou l'adresse de l'usager à la date indiquée (il faut également qu'il ait été désigné comme "localisant" le parcours à la date indiquée).
::: {.info}
L'association entre les zones géographiques et les adresses est une opération couteuse, en termes informatique. Dès lors, cette association est calculée une fois par nuit.
En conséquence, l'association entre la zone géographique et les adresses du jour ne sera pas disponible.
:::
#### Filtrer les parcours par évaluation
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/EvaluationFilter.php-->
Filtre les parcours comportant au moins une évaluation du type indiqué en paramètre.
#### Filtrer les parcours qui nont pas dactions
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/HasNoActionFilter.php-->
Filtre les parcours qui ne comportent aucune action d'accompagnement.
#### Filtrer les parcours qui nont pas déchange
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/HasNoActivityFilter.php-->
Filtre les parcours qui ne comportent aucun échange.
#### Filtrer les parcours sans référent
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/HasNoReferrerFilter.php-->
Filtre les parcours pour ne reprendre que ceux qui ne comportaient aucun référent à la date indiquée en paramètre.
#### Filtrer les parcours selon la nature du demandeur
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/RequestorFilter.php-->
Filtre les parcours pour ne retenir que:
- le demandeur est un usager concerné;
- le demandeur est un usager, mais n'est pas concerné par le parcours;
- le demandeur est un tiers
- le demandeur est ne comporte pas de demandeur.
### Regroupements liés aux parcours
#### Grouper les parcours par action d'accompagnement
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/ACPAggregators/BySocialActionAggregator.php-->
Groupe les parcours par action d'accompagnement.
**Relation un-à-plusieurs**: lorsqu'un parcours comporte plusieurs actions d'accompagnement, le parcours est comptabilisé en regard de chaque action.
#### Grouper les parcours par confidentialité
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/ConfidentialAggregator.php-->
Groupe les parcours selon qu'ils ont été marqués comme confidentiels, ou non.
#### Grouper les parcours par date d'ouverture
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/OpeningDateAggregator.php-->
Groupe les parcours par date d'ouverture. La date prise en compte ici est celle reprise dans le bandeau "parcours", elle peut être modifiée par l'utilisateur une fois le parcours ouvert, dans le formulaire `Modifier le parcours`.
Les dates d'ouvertures peuvent être retroupées par mois, année ou semaine. Dans ce dernier cas, la numérotation de la semaine est calculée en suivant la norme ISO 8601[^iso8601week]. Les regroupements par mois ou semaine sont préfixés par l'année correspondante.
[^iso8601week]: Voir <https://fr.wikipedia.org/wiki/Num%C3%A9rotation_ISO_des_semaines>
#### Grouper les parcours par date de cloture
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/ClosingDateAggregator.php-->
Groupe les parcours par date de clôture. La date prise en compte ici est celle reprise dans le bandeau "parcours", elle peut être modifiée par l'utilisateur au moment de la cloture du parcours.
Les dates d'ouvertures peuvent être retroupées par mois, année ou semaine. Dans ce dernier cas, la numérotation de la semaine est calculée en suivant la norme ISO 8601[^iso8601week]. Les regroupements par mois ou semaine sont préfixés par l'année correspondante.
#### Grouper les parcours par durée
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/DurationAggregator.php-->
Groupe les parcours par durée du parcours.
La durée peut être exprimée en mois, semaines ou jours.
La durée calculée est la différence entre la date d'ouverture et la date de cloture: la première peut être mise à jour par l'utilisateur dans le formulaire `Modifier le parcours` et, par défaut, correspond à la date de confirmation du parcours. La seconde est indiquée par l'utilisateur au moment de la cloture du parcours. Lorsqu'un parcours est toujours ouvert, la durée est la différence entre la date d'ouverture et la date du jour de génération de l'export.
#### Grouper les parcours par intensité
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/IntensityAggregator.php-->
Groupe les parcours par intensité (parcours ponctuel ou régulier).
#### Grouper les parcours par intervenant
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/UserWorkingAggregator.php-->
Ce regroupement permet de classer les indicateurs par intervenants sur le parcours.
Par intervenant sur le parcours, sont pris en compte tous les utilisateurs qui ont réalisé une intervention: [voir chapitre correspondant](#sec:parcours-intervenant).
**Relation un-à-plusieurs**: Lorsqu'un parcours comporte plusieurs intervenants, chaque parcours est comptabilisé en regard de chaque intervenant du parcours.
#### Grouper les parcours par localisation administrative
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/AdministrativeLocationAggregator.php-->
Groupe les parcours par localisation administrative.
#### Grouper les parcours par motif de clôture
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/ClosingMotiveAggregator.php-->
Groupe les parcours par motifs de clôture.
Lorsqu'un parcours ne comporte pas de motif de clôture (parce qu'il est toujours ouvert, ou qu'il a été ré-ouvert après une clôture), le regroupement est repris sous une ligne sans contenu.
#### Grouper les parcours par métier de l'intervenant
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/JobWorkingAggregator.php-->
Ce regroupement permet de classer les indicateurs par métier de l'intervenant sur le parcours.
Par intervenant sur le parcours, sont pris en compte tous les utilisateurs qui ont réalisé une intervention: [voir chapitre correspondant](#sec:parcours-intervenant).
#### Grouper les parcours par métier du créateur
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/CreatorJobAggregator.php-->
Regroupe les parcours par métier du créateur.
Le métier du créateur est celui associé au créateur au moment de la création du parcours.
#### Grouper les parcours par métier du référent
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/UserJobAggregator.php-->
Regroupe les parcours par métier du référent.
Le métier du référent est celui associé au référent au moment où il est désigné référent de ce parcours.
#### Grouper les parcours par nombre dactions
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/ByActionNumberAggregator.php-->
Regroupe les parcours par nombre d'actions associés au parcours.
#### Grouper les parcours par nombre déchange
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/ACPAggregators/ByActivityNumberAggregator.php-->
Regroupe les parcours par nombre d'échangers associés au parcours.
#### Grouper les parcours par origine du parcours
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/OriginAggregator.php-->
Groupe les parcours par origine. L'origine est indiquée sur la page `Modifier le parcours`.
#### Grouper les parcours par problématiques sociales
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/SocialIssueAggregator.php-->
Groupe les parcours par problématique sociale.
**Relation un-à-plusieurs**: lorsqu'un parcours comporte plusieurs problématiques sociales, ce parcours est comptabilisé en regard de chaque problématique.
#### Grouper les parcours par référent
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/ReferrerAggregator.php-->
Groupe les parcours par référent.
La date indiquée en paramètre permet de ne tenir compte que du référent valable à la date indiquée.
#### Grouper les parcours par service
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/ScopeAggregator.php-->
Groupe les parcours par service.
**Relation un-à-plusieurs**: lorsqu'un parcours est associé à plusieurs services, il est comptabilisé en regard de chaque service coché.
#### Grouper les parcours par service de l'intervenant
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/ScopeWorkingAggregator.php-->
Ce regroupement permet de classer les indicateurs par service des intervenants sur le parcours.
Par intervenant sur le parcours, sont pris en compte tous les utilisateurs qui ont réalisé une intervention: [voir chapitre correspondant](#sec:parcours-intervenant).
#### Grouper les parcours par service du référent
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/ReferrerScopeAggregator.php-->
Groupe les parcours par service du référent.
Le service du référent pris en compte est celui associé au référent au moment où ce dernier a été désigné comme référent sur le parcours.
#### Grouper les parcours par statut du parcours
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/StepAggregator.php-->
Groupe les parcours par statut du parcours.
Les différents statuts du parcours [sont décrit dans le chapitre correspondant](#sec:parcours-statut).
Le statut du parcours repris est celui qui est valable à la date indiquée en paramètre.
#### Grouper les parcours par type d'échange
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/ACPAggregators/ByActivityTypeAggregator.php -->
Ce regroupement permet de classer les parcours par type d'échange reçu sur le parcours. Le regroupement est constitué de tous les parcours ayant au moins un échange du type qui forme le regroupement. Donc, dans l'export du nombre de parcours, cela crée une colonne avec les types d'échange et une colonne "nombre de parcours": un parcours est comptabilisé à chaque fois qu'il présente au moins un échange du type indiqué dans la colonne "type d'échange".
Il est possible d'indider des dates en paramètres: si elles sont remplies, seuls les échanges intervenus entre ces dates sont comptabilisés. Les parcours qui n'ont pas reçu d'échange entre ces deux dates sont alors regroupés dans une colonne vide.
Lorsqu'un parcours comporte plusieurs types d'échange, il est comptabilisé en regard de chaque type d'échange qu'il contient.
#### Grouper les parcours par urgence
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/EmergencyAggregator.php-->
Groupe les parcours selon qu'ils sont urgents, ou non.
#### Grouper les parcours par zone géographique
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/GeographicalUnitStatAggregator.php-->
Groupe les parcours par zone géographique.
La localisation de l'adresse du parcours doit être indiquée: il peut s'agir soit d'une adresse temporaire qu'une localisation auprès d'une adresse d'un usager.
Seules les adresses géolocalisées sont prises en compte. Les adresses sont géolocalisées lorsqu'elles sont choisies parmi les adresses de référence. Lorsque seul le code postal est choisi parmi les suggestions, alors l'adresse est géolocalisée à l'intérieur de la zone géographique du code postal, de manière aléatoire.
La date de prise en compte de l'adresse doit également être indiquée en paramètre. Il s'agira alors de l'adresse temporaire valable sur le parcours à la date indiquée, ou l'adresse de l'usager à la date indiquée (il faut également qu'il ait été désigné comme "localisant" le parcours à la date indiquée).
**Relation un-à-plusieurs**: Si plusieurs couches géographiques sont indiquées, alors un regroupement (et donc une nouvelle ligne de résultat) est créée pour chaque zone du niveau géographique indiqué. Cela veut dire que si plusieurs couches géographiques se superposent, l'usager sera comptabilisée dans chacune d'elle.
Exemple: si les deux couches "région" et "commune" sont cochées; les adresses sont localisées à la fois au niveau communal, et au niveau régional. DAns les résultats de l'export, chaque usager sera comptabilisé une première fois dans la couche "commune" et une autre fois dans la couche région.
::: {.info}
L'association entre les zones géographiques et les adresses est une opération couteuse, en termes informatique. Dès lors, cette association est calculée une fois par nuit.
En conséquence, l'association entre la zone géographique et les adresses du jour ne sera pas disponible.
:::
#### Grouper les parcours par évaluation
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/EvaluationAggregator.php-->
Groupe les parcours selon la présence de types d'évaluation au sein des actions du parcours.
**Relation un-à-plusieurs**: Si un parcours comporte plusieurs types d'évaluation, il est comptabilisé une fois en regard de chaque type d'évaluation. Si plusieurs types évaluations identiques sont associés au même parcours, le parcours n'est comptabilisé qu'une seule fois.
#### Grouper les parcours selon la nature du demandeur
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/RequestorAggregator.php-->
Regroupe les parcours selon le demandeur:
- soit il s'agit d'un usager concerné par le parcours;
- ou d'un usager non concerné par le parcours;
- ou d'un tiers;
- ou aucun demandeur n'est renseigné.

View File

@ -0,0 +1,18 @@
### Filtres et regroupements liés aux actions d'accompagnements
<!-- cette page est temporairement enlevée du résultat, l'ajouter dans build-pandoc.sh -->
#### Filtrer les actions par tiers traitant
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/HandlingThirdPartyFilter.php-->
Filtre les actions selon le tiers traitant indiqué dans l'interface.
Seules les actions qui comportent le tiers sélectionné sont comptabilisés dans les résultats.
#### Grouper les actions par tiers traitant
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/HandlingThirdPartyAggregator.php-->
Comptabilise les actions selon le tiers traitant indiqué dans l'interface.

View File

@ -0,0 +1,10 @@
### Regroupements liés aux évaluations
<!-- cette page est temporairement enlevée du résultat, l'ajouter dans build-pandoc.sh -->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/EvaluationAggregators/ByEndDateAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/EvaluationAggregators/ByMaxDateAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/EvaluationAggregators/ByStartDateAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/EvaluationAggregators/EvaluationTypeAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/EvaluationAggregators/HavingEndDateAggregator.php-->

298
user/exports_activity.md Normal file
View File

@ -0,0 +1,298 @@
### Exports relatifs aux échanges
Les échanges peuvent être créés:
- dans un parcours;
- dans un dossier d'usager.
Les possibilités d'exports séparent les échanges créés dans un dossier d'usager de ceux créés dans un dossier de parcours.
#### Échanges liés à un parcours
- Nombre d'échanges
- Somme de la durée des échanges
- Somme de la durée de déplacement des échanges
- Moyenne de la durée des échanges
- Moyenne de la durée de déplacement des échanges
- Liste des échanges liés à un parcours
#### Échanges liés à un usager
- Nombre d'échanges
- Durée des échanges
- Liste des échanges
### Filtres liés aux échanges
#### Filtrer les échanges par action liée
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/BySocialActionFilter.php-->
Ce filtre n'apparait que dans les exports des échanges liés aux parcours d'accompagnement.
Ce filtre permet d'indiquer des types d'action d'accompagnement. Seuls les échanges qui sont associés à au moins une de ces actions d'accompagnement sont pris en compte.
#### Filtrer les échanges par créateur de l'échange
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/ByCreatorFilter.php-->
Ce filtre permet de filtrer les échanges par créateur de l'échange.
Il permet de sélectionner une liste d'utilisateurs.
Si un échange a été créé par un de ces utilisateurs, il est pris en compte.
#### Filtrer les échanges par date
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/ActivityDateFilter.php-->
Ce filtre permet de filtrer les échanges par date: il permet d'indiquer deux dates: une date de début, et une date de fin. Seuls les échanges ayant eu lieu entre ces deux dates sont pris en compte.
#### Filtrer les échanges par envoyé / reçu
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/SentReceivedFilter.php-->
Ce filtre permet de filtrer les changes par le champ Envoyé/Reçu.
Ce champ n'est accessible qu'à certains types d'échange, en fonction de la configuration effectuée par des administrateurs fonctionnels.
#### Filtrer les échanges par localisation
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/LocationFilter.php-->
Ce filtre permet de filtrer les échanges par localisation.
Seuls les échanges qui ont été associé à cette localisation sont pris en compte.
#### Filtrer les échanges par métier d'au moins un utilisateur participant
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/UsersJobFilter.php-->
Ce filtre permet de filtrer les échanges: seuls les échanges dont un des utilisateurs participants est associé au métier sélectionné sont pris en compte.
Le métier doit être associé à l'utilisateur à la date de l'échange.
Le filtre prend en compte tous les utilisateurs ajoutés dans les "parties concernées" de l'échange.
L'échange est pris en compte dès qu'un utilisateur dans les "parties concernées" est associé à l'un des métiers demandés.
#### Filtrer les échanges par métier du créateur de l'échange
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/CreatorJobFilter.php -->
Filtre les échanges par métier du créateur de l'échange.
Le métier doit être associé à l'utilisateur à la date de l'échange.
#### Filtrer les échanges par problématique liée
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/BySocialIssueFilter.php-->
Ce filtre n'apparait que dans les exports des échanges liés aux parcours d'accompagnement.
Ce filtre permet de filtrer les échanges par problématique liée.
Seuls les échanges associés à au moins une problématique liée sont pris en compte.
#### Filtrer les échanges par service du créateur de l'échange
Ce filtre permet de filtrer les échanges par service du créateur de l'échange.
Lorsqu'un utilisateur change de service au cours du temps, le service associé à l'utilisateur au moment de l'échange est pris en compte.
#### Filtrer les échanges par service d'au moins un utilisateur participant
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/UsersScopeFilter.php-->
Ce filtre permet de filtrer les échanges: seuls les échanges dont un des utilisateurs participants est associé au service sélectionné sont pris en compte.
Le service doit être associé à l'utilisateur à la date de l'échange.
Le filtre prend en compte tous les utilisateurs ajoutés dans les "parties concernées" de l'échange.
L'échange est pris en compte dès qu'un utilisateur dans les "parties concernées" est associé à l'un des service demandés.
#### Filtrer les échanges par sujet
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/PersonFilters/ActivityReasonFilter.php-->
Ce filtre permet de filtrer les échanges par sujet.
Seuls les échanges qui comportent au moins un des sujets choisis sont pris en compte.
Le sujet est en champ activé par la configuration de l'instance.
#### Filtrer les échanges par type
Ce filtre permet de filtrer les échanges par type. Un formulaire permet de sélectionner les types d'échanges à prendre en compte.
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/ActivityTypeFilter.php-->
#### Filtrer les échanges par type de localisation
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/ActivityTypeFilter.php-->
Ce filtre permet de fitlrer les échanges associés à une localisation d'un certain type.
#### Filtrer les échanges par urgence
Ce filtre permet de filtrer les échanges par urgence.
L'urgence est un champ qui n'apparait qu'en fonction de la configuration de l'instance.
#### Filtrer les échanges par usager participant
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/PersonsFilter.php -->
Filtre les échanges sur base des usagers participants.
Un échange est comptabilisé à partir du moment où il compte un des usagers indiqué dans la configuration du filtre; autrement dit: les échanges qui comportent au moins un des usagers indiqués sont pris en compte. Il n'est donc pas nécessaire que l'échange comporte **tous** les usagers indiqués dans le filtre.
#### Filtrer les échanges par utilisateur participant
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/ActivityUsersFilter.php-->
Ce filtre permet de filtrer les échanges par utilisateurs.
Seuls les échanges qui comportent au moins un de ces utilisateurs dans les "utilisateurs concernés" sont pris en compte. Autrement dit: il n'est donc pas nécessaire que l'échange soit associé à **tous** les utilisateurs.
#### Filtrer les échanges par utilisateur principal
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/ActivityUsersFilter.php-->
Ce filtre permet de filtrer les échanges par utilisateur principal.
Le champ "utilisateur principal" n'apparait que pour certains types d'échange, en fonction de la configuration de l'instance.
### Regroupements liés aux échanges
#### Grouper les échanges par action liée
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/ACPAggregators/BySocialActionAggregator.php -->
Groupe les échanges par action sociale liée à l'échange.
**Relation un-à-plusieurs**: Lorsqu'un échange est lié à plusieurs actions sociales, alors l'échange est comptabilisée une seule fois en regard de chaque type d'action.
#### Grouper les échanges par créateur de l'échange
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/ACPAggregators/ByCreatorAggregator.php-->
Groupe les échanges par l'utilisateur ayant créé l'échange.
#### Grouper les échanges par date
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/ACPAggregators/DateAggregator.php-->
Groupe les échanges par date.
Les dates des échanges peuvent être retroupées par mois, année ou semaine. Dans ce dernier cas, la numérotation de la semaine est calculée en suivant la norme ISO 8601[^iso8601week]. Les regroupements par mois ou semaine sont préfixés par l'année correspondante.
[^iso8601week]: Voir <https://fr.wikipedia.org/wiki/Num%C3%A9rotation_ISO_des_semaines>
#### Grouper les échanges par envoyé / reçu
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/SentReceivedAggregator.php-->
Groupe les échanges selon le champ envoyé / reçu indiqué dans l'échange.
#### Grouper les échanges par localisation de l'échange
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/ActivityLocationAggregator.php-->
Groupe les échanges par nom de la localisation de l'échange.
Les localisations qui possèdent le même nom sont regroupées ensemble.
#### Grouper les échanges par métier des utilisateurs participants
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/ActivityUsersJobAggregator.php-->
Groupe les échanges par métier des utilisateurs participants, ajoutés dans les "parties concernées" de l'échange.
Le métier pris en compte est celui associé à l'utilisateur à la date de l'échange.
**Relation un-à-plusieurs**: lorsque plusieurs utilisateurs participent à l'échange, l'échange est comptabilisé une seule fois par métier de chaque utilisateur. Si plusieurs utilisateurs participant comportent le même métier, l'échange n'est donc comptabilisé qu'une seule fois.
#### Grouper les échanges par métier du créateur de l'échange
Groupe les échanges par métier du créateur de l'échange.
Le métier pris en compte est celui associé à l'utilisateur à la date de l'échange.
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/CreatorScopeAggregator.php -->
#### Grouper les échanges par problématique liée
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/ACPAggregators/BySocialIssueAggregator.php-->
Groupe les échanges par problématique sociale associée à l'échange.
**Relation un-à-plusieurs**: lorsqu'un échange est associée à plusieurs problématiques, il est comptabilisé une fois en regard de chaque problématique.
#### Grouper les échanges par référent
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/ActivityUserAggregator.php-->
Groupe les échanges par le référent de l'échange (l'utilisateur principal).
#### Grouper les échanges par service du créateur de l'échange
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/ACPAggregators/CreatorScopeAggregator.php-->
Groupe les échange par service du créateur de l'échange.
Le service pris en compte est celui du créateur de l'échange à la date de l'échange.
#### Grouper les échanges par tiers impliqué
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/ACPAggregators/ByThirdpartyAggregator.php-->
Groupe les échanges par tiers impliqué dans les "usagers concernés" de l'échange.
**Relation un-à-plusieurs**: lorsque plusieurs tiers participent à l'échange, l'échange est comptabilisé une fois pour chaque tiers.
#### Grouper les échanges par type
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/ActivityTypeAggregator.php-->
Groupe les échanges par type d'échange.
#### Grouper les échanges par type de localisation
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/ACPAggregators/LocationTypeAggregator.php-->
Groupe les échanges par type de localisation associé à l'échange.
#### Grouper les échanges par usager participant
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/PersonsAggregator.php -->
Groupe les échanges par usager participant à l'échange.
**Relation un-à-plusieurs**: Les échanges sont comptabilisés une fois en regard de chaque usager.
Ce regroupement a pour effet de ne pas faire apparaitre les échanges qui ne comptent pas de participants.
#### Grouper les échanges par utilisateurs participants
Groupe les échanges par utilisateurs participant.
**Relation un-à-plusieurs**: Les échanges sont comptabilisés une fois en regard de chaque utilisateur participant.
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/ActivityUsersAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/ActivityUsersScopeAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Aggregator/PersonAggregators/ActivityReasonAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Export/LinkedToACP/AvgActivityDuration.php-->
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Export/LinkedToACP/AvgActivityVisitDuration.php-->
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Export/LinkedToACP/CountActivity.php-->
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Export/LinkedToACP/ListActivity.php-->
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Export/LinkedToACP/SumActivityDuration.php-->
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Export/LinkedToACP/SumActivityVisitDuration.php-->
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Export/LinkedToPerson/CountActivity.php-->
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Export/LinkedToPerson/ListActivity.php-->
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Export/LinkedToPerson/StatActivityDuration.php-->

View File

@ -0,0 +1,17 @@
### Filtres et regroupements liés aux activités annexes
<!-- cette page est temporairement enlevée du résultat, l'ajouter dans build-pandoc.sh -->
<!-- PHPFILE: src/Bundle/ChillAsideActivityBundle/src/Export/Aggregator/ByActivityTypeAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillAsideActivityBundle/src/Export/Aggregator/ByUserJobAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillAsideActivityBundle/src/Export/Aggregator/ByUserScopeAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillAsideActivityBundle/src/Export/Export/AvgAsideActivityDuration.php-->
<!-- PHPFILE: src/Bundle/ChillAsideActivityBundle/src/Export/Export/CountAsideActivity.php-->
<!-- PHPFILE: src/Bundle/ChillAsideActivityBundle/src/Export/Export/ListAsideActivity.php-->
<!-- PHPFILE: src/Bundle/ChillAsideActivityBundle/src/Export/Export/SumAsideActivityDuration.php-->
<!-- PHPFILE: src/Bundle/ChillAsideActivityBundle/src/Export/Filter/ByActivityTypeFilter.php-->
<!-- PHPFILE: src/Bundle/ChillAsideActivityBundle/src/Export/Filter/ByDateFilter.php-->
<!-- PHPFILE: src/Bundle/ChillAsideActivityBundle/src/Export/Filter/ByUserFilter.php-->
<!-- PHPFILE: src/Bundle/ChillAsideActivityBundle/src/Export/Filter/ByUserJobFilter.php-->
<!-- PHPFILE: src/Bundle/ChillAsideActivityBundle/src/Export/Filter/ByUserScopeFilter.php-->

21
user/exports_calendar.md Normal file
View File

@ -0,0 +1,21 @@
### Regroupements liés aux rendez-vous
<!-- cette page est temporairement enlevée du résultat, l'ajouter dans build-pandoc.sh -->
<!-- PHPFILE: src/Bundle/ChillCalendarBundle/Export/Aggregator/AgentAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillCalendarBundle/Export/Aggregator/CancelReasonAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillCalendarBundle/Export/Aggregator/JobAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillCalendarBundle/Export/Aggregator/LocationAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillCalendarBundle/Export/Aggregator/LocationTypeAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillCalendarBundle/Export/Aggregator/MonthYearAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillCalendarBundle/Export/Aggregator/ScopeAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillCalendarBundle/Export/Aggregator/UrgencyAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillCalendarBundle/Export/Export/CountCalendars.php-->
<!-- PHPFILE: src/Bundle/ChillCalendarBundle/Export/Export/StatCalendarAvgDuration.php-->
<!-- PHPFILE: src/Bundle/ChillCalendarBundle/Export/Export/StatCalendarSumDuration.php-->
<!-- PHPFILE: src/Bundle/ChillCalendarBundle/Export/Filter/AgentFilter.php-->
<!-- PHPFILE: src/Bundle/ChillCalendarBundle/Export/Filter/BetweenDatesFilter.php-->
<!-- PHPFILE: src/Bundle/ChillCalendarBundle/Export/Filter/CalendarRangeFilter.php-->
<!-- PHPFILE: src/Bundle/ChillCalendarBundle/Export/Filter/JobFilter.php-->
<!-- PHPFILE: src/Bundle/ChillCalendarBundle/Export/Filter/ScopeFilter.php-->

View File

@ -0,0 +1,7 @@
### Regroupements liés aux ménages
<!-- cette page est temporairement enlevée du résultat, l'ajouter dans build-pandoc.sh -->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/HouseholdAggregators/ChildrenNumberAggregator.php-->
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/HouseholdAggregators/CompositionAggregator.php-->

210
user/exports_person.md Normal file
View File

@ -0,0 +1,210 @@
### Exports liés aux usagers
- nombre d'usagers;
- nombre d'usagers concernés par un parcours;
- liste des usagers;
- liste des usagers ayant un parcours d'accompagnement;
- liste des usagers concernés avec le détail de chaque parcours;
- liste des doublons.
### Filtres liés aux usagers
#### Filtrer les usagers ayant été associés à un échange au cours de la période
<!-- PHPFILE: src/Bundle/ChillActivityBundle/Export/Filter/PersonFilters/PersonHavingActivityBetweenDateFilter.php-->
Ce filtre permet de filtrer les usagers: seuls les usagers ayant eu un échange au cours de la période indiquée sont pris en compte.
De plus, si la liste des sujets d'échanges de ce filtre comporte au moins un élément, ce sujet doit avoir été associé à l'échange. Si la liste ne comporte aucun sujet coché, alors cette deuxième condition n'est pas ajoutée.
#### Filtrer les usagers par comparaison avec l'adresse de référence
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/AddressRefStatusFilter.php-->
Ce filtre permet de détecter les usagers dont l'adresse n'est plus synchronisée avec l'adresse de référence.
Chill maintient à jour une liste d'adresses de référence, qui sont proposées lors de la saisie d'une adresse. Cette liste est régulièrement mise à jour, et cela peut amener à ce que des adresses de référence soient changées: re-numérotation de la rue, modification du code postal, etc.
Ces modifications apparaissent dans l'interface, et les utilisateurs peuvent choisir d'appliquer la modification (et donc la nouvelle adresse de référence) ou de conserver l'adresse actuelle sans appliquer la modification.
Ce filtre permet de filtrer les usagers en comparant l'adresse de leur ménage et l'adresse de référence qui a été utilisée lors de la création. Seuls les usagers dont l'adresse:
- soit diffère de l'adresse de référence utilisée lors de la création;
- soit diffère de l'adresse de référence utilisée lors de la création, mais dont l'usager a choisi de conserver la forme précédente;
- soit est identique à l'adresse de référence utilisée lors de la création (ce qui est le cas de la plupart des adresses).
#### Filtrer les usagers par composition de ménage
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/ByHouseholdCompositionFilter.php-->
Ce filtre permet de filtrer les usagers par composition de ménage.
L'historique de l'appartenance d'un usager à un ménage est enregistrée, de même que l'historique des compositions de ménage. Une date de calcul est introduite: elle permet de calculer la composition du ménage à la date donnée.
Seuls les usagers qui appartiennent à un ménage dont la composition est indiquée, et que la composition est également valable à la date indiquée pour le ménage, sont pris en compte.
#### Filtrer les usagers par date de décès
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/DeathdateFilter.php-->
Ce filtre permet de filtrer les usagers en fonction de leur date de décès.
#### Filtrer les usagers par date de naissance
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/BirthdateFilter.php-->
Ce filtre permet de filtrer les usagers en fonction de leur date de naissance.
#### Filtrer les usagers par genre
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/GenderFilter.php-->
Ce filtre permet de filtrer les usagers par genre.
#### Filtrer les usagers par nationalité
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/NationalityFilter.php-->
Ce filtre permet de filtrer les usagers par nationalité.
#### Filtrer les usagers par zone géographique (sur base de l'adresse)
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/GeographicalUnitFilter.php-->
Ce filtre permet de filtrer les usagers sur base de zones géographiques.
Seules les adresses géolocalisées sont prises en compte. Les adresses sont géolocalisées lorsqu'elles sont choisies parmi les adresses de référence. Lorsque seul le code postal est choisi parmi les suggestions, alors l'adresse est géolocalisée à l'intérieur de la zone géographique du code postal, de manière aléatoire.
Une date de calcul permet de ne choisir que les adresses valables à la date donnée.
::: {.info}
L'association entre les zones géographiques et les adresses est une opération couteuse, en termes informatique. Dès lors, cette association est calculée une fois par nuit.
En conséquence, l'association entre la zone géographique et les adresses du jour ne sera pas disponible.
:::
#### Filtrer les usagers par âge
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/AgeFilter.php-->
Ce filtre permet de filtrer les usagers sur base de leur âge.
Deux paramètres permettent d'indiquer un âge minimum et un âge maximum. Une date de calcul de l'âge est également disponible en paramètre.
Seuls les usagers dont l'âge est compris entre l'âge minimum et l'âge maximum, à la date de calcul indiqué en paramètre, seront pris en compte.
#### Filtrer les usagers par état matrimonial
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/MaritalStatusFilter.php-->
Seuls les usagers associés à l'état matrimonial indiqué en paramètre seront pris en compte.
#### Filtrer les usagers qui ont une addresse de résidence chez un autre usager
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/ResidentialAddressAtUserFilter.php-->
Seuls les usagers qui ont une adresse de résidence auprès d'une autre usagers sont pris en compte. Cette adresse de résidence doit être valable à la date indiquée en paramètre.
#### Filtrer les usagers qui ont une addresse de résidence chez un tiers
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/ResidentialAddressAtThirdpartyFilter.php-->
Seuls les usagers qui ont une adresse de résidence auprès d'un tiers sont pris en compte. Cette adresse de résidence doit être valable à la date indiquée en paramètre, et le tiers doit être associée à au moins une catégorie de tiers également indiqué en paramètre.
#### Filtrer les usagers qui sont décédés ou vivants à une certaine date
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/DeadOrAliveFilter.php-->
Seuls les usagers décédés ou vivant à la date donnée sont pris en compte.
La date de naissance et la date de décès de la fiche usager sont pris en compte.
#### Filtrer les usagers sans composition de ménage (ni ménage)
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/WithoutHouseholdComposition.php-->
Seuls les usagers sans composition de ménage sont pris en compte par ce filtre. Les usagers qui n'ont pas de ménage sont également repris.
La date de calcul permet de choisir le ménage à la date indiquée en paramètre.
### Regroupements liés aux usagers
#### Grouper les usagers par composition familiale
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/ByHouseholdCompositionAggregator.php-->
Ce regroupement permet de grouper les usagers par composition familiale.
Une date de calcul est indiquée en paramètre: la composition familiale est indiquée à la date donnée.
#### Grouper les usagers par genre
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/GenderAggregator.php-->
Ce regroupement permet de grouper les usagers par genre.
#### Grouper les usagers par nationalité
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/NationalityAggregator.php-->
Ce regroupement permet de grouper les usagers par nationalité.
#### Grouper les usagers par pays de naissance
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/CountryOfBirthAggregator.php-->
Ce regroupement permet de grouper les usagers par pays de naissance.
#### Grouper les usagers par position dans le ménage
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/HouseholdPositionAggregator.php-->
Ce regroupement permet de grouper les usagers par position dans le ménage.
Une date de calcul est indiquée en paramètre: la position valable à la date indiquée sera utilisée.
#### Grouper les usagers par centre
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/CenterAggregator.php-->
Ce regroupement demande une date en paramètre.
Ce regroupement permet de classer les indicateurs par centre de l'usager. Le centre pouvant évoluer au cours du temps, il est calculé au moment de la date indiquée en paramètre.
Il peut arriver que les usagers concernés par un parcours, ou les usagers associés à un échange ou un rendez-vous appartiennent à différents centres. Lorsque c'est le cas, le parcours ou l'échange sera comptabilisé une fois dans chaque centre.
#### Grouper les usagers par zone géographique (sur base de l'adresse)
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/GeographicalUnitAggregator.php-->
Ce regroupement permet de grouper les usagers par zone géographique.
Seules les adresses géolocalisées sont prises en compte. Les adresses sont géolocalisées lorsqu'elles sont choisies parmi les adresses de référence. Lorsque seul le code postal est choisi parmi les suggestions, alors l'adresse est géolocalisée à l'intérieur de la zone géographique du code postal, de manière aléatoire.
L'adresse utilisée est celle valable à la date indiquée en paramètre.
**Relation un-à-plusieurs**: Si plusieurs couches géographiques sont indiquées, alors un regroupement (et donc une nouvelle ligne de résultat) est créée pour chaque zone du niveau géographique indiqué. Cela veut dire que si plusieurs couches géographiques se superposent, l'usager sera comptabilisée dans chacune d'elle.
Exemple: si les deux couches "région" et "commune" sont cochées; les adresses sont localisées à la fois au niveau communal, et au niveau régional. DAns les résultats de l'export, chaque usager sera comptabilisé une première fois dans la couche "commune" et une autre fois dans la couche région.
::: {.info}
L'association entre les zones géographiques et les adresses est une opération couteuse, en termes informatique. Dès lors, cette association est calculée une fois par nuit.
En conséquence, l'association entre la zone géographique et les adresses du jour ne sera pas disponible.
:::
#### Grouper les usagers par âge
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/AgeAggregator.php-->
Regroupe les usagers par âge.
Une date de calcul est indiquée en paramètre: l'âge des usagers est calculé par rapport à la date indiquée.
#### Grouper les usagers par état matrimonial
<!-- PHPFILE: src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/MaritalStatusAggregator.php-->
Regroupe les usagers par état matrimonial.

View File

@ -1,42 +0,0 @@
# Gestion des usagers en doublon
À l'utilisation, il arrive que des dossiers d'usagers soient créés en doublon: deux dossiers d'usagers sont créés et concerne **la même personne**.
Chill permet alors de fusionner les dossiers d'usagers. Cette opération est délicate, parce que le dossier de l'usager "déplacé" peut contenir des informations importantes.
Chill tente de limiter cette éventualité. Il est cependant nécessaire d'être attentif lors de cette opération.
::: .note
Pour avoir accès à cette fonctionnalité, il est nécessaire que les droits vous soient ouverts.
:::
## Page "traiter les doublons"
La page "traiter les doublons" présente
- la liste des "doublons potentiels" dans les usagers enregistrés dans le logiciel;
- la liste des "faux positifs" (des usagers qui ne sont pas des doublons et ne doivent pas être considérés comme tels).
Pour établir la liste des "doublons potentiels", Chill utilise:
<!-- TODO à vérifier -->
- la date de naissance: si les deux usagers disposent de cette information, alors la date de naissance doit être identique. Ce paramètre est ignoré si un des deux ne dispose pas de cette information.
- la proximité du nom: les noms qui se ressemblent avec une légère faute d'orthographe peuvent être considérés comme des doublons potentiels.
TODO à compléter
## Marquer des "faux positifs"
Lorsque deux usagers portent un nom identique, ou très proche, ils peuvent être considérés comme doublon de manière erronée. Pour éviter de les voir marqués comme doublons potentiels, il est possible de les indiquer comme étant deux personnes distinctes.
Leur fusion est impossible, et ils n'apparaissent plus comme doublons dans la liste des doublons potentiels (voir infra).
TODO à compléter
## Fusionner deux dossiers
TODO: que se passe-t-il lors de la fusion ?
## Export des doublons potentiels
TODO

BIN
user/img/export_select_saved_exports.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -1,4 +1,3 @@
\newpage
# Qu'est-ce que Chill? # Qu'est-ce que Chill?

BIN
user/map/map.inkscape.svg (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -3,9 +3,13 @@ title: Manuel utilisateur de Chill
lang: fr-BE lang: fr-BE
toc: true toc: true
page: a4 page: a4
book: true
titlepage: true, # specitfic to template eisvoger
titlepage: true
toc-own-page: true
# cause the numbering to be 0.x for every chapter
book: false
float-placement-figure: H
#logo: "img/logo-chill-outil-accompagnement.svg" #logo: "img/logo-chill-outil-accompagnement.svg"
header-includes: | header-includes: |

View File

@ -1,3 +1,6 @@
```{=latex}
\cleardoublepage
```
# Nouveautés # Nouveautés

View File

@ -9,6 +9,15 @@ Vous pouvez le considérer comme le troisième grand module de l'application. Co
![Bandeau d'un parcours d'accompagnement](./img/banner_course.png) ![Bandeau d'un parcours d'accompagnement](./img/banner_course.png)
::: {.note}
Dans le menu utilisateur, vous trouvez une entrée de menu pour vous diriger vers:
* une page de liste de **tous** les parcours dont vous êtes le référent;
* une page de liste de toutes vos parcours **BROUILLON** (ceux que vous avez créés, mais pas encore confirmés).
:::
## Résumé du parcours ## Résumé du parcours
![Résumé du parcours](./img/parcours_dashboard.png) ![Résumé du parcours](./img/parcours_dashboard.png)
@ -19,9 +28,9 @@ La page de résumé rassemble les informations les plus importantes et les derni
En bref, il s'agit du tableau de bord du parcours à partir duquel vous pouvez naviguer vers des sections spécifiques. En bref, il s'agit du tableau de bord du parcours à partir duquel vous pouvez naviguer vers des sections spécifiques.
## Les différents états d'un parcours ## Les différents statuts d'un parcours { #sec:parcours-statut }
Il est important de distinguer les différents états pour un parcours. Un badge se trouve en haut à droite du bandeau ou de l'élément de liste pour identifier cet état. Il est important de distinguer les différents statuts pour un parcours. Un badge se trouve en haut à droite du bandeau ou de l'élément de liste pour identifier ce statut:
* **BROUILLON** : le formulaire du parcours est en cours de rédaction, en attente de confirmation. * **BROUILLON** : le formulaire du parcours est en cours de rédaction, en attente de confirmation.
@ -31,35 +40,38 @@ Il est important de distinguer les différents états pour un parcours. Un badge
Il est, dès lors, visible par tous les utilisateurs. Des échanges, des actions d'accompagnements, des documents et des tâches peuvent être ajoutés. Il est, dès lors, visible par tous les utilisateurs. Des échanges, des actions d'accompagnements, des documents et des tâches peuvent être ajoutés.
* **HORS FILE ACTIVE** : le parcours n'a plus reçu d'échange ni d'actions d'accompagnements depuis plus de six mois. * **HORS FILE ACTIVE** : le parcours n'a plus reçu d'interventions depuis plus de six mois.
Il est toujours possible d'ajouter de nouvelles actions ou échanges. Il est toujours possible d'ajouter de nouvelles actions ou échanges.
* **PRÉ-ARCHIVÉ** : le parcours n'a plus reçu d'échanges ni d'actions d'accompagnement depuis plus de deux ans. * **PRÉ-ARCHIVÉ** : le parcours n'a plus reçu d'intervention depuis plus de deux ans.
Il est toujours possible d'ajouter de nouvelles actions ou échanges. Il est toujours possible d'ajouter de nouvelles actions ou échanges.
* **CLÔTURÉ** : le parcours d'accompagnement social est arrivée à son terme, la raison peut être définie (couleur du badge : rouge). * **CLÔTURÉ** : le parcours d'accompagnement social est arrivée à son terme, la raison peut être définie (couleur du badge : rouge).
### Les événements pris en compte pour modifier le statut d'un parcours { #sec:parcours-statut-intervention }
::: { .note } Le passage vers les statuts **HORS FILE ACTIVE** et **PRÉ-ARCHIVÉ** est effectué automatiquement, sans intervention de l'utilisateur. Pour calculer "l'inactivité", le logiciel prend en compte la date de différentes intervention dans le parcours. Si aucune de ces interventions n'a eu lieu, Chill change automatiquement le statut du parcours. Sont pris en compte:
Le passage vers ces les statuts **HORS FILE ACTIVE** et **PRÉ-ARCHIVÉ** est effectué automatiquement, sans intervention de l'utilisateur. Pour calculer "l'inactivité", le logiciel prend en compte la date de différents événements dans le parcours. Si aucun de ces événement n'a eu lieu, Chill change automatiquement le statut du parcours. Sont pris en compte:
- la date des échanges; - la date des échanges;
- la date de début, de fin, des actions d'accompagnements; - la date de début, de fin, des actions d'accompagnements;
- l'association d'un référent à une action d'accompagnement;
- la date de début, de fin des évaluations; - la date de début, de fin des évaluations;
- l'ajout d'une évaluation, d'un document dans une évaluation, la mise à jour d'un document ou la mise à jour d'un commentaire dans une évaluation; - l'ajout d'une évaluation, d'un document dans une évaluation, la mise à jour d'un document ou la mise à jour d'un commentaire dans une évaluation;
- et, évidemment, la date d'ouverture du parcours. - et, évidemment, la date d'ouverture du parcours.
Notez que, lorsqu'un parcours reçoit des nouvelles actions ou échanges, un parcours redevient **EN FILE ACTIVE**. Ce changement de statut est effectué automatiquement également, mais avec un délai de quelques heures. Notez que, lorsqu'un parcours reçoit des nouvelles actions ou échanges, un parcours redevient **EN FILE ACTIVE**. Ce changement de statut est effectué automatiquement également, mais avec un délai de quelques heures.
::: ### Intervenants sur un parcours { #sec:parcours-intervenant }
Dans le menu utilisateur, vous trouvez une entrée de menu pour vous diriger vers: Ces interventions permettent également de définir des intervenants sur un parcours: ce sont les auteur·e·s d'une intervention.
Il s'agit donc des utilisateurs qui:
- sont concernés par un échange;
- sont agents traitants d'une action;
* une page de liste de **tous** les parcours dont vous êtes le référent;
* une page de liste de toutes vos parcours **BROUILLON** (ceux que vous avez créés, mais pas encore confirmés).
## Parcours confidentiel, intensité, et caractère urgent d'un parcours ## Parcours confidentiel, intensité, et caractère urgent d'un parcours