Configurer les programmes dans l'application Maintenance¶
À propos des programmes¶
Habituellement, les systèmes d'information de la santé publique communiquent des données agrégées sur la prestation de services dans le cadre des programmes de santé. Cela ne permet pas de suivre les personnes ayant bénéficié de ces services. Dans le DHIS2, vous pouvez définir vos propres programmes avec des étapes. Ces programmes sont une partie essentielle de la fonctionnalité "tracker" qui vous permet de suivre les dossiers individuels. Vous pouvez également suivre d'autres ‘entités’ telles que des puits ou des assurances. Vous pouvez créer deux types de programmes :
Tableau : Types de programmes
| Type de programme | Description | Exemples d'utilisation |
|---|---|---|
| Programme d'événement | Programme d'événement unique sans enregistrement (programme anonyme ou SEWoR) Les événements individuels anonymes sont suivis par le système de santé. Aucune personne ou entité n'est associée à ces transactions individuelles. N'a qu'une seule étape de programme. | Enregistrer des cas de santé sans enregistrer d'informations dans le système. Enregistrer des données d'enquête ou des listes de surveillance. |
| Programme Tracker à étape unique | Événement unique avec programme d'enregistrement (SEWR) Une entité (personne, produit, etc.) est suivie lors de chaque transaction individuelle avec le système de santé . Comporte une seule étape du programme. Une instance d'entité suivie (TEI) ne peut s'inscrire qu'une seule fois au programme. | Enregistrer l'acte de naissance et l'acte de décès. |
| Programme Tracker à plusieurs étapes | Événements multiples avec programme d'enregistrement (MEWR) Une entité (personne, produit, etc.) est suivie à travers chaque transaction individuelle avec le système de santé . Comporte plusieurs étapes du programme. | Programme de santé maternelle avec des étapes comme la visite de CPN (2-4+), l'accouchement, la visite de consultation postnatale (CPN) |
Pour créer un programme, vous devez d'abord configurer plusieurs types d'objets de métadonnées. Vous pouvez créer ces objets de métadonnées dans l'application Maintenance.
Tableau : Objets de métadonnées du programme dans l'application Maintenance
| Type d'objet | Description | Fonctions disponibles |
|---|---|---|
| Programme d'événement | Un programme d'enregistrement d'un événement unique sans inscription | Créer, modifier, partager, supprimer, afficher les détails et traduire |
| Programme Tracker | Un programme d'enregistrement d'événements uniques ou multiples avec inscription | Créer, modifier, partager, supprimer, afficher les détails et traduire |
| Indicateur de programme | Une expression basée sur des éléments de données et des attributs d'entités suivies que vous utilisez pour calculer des valeurs basées sur une formule. | Créer, modifier, cloner, partager, supprimer, afficher les détails et traduire |
| Règle de programme | Permet de créer et de contrôler le comportement dynamique de l'interface utilisateur dans les applications de Saisie Tracker et de Saisie d'Evénement. | Créer, modifier, cloner, supprimer, afficher les détails et traduire |
| Variable de la Règle du Programme | Variables utilisées pour créer des expressions de règles de programme. | Créer, modifier, cloner, supprimer, afficher les détails et traduire |
| Type de relation | Définit la relation entre l'entité suivie A et l'entité suivie B, par exemple mère et enfant. | Créer, modifier, cloner, partager, supprimer, afficher les détails et traduire |
| Type d'entité suivie | Types d'entités qui peuvent être suivies par le système. Il peut s'agir de tout type d'entité, des personnes aux marchandises, par exemple un médicament ou une personne. Un programme doit avoir une entité suivie. Pour inscrire une instance d'entité suivie dans un programme, l'entité suivie d'une entité et l'entité suivie d'un programme doivent être identiques. NB Un programme doit être spécifié avec une seule entité suivie. Seules les entités suivies identiques à l'entité suivie du programme peuvent s'inscrire à ce programme. | Créer, modifier, cloner, partager, supprimer, afficher les détails et traduire |
| Attribut d’entité suivie | Utilisés pour enregistrer des informations supplémentaires pour une entité suivie. Peuvent être partagés entre les programmes. | Créer, modifier, cloner, partager, supprimer, afficher les détails et traduire |
| Programme | Un programme est composé d'étapes. | Créer, modifier, partager, supprimer, assigner à des unités d'organisation , afficher les détails et traduire |
| Étape du programme | Une étape du programme définit les mesure devant être prises à chaque étape. | Créer, modifier, partager, modifier l'ordre de tri, supprimer, afficher les détails et traduire |
| Groupe d'indicateurs du programme | Un groupe d'indicateurs de programme | Créer, modifier, cloner, partager, supprimer, afficher les détails et traduire |
| Règle de validation | Une règle de validation est basée sur une expression qui définit une relation entre les valeurs des éléments de données. | Créer, modifier, cloner, partager, supprimer, afficher les détails et traduire |
| Notification du programme | Message de rappel automatisé Définissez des rappels qui seront automatiquement envoyés aux instances des entités suivies avant les rendez-vous programmés et après les visites manquées. | Créer, modifier et supprimer |
| Notification de l'étape du programme | Rappel de message automatisé Définissez des rappels à envoyer automatiquement à chaque fois qu'une étape du programme est terminée, ou avant ou après la date limite. | Créer, modifier et supprimer |
Configurer les programmes d'événements dans l'application Maintenance¶
À propos des programmes d'événements¶
Les événements uniques sans programmes d'inscription sont appelés programmes d'événements. Vous pouvez les configurer dans l'application Maintenance. Les programmes d'événements peuvent avoir trois types de formulaires de saisie de données :
Tableau : Types de formulaires de saisie de données pour les programmes d'événements
| Type de formulaire | Description |
|---|---|
| Basique | Liste tous les éléments de données qui appartiennent au programme. Vous pouvez modifier l'ordre des éléments de données. |
| Section | Une section regroupe les éléments de données dans un ordre spécifique. Vous pouvez ensuite organiser l'ordre des sections pour déterminer la présentation souhaitée pour le formulaire de saisie de données. |
| Personnalisé | Définit le formulaire de saisie comme une page HTML. |
N.B.
Les formulaires personnalisés ont la priorité sur les formulaires à sections si les deux sont présents.
Si aucun formulaire personnalisé ou à sections n'est défini, le formulaire de base sera alors utilisé.
L'application Android ne prend en charge que les formulaires à sections.
Vous pouvez créer des notifications de programme pour les programmes d'événements. Les notifications sont envoyées soit par le système de messagerie interne de DHIS2, soit par e-mail, soit par message texte (SMS). Vous pouvez utiliser les notifications de programme pour, par exemple, envoyer un rappel automatique à une entité suivie 10 jours avant un rendez-vous prévu. Vous utilisez les attributs de l'entité suivie du programme (par exemple le prénom) et les paramètres du programme (par exemple la date d'inscription) pour créer un modèle de notification. Dans le champ Paramètres, vous trouverez une liste des attributs de l'entité suivie et des paramètres du programme disponibles.
Flux de production : Créer un programme d'événement¶
-
Entrez les détails du programme de l'événement.
-
Attribuer des éléments de données.
-
Créer un ou plusieurs formulaires de saisie de données : Base, Section ou Personnalisé.
-
Affectez le programme à une ou plusieurs unités d'organisation.
-
Créer une ou des notifications de programme.
Créer ou modifier un programme d'événement¶
Entrez les détails du programme de l'événement.¶
-
Ouvrez l'application Maintenance et cliquez sur Programme > Programme.
-
Cliquez sur le bouton d'ajout et sélectionnez Programme de l'événement dans le menu popup.
-
Entrez les détails du programme, puis cliquez sur suivant.
Champ Description Nom Nom du programme. Couleur Couleur utilisée pour ce programme dans les applications de saisie de données. Icône Icône utilisée pour ce programme dans les applications de saisie de données. Nom abrégé Nom abrégé du programme. Le nom abrégé est utilisé comme titre par défaut du graphique ou du tableau dans les applications d'analyse. Description Une description détaillée du programme. Version La version du programme. Elle est utilisée par exemple lorsque des personnes collectent des données hors ligne dans le cadre d'une implémentation Android. Lorsqu'ils vont en ligne et synchronisent leurs métadonnées, ils doivent obtenir la dernière version du programme. Combinaison de catégories La combinaison de catégories que vous souhaitez utiliser. La valeur par défaut est Aucune. Jours ouverts après la date de fin de l'option de catégorie Si vous avez sélectionné une combinaison de catégories autre que "Aucune", vous pouvez saisir zéro ou un nombre positif. Cela vous permet de saisir des données dans ce programme pour une option de catégorie jusqu'au nombre de jours spécifié après la date de fin de cette option de catégorie. Flux de travail d'approbation des données Le flux de travail d'approbation des données que vous souhaitez utiliser. Le paramètre par défaut est Aucune valeur. Date d'expiration des événements terminés Définit le nombre de jours pendant lesquels vous pouvez modifier un événement terminé. Cela signifie que lorsqu'un événement est terminé et que le nombre de jours d'expiration spécifié est écoulé, l'événement est verrouillé.
Si vous réglez "Jours d'expiration des événements terminés" sur 10", un événement est verrouillé dix jours après sa date de fin. Après cette date, vous ne pouvez plus modifier l'événement.Type de période d'expiration
Jours d'expirationLes jours d'expiration définissent le nombre de jours après la fin de la période précédente pendant lesquels un événement peut être modifié. Le type de période est défini par le type de période d'expiration. Cela signifie que lorsque le nombre spécifié de jours d'expiration s'est écoulé depuis la date de fin de la période précédente, les événements de cette période sont verrouillés.
Si vous réglez le type d'expiration sur "Mensuel" et les jours d'expiration sur "10" et que le mois est octobre, vous ne pouvez pas ajouter ou modifier un événement pour octobre après le 10 Novembre.Bloquer le formulaire d'inscription une fois l'événement terminé Cochez la case pour bloquer le formulaire d'inscription une fois l'événement de ce programme terminé.
Cela signifie que les données du formulaire de saisie ne peuvent pas être modifiées tant que vous n'avez pas rétabli le statut " non terminé ".Type d'entité Définit si le programme doit saisir un type d'entité géographique ou non.
- Aucune Rien n'est saisi.
- Polygone Une zone est saisie. Pour les programmes à événement unique, la zone sera la zone représentant l'événement saisi. Pour les programmes tracker, la zone représentera la zone d'inscription.
- Point Un point/une coordonnée est saisi(e). Pour les programmes à événement unique, le point représentera l'événement saisi. Pour les programmes tracker, le point représentera l'inscription.Stratégie de validation Définit les exigences de validation côté serveur et côté client.
La validation du type de données est toujours effectuée, quelle que soit la stratégie de validation. Un champ de type entier n'est jamais stocké avec du texte, par exemple.
- A terminer Cette option impose la correction des champs obligatoires et des messages d'erreur lors de la clôture de l'événement, mais l'événement peut être sauvegardé sur le serveur sans passer par ces exigences de validation. Pour des raisons d'héritage, il s'agit toujours de la stratégie de validation pour les programmes tracker, où chaque valeur de données dans l'événement est stockée sur le serveur lors de la saisie des données.
- A mettre à jour et à insérer Cette option impose la validation des champs obligatoires lors de l'enregistrement de l'événement sur le serveur, quel que soit l'état d'achèvement de l'événement. Lorsque cette option est utilisée, aucun événement ne peut être stocké sans passer par les validations.Pré-générer l'UID de l'événement Cochez la case pour pré-générer les numéros d'identification uniques de l'événement. Étiquette personnalisée pour la date du rapport Saisissez une description de la date du rapport.
Cette description est affichée dans le formulaire de saisie du cas. -
Cliquez sur suivant.
Attribuer des éléments de données¶
-
Cliquez sur Attribuer des éléments de données.
-
Dans la liste des éléments disponibles, double-cliquez sur les éléments de données que vous souhaitez attribuer au programme de l'événement.
-
(Facultatif) Pour chaque élément de données, ajoutez des paramètres supplémentaires :
Paramètres Description Obligatoire La valeur de cet élément de données doit être renseignée dans le formulaire de saisie pour que vous puissiez terminer l'événement. Autorisation obtenue ailleurs Spécifiez si la valeur de cet élément de données provient d'un autre établissement, et non de l'établissement dans lequel cette donnée est saisie. Affichage dans les rapports Affiche la valeur de cet élément de données dans l'événement unique sans fonction de saisie des données d'enregistrement. Date future Permet à l'utilisateur de sélectionner une date future pour les éléments de données relatifs à la date. Type de rendu mobile Peut être utilisé pour sélectionner différents types de rendu pour les appareils mobiles. Les options disponibles varient en fonction du type de valeur de l'élément de données. Par exemple, pour une valeur numérique, vous pouvez sélectionner "Défaut", "Valeur", "Curseur", "Échelle linéaire" et "Spinner". Type de rendu pour les ordinateurs de bureau AVERTISSEMENT : PAS ENCORE IMPLÉMENTÉ.
Peut être utilisé pour sélectionner différents types de rendu pour les ordinateurs de bureau (c'est-à-dire l'interface web). Les options disponibles varient en fonction du type de valeur de l'élément de données. Par exemple, pour une valeur numérique, vous pouvez sélectionner "Défaut", "Valeur", "Curseur", "Échelle linéaire" et "Spinner". -
Cliquez sur suivant.
Créer des formulaires de saisie de données¶
Les formulaires de saisie définissent comment les éléments de données s'afficheront à l'utilisateur dans l'application Saisie d'événements.
-
Cliquez sur Créer un formulaire de saisie de données.
-
Cliquez sur Base, Section ou Personnalisé.
-
Pour créer un formulaire de saisie de base : Glissez et déposez les éléments de données dans l'ordre que vous souhaitez.
-
Pour créer un formulaire ** À section** :
-
Cliquez sur le bouton "Ajouter" et entrez le nom, la description et le type de rendu d'une section pour PC et mobile.
-
Cliquez sur la section pour qu'elle soit surlignée par une ligne noire.
-
Ajoutez des éléments de données en cliquant sur le signe "+" à côté du nom des éléments de données.
-
Répétez les étapes ci-dessus jusqu'à ce que vous ayez toutes les sections dont vous avez besoin.
-
Modifiez l'ordre des sections : cliquez sur le menu des options, puis faites glisser la section à l'endroit souhaité.
-
-
Pour créer un formulaire de saisie de données Personnalisé : Utilisez l'éditeur WYSIWYG pour créer un formulaire entièrement personnalisé. Si vous sélectionnez Source, vous pouvez coller un code HTML directement dans la zone d'édition. Vous pouvez également insérer des images, par exemple des drapeaux ou des logos.
-
Cliquez sur suivant.
Accès¶
Les options d'accès déterminent qui peut saisir les données pour le programme ou visualiser/modifier les métadonnées du programme. Un programme peut être partagé avec des unités d'organisation, et en outre, les options d'accès au programme principal et à toutes les étapes du programme peuvent être configurées par le biais de la boîte de dialogue Partage. Les options d'accès sont disponibles dans l'onglet Accès.
Attribuer des unités d'organisation :
-
Dans l'arbre d'organisation, double-cliquez sur les unités d'organisation que vous souhaitez ajouter au programme.
Vous pouvez localiser une unité d'organisation dans une arborescence en développant les branches (cliquez sur le symbole en forme de flèche) ou en la recherchant par son son nom. Les unités d'organisation sélectionnées s'affichent en orange.
Changer les rôles et l'accès :
-
Faites défiler vers le bas jusqu'à la section Rôles et accès.
La première ligne présente les options d'accès au programme principal, et chaque ligne suivante présente les options d'une étape du programme. Les étapes du programme accompagnées d'une icône d'avertissement (point d'exclamation) contiennent des options d'accès différentes de celles du programme principal, ce qui signifie qu'elles sont accessibles à une combinaison d'utilisateurs différente.
-
Cliquez sur l'une des lignes et la boîte de dialogue Partage s'affichera.
-
Modifiez les options d'accès en conséquence. Voir la documentation sur le dialogue de partage pour plus de détails.
-
Cliquez sur le bouton Appliquer.
-
Répétez le processus pour chaque programme/étape du programme. Vous pouvez également copier toutes les options d'accès du programme principal dans vos programmes subordonnés:
-
Sélectionnez les étapes du programme pour lesquelles vous souhaitez disposer d'options d'accès similaires à celles du programme principal en cochant les cases situées à droite des étapes du programme. Vous pouvez également choisir de Sélectionner toutes les étapes du programme, Désélectionner toutes les étapes du programme ou Sélectionner des étapes similaires, en termes d'options d'accès, à celles du programme principal. Les étapes similaires sont cochées par défaut.
-
Cliquez sur Appliquer aux étapes sélectionnées.
-
Créer des notifications de programme¶
-
Créez le message que vous voulez envoyer :
-
Cliquez sur Quoi envoyer?.
-
Entrez un Nom.
-
Créez le Modèle d'objet : Double-cliquez sur les paramètres dans le champ Modèle de variables pour les ajouter à votre objet.
Note
The subject is not included in text messages.
-
Créez le Modèle de message : Double-cliquez sur les noms des paramètres dans la liste Modèle de variables pour les ajouter à votre message.
Cher A{w75KJ2mc4zz}, Vous êtes maintenant inscrit au V{programme_nom}.
-
-
Définissez quand vous voulez envoyer le message :
-
Cliquez sur Quand l'envoyer?.
-
Sélectionnez un Déclencheur de notification.
Déclencher une notification Description Fin de l'étape d'un programme La notification de l'étape d'un programme est envoyée lorsque l'étape d'un programme est terminée. Jours prévus (date d'échéance) La notification de l'étape de programme est envoyée XX jours avant ou après la date d'échéance
Vous devez préciser le nombre de jours avant ou après la date prévue pour l'envoi de la notification.
-
-
Définissez à qui vous voulez envoyer le message :
-
Cliquez sur L'envoyer à ?.
-
Sélectionnez un Destinataire de la notification.
Destinataire de la notification Description Instance de l'entité suivie Reçoit les notifications concernant un programme par e-mail ou par message texte.
Pour recevoir une notification concernant un programme, le destinataire doit disposer d'une adresse électronique ou d'un numéro de téléphone.Contact de l'unité d'organisation Reçoit les notifications concernant un programme par courrier électronique ou par message texte.
Pour recevoir une notification concernant un programme, l'unité organisationnelle destinataire doit disposer d'une personne de contact enregistrée avec une adresse électronique et un numéro de téléphone.Utilisateurs de l'unité d'organisation Tous les utilisateurs enregistrés dans l'unité d'organisation sélectionnée reçoivent les notifications concernant leur programme via le système de messagerie interne DHIS2. Groupe d'utilisateurs Tous les membres du groupe d'utilisateurs sélectionné reçoivent les notifications du programme via le système de messagerie interne DHIS2 Programme TBA -
Cliquez sur Enregistrer.
-
-
Répétez les étapes ci-dessus pour créer toutes les notifications de programme dont vous avez besoin.
-
Cliquez sur Sauvegarder.
N.B.
Vous pouvez configurer quand les notifications de programme sont envoyées dans l'application Administration de données > Programmation > Planificateur de notifications de programmes.
Cliquez sur Exécuter maintenant pour envoyer les notifications du programme immédiatement.
Sélectionnez une heure et cliquez sur Démarrer pour programmer les notifications de programme à envoyer à une heure précise.
Informations de référence : Paramètres de notification du programme¶
Tableau : Paramètres de notification de programme à utiliser dans les notifications de programme
| Type de notification | Nom de la variable | Code de la variable |
|---|---|---|
| Programme | Date actuelle | V{date_actuelle} |
| Nombre de jours écoulés à compter de la date d'inscription | V{jours_depuis_la date_d'inscription} | |
| Date d’inscription | V{date_d'inscription} | |
| Date de l’incident | V{date_de l'incident} | |
| Nom de l'unité d’organisation | V{nom_de l'unité_d'organisation} | |
| Nom du programme | V{nom_du programme} | |
| Étape du programme | Date actuelle | V{date_actuelle} |
| Nombre de jours écoulés à compter de la date d'échéance | V{jours_depuis_la date_d'échéance} | |
| Nombre de jours restant avant la date d'échéance | V{jours_jusqu'à_la date_d'échéance} | |
| Date d’échéance | V{date_d'échéance} | |
| Nom de l'unité d’organisation | V{nom_de l'unité_d'organisation} | |
| Nom du programme | V{nom_du programme} | |
| Le nom de l'étape du programme | V{nom de_l'étape du_programme} | |
| Statut de l'événement | V{statut de_l'événement} |
Configurer les programmes Tracker dans l'application Maintenance¶
À propos des programmes Tracker¶
Les programmes à événement unique ou multiple avec inscription sont appelés des programmes Tracker. Un programme doit être spécifié avec une seule entité suivie. Seules les entités suivies identiques à l'entité suivie du programme peuvent s'inscrire à ce programme. Un programme a besoin de plusieurs types de métadonnées que vous pouvez créer dans les applications Maintenance.
Flux de production : Créer un programme tracker¶
-
Entrez les détails du programme Tracker.
-
Entrer les détails de l'inscription.
-
Assigner des attributs et créer un formulaire d'inscription à section ou personnalisé.
-
Créer des étapes de programme.
-
Configurer l'accès et l'attribuer aux unités d'organisation.
-
Créer une ou plusieurs notifications de programme et d'étape de programme.
Créer ou modifier un programme Tracker¶
-
Ouvrez l'application Maintenance et cliquez sur Programme > Programme.
-
Cliquez sur le bouton Ajouter et sélectionnez Programme Tracker dans le menu popup.
Entrer les détails de programme¶
| Champ | Description |
|---|---|
| Nom. | Le nom du programme. |
| Couleur | Couleur utilisée pour ce programme lors de la saisie Tracker. |
| Icône | Icône utilisée pour ce programme lors de la saisie Tracker |
| le nom court | Un nom abrégé du programme. Le nom abrégé est utilisé comme titre de graphique ou de tableau par défaut dans les applications d'analyse. |
| Description | Une description détaillée du programme. |
| Version | La version du programme. Elle est utilisée par exemple lorsque des personnes collectent des données hors ligne dans une implémentation Android. Lorsqu'ellles se connectent et synchronisent leurs métadonnées, elles devront alors obtenir la dernière version du programme. |
| Type d'entité suivie | Le type d'entité suivie que vous souhaitez utiliser. Un programme ne peut avoir qu'un seul type d'entité suivie. |
| Combinaisons de catégories | La combinaison de catégories que vous souhaitez utiliser. Le paramètre par défaut est Aucune. |
| Jours ouvrables après la date de fin de l'option de catégorie | Si vous avez sélectionné une combinaison de catégories autre que "Aucune", vous pouvez saisir un zéro ou un nombre positif. Cela vous permet de saisir des données dans ce programme pour une option de catégorie jusqu'au nombre spécifié de jours après la date de fin de cette option de catégorie. |
| Afficher la liste de la première page | Cochez cette case pour afficher une liste des instances d'entités suivies dans la saisie Tracker. Si elle n'est pas sélectionnée, la Recherche sera affichée. |
| La première étape apparaît sur la page d'enregistrement | Cochez la case pour afficher la première étape du programme en même temps que l'inscription. |
| Niveau d'accès | Choisissez le niveau d'accès au programme. |
| Jours d'expiration des événements complétés | Définit le nombre de jours pendant lesquels vous pouvez modifier un événement terminé. Cela signifie que lorsqu'un événement est terminé et que le nombre de jours d'expiration spécifié s'est écoulé, l'événement est verrouillé. Si vous définissez "Jours d'expiration des événements terminés" sur 10", un événement est verrouillé dix jours après la date de fin de l'événement. Après cette date, vous ne pouvez plus modifier l'événement. |
| Type de périodes d'expiration jours d'expiration | La date d'expiration définit pendant combien de jours après la fin de la période précédente, un événement peut être modifié. Le type de période est défini par le type de période d'expiration. Cela signifie que lorsque le nombre déterminé de jours d'expiration s'est écoulé depuis la date d'expiration de la période précédente, les événements de cette période sont bloqués. Si vous réglez le type d'expiration sur "Mensuel" et les jours d'expiration sur "10" et que le mois est octobre, vous ne pouvez pas ajouter ou modifier un événement pour le mois d'octobre après le 10 novembre. |
| Nombre minimum d'attributs requis pour la recherche | Indiquez le nombre d'attributs d'entités suivies à remplir pour rechercher des Entités Suivies dans le Programme. |
| Nombre maximum d'entités suivies à renvoyer dans la recherche | Spécifiez le nombre maximum d'entités suivies autorisées à correspondre à une recherche hors du champ de saisie de l'utilisateur. Ce paramètre peut être utilisé pour forcer l'utilisateur à effectuer une recherche plus ciblée et à réduire les résultats de la recherche, plutôt que d'effectuer une recherche et de voir un grand nombre de résultats qui ne se trouvent pas dans son champ de saisie. Entrez 0 pour spécifier "aucune limite". Plus d'informations ici. |
Saisir les détails de l'inscription¶
| Champ | Description |
|---|---|
| Autoriser les dates d'inscription futures | Cochez la case si vous souhaitez autoriser les instances d'entités suivies à s'inscrire au programme à une date ultérieure. |
| Autoriser les dates d'incident futures | Cochez cette case si vous souhaitez que la date de l'incident dans le programme soit fixée à une date ultérieure. |
| Inscrire une seule fois (par durée de vie de l'instance d'entité suivie) | Cochez cette case si vous souhaitez qu'une entité suivie n'ait le droit de s'inscrire qu'une seule fois à un programme. Ce paramètre est utile, par exemple, dans les programmes de vaccination des enfants ou d'examen post-mortem, où il ne serait pas judicieux d'inscrire une entité suivie plus d'une fois. |
| Afficher la date de l'incident | Ce paramètre vous permet d'afficher ou de masquer le champ de la date de l'incident lorsqu'une entité suivie s'inscrit au programme. |
| Étiquette personnalisée pour la date de l'incident | Saisissez une description de la date de l'incident Par exemple: Dans un programme de vaccination pour les enfants de moins d'un an, la date de l'incident est l'anniversaire de l'enfant. Dans un programme maternel, la date d'incident est la date des dernières règles. |
| Étiquette personnalisée pour la date d'inscription | La date à laquelle l'entité suivie est inscrite au programme |
| Étiquette personnalisée pour: - inscription - événement - étape de programme - suivi - unité d'inscription - relation - note - attribut d'entité suivie | Ces étiquettes personnalisées remplaceront, au niveau d'un programme spécifique, ces termes dans certaines applications de DHIS2. Il est important de noter que cette configuration ne fait pas de distinction entre le singulier et le pluriel, et que l'étiquette doit donc en tenir compte. Actuellement, ces étiquettes personnalisées ne sont utilisées que par l'application DHIS2 Android. |
| Ignorer les événements en retard | Lorsqu'une entité suivie s'inscrit au programme, les événements correspondant aux étapes du programme sont créés. Si vous cochez cette case, le système ne va pas générer d'événements en retard. |
| Type de caractéristique | Définit si le programme va saisir un type d'entité géographique ou non. * Aucun: Rien n'est capturé. * Polygone: Une zone est capturée. Pour les programmes à événement unique, la zone correspond à la zone représentant l'événement en cours de saisie. Pour les programmes de suivi, la zone représente la zone d'inscription. * Point: Un point/coordonnée est saisi. Pour les programmes à événement unique, le point représentera l'événement en cours de saisie. Pour les programmes de suivi, le point représente l'inscription. |
| Programme apparenté | Choisissez un programme Tracker en rapport avec le programme que vous allez créer, par exemple une CPN et un programme pour les Enfants. |
Affecter les attributs de l'entité suivie.¶
-
Dans la liste des Attributs d'entités suivies de programme disponibles, double-cliquez sur les attributs que vous souhaitez attribuer au programme.
-
(Facultatif) Pour chaque attribut assigné, ajoutez des paramètres supplémentaires :
| Paramètre | Description |
|---|---|
| Afficher dans la liste | Affiche la valeur de cet attribut dans la liste des instances d'entités suivies dans la saisie Tracker. |
| Ignorer l'analyse individuelle | Cet attribut ne sera pas inclus dans le processus d'analyse du Tracker. Mais il sera toujours pris en compte dans le cadre du processus d'analyse agrégée. |
| Obligatoire | La valeur de cet attribut doit être indiquée dans le formulaire de saisie avant que vous ne puissiez terminer l'événement. |
| Date future | Permet à l'utilisateur de sélectionner une date future pour les attributs de la date. |
| Type d'affichage mobile | Peut être utilisé pour sélectionner différents types d'affichage pour les appareils mobiles. Les options disponibles varient en fonction du type de valeur de l'attribut. Par exemple, pour une valeur numérique, vous pouvez sélectionner "Défaut", "Valeur", "Curseur", "Échelle linéaire" et le "Bouton fléché". |
| Type d'affichage sur ordinateur de bureau | ATTENTION : PAS ENCORE IMPLÉMENTÉ. Peut être utilisé pour sélectionner différents types d'affichage pour les ordinateurs de bureau (c.-à-d. l'interface web). Les options disponibles varient en fonction du type de valeur de l'attribut. Par exemple, pour une valeur numérique, vous pouvez sélectionner "Défaut", "Valeur", "Curseur", "Échelle linéaire" et le "Bouton fléché". |
- Créer un formulaire d'inscription
Le formulaire d'inscription définit la manière dont les attributs seront affichés à l'utilisateur dans les applications consommatrices, telles qu'Android et Saisie Tracker.
1. Cliquez sur **Créer un formulaire d'inscription**.
2. Cliquez sur **À section** ou **Personnalisé**.
3. Pour créer un formulaire ** À section** :
1. Cliquez sur le bouton "Ajouter" et entrez le nom, la description et le type de rendu d'une section pour PC et mobile.
2. Cliquez sur la section pour qu'elle surlignée par une bordure noire.
3. Ajoutez des éléments de données en cliquant sur le signe "+" à côté du nom des éléments de données que vous souhaitez ajouter.
4. Répétez les étapes ci-dessus jusqu'à ce que vous ayez toutes les sections dont vous avez besoin.
Pour modifier l'ordre des sections : cliquez sur le menu des options, puis faites glisser la section à l'endroit souhaité.
4. Pour créer un formulaire d'enregistrement **Personnalisé** : Utilisez l'éditeur WYSIWYG pour créer un formulaire entièrement personnalisé. Si vous sélectionnez Source, vous pouvez alors coller le code HTML directement dans la zone d'édition. Vous pouvez également insérer des images, par exemple des drapeaux ou des logos.
5. Cliquez sur ajouter une étape.
Créer des étapes de programme¶
Un programme se compose d'étapes. Une étape du programme définit les mesure devant être prises à chaque étape.
N.B.
Les modifications apportées à une étape du programme ne sont pas enregistrées tant que vous n'avez pas sauvegardé le programme.
- Cliquez sur le signe "+" pour créer une étape du programme.
- Entrer les détails de l'étape du programme
- Entrez un Nom.
- (Facultatif) sélectionnez une Couleur et une Icône qui seront utilisées par les applications de saisie de données pour identifier cette étape du programme
- Tapez une Description.
- Saisissez le nombre de jours requis dans le champ Jours prévus à partir du début : Le premier événement de cette étape du programme sera programmé plusieurs jours après la date d'inscription ou d'incident, en fonction de la configuration. Si l'option Afficher la date de l'incident dans Détails de l'inscription est configurée, le système utilisera la date de l'incident comme point de départ. Si l'option Générer des événements en fonction de la date d'inscription dans Détails de l'étape du programme est configurée, le système utilisera la date d'inscription comme point de départ.
- Entrez les détails reproduisibles des étapes du programme.
- Précisez si l'étape du programme est Reproduisible ou non.
- Sélectionnez un Type de période.
- Décochez Afficher la boîte de génération d'événement après avoir terminé si vous ne voulez pas afficher Créer une nouvelle boîte d'événement pour créer un nouvel événement pour une étape répétable après avoir cliqué sur Terminé pour un événement de l'étape dans le formulaire de saisie de données. Ce champ est sélectionné par défaut.
- Saisissez Jours d'intervalle standard. Cette valeur correspond à l'intervalle suggéré entre le dernier événement d'une étape répétitive et la date prévue pour l'événement suivant.
- (Facultatif) Sélectionnez une Date prochaine prévue par défaut. Une liste des éléments de données attribués de type date apparaîtra. Si un élément est sélectionné, le client Tracker utilisera cette date comme date de début par défaut. L'élément de données peut être utilisé par les règles du programme pour programmer de façon dynamique des intervalles entre les événements.
- Entrez les détails du formulaire
| Option | Action |
|---|---|
| Evénement généré automatiquement | Décochez la case pour empêcher la création automatique d'un événement de cette étape du programme lorsqu'une entité est inscrite au programme. |
| Ouvrir le formulaire de saisie des données après l'inscription | Cochez la case pour ouvrir automatiquement l'événement de cette étape dès que l'entité s'est inscrite au programme. |
| Date de déclaration à utiliser | Si vous avez coché la case Ouvrir le formulaire de saisie des données après l'affiliation, sélectionnez également une Date de déclaration à utiliser : Date de l'incident ou Date d'inscription. Il s'agit de la date utilisée comme date de déclaration pour un événement qui a été ouvert automatiquement. Si la Date de déclaration à utiliser est sélectionnée comme l'une de ces deux dates ("date d'incident"/"date d'inscription"), dans le tableau de bord, la "Date de déclaration" de l'événement sera définie comme l'une de ces deux dates. |
| Affectation des événements à l'utilisateur | Cochez la case pour permettre l'affectation d'un utilisateur à l'étape du programme. Cela signifie que dans la saisie Tracker, il y aura une liste d'utilisateurs auxquels l'événement peut être affecté. |
| Bloquer le formulaire de saisie une fois complété | Cochez la case pour bloquer le formulaire d'inscription une fois l'événement de cette étape terminé. Cela signifie que les données du formulaire de saisie ne peuvent pas être modifiées tant que le statut n'a pas été réinitialisé à non terminé. |
| Demander à l'utilisateur de compléter le programme lorsque l'étape est terminée | Cochez la case pour afficher une fenêtre contextuelle demandant à l'utilisateur s'il souhaite créer l'événement de l'étape suivante. |
| Demander à l'utilisateur de créer un nouvel événement lorsque l'étape est terminée | Cochez cette case pour afficher une fenêtre contextuelle demandant à l'utilisateur s'il souhaite créer un nouvel événement de cette étape lorsqu'un événement de cette étape est terminé. Cette propriété n'est active que si vous avez sélectionné Répétitif. |
| Générer des événements par date d'inscription | Cochez cette option pour générer automatiquement les dates d'échéance des événements des étapes de ce programme, en fonction de la date d'inscription. Si elle n'est pas cochée, les dates d'échéance sont générées en fonction de la date de l'incident. |
| Masquer les dates d'échéance | Cochez la case pour masquer les dates d'échéance des événements. |
| Type de caractéristique | Définit si le programme va saisir un type d'entité géographique ou non. * Aucun: Rien n'est capturé. * Polygone: Une zone est capturée. Pour les programmes à événement unique, la zone correspond à la zone représentant l'événement en cours de saisie. Pour les programmes de suivi, la zone représente la zone d'inscription. * Point: Un point/coordonnée est saisi. Pour les programmes à événement unique, le point représentera l'événement en cours de saisie. Pour les programmes de suivi, le point représente l'inscription. |
| Pré-générer l'UID de l'événement | Cochez la case pour pré-générer des numéros d'identification uniques de l'événement. |
| Étiquette personnalisée pour la date du rapport | Saisissez une description de la date de déclaration. Cette description est affichée dans le formulaire de saisie des données. |
| Étiquette personnalisée pour la date d'échéance | Saisissez une description de la date d'échéance. |
| Étiquette personnalisée pour : - étape de programme - événement | Ces étiquettes personnalisées remplaceront, au niveau d'un programme spécifique, ces termes dans certaines applications de DHIS2. Il est important de noter que cette configuration ne fait pas de distinction entre le singulier et le pluriel, et que l'étiquette doit donc en tenir compte. Actuellement, ces étiquettes personnalisées ne sont utilisées que par l'application DHIS2 Android. |
-
Attribuer des éléments de données à une étape du programme :
-
Dans la liste des Éléments de données disponibles, double-cliquez sur les éléments de données que vous souhaitez affecter à l'étape du programme.
-
Pour chaque élément de données attribué, examinez les propriétés. Vous pouvez sélectionner :
-
| Option | Action |
|---|---|
| Obligatoire | La valeur de cet élément de données doit être indiquée dans le formulaire de saisie des données avant de terminer l'événement. |
| Autorisation accordée ailleurs | Préciser si la valeur de cet élément de données provient d'un autre établissement, et non de l'établissement où cette donnée est saisie. |
| Affichage dans les rapports | La valeur de cet élément de données est affichée dans l'événement unique sans la fonction de saisie de données d'enregistrement. |
| Date future | Permet de sélectionner une date future pour les éléments de données relatifs à la date. |
| Ignorer la synchronisation | Permet d'ignorer des éléments de données lors de l'exécution de tâches de synchronisation de données. |
| Type d'affichage mobile | Peut être utilisé pour sélectionner différents types d'affichage pour les appareils mobiles. Les options disponibles varient en fonction du type de valeur de l'attribut. Par exemple, pour une valeur numérique, vous pouvez sélectionner "Défaut", "Valeur", "Curseur", "Échelle linéaire" et "Hélice". |
| Type d'affichage sur ordinateur de bureau | ATTENTION : PAS ENCORE IMPLÉMENTÉ. Peut être utilisé pour sélectionner différents types d'affichage pour les ordinateurs de bureau (c.-à-d. l'interface web). Les options disponibles varient en fonction du type de valeur de l'attribut. Par exemple, pour une valeur numérique, vous pouvez sélectionner "Défaut", "Valeur", "Curseur", "Échelle linéaire" et Hélice". |
-
Créer des formulaires de saisie de données pour une étape du programme
Les formulaires de saisie définissent comment les éléments de données seront affichés à l'utilisateur dans l'application Saisie Tracker.
-
Cliquez sur Créer un formulaire de saisie de données.
-
Cliquez sur Base, Section ou Personnalisé.
-
Pour créer un formulaire de saisie de base : Glissez et déposez les éléments de données dans l'ordre que vous souhaitez.
-
Pour créer un formulaire ** À section** :
-
Cliquez sur le bouton "Ajouter" et entrez le nom, la description et le type de rendu d'une section pour PC et mobile.
-
Cliquez sur la section pour qu'elle soit mise en évidence par une bordure noire.
-
Ajoutez des éléments de données en cliquant sur le signe "+" à côté du nom des éléments de données.
-
Répétez les étapes ci-dessus jusqu'à ce que vous ayez toutes les sections dont vous avez besoin.
-
Modifiez l'ordre des sections : cliquez sur le menu des options, puis faites glisser la section à l'endroit souhaité.
-
-
Pour créer un formulaire de saisie de données Personnalisé : Utilisez l'éditeur WYSIWYG pour créer un formulaire entièrement personnalisé. Si vous sélectionnez Source, vous pouvez alors coller le code HTML directement dans la zone d'édition. Vous pouvez également insérer des images, par exemple des drapeaux ou des logos.
-
Cliquez sur ajouter une étape.
Accès¶
Les options d'accès déterminent qui peut saisir les données pour le programme ou visualiser/modifier les métadonnées du programme. Un programme peut être partagé avec des unités d'organisation, et en outre, les options d'accès au programme principal et à toutes les étapes du programme peuvent être configurées par le biais de la boîte de dialogue Partage. Les options d'accès sont disponibles dans l'onglet Accès.
Attribuer des unités d'organisation :
-
Dans l'arbre d'organisation, double-cliquez sur les unités d'organisation que vous souhaitez ajouter au programme.
Vous pouvez localiser une unité d'organisation dans une arborescence en développant les branches (cliquez sur le symbole en forme de flèche) ou en la recherchant par son son nom. Les unités d'organisation sélectionnées s'affichent en orange.
Changer les rôles et l'accès :
-
Faites défiler vers le bas jusqu'à la section Rôles et accès.
La première ligne présente les options d'accès au programme principal, et chaque ligne suivante présente les options d'une étape du programme. Les étapes du programme accompagnées d'une icône d'avertissement (point d'exclamation) contiennent des options d'accès différentes de celles du programme principal, ce qui signifie qu'elles sont accessibles à une combinaison d'utilisateurs différente.
-
Cliquez sur l'une des lignes et la boîte de dialogue Partage s'affichera.
-
Modifiez les options d'accès en conséquence. Voir la documentation sur le dialogue de partage pour plus de détails.
-
Cliquez sur le bouton Appliquer.
-
Répétez le processus pour chaque programme/étape du programme. Vous pouvez également copier toutes les options d'accès du programme principal dans vos programmes subordonnés:
-
Sélectionnez les étapes du programme pour lesquelles vous souhaitez disposer d'options d'accès similaires à celles du programme principal en cochant les cases situées à droite des étapes du programme. Vous pouvez également choisir de Sélectionner toutes les étapes du programme, Désélectionner toutes les étapes du programme ou Sélectionner des étapes similaires, en termes d'options d'accès, à celles du programme principal. Les étapes similaires sont cochées par défaut.
-
Cliquez sur Appliquer aux étapes sélectionnées.
-
Créer des notifications de programme¶
Vous pouvez créer des notifications de programme pour les programmes avec enregistrement et leurs étapes. Les notifications sont envoyées soit par le système de messagerie interne DHIS2, soit par e-mail, soit par (SMS). Vous pouvez utiliser les notifications de programme pour, par exemple, envoyer un rappel automatique à une entité suivie 10 jours avant un rendez-vous prévu. Vous utilisez les attributs de l'entité suivie du programme (par exemple le prénom) et les paramètres du programme (par exemple la date d'inscription) pour créer un modèle de notification.
-
Ouvrez l'application Maintenance et cliquez sur Programme puis notifications.
Une liste des notifications de programme existantes pour le programme sélectionné s'ouvre. Si le programme n'a pas de notifications de programme, la liste est vide.
-
Cliquez sur le bouton ajouter et sélectionnez Notification du programme.

-
Entrez un Nom.
-
Créer le Modèle d'objet.
Double-cliquez sur les paramètres dans le champ Paramètres pour les ajouter à votre objet.
Note
The subject is not included in text messages.
-
Créer le Modèle de message.
Double-cliquez sur les noms des paramètres dans le champ Modèle de variables pour les ajouter à votre message.
Cher A{w75KJ2mc4zz}, Vous êtes maintenant inscrit au V{programme_nom}.
-
Dans le champ Quand l'envoyer, sélectionnez ce qui doit déclencher la notification.
Déclencheur Description Remarque Inscription au programme La notification de programme est envoyée lorsque le IES s'inscrit au programme. - Fin du programme La notification de programme est envoyée lorsque le programme de l'IES est terminé - Jours programmés (date de l'incident) La notification du programme est envoyée XX jours avant ou après la date de l'incident Vous devez saisir le nombre de jours avant ou après la date programmée à laquelle la notification sera envoyée. Jours programmés (date d'inscription) La notification du programme est envoyée XX jours avant ou après la date d'inscription Vous devez saisir le nombre de jours avant ou après la date programmée à laquelle la notification sera envoyée. Règle de programme La notification sera déclenchée à la suite de l'exécution d'une règle de programme. La règle de programme avec ProgramRuleActionType.SENDMESSAGE doit être en place pour que ce déclenchement aboutisse. -
Dans le champ À qui l'envoyer, sélectionnez la personne qui doit recevoir la notification du programme.
Type de destinataire Description Remarque Instance d'entité suivie Reçoit des notifications de programme par courrier électronique ou par message texte. Pour recevoir une notification de programme, le destinataire doit disposer d'une adresse e-mail ou d'un attribut de numéro de téléphone. Contact de l'unité d'organisation Reçoit les notifications du programme par courrier électronique ou par message texte. Pour recevoir une notification de programme, l'unité d'organisation destinataire doit avoir une personne de contact enregistrée avec une adresse électronique et un numéro de téléphone. Utilisateurs au sein de l'unité d'organisation : Tous les utilisateurs enregistrés dans l'unité d'organisation sélectionnée reçoivent les notifications du programme via le système de messagerie interne DHIS2. - Groupe d'utilisateurs Tous les membres du groupe d'utilisateurs sélectionné reçoivent les notifications du programme via le système de messagerie interne DHIS2 - Limiter à la Hiérarchie Envoyer la notification uniquement aux utilisateurs qui appartiennent à l'une des unités d'organisation de la hiérarchie. Cette option n'est disponible que lorsque le Groupe Utilisateur est sélectionné comme destinataire. Unité d'organisation mère uniquement Envoyer la notification uniquement aux utilisateurs qui appartiennent à l'unité d'organisation mère. Cette option n'est disponible que lorsque le Groupe Utilisateur est sélectionné comme destinataire. Attribut du programme TrackedEntityAttribute peut également être sélectionné comme destinataire. Ce paramètre ne sera effectif que si le type de valeur de TrackedEntityAttribute est NUMERO DE_TÉLÉPHONE / ADDRESSE ÉLECTRONIQUE. -
Cliquez sur Sauvegarder.
Créer une notification d'étape de programme¶

-
Ouvrez l'application Maintenance et cliquez sur Programme puis notifications.
Une liste des notifications d'étapes de programme existantes pour l'étape de programme sélectionnée s'ouvre. Si l'étape de programme n'a pas de notifications d'étape de programme, la liste est vide.
-
Cliquez sur le bouton d'ajout et sélectionnez**Notification de l'étape du programme**.
-
Cliquez sur AJOUTER.
-
Entrez un Nom.
-
Créer le Modèle d'objet.
Double-cliquez sur les noms des paramètres dans le champ Modèle de variables pour les ajouter à votre objet.
Note
The subject is not included in text messages.
-
Créer le Modèle de message.
Double-cliquez sur les noms des paramètres dans le champ Modèle de variables pour les ajouter à votre message.
Cher A{w75KJ2mc4zz}, veuillez vous présenter au rendez-vous le V{due_date}.
-
Dans le champ Quand l'envoyer, sélectionnez ce qui doit déclencher la notification.
Déclencheur Description Remarque Fin de l'étape du programme La notification de l'étape du programme est envoyée lorsque l'étape du programme est terminée. - Jours programmés (date d'échéance) La notification d'étape de programme est envoyée XX jours avant ou après la date d'échéance Vous devez saisir le nombre de jours avant ou après la date programmée à laquelle la notification sera envoyée. Règle de programme La notification sera déclenchée à la suite de l'exécution d'une règle de programme. La règle de programme avec ProgramRuleActionType.SENDMESSAGE doit être en place pour que ce déclenchement aboutisse. -
Permettre l'envoi de notifications à plusieurs reprises
Cet indicateur peut être utilisé si la notification doit être envoyée plusieurs fois. Par exemple, dans le cas d'une étape de programme répétitive, la même notification sera envoyée autant de fois que l'étape se répète.
-
-
Dans le champ Destinataires, sélectionnez qui doit recevoir la notification de l'étape du programme. Vous pouvez sélectionner :
Type de destinataire Description Remarque L'instance d'entité suivie Reçoit les notifications de programme par courrier électronique ou par message texte. Pour recevoir une notification d'étape de programme, le destinataire doit disposer d'une adresse e-mail ou d'un attribut de numéro de téléphone. Contact de l'unité d'organisation Reçoit les notifications de programme par courrier électronique ou message texte. Pour recevoir une notification d'étape de programme, l'unité d'organisation destinataire doit avoir une personne de contact enregistrée avec une adresse électronique et un numéro de téléphone.
Le système sélectionne la même unité d'organisation que celle où l'événement a eu lieu.Utilisateurs au sein de l'unité d'organisation : Tous les utilisateurs enregistrés dans l'unité d'organisation sélectionnée reçoivent les notifications du programme via le système de messagerie interne DHIS2. - Tous les membres du groupe d'utilisateurs sélectionné reçoivent les notifications du programme via le système de messagerie interne DHIS2. - Limiter à la hiérarchie Envoyer la notification uniquement aux utilisateurs qui appartiennent à l'une des unités d'organisation de la hiérarchie. - Unité d'organisation mère uniquement Envoyer la notification uniquement aux utilisateurs qui appartiennent à l'unité d'organisation mère. - L'élément de données associé à l'étape du programme peut être sélectionné comme destinataire. L'élément de données ne sera valide que si l'élément de données a le type de valeur NUMERO DE_TÉLÉPHONE / ADDRESSE ÉLECTRONIQUE. Attribut d'entité suivie L'attribut d'entité suivie associé au ProgramInstance/Enrollment peut être sélectionné comme destinataire. Cet attribut ne sera valide que s'il a le type de valeur NUMERO DE_TÉLÉPHONE / ADRESSE ÉLECTRONIQUE. Web Hook Les Web Hooks sont des messages HTTP automatisés envoyés à une URL externe configurée dans le champ URL du Web Hook. Les variables du modèle de notification sont envoyées sous forme de paires clé-valeur dans la requête HTTP. - -
Cliquez sur Sauvegarder.
Informations de référence : Paramètres de notification du programme¶
Tableau : Paramètres de notification de programme à utiliser dans les notifications de programme
| Type de notification | Nom de la variable | Code de la variable |
|---|---|---|
| Programme | Date actuelle | V{date_actuelle} |
| Nombre de jours écoulés à compter de la date d'inscription | V{jours_depuis_la date_d'inscription} | |
| Date d’inscription | V{date_d'inscription} | |
| Date de l’incident | V{date_de l'incident} | |
| Nom de l'unité d’organisation | V{nom_de l'unité_d'organisation} | |
| Nom du programme | V{nom_du programme} | |
| Étape du programme | Date actuelle | V{date_actuelle} |
| Nombre de jours écoulés à compter de la date d'échéance | V{jours_depuis_la date_d'échéance} | |
| Nombre de jours restant avant la date d'échéance | V{jours_jusqu'à_la date_d'échéance} | |
| Date d’échéance | V{date_d'échéance} | |
| Nom de l'unité d’organisation | V{nom_de l'unité_d'organisation} | |
| Nom du programme | V{nom_du programme} | |
| Le nom de l'étape du programme | V{nom de_l'étape du_programme} | |
| Unité d'organisation d'événements | V{identifiant_d'événement_de l'unité_d'organisation} | |
| Unité d'organisation chargée de l'inscription | V{identifiant_d'inscription_de l'unité_d'organisation} | |
| Identifiant de l'étape du programme | V{identifiant de_l'étape_du programme} | |
| Identifiant du programme | V{identifiant du_programme} | |
| Identifiant d'instance de programme/identifiant d'inscription | V{identifiant_d'inscription} | |
| Identifiant d'entité suivie | V{identifiant_d'entité_suivie} | |
| Date d'événement/d'exécution | V{date_d'événement} |
Configurer les indicateurs du programme¶
À propos des indicateurs du programme¶
Les indicateurs de programme sont des expressions basées sur les éléments de données et les attributs des entités suivies qui peuvent être utilisées pour calculer des valeurs à partir d'une formule. Les indicateurs de programme se composent d'un type d'agrégation, d'un type d'analyse, d'une expression et d'un filtre.
Les indicateurs de programme sont évalués sur la base du type d'agrégation, de l'expression et du filtre attribués. L'ordre d'évaluation est le suivant :
-
Le filtre filtrera les événements qui font partie de la routine d'évaluation/agrégation.
-
La expression sera évaluée par événement.
-
Toutes les valeurs d'expression évaluées seront agrégées selon le type d'agrégation de l'indicateur de programme.
Tableau : Composantes des indicateurs du programme
| Composante de la règle du programme | Description |
|---|---|
| Type d'agrégation | Le type d'agrégation détermine comment l'indicateur de programme sera agrégé. Les types d'agrégation suivants sont disponibles : * Moyenne * Moyenne (nombre) * Moyenne (nombre, désagrégation) * Moyenne (somme dans la hiérarchie des unités d'organisation) * Moyenne (somme des nombres) * Moyenne (somme des nombres, désagrégation) * Moyenne (Oui/Non) * Compte * Personnalisé Le type d'agrégation "personnalisé" vous permet de spécifier le type d'agrégation dans l'expression. Tous les autres types d'agrégation sont appliqués à l'ensemble de l'expression. L'utilisation du type d'agrégation "personnalisé" peut conduire à une exception à l'ordre d'évaluation décrit ci-dessus, où des parties individuelles de l'expression peuvent être évaluées et agrégées, par opposition à l'expression entière qui est évaluée avant l'agrégation. * Défaut * Max * Min * Aucun * Écart-type * Somme * Variance |
| Type d'analyse | Les types de données analytiques disponibles sont événement et inscription. Le type de données analytiques définit si l'indicateur de programme est calculé sur la base d'événements ou d'inscriptions au programme. Cela a un impact sur le type de calculs qui peuvent être effectués. * Les événements impliquent une source de données où chaque événement existe en tant que ligne indépendante. Cela permet d'effectuer des agrégations telles que des comptages et des sommes. * Les inscriptions impliquent une source de données où tous les événements d'une seule inscription sont combinés sur la même ligne. Cela permet d'effectuer des calculs qui peuvent permettre de comparer des données d'événements provenant de différentes étapes d'un programme au sein d'une inscription à ce programme. |
| Champ de l'unité d'organisation | Détermine l'unité d'organisation affectée aux valeurs de l'indicateur de programme. Pour les programmes d'événements (sans inscription), les options sont les suivantes * Unité d'organisation de l'événement (par défaut) : où l'événement a eu lieu * Tout élément de données de type Unité d'organisation (le cas échéant) assigné au programme Pour les programmes Tracker (avec inscription) et le type analytique Enrôlement, les options sont les suivantes : * Unité d'organisation d'inscription : où l'instance d'entité suivie a été créée * Unité d'organisation d'inscription (par défaut) : où l'instance d'entité suivie a été inscrite dans ce programme * Unité d'organisation du propriétaire au début : où l'instance d'entité suivie était une propriété au début de la période de déclaration * Unité d'organisation du propriétaire à la fin : où l'instance d'entité suivie était une propriété à la fin de la période de déclaration Pour les programmes de suivi (avec inscription) et le type analytique Evénement, les options sont : * Unité d'organisation de l'événement (par défaut) : où l'événement a eu lieu * tout élément de données de type Unité d'organisation (le cas échéant) affecté au programme * Unité d'organisation d'inscription : où l'instance d'entité suivie a été créée * Unité d'organisation d'enrôlement : où l'instance d'entité suivie a été enrôlée dans ce programme * Propriétaire au début de l'unité d'organisation : où l'instance d'entité suivie était une propriété au début de la période de rapport * Propriétaire à la fin de l'unité d'organisation : où l'instance d'entité suivie était une propriété à la fin de la période de rapport |
| Limites de la période analytique | Définit les limites du calcul de l'indicateur de programme. Les limites déterminent quels événements ou inscriptions sont inclus dans les agrégations, toujours par rapport au début et à la fin de la période de déclaration agrégée. Lors de la création de l'indicateur de programme, les limites par défaut seront présélectionnées en fonction du type de données analytiques. * Pour les données analytiques de type événement, les limites par défaut seront configurées pour encapsuler tous les événements dont la date est postérieure au début de la période de déclaration et antérieure à la fin de la période de déclaration. * Pour le type de données analytiques inscription, les limites par défaut engloberont toutes les inscriptions dont la date est postérieure à la date de début de la période de déclaration et antérieure à la date de fin de la période de déclaration. En outre, l'indicateur de programme d'inscription par défaut évalue l'événement le plus récent pour toutes les étapes du programme, quelle que soit la date. Il est possible de modifier les limites supérieure et inférieure afin d'inclure une période plus longue ou plus courte par rapport à la période de déclaration, ou de supprimer l'une des limites - ce qui revient à renvoyer toutes les données avant ou après une certaine période. Il est également possible d'ajouter des contraintes supplémentaires, par exemple pour qu'un indicateur de programme d'inscription n'inclue que les données d'événements jusqu'à un moment donné. * Cible des limites : Peut être date d'incident, date d'événement, date d'inscription ou personnalisé. Désigne ce qui est soumis aux contraintes de la limite. personnalisé est utilisé pour les limites qui ciblent soit un élément de données de type date, soit un attribut d'entité suivi, soit la présence d'un événement dans une étape du programme. Cette opération s'effectue à l'aide d'une expression personnalisée dans le formulaire : - Élément de données de type date : #{programStageUid.dataElementUid}. #{A03MvHHogjR.a3kGcGDCuk6} - Attribut d'entité suivi de type date : #{attributeUid}. A{GPkGfbmArby} - Présence d'un événement dans une étape spécifique du programme : PS_EVENTDATE:programStageUid. PS_EVENTDATE:A03MvHHogjR Remarque Cette cible de délimitation ne s'applique qu'au type analytique Inscription * Type de délimitation de la période analytique : Définit si la limite est une limite de fin - commençant par "avant...", ou une limite de début - "après...". Définit également si la limite renvoie à la fin de la période de déclaration agrégée ou au début de la période de déclaration agrégée. * Décalage de la période par montant : Dans certains cas, par exemple les cohortes analytiques, la limite doit être décalée par rapport à la période de déclaration agrégée lors de l'exécution de tableaux croisés dynamiques et de rapports. La période de décalage par montant est utilisée pour déplacer la limite actuelle vers l'arrière (négatif) ou vers l'avant (positif) dans le temps. Le montant et le type de période déterminent conjointement l'ampleur du décalage. Par exemple, lors de la création d'un simple indicateur de programme de cohorte d'inscription pour une cohorte d'un an, il peut suffire de compenser chaque limite de l'indicateur de programme par "-1" et "Années" * Type de période : Voir ci-dessus. Il peut s'agir de n'importe quelle période, par exemple hebdomadaire ou trimestrielle. |
| Expression | L'expression définit le mode de calcul de l'indicateur. L'expression peut contenir des références pour diverses entités qui seront remplacées par les valeurs correspondantes lors du calcul de l'indicateur : * Éléments de données : La valeur de l'élément de données pour la période et l'unité d'organisation pour lesquelles le calcul est effectué sera substituée par la valeur de l'élément de données. Se réfère à la fois à l'étape du programme et à l'élément de données. * Attributs : La valeur de l'attribut de la personne / de l'entité suivie pour laquelle le calcul est effectué sera substituée à la valeur de l'attribut. * Variables : Seront remplacées par des valeurs spéciales liées au programme, y compris la date de l'incident et la date d'inscription de la personne, la date actuelle et le nombre de valeurs dans l'expression pour la période de temps et l'unité d'organisation pour lesquelles le calcul est effectué. * Constantes : La valeur de la constante sera substituée à celle de l'expression. L'expression est une expression mathématique et peut également contenir des opérateurs. Pour les programmes à événement unique et les programmes tracker avec le type analytique événement, l'expression sera évaluée par événement, puis agrégée en fonction de son type d'agrégation. Pour les programmes tracker avec le type analytique inscription, l'expression sera évaluée par inscription, puis agrégée en fonction de son type d'agrégation. |
| Filtre | Le filtre est appliqué aux événements et filtre la source de données utilisée pour le calcul de l'indicateur. En d'autres termes, le filtre est appliqué à l'ensemble des événements avant que l'expression de l'indicateur ne soit évaluée. Le filtre doit être évalué par vrai ou faux. Le filtre est appliqué à chaque événement individuel. Si la valeur du filtre est vraie, l'événement est inclus dans l'évaluation de l'expression, sinon il est ignoré. Le filtre peut, de la même manière que les expressions, contenir des références à des éléments de données, des attributs et des constantes. Le filtre de l'indicateur de programme peut en outre utiliser des opérateurs logiques. Ces opérateurs peuvent être utilisés pour former des expressions logiques dont l'évaluation finale est soit vraie, soit fausse. Par exemple, vous pouvez affirmer que plusieurs éléments de données doivent avoir une valeur spécifique, ou que des attributs spécifiques doivent avoir des valeurs numériques inférieures ou supérieures à une constante. |
Dans l'application Maintenance, vous pouvez gérer les objets d'indicateurs de programme suivants :
| Type d'objet | Fonctions disponibles |
|---|---|
| Indicateur de programme | Créer, modifier, cloner, partager, supprimer, afficher les détails et traduire |
| Groupe d'indicateurs du programme | Créer, modifier, cloner, partager, supprimer, afficher les détails et traduire |
Créer ou modifier un indicateur de programme¶
N.B.
Un indicateur de programme appartient à un seul programme.
-
Ouvrez l'application Maintenance et cliquez sur Indicateur > Indicateur de programme.
-
Cliquez sur le bouton Ajouter.
-
Sélectionnez un Programme et entrez :
-
Nom.
-
le nom court
-
Code
-
Couleur
-
Icône
-
Description
- Sélectionnez le nombre de Décimales dans la production de données.
-
-
Sélectionnez un Type d'agrégation.
-
Sélectionnez un si vous voulez Afficher dans le formulaire.
-
Attribuez une ou plusieurs Légende.
-
(Facultatif) Entrez une Combinaison d'options de catégorie pour l'exportation de données agrégées.
-
(Facultatif) Entrez une Combinaison d'options d'attributs pour l'exportation de données agrégées.
-
Créer l'expression.
-
Cliquez sur Modifier l'expression.
-
Créez l'expression à partir des opérateurs mathématiques et des attributs, variables et constantes énumérés à droite.
-
-
Créer le filtre.
-
Cliquez sur Modifier le filtre.
-
Créez l'expression à partir des opérateurs mathématiques et des attributs, variables et constantes énumérés à droite.
-
-
Cliquez sur Sauvegarder.
Créer ou modifier un groupe d'indicateurs de programme¶
-
Ouvrez l'application Maintenance et cliquez sur Indicateur > Indicateur Groupe d’indicateurs.
-
Cliquez sur le bouton Ajouter.
-
Entrez Nom et Code.
-
Dans la liste des indicateurs de programme disponibles, double-cliquez sur les indicateurs de programme que vous souhaitez affecter à votre groupe.
-
Cliquez sur Sauvegarder.
Informations de référence : Exemples d'expressions et de filtres par type de valeur¶
Le tableau ci-dessous présente des exemples de comment d'écrire des expressions et des filtres pour différents types d'éléments de données et de valeurs d'attribut :
Tableau: Exemples d'expressions et de filtres par type de valeur
| Types de valeur | Exemple de syntaxe |
|---|---|
| Entier Entier négatif Entier positif ou nul Entier positif Nombre Pourcentage | Les champs numériques peuvent être utilisés pour l'agrégation en tant qu'expression ou dans les filtres : #{mCXR7u4kNBW.K0A4BauXJDl} >= 3 |
| Oui/Non Oui seulement | Champs booléens. Oui est traduit en valeur numérique 1, Non en valeur numérique 0. Peut être utilisé pour l'agrégation en tant qu'expression, ou dans les filtres : #{mCXR7u4kNBW.Popa3BauXJss} == 1 |
| Texte Long Texte Numéro de téléphone | Champs de texte. Il est possible de vérifier l'égalité dans les filtres : #{mCXR7u4kNBW.L8K4BauIKsl} == 'LiteralValue' |
| Date Âge | Champs de date. Particulièrement utile lorsqu'il est associé à une fonction d2:daysBetween, qui produit un nombre pouvant être agrégé sous forme d'expression ou utilisé dans des filtres :d2:daysBetween(#{mCXR7u4kNBW.JKJKBausssl},V{enrollment_date}) > 100 Il est également possible de vérifier directement son égalité dans les filtres : #{mCXR7u4kNBW.JKJKBausssl} == '2011-10-28' |
Informations de référence : Fonctions, variables et opérateurs à utiliser dans les expressions d'indicateurs de programmes et les filtres¶
Une expression qui comprend à la fois des attributs, des éléments de données et des constantes ressemble à ceci :
(A{GPkGfbmArby} + #{mCXR7u4kNBW.NFkjsNiQ9PH}) * C{bCqvfPR02Im}
Une expression qui utilise le type d'agrégation personnalisé et peut donc utiliser les types d'agrégation en ligne ressemble à ceci :
(sum(#{mCXR7u4kNBW.K0A4BauXJDl} * #{mCXR7u4kNBW.NFkjsNiQ9PH}) / sum(#{mCXR7u4kNBW.NFkjsNiQ9PH})) * 100
Prêtez attention à la façon dont l'opérateur d'agrégation "somme" est utilisé à l'intérieur de l'expression elle-même.
Ajouter des commentaires dans l'expression de l'indicateur de programme ou dans le filtre¶
La syntaxe uniforme est prise en charge pour les commentaires à une ligne et à plusieurs lignes.
d2:hasValue(#{mCXR7u4kNBW.NFkjsNiQ9PH}) /* this is comment */
d2:hasValue(#{mCXR7u4kNBW.NFkjsNiQ9PH}) && /* this is
comment */
d2:daysBetween(V{enrollment_date},PS_EVENTDATE:mCXR7u4kNBW)
Fonctions à utiliser dans une expression ou un filtre d'indicateur de programme¶
L'expression des indicateurs de programme et le filtre prennent en charge une série de fonctions. Ces fonctions peuvent être appliquées à des éléments et des attributs de données :
Tableau: Fonctions à utiliser dans une expression ou un filtre d'indicateur de programme
| Fonction | Arguments | Description |
|---|---|---|
| d2:hasValue | (object) | Donne un résultat positif si l'élément ou l'attribut de données a une valeur. Peut être utilisé dans les filtres pour faire la distinction entre le chiffre 0 et l'absence de valeur, et pour faire la distinction entre un "Non" explicite et l'absence de sélection pour un champ Oui/Non. |
| d2:minutesBetween | (datetime, datetime) | Produit le nombre de minutes entre deux éléments de données/attributs de type "date et heure". Lorsque le premier argument datetime précède le second argument datetime, le nombre sera positif - dans le cas contraire, le nombre sera négatif. Le format statique de datetime est 'yyyy-MM-dd hh:mm'. Chacun des arguments peut être remplacé par PS_EVENTDATE :(programStageUid) pour comparer la date de l'événement le plus récent d'une étape donnée du programme. |
| d2:daysBetween | (date, date) | Génère le nombre de jours entre deux éléments de données/attributs de type date. Lorsque la date du premier argument précède la date du second argument, le nombre sera positif - dans le cas contraire, le nombre sera négatif. Le format statique de la date est "aaaa-MM-jj". Chacun des arguments peut être remplacé par PS_EVENTDATE :(programStageUid) pour comparer la dernière date d'événement d'une étape de programme donnée. |
| d2:weeksBetween | (date, date) | Génère le nombre de semaines complètes entre deux éléments de données/attributs de type date. Lorsque la date du premier argument précède la date du second argument, le nombre sera positif - dans le cas contraire, le nombre sera négatif. Le format statique de la date est "aaaa-MM-jj". Chacun des arguments peut être remplacé par PS_EVENTDATE :(programStageUid) pour comparer la dernière date d'événement d'une étape donnée du programme. |
| d2:monthsBetween | (date, date) | Génère le nombre de mois complets entre deux éléments de données/attributs de type date. Lorsque la date du premier argument précède la date du second argument, le nombre sera positif - dans le cas contraire, le nombre sera négatif. Le format statique de la date est "aaaa-MM-jj". Chacun des arguments peut être remplacé par PS_EVENTDATE :(programStageUid) pour comparer la dernière date d'événement d'une étape donnée du programme. |
| d2:yearsBetween | (date, date) | Génère le nombre d'années complètes entre deux éléments de données/attributs de type date. Lorsque la date du premier argument précède la date du second argument, le nombre sera positif - dans le cas contraire, le nombre sera négatif. Le format statique de la date est "aaaa-MM-jj". Chacun des arguments peut être remplacé par PS_EVENTDATE :(programStageUid) pour comparer la dernière date d'événement d'une étape donnée du programme. |
| d2:condition | (boolean-expr, true-expr, false-expr) | Évalue l'expression booléenne et, si elle est vraie, renvoie la valeur vraie de l'expression, si elle est fausse, renvoie la valeur fausse de l'expression . L'expression conditionnelle doit être citée. Les arguments vrai-expr et fausse-expr doivent suivre les règles de toute expression d'indicateur de programme (y compris les fonctions). |
| d2:zing | (expression) | Affiche zéro si l'expression est négative, et affiche la valeur de l'expression dans le cas contraire. L'expression doit suivre les règles de toute expression d'indicateur de programme ( incluant les fonctions). |
| d2:oizp | (expression) | Affiche un si l'expression est nulle ou positive, et zéro dans le cas contraire. L'expression doit suivre les règles de toute expression d'indicateur de programme ( incluant les fonctions). |
| d2:zpvc | (object, [,object ...]) | Affiche le nombre de valeurs numériques nulles et positives parmi les arguments de l'objet donné. Le nombre d'arguments peut être illimité. |
| d2:relationshipCount | ([relationshipTypeUid]) | Produit le nombre de relations du même type qui sont liées à l'affiliation ou à l'événement. Si aucun type n'est indiqué, tous les types sont comptés. |
| d2:count | (Élément de données) | Utile uniquement pour les indicateurs du programme d'inscription. Compte le nombre de valeurs de données qui ont été collectées pour l'étape du programme et l'élément de données concernés au cours de l'inscription. L'élément de données de l'argument est fourni avec la syntaxe #{programStage.dataElement}. |
| d2:countIfValue | (Élément de données, valeur) | Utile uniquement pour les indicateurs de programme d'inscription. Compte le nombre de valeurs de données qui correspondent à la valeur littérale donnée pour l'étape du programme et l'élément de données indiqués au cours de l'inscription. L'élément de données de l'argument est fourni avec la syntaxe #{programStage.dataElement}. La valeur peut être un texte ou un nombre codé en dur, par exemple " Pas_ d'anémie " si seules les valeurs contenant ce texte doivent être comptées. |
| d2:countIfCondition | (Élément de données, condition) | Utile uniquement pour les indicateurs de programme d'inscription. Compte le nombre de valeurs de données qui correspondent aux critères de condition donnés pour l'étape du programme et l'élément de données indiqués au cours de l'inscription. L'élément de données de l'argument est fourni avec la syntaxe #{programStage.dataElement}. La condition est fournie sous la forme d'une expression entre guillemets simples, par exemple "<10" si seules les valeurs inférieures à 10 doivent être comptées. |
| if | (boolean-expr, true-expr, false-expr) | Évalue l'expression booléenne et, si elle est vraie, renvoie la valeur vraie de l'expression, si elle est fausse, renvoie la valeur fausse de l'expression. Cette fonction est identique à la fonction d2:condition, sauf que l'expression booléenne n'est pas citée. |
| is | (expr1 in expression [, expression ...]) | Renvoie vrai si expr1 correspond à l’une des expressions suivantes. Dans le cas contraire, elle renvoie faux. |
| isNull | (object) | Renvoie vrai si la valeur de l'élément est manquante (null), sinon faux. |
| isNotNull | (object) | Renvoie vrai si la valeur de l'élément n'est pas manquante (non nulle), sinon faux. |
| firstNonNull | (object, [,object ...]) | Renvoie la valeur du premier élément non manquant (non nul). Le nombre d'arguments n'a pas de limite. Tout argument peut également être un texte numérique ou de chaîne, qui sera renvoyé si tous les objets précédents ont des valeurs manquantes. |
| greatest | (expression [, expression ...]) | Renvoie la plus grande valeur (la plus élevée) des expressions données. Le nombre d'arguments peut être illimité. Chaque expression doit suivre les règles de toute expression d'indicateur de programme (y compris les fonctions). |
| least | (expression [, expression ...]) | Renvoie la valeur la ( plus faible ) des expressions données. Le nombre d'arguments peut être illimité. Chaque expression doit suivre les règles de toute expression d'indicateur de programme (y compris les fonctions). |
| log | (expression [, base ]) | Renvoie le logarithme naturel (base e) de l'expression numérique. Si un entier est donné comme second argument, renvoie le logarithme en utilisant cette base. |
| log10 | (expression) | Renvoie le logarithme commun (base 10) de l'expression numérique. |
Un filtre utilisant la fonction "hasValue" ressemble à ceci :
d2:hasValue(#{mCXR7u4kNBW.NFkjsNiQ9PH})
Un filtre utilisant la fonction "relationshipCount(relationshipTypeUid)" ressemble à ceci :
d2:relationshipCount('KLkjshoQ90U')
Un filtre utilisant la fonction "is( x in y, z )" ressemble à ceci :
est(#{oahc9ooVema} dans 'Nouveau', 'Rechute')
Une expression utilisant les fonctions "zing" et "oizp" ressemble à ceci :
d2:zing(A{GPkGfbmArby}) + d2:oizp(#{mCXR7u4kNBW.NFkjsNiQ9PH}))
Une expression utilisant la fonction "daysBetween" ressemble à ceci :
d2:daysBetween(#{mCXR7u4kNBW.k8ja2Aif1Ae},'2015-06-01')
Voici une expression qui utilise la fonction "yearBetween" pour comparer le dernier événement de la phase du programme "mCXR7u4kNBW" à la date d'inscription :
d2:daysBetween(V{enrollment_date},PS_EVENTDATE:mCXR7u4kNBW)
Une expression qui utilise la fonction "condition" ressemble à ceci :
d2:condition('#{mCXR7u4kNBW.NFkjsNiQ9PH} > 100',150,50)
Une expression qui utilise la fonction "countIfValue" pour ne compter que le nombre de fois où la valeur 10 a été recueillie ressemble à ceci :
d2:countIfValue(#{mCXR7u4kNBW.NFkjsNiQ9PH}),10)
Une expression utilisant la fonction "zpvc" ressemble à ceci :
d2:zpvc(A{GPkGfbmArby}),#{mCXR7u4kNBW.NFkjsNiQ9PH}),4,-1)
Une expression utilisant les fonctions "if" et "isull" ressemble à ceci :
if(isNull(A{GPkGfbmArby}),10,20)
Une expression utilisant la fonction "firstNonNull" ressemble à ceci :
firstNonNull(A{GPkGfbmArby}),#{mCXR7u4kNBW.NFkjsNiQ9PH},44)
Variable | Description |
|---|---|
date_événement | La date à laquelle l'événement ou le dernier événement de l'inscription a eu lieu. |
date_création | La date à laquelle un événement ou une inscription a été créé dans le système. |
date_échéance | La date à laquelle un événement est prévu. |
date_synchro | La date à laquelle l'événement ou l'inscription a été synchronisé pour la dernière fois avec l'application Android. |
date_incident | La date de l'incidence de l'événement. |
date_inscription | La date à laquelle l'instance de l'entité suivie a été inscrite au programme. |
statut_inscription | Peut être utilisé pour inclure ou exclure les inscriptions à certains statuts. Pour calculer l'amélioration/la détérioration de l'hémoglobine tout au long d'une grossesse, il peut être judicieux de ne tenir compte que des inscriptions complètes. Si les inscriptions non terminées ne sont pas filtrées, elles représenteront des suivis de CPN à moitié terminés, où l'amélioration/détérioration finale n'est pas encore établie. |
date_actuelle | La date actuelle. |
nombre_valeur | Le nombre de valeurs non nulles dans la partie expression de l'événement. |
nombre_valeur_zéro_positives | Le nombre de valeurs numériques positives dans la partie expression de l'événement. |
nombre_événements | Le nombre d'événements (utile en combinaison avec des filtres). |
nombre_inscriptions | Le nombre d'inscriptions (utile en combinaison avec les filtres). Le type d'agrégation pour l'indicateur de programme doit être COMPTER. |
nombre_tei | Le nombre d'instances d'entités suivies (utile en combinaison avec des filtres). Le type d'agrégation pour l'indicateur de programme doit être COMPTER. |
nombre_unités_d'org | Le nombre d'unités d'organisation (utile en combinaison avec les filtres). Le type d'agrégation pour l'indicateur de programme doit être COMPTER. |
nom_étape_du programme | Peut être utilisé dans les filtres pour inclure seulement certaines étapes de programme dans un filtre pour les programmes de suivi. Utilise le nom de l'étape du programme : |
id_étape_du programme | Peut être utilisé dans les filtres pour inclure seulement certaines étapes de programme dans un filtre pour les programmes de suivi. Utilise l'identifiant unique de l'étape du programme : |
début_période_d'analyse | Peut être utilisé dans des filtres ou des expressions pour comparer une date quelconque à la première date de chaque période de référence. |
fin_période_d'analyse | Peut être utilisé dans des filtres ou des expressions pour comparer une date quelconque à la dernière date incluse dans chaque période de référence. |
greatest(#{mCXR7u4kNBW.k8ja2Aif1Ae},#{mCXR7u4kNBW.NFkjsNiQ9PH},1)
Variables à utiliser dans une expression ou un filtre d'indicateur de programme¶
L'expression et le filtre des indicateurs de programme prennent en charge toute une série de variables :
Tablleau: Variables à utiliser dans une expression ou un filtre d'indicateur de programme
| Variable | Description |
|---|---|
| date_de l'évènement | Date à laquelle l'événement ou le dernier événement de l'inscription a eu lieu. |
| date de_création | La date de création d'un événement ou d'une affiliation dans le système. |
| date_d'échéance | La date à laquelle un événement est prévu. |
| date de_synchronisation | Date de la dernière synchronisation de l'événement ou de l'inscription avec l'application Android. |
| date_de l'incident | la date de l'incidence de l'événement. |
| date_d'inscription | La date à laquelle l'instance de l'entité suivie a été inscrite au programme. |
| statut_d'inscription | Peut être utilisé pour inclure ou exclure les inscriptions dans certains statuts. Lors du calcul de l'amélioration/détérioration de l'hémoglobine tout au long d'une grossesse, il peut être judicieux de ne prendre en compte que les inscriptions terminées. Si les inscriptions non terminées ne sont pas filtrées, elles représenteront des suivis de CPN à moitié terminés, pour lesquels l'amélioration/détérioration finale n'est pas encore établie. |
| date_actuelle | La date du jour. |
| nombre de_valeurs | Le nombre de valeurs non nulles dans la partie expression de l'événement. |
| zero_nombre_de valeur_positive | Le nombre de valeurs numériques positives dans la partie expression de l'événement. |
| nombre_d'évènement | The count of events (useful in combination with filters). Aggregation type for the program indicator must be COUNT. |
| nombre_d'inscription | Le nombre d'inscriptions (utile en combinaison avec des filtres). Le type d'agrégation pour l'indicateur de programme doit être COUNT. |
| nombre_d'ies | Le nombre d'instances d'entités suivies (utile en combinaison avec des filtres). Le type d'agrégation pour l'indicateur de programme doit être COUNT. |
| nombre_d'unité_d'organisation | Le nombre d'unités d'organisation (utile en combinaison avec des filtres). Le type d'agrégation pour l'indicateur de programme doit être COUNT. |
| nom de_l'étape du_programme | Peut être utilisé dans les filtres pour n'inclure que certaines étapes du programme dans un filtre pour les programmes de suivi. Utilise le nom de l'étape du programme :V{nom_de l'étape_du programme} == 'CPN première visite' |
| identifiant de_l'étape_du programme | Peut être utilisé dans les filtres pour ne retenir que certaines étapes du programme dans un filtre pour les programmes tracker. Utilise l'identifiant unique de l'étape du programme :V{program_stage_id} == 'YPSSfbmAtt1' |
| période_analytique_début | Peut être utilisé dans des filtres ou des expressions pour comparer n'importe quelle date à la première date de chaque période de déclaration.d2:daysBetween(#{WZbXY0S00lP.w4ky6EkVahL}, V{analytics_period_start}) |
| Période_analytique_fin | Peut être utilisé dans des filtres ou des expressions pour comparer une date quelconque à la dernière date incluse dans chaque période de déclaration. |
| statut de_l'évènement | Peut être utilisé dans des filtres ou des expressions pour comparer l'état d'un événement. V{event_status} == " TERMINÉ " |
| date_d'achèvement | Contient la date de fin de l'événement. Si l'événement n'est pas encore terminé, "date_de fin" ne contient rien. |
Un filtre utilisant la variable "Fin de la période d'analyse" pour n'inclure que les femmes ayant une DM qui surviendrait au premier trimestre :
d2:daysBetween(#{WZbXY0S00lP.w4ky6EkVahL}, V{analytics_period_end}) <= 84
Une expression utilisant la variable "value count" ressemble à ceci :
(#{A03MvHHogjR.a3kGcGDCuk6} + #{A03MvHHogjR.wQLfBvPrXqq}) / V{value_count}
Une expression qui utilise les variables "date_événement" et "date_incident" ressemble à ceci :
d2:daysBetween(V{incident_date},V{event_date})
Opérateurs à utiliser dans un filtre d'indicateurs de programme¶
Tableau: Opérateurs à utiliser dans un filtre d'indicateurs de programme
| Opérateur | Description |
|---|---|
| et | Logique ET |
| ou | Logique OU |
| == | Egal à |
| != | Pas égal à |
| < | Inférieur à |
| <= | inférieur ou égal à |
| > | Supérieur à |
| >= | Supérieur ou égal à |
Ces opérateurs peuvent être utilisés pour constituer des expressions logiques qui, en fin de compte, évaluent à vrai ou à faux. Vous pouvez par exemple affirmer que plusieurs éléments de données doivent avoir une valeur spécifique, ou que des attributs spécifiques doivent avoir des valeurs numériques inférieures ou supérieures à une constante.
Un filtre qui utilise à la fois des attributs et des éléments de données ressemble à ceci :
A{cejWyOfXge6} == 'Female' and #{A03MvHHogjR.a3kGcGDCuk6} <= 2
Astuce
DHIS2 utilise la bibliothèque JEXL pour l'évaluation des expressions utilisant une syntaxe supplémentaire hormis ce qui est proposé dans cette documentation. Voir la référence sur la [page d'accueil du projet] (http://commons.apache.org/proper/commons-jexl/reference/syntax.html) pour savoir comment créer des expressions plus sophistiquées
Setting up new Program disaggregation Mappings¶
The Concept¶
In DHIS2 v42 there is now added the ability to assign Disaggregation Category Combinations to a Program Indicator and create a mapping between the program data and each category option contained in the combination. This creates a relationship between the tracker and aggregate data models which allows for analysing individual data in the same way and alongside aggregated data.


The Program Indicator Disaggregation mappings, defined at the Program level, provide a connection between the two data models within DHIS2. This ultimately allows a user to create disaggregated views of program data within the Data Visualizer using a single Program Indicator where previously one for each disaggregation was needed.

-
Install or update the new Maintenance app (Preview)
If the your instance does not already have the new version of the maintenance app installed go to the App Management App and search for Maintenance in the App Hub and install the app. If you already have it installed, then you should update the app to the latest version. Updates to this app are continuously released so it is good to make sure that you are using the most recent release.

Note Version 0.63.0 might be superseded by a newer version by the time you read this, update to the latest -
Load the Program Disaggregation section of the Maintenance (Preview) App by selecting Program Disaggregations under the Other section or browsing to yourinstanceurl/apps/maintenance-preview#/programDisaggregations/

Program Disaggregation screen -
Select a Program from the drop down to enter the edit section and add Mappings to, for this example we will use the Inpatient morbidity and mortality program
-
This will load the Program Indicator Mapping and Categories definition screen

Program Indicator Selection -
Select a Program Indicator from the drop down list, in this example we will use BMI
-
Under Disaggregation category combination Select Gender and U5y (you may need to create a new category combination containing the categories Gender and Under 5/5 and above of age if not present)

Loading this category combination will display the Mapping selection drop down for each of the categories defined, as this is the first time these categories have been selected there are no mappings currently available.
-
Under the Disaggregation categories section you should see both of the categories from the combination added as suggestion. Click Add category for both both Gender and U5y

Create the category mappings¶
-
In the text field under each Category enter an expression using the Program Data Elements and Attributes that defines the category. The expression uses the same syntax as the Filter section of the Program Indicator creation screen. It is recommended to open a Program Indicator within the Program you are mapping, use the Filter screen to construct the expression and then copy it into this field. This allows you to use the inbuilt expression validation of the Program Indicator filter builder. Program Indicator functions and Variale operators

This example is linking the value selected in the Gender data element in the Program to the category option. Since the Option set in this case is a text field the expression is set to match the text ‘Female’. The next example for age shows a different way to define the relationship.

To add the mapping for the Under 5 years and 5 years and above, since it is a numerical field you can use the operators
>>=<<===!=to define the relationship
-
When mappings for all the category options click Save and exit
-
Open Data Visualizer, first let’s look at how these data were previously displayed. To do this create a visualisation to show the data of the 5 existing Program indicators with the built in disaggregations shown below.


-
Now remove the 4 Program Indicators with disaggregations specified and leave only the BMI Program Indicator.

-
You can now add Gender and Under 5/5 and above of age as disaggregation categories from the Your Dimensions column for the Program Indicator, click update and see the results.

You can now compare the data from the two separate program indicators and the single program indicator that has been disaggregated.
Transferring Program Indicator data via the Aggregate data exchange app¶
In addition to viewing a disaggregated Program Indicator in the Data Visualiser you can now transfer the Program Data, via the Disaggregated Program indicator, into a Data Element that shares the same Category Combination.

By adding the ID of a Data Element in the Data element for aggregate data export field and then setting up the aggregate data exchange app* to transfer data you can save Program data in the aggregate data model

Configurer les règles du programme¶
À propos des règles du programme¶
Les règles du programme vous permettent de créer et de contrôler le comportement dynamique de l'interface utilisateur dans les applications Saisie Tracker et Saisie dévénements. Lors de la saisie des données, les expressions des règles du programme sont évaluées chaque fois que l'interface utilisateur est affichée, et chaque fois qu'un élément de donnée est modifié. La plupart des types d'actions prennent effet immédiatement lorsque l'utilisateur saisit des valeurs dans les applications Saisie Tracker et Saisie d'événements.
Tableau: Composantes de la règle du programme
| Composante de la règle du programme | Description |
|---|---|
| Action de la règle du programme | Chaque règle de programme contient une ou plusieurs actions. Ce sont les comportements qui sont déclenchés dans l'interface utilisateur lorsque l'expression est vraie. Les actions seront appliquées immédiatement si l'expression est vraie, et seront annulées si l'expression n'est plus vraie. Il existe plusieurs types d'actions et il est possible d'en avoir plusieurs dans une même règle de programme. |
| Expression de la Règle du Programme | Chaque règle de programme comporte une expression unique qui détermine si les actions de la règle de programme doivent être déclenchées, si l'expression est évaluée comme étant vraie. Si l'expression est vraie, la règle de programme est en vigueur et les actions seront exécutées. Si l'expression est fausse, la règle de programme n'est plus en vigueur et les actions ne seront plus appliquées. Il est possible de créer l'expression à l'aide d'opérateurs mathématiques standard, de fonctions personnalisées, de valeurs statiques définies par l'utilisateur et de variables de règles de programme. Les variables de la règle de programme représentent les valeurs des attributs et des éléments de données qui seront évaluées dans le cadre de l'expression. |
| Variable de la Règle du Programme | Les variables de règles de programme vous permettent d'inclure des valeurs de données et d'attributs dans les expressions de règles de programme. En règle générale, vous devrez créer une ou plusieurs variables de règle de programme avant de créer une règle de programme. En effet, les expressions de règles de programme contiennent généralement au moins un élément de données ou une valeur d'attribut pour être significatives. Les variables de règles de programme sont partagées par toutes les règles de votre programme. Lorsque vous créez plusieurs règles de programme pour le même programme, ces règles partageront la même bibliothèque de variables de règles de programme. |
Dans l'application Maintenance, vous gérez les objets de règles de programme suivants :
| Type d'objet | Fonctions disponibles |
|---|---|
| Règle de programme | Créer, modifier, cloner, supprimer, afficher les détails et traduire |
| Variable de la Règle du Programme | Créer, modifier, cloner, partager, supprimer, afficher les détails et traduire |
Déroulement¶
-
Dans l'application Maintenance, créez la ou les variable(s) de règle du programme si nécessaire.
-
Dans l'application Maintenance, créez la règle du programme :
-
Entrer les détails des règles de programme.
-
Créez l'expression de la règle du programme.
-
Définissez les actions de la règle du programme.
-
-
Dans les applications Saisie Tracker ou Saisie d'événement, vérifiez que la règle du programme fonctionne comme prévu.
Créer ou modifier une variable de règle de programme¶
-
Ouvrez l'application Maintenance et cliquez sur Programme > Variable de la règle du programme.
-
Cliquez sur le bouton Ajouter.
-
Sélectionnez un Programme et entrez un Nom.
Veuillez noter que le nom du programme ne peut contenir aucun des mots-clés exclus suivants : -
and-or-not -
Sélectionnez si vous voulez Utiliser le code pour l'ensemble des options.
Cette option n'est effective que lorsque l'élément de données ou l'attribut de l'entité suivie est connecté à un ensemble d'options. Si vous ne sélectionnez pas cette option, la variable de la règle de programme sera remplie avec le nom de l'ensemble d'options. Si vous sélectionnez cette option, la variable de règle de programme sera remplie avec le code de l'ensemble d'options.
-
Sélectionnez un Type de source et saisissez les informations requises.
Selon le type de source, vous aurez à sélectionner, par exemple, une étape du programme, un élément de données ou un attribut de l'entité suivie.
Les types de source déterminent comment saisir une valeur dans la variable de règle de programme.
Source type Description Data element from the newest event for a program stage This source type works the same way as Data element from the newest event in the current program, except that it only evaluates values from one program stage.
This source type can be useful in program rules where the same data element is used in several program stages, and a rule needs to evaluate the newest data value from within one specific stage.
In order to know what event is the newest, the report date (event date) is used. If you have many events with the same report date, the system choose the one with the latest createdAt property of the event.Data element from the newest event in the current program This source type is used when a program rule variable needs to reflect the newest known value of a data element, regardless of what event the user currently has open.
This source type is populated slightly differently in Tracker Capture and Event Capture apps:
Tracker Capture: the program rule variable will be populated with the newest data value collected for the given data element within the enrollment.
Event Capture: the program rule variable will be populated with the current events data.
NB Future dates are "newer" than current or past dates.
In order to know what event is the newest, the report date (event date) is used. If you have many events with the same report date, the system choose the one with the latest createdAt property of the event.Data element in current event Program rule variables with this source type will contain the data value from the same event that the user currently has open.
This is the most commonly used source type, especially for skip logic (hide actions) and warning/error rules.Data element from previous event Program rule variables with this source type will contain the value from a specified data element from a previous event. Only older events is evaluated, not including the event that the user currently has open.
This source type is commonly used when a data element only should be collected once during an enrollment, and should be hidden in subsequent events.
Another use case is making rules for validating input where there is an expected progression from one event to the next - a rule can evaluate whether the previous value is higher/lower and give a warning if an unexpected value is entered.Calculated value Program rule variable with this source type is not connected directly to any form data - but will be populated as a result of some other program rules ASSIGN action.
This variable will be used for making preliminary calculations, having a ASSIGN program rule action and assigning a value, this value can be used by other program rules - potentially making the expressions simpler and more maintanable.
These variables will not be persisted and will stay in memory only during the execution of the set of program rules. Any program rule that assigns a data value to a preliminary calculated value would normally also have a priority assigned - to make sure that the preliminary caculation is done before the rule that consumes the calculated value.Tracked entity attribute Populates the program rule variable with a specified tracked entity attribute for the current enrollment.
Use this is the source type to create program rules that evaluate data values entered during registration.
This source type is also useful when you create program rules that compare data in events to data entered during registration.
This source type is only used for tracker programs (programs with registration). -
Cliquez sur Sauvegarder.
Créer ou modifier une règle de programme¶
N.B.
Une règle de programme appartient à un seul programme.
-
Ouvrez l'application Maintenance et cliquez sur Programme > Règle de programme.
-
Cliquez sur le bouton Ajouter.
-
Saisissez les détails de la règle du programme. Ces champs ne sont pas affichés pour l'utilisateur final, ils sont uniquement destinés à l'administrateur du programme.
-
Programme
-
Règle de déclenchement uniquement pour la phase du programme
Si une étape de programme est sélectionnée, la règle de programme ne s'appliquera qu'à l'étape de programme sélectionnée, au lieu de s'appliquer à toutes les étapes du programme.
-
Nom.
-
Description
-
Priorité
Supposons que votre programme comporte 16 règles. Vous configurez les règles de programme avec les paramètres de priorité suivants :
-
Priorité 1 pour la règle A du programme
-
Priorité 2 pour les règles B - K du programme
-
Pas de priorité pour les règles L - P du programme
Résultat : le système exécute les règles du programme dans l'ordre suivant :
-
Règle A du programme
-
Règles de programme B - K (vous ne pouvez pas savoir ou configurer l'ordre dans lequel le système exécute ces règles de programme)
-
Règles L - P du programme
-
-
-
Cliquez sur Saisir l'expression de la règle de programme et créez l'expression de la règle de programme à l'aide de variables, de fonctions et d'opérateurs.
-
Cliquez sur Définir les actions de la règle du programme et créez les actions exécutées lorsque l'expression est vraie.
-
Cliquez sur le bouton d'ajout, sélectionnez une Action et entrez les informations requises.
Selon le type d'action, vous aurez à effectuer différents types de paramétrages. Pour certains types d'action, vous devez également saisir librement un texte ou créer des expressions.
Action type Required settings Description Assign value Data element to assign value to
Tracked entity attribute to assign value to
Program rule variable to assign value to
Expression to evaluate and assignUsed to help the user calculate and fill out fields in the data entry form. The idea is that the user shouldn’t have to fill in values that the system can calculate, for example BMI.
When a field is assigned a value, the user sees the value but the user can't edit it.
NOTE: To assign a value to a tracked entity attribute, the user needs to open the tracked entity profile widget for the rule to trigger.
Example from Immunization stock card i Zambia: The data element for vaccine stock outgoing balance is calculated based on the data element for incoming stock balance minus the data elements for consumption and wastage.
Advanced use: configure an 'assign value' to do a part of a calculation and then assign the result of the calculation to a program rule variable. This is the purpose with the "Calculated value" program rule variable.Display text Display widget
Static text
Expression to evaluate and display after static textUsed to display information that is not an error or a warning, for example feedback to the user. You can also use this action to display important information, for example the patient's allergies, to the user. Display key/value pair Display widget
Key label
Expression to evaluate and display as valueUsed to display information that is not an error or a warning.
Example: calculate number of weeks and days in a pregnancy and display it in the format the clinician is used to see it in. The calculation is based on previous recorded data.Error on complete Data element to display error next to
Tracked entity attribute to display error next to
Static text
Expression to evaluate and display after static textUsed whenever you've cross-consistencies in the form that must be strictly adhered to. This action prevents the user from continuing until the error is resolved.
This action differs from the regular Show error since the error is not shown until the user tries to actually complete the form.
If you don't select a data element or a tracked entity attribute to display the error next to, make sure you write a comprehensive error message that helps the user to fix the error.Hide field Data element to hide
Tracked entity attribute to hide
Custom message for blanked fieldUsed when you want to hide a field from the user.
Custom message for blanked field allows you to define a custom message displayed to the user in case the program rule hides and blanks out the field after the user typed in or selected a value.
If a hide field action hides a field that contains a value, the field will always removed. If no message is defined, a standard message will be displayed to alert the user.Hide section Program stage section to hide Used when you want to hide a section in a program stage from the user. Prevent adding new events to stage Program stage where users will not be able to add new events Used when you do not want users to add any more events to a program stage. Existing events will not be hidden. Make field mandatory Data element to make mandatory
Tracked entity attribute to make mandatoryUsed when you want to make a data element or tracked entity attribute mandatory so they have to be filled out before the form can be saved. Show error Data element to display error next to
Tracked entity attribute to display error next to
Static text
Expression to evaluate and display after static textUsed whenever there are rules which must strictly be adhered to. The show error action prevents the user from continuing until the error is resolved.
Such a strict validation should only be used when it's certain that the evaluated expression is never true unless the user has made a mistake in data entry.
It's mandatory to define a message that is shown to the user when the expression is true and the action is triggered.
You can select which data element or tracked entity attribute to link the error to. This will help the user to fix the error.
In case several data elements or attributes are involved, select the one that is most likely that the user would need to change.Show warning Data element to display warning next to
Tracked entity attribute to display warning next to
Static text
Expression to evaluate and display after static textUsed to give the user a warning about the entered data, but at the same time to allow the user to save and continue.
You can use warnings to help the user avoid errors in the entered data, while at the same time allow the user to consciously disregard the warnings and save a value that is outside preset expectations.
Static text defines the message shown to the user when the expression is true and the action is triggered.
You can select which data element or tracked entity attribute to link the error to. This will help the user to fix the error.
In case several data elements or attributes are involved, select the one that is most likely that the user would need to change.Warning on complete Data element to display warning next to
Tracked entity attribute to display warning next to
Static text
Expression to evaluate and display after static textUsed to give the user a warning if he/she tries to complete inconsistent data, but at the same time to allow the user to continue. The warning is shown in a dialog when the user completes the form.
Static text defines the message shown to the user when the expression is true and the action is triggered. This field is mandatory.
You can select which data element or tracked entity attribute to link the error to. This will help the user to fix the error.
If you don't select a data element or a tracked entity attribute to display the error next to, make sure you write a comprehensive error message that helps the user to fix the error.Send Message Message template to send Send Message triggers a notification based on provided message template. This action will be taken immediately. The message template will be parsed and variables will be substituted with actual values. Schedule Message Message template to send
Data field which contains expression to evaluate the date which notification should be sent at. If this expression results in any value other than Date, then resultant will be discarded and notification will not get scheduled.Schedule Message will schedule notification at date provided by Expression in the data field. Sample expression is given below
d2:addDays( '2018-04-20', '2' )
Message template will be parsed and variables will be substituted with actual values.Hide option Data element to hide option for
Tracked entity attribute to hide option for
Option that should be hiddenUsed to selectively hide a single option for an option set in a given data element/tracked entity attribute.
When combined with show option group the hide option takes presedence.Hide option group Data element to hide option group for
Tracked entity attribute to hide option group for
Option group that should be hiddenUsed to hide all options in a given option group and data element/tracked entity attribute.
When combined with show option group the hide option group takes precedence.Show option group Data element to show option group for
Tracked entity attribute to show option group for
Option group that should be shownUsed to show only options from a given option group in a given data element/tracked entity attribute. To show an option group implicitly hides all options that is not part of the group(s) that is shown. -
Click Save.
-
(Optional) Repeat above steps to add more actions.
-
-
Cliquez sur Sauvegarder.
Exemple : Règles du programme¶
N.B.
Vous pouvez voir tous les exemples sur le serveur de démo : https://play.dhis2.org/dev/dhis-web-maintenance/#/list/programSection/programRule
Cet exemple montre comment configurer une règle de programme qui calcule le nombre de semaines et de jours d'une grossesse et affiche le résultat dans le format utilisé par le clinicien. Le calcul est basé sur les données enregistrées précédemment.
-

-

-

L'expression complète dans le champ Données :
d2:concatenate(d2:weeksBetween(#{lmp}, V{current_date}), '+', d2:modulus(d2:daysBetween(#{lmp}, V{current_date}), 7))

Cet exemple montre comment configurer une règle de programme pour afficher du texte dans le widget Feedback de l'application Saisie Tracker.

Cet exemple montre comment configurer une règle de programme pour afficher toujours certaines données dans le widget Feedback de l'application Saisie Tracker. Ceci est utile lorsque l'on veut s'assurer que les données vitales, en l'occurence les allergies aux médicaments, sont toujours visibles.


En utilisant une règle de programme du type "Attribuer une valeur", vous pouvez calculer la valeur "Âge gestationnel à la visite" et la saisir dans le formulaire de saisie. Vous configurez la règle du programme pour calculer l'"âge gestationnel à la visite" sur la base de la "Date des dernières règles" ou de la "Date d'échéance estimée de l'échographie".

Informations de référence : Opérateurs et fonctions à utiliser dans l'expression de la règle du programme¶
Conseil
Vous pouvez emboîter des fonctions les unes dans les autres et avec des sous-expressions pour former des conditions plus complexes. Voici un exemple qui génère l'âge gestationnel en semaines, basé sur la date des dernières menstruations :
d2:floor( d2:daysBetween(#{lastMenstrualDate},V{event_date}) / 7 )
Conseil
Le type de source déterminera comment les appels de fonction d2 : évalueront un paramètre (champ source).
Exemple : où #{hemoglobinCurrent} est défini sur le type de source Élément de donnée dans l'événement en cours. L'appel de fonction suivant permet d'évaluer si les données sur l'hémoglobine sont saisies dans l'événement en cours.
d2:hasValue( 'hemoglobinCurrent' )
Exemple : où #{hémoglobine} est défini sur le type de source Élément de donnée provenant du dernier événement du programme en cours. L'appel de fonction suivant
permet d'évaluer s'il existe une valeur pour l'hémoglobine dans un événement quelconque de l'inscription.d2:hasValue( 'hemoglobin' )
Exemple : où #{hemoglobinPrevious} est défini sur le type de source Élément de donnée > de l'événement précédent . L'appel de fonction suivant permet d'évaluer s'il existe une valeur pour l'hémoglobine parmi les événements précédant l'événement en cours.
d2:hasValue( 'hemoglobinPrevious' )
Tableau : Opérateurs possibles à utiliser dans une expression de règle de programme
| Opérateur | Description |
|---|---|
| + | Additionner les nombres |
| - | Soustraire des nombres les uns des autres |
| * | Multiplier deux nombres |
| / | Diviser deux nombres |
| % | Le module de deux nombres |
| && | Logique ET. Vrai uniquement si l'expression à gauche et à droite est vraie. Les côtés gauche et droit peuvent être oui/non, oui uniquement ou une sous-expression entre parenthèses. |
| || | Logique OU. Vrai lorsque l'expression de gauche ou l'expression de droite est vraie. Les parties gauche et droite peuvent être oui/non, oui uniquement ou une sous-expression entre parenthèses. |
| > | Nombre situé à gauche supérieur au nombre situé à droite |
| >= | Nombre situé à gauche supérieur ou égal au nombre situé à droite |
| < | Nombre situé à gauche inférieur au nombre situé à droite |
| <= | Le nombre situé à gauche est inférieur ou égal au nombre situé à droite. |
| == | Le côté gauche est égal au côté droit. Prend en charge les nombres, le texte, oui/non et oui uniquement. |
| != | Le côté gauche n'est pas égal au côté droit. Prend en charge les nombres, le texte, oui/non et oui uniquement. |
| ! | Négation de la valeur suivante. Peut être utilisé pour oui/non, oui uniquement ou pour une sous-expression entre parenthèses. |
| () | La parenthèse est utilisée pour regrouper les sous-expressions. |
Tableau : Fonctions personnalisées à utiliser dans une expression de règle de programme
| Fonction | Arguments | Description |
|---|---|---|
| d2:addDays | (date, nombre) | Produit une date basée sur la date du premier argument, en ajoutant le nombre de jours du deuxième argument. Exemple de calcul de la date d'échéance d'une grossesse en fonction des dernières règles : d2:addDays(#{dernièreDateMenstruelle},'283') |
| d2:limite | (nombre) | Arrondit l'argument d'entrée au nombre entier supérieur le plus proche. Exemple : d2:ceil(#{valeurhémoglobine}) |
| d2:concatenate | (objet, [,objet, objet,...]) | Produit une chaîne concaténée à partir des paramètres d'entrée. Prend en charge tout nombre de paramètres. Elle sera principalement utilisée dans les futurs types d'action, par exemple pour afficher l'âge gestationnel avec d2:concatenate('weeks','+','gestationalageDays'). |
| d2:contains | (text,text, ...) | Recherche une expression pour une ou plusieurs sous-chaînes. Elle renvoie true si l'expression contient toutes les sous-chaînes. Par exemple, les expressions suivantes sont toutes true : contains("abcd", "abcd") ; contains("abcd", "b") ; et contains("abcd", "ab", "bc"). Les comparaisons sont sensibles à la casse. |
| d2:containsItems | (text,text, ...) | Recherche un ou plusieurs éléments dans une expression. L'expression est composée d'éléments séparés par des virgules. containsItems renvoie "true" si chaque élément correspond exactement à un élément de l'expression. Par exemple, containsItems("abcd", "abcd") et containsItems("ab,cd", "ab", "cd") sont true, mais containsItems("abcd", "b") et containsItems("abcd", "ab", "bc") sont false. Les comparaisons sont sensibles à la casse. containsItems peut être utilisé pour des éléments de données à valeurs multiples afin de vérifier si un item est contenu dans les valeurs de l'élément de données. |
| d2:count | (champ source) | Compte le nombre de valeurs saisies pour le champ source dans l'argument. Le paramètre du champ source est le nom de l'un des champs source définis dans le programme - voir l'exemple Exemple d'utilisation où #{previousPregnancyOutcome} est l'un des champs source d'une étape de programme répétable "grossesse précédente" :d2:count('previousPregnancyOutcome') |
| d2:countIfValue | (champ source, texte) | Compte le nombre de valeurs correspondantes saisies pour le champ source dans le premier argument. Seules les occurrences correspondant au deuxième argument sont comptabilisées. Le paramètre champ source est le nom de l'un des champs source définis dans le programme - voir l'exemple. Exemple d'utilisation où #{previousPregnancyOutcome} est l'un des champs source d'une étape de programme répétable "grossesse précédente". La fonction suivante produira le nombre de grossesses précédentes qui se sont terminées par un avortement : d2:countIfValue('previousPregnancyOutcome', 'Abortion') |
| d2:countIfZeroPos | (champ source) | Compte le nombre de valeurs nulles ou positives saisies pour le champ source dans l'argument. Le paramètre champ source est le nom de l'un des champs source définis dans le programme - voir l'exemple. Exemple d'utilisation où #{écarthauteurfondamentale} est l'un des champs source du programme et peut être positif ou négatif. La fonction suivante produira le nombre d'occurrences positives : d2:countIfZeroPos('fundalHeightDiscrepancy') |
| d2:daysBetween | (date, date) | Produit le nombre de jours entre le premier et le deuxième argument. Lorsque la date du premier argument précède la date du second argument, le nombre sera positif - dans le cas contraire, le nombre sera négatif. Le format de la date statique est 'aaaa-MM-jj'. Exemple : calcul de l'âge gestationnel (en jours) d'une femme, sur la base de ses dernières règles et de la date de l'événement en cours : d2:daysBetween(#{dernièreDateMenstruelle},V{date de_l'événement}) |
| d2:extractDataMatrixValue | Obtenir une valeur GS1 basée sur l'identifiant de l'application | Étant donné une valeur de champ formatée selon la norme gs1 data matrix et une clé de chaîne provenant des identificateurs d'application GS1. La fonction recherche et renvoie la valeur liée à la clé fournie. Exemple d'expression : d2:extractDataMatrixValue( 'gtin', A{GS1 Value} ) |
| d2:floor | (nombre) | Arrondit l'argument d'entrée au nombre entier inférieur le plus proche. Exemple avec le nombre de semaines de grossesse d'une femme. Notez que la sous-expression #{âgegestationnel}/7 est évaluée avant que la fonction floor ne soit exécutée : d2:floor(#{âgegestationnel}/7) |
| d2:hasUserRole | (Rôle de l'utilisateur) | Indique vrai si l'utilisateur actuel a ce rôle, autrement, il indique faux Exemple d'expression : d2:hasUserRole('UYXOT4A3ASA') |
| d2:hasValue | (champ source) | Le résultat est vrai si le champ source de l'argument contient une valeur, et faux si aucune valeur n'a été saisie. Exemple d'utilisation, pour savoir si le champ source #{currentPregnancyOutcome} est déjà rempli : d2:hasValue('currentPregnancyOutcome') |
| d2:inOrgUnitGroup | (texte) | Détermine si l'unité d'organisation actuelle fait partie du groupe d'arguments. L'argument peut être défini avec un code d'identification ou un code de groupe d'unités d'organisation. L'unité d'organisation actuelle sera l'unité d'organisation de l'événement lorsque les règles sont déclenchées dans le contexte d'un événement, et l'unité d'organisation d'inscription lorsque les règles sont déclenchées dans le contexte d'un formulaire d'inscription à l'IES. Exemple d'expression : d2:inOrgUnitGroup('HIGH_RISK_FACILITY') |
| d2:lastEventDate | Obtenir la date du dernier événement pour les données saisies | Obtient la date de l'événement au cours duquel l'élément de données fondamental a été saisi dans l'événement précédent d'une étape de programme. |
| d2:left | (texte, nombre de caractères) | Évalue la partie gauche d'un texte, en nombre de caractères à partir du premier caractère. Le texte peut être cité ou évalué à partir d'une variable : d2:left(#{variableAvecTexte}, 3) |
| d2:length | (texte) | Trouver la longueur d'une chaîne . Exemple : d2:length(#{variableWithText}) |
| d2:maxValue | Obtenir la valeur maximale de l'élément fourni | Cette fonction permet d'obtenir la valeur maximale de l'élément de données fourni pour toute la période d'inscription. Exemple d'expression : d2:maxValue( 'tension artérielle' ) |
| d2:minValue | Obtenir la valeur minimale de l'élément fourni | Cette fonction permet d'obtenir la valeur minimale de l'élément de données fourni pour toute la période d'inscription. Exemple d'expression : d2:minValue( 'tension artérielle' ) |
| d2:modulus | (nombre,nombre) | Produit le module en divisant le premier argument par le second. Exemple produisant le nombre de jours de la semaine de grossesse en cours de la femme : d2:modulus(#{JoursDeGestation},7) |
| d2:monthsBetween | (date, date) | Produit le nombre de mois entiers entre le premier et le deuxième argument. Lorsque la date du premier argument précède celle du second, le nombre sera positif - dans le cas contraire, le nombre sera négatif. Le format de la date statique est 'aaaa-MM-jj'. |
| d2:oizp | (nombre) | Évalue l'argument du numéro de type à un si la valeur est zéro ou positive, sinon à zéro. |
| d2:right | (texte, nombre de caractères) | Évalue la partie droite d'un texte, en nombre de caractères à partir du dernier caractère. Le texte peut être cité ou évalué à partir d'une variable : d2:right(#{variableAvecTexte}, 2) |
| d2:round | (nombre [, décimales]) | Arrondit l'argument d'entrée à l'entier le plus proche. Un deuxième argument facultatif peut être fourni pour spécifier le nombre de décimales auquel le nombre doit être arrondi. Exemple : d2:round(1.25, 1) = 1.3 |
| d2:substring | (texte, début-nombre de caractères, fin-nombre de caractères) | Évalue la partie d'une chaîne de caractères spécifiée par les numéros des caractères de début et de fin. Exemple d'expression : d2:substring(#{variableWithText}, 1, 3) Si #{variableWithText} dans l'exemple ci-dessus était 'ABCD', le résultat de l'évaluation serait 'BC' |
| d2:split | (texte, délimiteur, nombre d'éléments) | Diviser le texte par le délimiteur, et garder le nième élément (0 est le premier). Le texte peut être cité ou évalué à partir d'une variable, le délimiteur doit être cité : d2:split(#{variableAvecTexte}, '-', 1) NB : le délimiteur de virgule (,) n'est pas pris en charge. |
| d2:validatePattern | (texte, modèle regex) | Devient vrai si le texte saisi correspond exactement au motif de l'expression régulière fournie. L'expression régulière doit être extraite. Exemple d'expression, déclenchant des actions si un nombre n'est pas sur le motif 9999/99/9 : !d2:validatePattern(A{nrc},'\\d{6}\/\\d{2}\/\\d') Exemple d'expression, déclenchant des actions si l'adresse n'est pas composée de lettres ou d'espaces blancs, puis d'un espace blanc, puis d'un nombre : !d2:validatePattern(A{registrationAddress},'[\\w ]+ \\d+') Exemple, déclenchant des actions si un nom contient des chiffres : !d2:validatePattern(A{name},'[^\\d]*') Exemple d'expression déclenchant des actions si un numéro de téléphone portable contient la séquence illégale 555 : d2:validatePattern(A{mobile} ,'.*555.*') |
| d2:weeksBetween | (date, date) | Produit le nombre de semaines entières entre le premier et le deuxième argument. Lorsque la date du premier argument précède celle du second, le nombre sera positif - dans le cas contraire, le nombre sera négatif. Le format de la date statique est 'aaaa-MM-jj'. |
| d2:yearsBetween | (date, date) | Produit le nombre d'années entre le premier et le deuxième argument. Lorsque la date du premier argument précède la date du second argument, le nombre sera positif - dans le cas contraire, le nombre sera négatif. Le format statique de la date est 'aaaa-MM-jj'. |
| d2:zing | (nombre) | Évalue l'argument d'un numéro de type à zéro si la valeur est négative, sinon à la valeur elle-même. |
| d2:zpvc | (objet, [,objet, objet,...]) | Détermine le nombre de valeurs numériques nulles et positives parmi les arguments de l'objet donné. Peut être doté de tout nombre d'arguments. |
| d2:zScoreWFA | Indicateur Z-Score du poids par rapport à l'âge | Calcule le z-score sur la base des données fournies par l'indicateur de poids pour l'âge défini par l'OMS. e varie entre -3,5 et 3,5 en fonction de la valeur du poids. Exemple d'expression : d2:zScoreWFA( ageInMonths, poids, sexe ) Genre > Le sexe est considéré comme féminin par défaut. L'un des codes suivants peut > être utilisé pour indiquer un homme : " Masculin ", " MASCULIN ", " masculin ", " ma ", " m ", " M ", 0, faux. |
| d2:zScoreHFA | Indicateur Z-Score de la taille par rapport à l'âge | Calcule le z-score à partir des données fournies par l'indicateur de taille pour l'âge de l'OMS. Sa valeur varie entre -3,5 et 3,5 en fonction de la valeur de la taille. Exemple d'expression : d2:zScoreHFA( âgeEnMois, taille, genre ) |
| d2:zScoreWFH | Indicateur Z-Score du poids par rapport à la taille | Calcule le z-score sur la base des données dérivées des indicateurs de l'OMS relatifs au poids par rapport à la longueur et au poids par rapport à la taille. Les données utilisées pour les filles sont disponibles ici et pour les garçons ici. Sa valeur varie entre -3,5 et 3,5 en fonction de la valeur du poids. Exemple d'expression : d2:zScoreWFH( taille, poids, genre ) |
Tableau : Codes de la matrice de données
| AI | Titre des données | Description | Longueur fixée |
|---|---|---|---|
| 00 | SSCC | SSCC ( Code des conteneurs d'expédition en série) | 20 |
| 01 | GTIN | Numéro de l'article du commerce mondial | 16 |
| 02 | SOMMAIRE | GTIN des articles commerciaux contenus dans une unité logistique | 16 |
| 10 | NOMBRE_LOT | Numéro de lot ou de série | Variable |
| 11 | DATE DE_PRODUCTION | Date de production (AAMMJJ) | 8 |
| 12 | DATE_D'ÉCHÉANCE | Date d'échéance (AAMMJJ) | 8 |
| 13 | DATE_D'EMBALLAGE | Date d'emballage (AAMMJJ) | 8 |
| 15 | DATE_DE_PÉREMPTION | Date de péremption (AAMMJJ) | 8 |
| 16 | VENDU_LE | Date de vente (AAMMJJ) | 8 |
| 17 | DATE_D'EXPIRATION | Date d'expiration (AAMMJJ) | 8 |
| 20 | VARIANTE | Variante interne du produit | 4 |
| 21 | NUMÉRO_DE SERIE | Numéro de série | Variable |
| 22 | CPV | Variante du produit de consommation | Variable |
| 235 | TPX | Extension du numéro d'article commercial mondial (GTIN) contrôlée par un tiers et sérialisée (TPX) | Variable |
| 240 | IDENTIFICATION_SUPPLÉMENTAIRE | Identification supplémentaire du produit attribuée par le fabricant | Variable |
| 241 | NUMÉRO_DE RÉFÉRENCE_DU CLIENT | Numéro de référence du client | Variable |
| 242 | FABRIQUÉ SUR COMMANDE_NUMÉRO_DE VARIATION | Fabriqué sur commande Numéro de variation | Variable |
| 243 | PCN | Numéro de la composante de l'emballage | Variable |
| 250 | SÉRIE_SECONDAIRE | Numéro de série secondaire | Variable |
| 251 | RÉFÉRENCE_À_LA BASE | Référence à l'entité de base | Variable |
| 253 | GDTI | Identifiant global de type de document | Variable |
| 254 | COMPOSANTE DE_L'EXTENSION_GLN | Composant de l'extension du GLN | Variable |
| 255 | GCN | Nombre de Bon mondial (GCN) | Variable |
| 30 | NOMBRE_DE VARIABLE | Nombre de variables | Variable |
| 310* | POIDS_NET_KG | Poids net, en kilogrammes (mesure variable, article de commerce | Variable |
| 311* | LONGUEUR_M | Longueur ou première dimension, en mètres (mesure variable, article de commerce) | Variable |
| 312* | LARGEUR_M | Largeur, diamètre ou deuxième dimension, en mètres (mesure variable, article de commerce) | Variable |
| 313* | HAUTEUR_M | Profondeur, épaisseur, hauteur ou troisième dimension, mètres (article commercial à mesure | |
| variable) | Variable | ||
| 314* | SUPERFICIE_M2 | Superficie, en mètres carrés (article commercial à mesure variable) | Variable |
| 315* | VOLUME_NET_L | Volume net, litres ( mesure variable de l'article commercial) | Variable |
| 316* | VOLUME_NET_M3 | Volume net, mètres cubes (mesure variable de l'article commercial) | Variable |
| 320* | POIDS_NET_LB | Poids net, en livres (mesure variable de l'article commercial) | Variable |
| 321* | LONGUEUR_I | Longueur ou première dimension, en pouces (article commercial de mesure variable) | Variable |
| 322* | LONGUEUR_F | Longueur ou première dimension, en pieds (article commercial de mesure variable) | Variable |
| 323* | LONGUEUR_Y | Longueur ou première dimension, yards (article commercial de mesure variable) | Variable |
| 324* | LARGEUR_I | Largeur, diamètre ou deuxième dimension, en pouces (mesure variable de l'article commercial) | Variable |
| 325* | LARGEUR_F | Largeur, diamètre ou deuxième dimension, en pieds (mesure variable de l'article commercial) | Variable |
| 326* | LARGEUR_Y | Largeur, diamètre ou deuxième dimension, yards (mesure variable de l'article commercial) | Variable |
| 327* | HAUTEUR_I | Profondeur, épaisseur, hauteur ou troisième dimension, en pouces (mesure variable de l'article commercial) | Variable |
| 328* | HAUTEUR_F | Profondeur, épaisseur, hauteur ou troisième dimension, pieds (article commercial de mesure variable) | Variable |
| 329* | HAUTEUR_Y | Profondeur, épaisseur, hauteur ou troisième dimension, yards (article commercial à mesure variable) | Variable |
| 330* | POIDS_BRUT_GF | Poids logistique, kilogrammes | Variable |
| 331* | LONGUEUR_M_LOG | Longueur ou première dimension, en mètres | Variable |
| 332* | LARGEUR_M_LOG | Largeur, diamètre ou deuxième dimension, en mètres | Variable |
| 333* | HAUTEUR_M_LOG | Profondeur, épaisseur, hauteur ou troisième dimension, mètres | Variable |
| 334* | SUPERFICIE_M2_LOG | Superficie, mètres carrés | Variable |
| 335* | VOLUME_L_LOG | Volume logistique, litres | Variable |
| 336* | VOLUME_M3_LOG | Volume logistique, mètres cubes | Variable |
| 337* | KG_PAR_M2 | Kilogrammes par mètre carré | Variable |
| 340* | POIDS_BRUT_LB | Poids logistique, livres | Variable |
| 341* | LONGUEUR_I_LOG | Longueur ou première dimension, pouces | Variable |
| 342* | LONGUEUR_F_LOG | Longueur ou première dimension, pieds | Variable |
| 343* | LONGUEUR_Y_LOG | Longueur ou première dimension, yards | Variable |
| 344* | LARGEUR_I_LOG | Largeur, diamètre ou deuxième dimension, en pouces | Variable |
| 345* | LARGEUR_F_LOG | Largeur, diamètre ou deuxième dimension, en pieds | Variable |
| 346* | LARGEUR_Y_LOG | Largeur, diamètre ou deuxième dimension, en mètres | Variable |
| 347* | HAUTEUR_I_LOG | Profondeur, épaisseur, hauteur ou troisième dimension, en pouces | Variable |
| 348* | HAUTEUR_F_LOG | Profondeur, épaisseur, hauteur ou troisième dimension, en pieds | Variable |
| 349* | HAUTEUR_Y_LOG | Profondeur, épaisseur, hauteur ou troisième dimension, en yards | Variable |
| 350* | SUPERFICIE_I2 | Surface, pouces carrés ( article de commerce à mesure variable) | Variable |
| 351* | SUPERFICIE_F2 | Superficie, en pieds carrés ( article de commerce à mesure variable) | Variable |
| 352* | SUPERFICIE_Y2 | Superficie, en mètres carrés (article de commerce à mesure variable) | Variable |
| 353* | SUPERFICIE_I2_LOG | Superficie, en pouces carrés | Variable |
| 354* | SUPERFICIE_F2_LOG | Superficie, en pieds carrés | Variable |
| 355* | SUPERFICIE_Y2_LOG | Superficie, en mètres carrés | Variable |
| 356* | POIDS_NET_T | Poids net, en onces troy ( article commercial à mesure variable) | Variable |
| 357* | VOLUME_NET_OZ | Poids net (ou volume), en onces (mesure variable de l'article commercial) | Variable |
| 360* | VOLUME_NET_Q | Volume net, quarts (mesure variable de l'article commercial) | Variable |
| 361* | VOLUME_NET_G | Volume net, gallons U.S. ( mesure variable de l'article commercial) | Variable |
| 362* | VOLUME_Q_LOGISTIQUE | Volume logistique, en litres | Variable |
| 363* | VOLUME_G_LOGISTIQUE | Volume logistique, en gallons U.S. | Variable |
| 364* | VOLUME_I3 | Volume net, en pouces cubes ( article commercial à mesure variable) | Variable |
| 365* | VOLUME_F3 | Volume net, pieds carrés ( article de commerce à mesure variable) | Variable |
| 366* | VOLUME_Y3 | Volume net, en mètres cubes ( article de commerce à mesure variable) | Variable |
| 367* | VOLUME_I3_LOGISTIQUE | Volume logistique, en pouces cubes | Variable |
| 368* | VOLUME_F3_LOGISTIQUE | Volume logistique, en mètres cubes | Variable |
| 369* | VOLUME_Y3_LOGISTIQUE | Volume logistique, en mètres cubes | Variable |
| 37 | COUNT | Nombre d'articles commerciaux ou de pièces d'articles commerciaux contenus dans une unité logistique | Variable |
| 390* | MONTANT | Montant à payer ou valeur du bon, en monnaie locale | Variable |
| 391* | MONTANT_ISO | Montant applicable payable avec le code ISO de la devise | Variable |
| 392* | PRIX | Montant à payer, zone monétaire unique (article commercial à mesure variable) | Variable |
| 393* | PRIX_ISO | Montant applicable à payer avec le code ISO de la devise ( article commercial à mesure variable) | Variable |
| 394* | PRCNT_OFF | Pourcentage de réduction d'un bon | Variable |
| 395* | PRIX_UOM | Montant à payer par unité de mesure - zone monétaire unique (article commercial à mesure variable) | N4+N6 |
| 400 | NUMERO DE_COMMANDE | Numéro du bon de commande du client | Variable |
| 401 | GINC | Numéro d'identification mondial pour les expéditions (GINC) | Variable |
| 403 | ACHEMINEMENT | Code d'acheminement | Variable |
| 410 | EXPÉDIER_À_LOCALISATION_MONDIALE | Expédier à / Livrer à Numéro de localisation mondial (GLN) | Variable |
| 411 | FACTURER_À_LOCALISATION | Facturer à / facturer à Numéro de localisation mondial (GLN) | Variable |
| 412 | ACHETÉ_À | Acheté à Numéro de localisation mondial (GLN) | Variable |
| 413 | EXPÉDIER_POUR_LOCALISATION | Expédier pour / Livrer pour - Transférer au numéro de localisation mondial (GLN) | Variable |
| 414 | NUMERO_DE LOCALISATION | Identification d'un lieu physique - Numéro de localisation mondial (GLN) | Variable |
| 415 | PAYER_À | Numéro de localisation mondial (GLN) de l'auteur de la facture | Variable |
| 416 | LIEU DE_SERVICE_DE PRODUCTION | Numéro de localisation mondial (GLN) du lieu de production ou de service | Variable |
| 417 | PARTIE | Numéro de localisation mondial de la Partie (GLN) | Variable |
| 420 | EXPÉDIER_À_LA POSTE | Expédier à / Livrer à un code postal au sein d'une même autorité postale | Variable |
| 421 | EXPÉDIER_À_L'ISO_DE LA POSTE | Expédier à / Livrer à code postal avec code ISO du pays | Variable |
| 422 | ORIGINE | Pays d'origine d'un produit commercial | Variable |
| 423 | PAYS_PREMIERE_TRANSFORMATION | Pays de première transformation | Variable |
| 424 | PAYS_TRANSFORMATION | Pays de transformation | Variable |
| 425 | PAYS_DEMONTAGE | Pays de démontage | Variable |
| 426 | PAYS_ENSEMBLE DE_LA PRODUCTION | Pays couvrant l'ensemble de la chaîne de production | Variable |
| 427 | SUBDIVISION_ORIGINE | Subdivision du pays d'origine | Variable |
| 4300 | EXPÉDIER_À_ENTREPRISE | Expédier à / Livrer à - Nom de l'entreprise | Variable |
| 4301 | EXPÉDIER_À_NOM | Expédier à / Livrer à - contact | Variable |
| 4302 | EXPÉDIER_À_ADRESSE1 | Expédier à / Livrer à - ligne d'adresse 1 | Variable |
| 4303 | EXPÉDIER_À_ADRESSE2 | Expédier à / Livrer à - ligne d'adresse 2 | Variable |
| 4304 | EXPÉDIER_À_BANLIEUE | Expédier à / Livrer à - banlieue | Variable |
| 4305 | EXPÉDIER_À_LOCALITÉ | Expédier à / Livrer à - localité | Variable |
| 4306 | EXPÉDIER_À_RÉGION | Expédier à / Livrer à - région | Variable |
| 4307 | EXPÉDIER_À_PAYS | Expédier à / Livrer à - Code du pays | Variable |
| 4308 | EXPÉDIER_À_TÉLÉPHONE | Expédier à / Livrer à - Numéro de téléphone | Variable |
| 4310 | RENVOYER_À_ENTREPRISE | Renvoyer à -nom de l'entreprise | Variable |
| 4311 | RENVOYER_À_NOM | Renvoyer à -contact | Variable |
| 4312 | RENVOYER_À_L' ADRESSE1 | Renvoyer à la ligne d'adresse 1 | Variable |
| 4313 | RENVOYER_À_L' ADRESSE2 | Renvoyer à la ligne d'adresse 2 | Variable |
| 4314 | RENVOYER_À LA_BANLIEUE | Renvoyer à-banlieue | Variable |
| 4315 | RENVOYER_À LA_LOCALITÉ | Renvoyer à -localité | Variable |
| 4316 | RENVOYER_À LA_RÉGION | Renvoyer à-région | Variable |
| 4317 | RENVOYER_AU_PAYS | Renvoyer à -code du pays | Variable |
| 4318 | RENVOYER_À LA_POSTE | Renvoyer à -code postal | Variable |
| 4319 | RENVOYER_AU_TÉLÉPHONE | Renvoyer à -numéro de téléphone | Variable |
| 4320 | DESCRIPTION_DU SERVICE | Description du code de service | Variable |
| 4321 | PRODUITS_DANGEREUX | Drapeau pour produits dangereux | Variable |
| 4322 | AUTORISATION DE_DÉPART | Autorisation de départ | Variable |
| 4323 | SIGNATURE_REQUISE | Drapeau de signature requis | Variable |
| 4324 | PAS AVANT_LA DATE_DE LIVRAISON | Pas avant la date de livraison | Variable |
| 4325 | PAS APRÈS_LA DATE_DE LIVRAISON | Pas après la date de livraison | Variable |
| 4326 | DATE_DE PARUTION | Date de parution | Variable |
| 7001 | NSN | Numéro de nomenclature OTAN (NSN) | Variable |
| 7002 | DÉCOUPES DE_VIANDE | Classification CEE-ONU des carcasses et découpes de viande | Variable |
| 7003 | TEMPS_D'EXPIRATION | Date et heure d'expiration | Variable |
| 7004 | POUVOIR_ACTIF | Pouvoir actif | Variable |
| 7005 | ZONE DE_CAPTURE | Zone de capture | Variable |
| 7006 | PREMIÈRE_DATE DE_CONGÉLATION | Première date de congélation | Variable |
| 7007 | DATE DE_RÉCOLTE | Date de récolte | Variable |
| 7008 | ESPÈCES DE_PÊCHE | Espèces destinées à la pêche | Variable |
| 7009 | TYPE_D'ENGIN DE_PÊCHE | Type d'engin de pêche | Variable |
| 7010 | METHODE DE_PRODUCTION | Méthode de production | Variable |
| 7020 | LOT_DE RÉHABILITATION | Identification du lot de réhabilitation | Variable |
| 7021 | STATUT_FONCTIONNEL | Statut fonctionnel | Variable |
| 7022 | STATUT_DE LA RÉVISON | Statut de la révision | Variable |
| 7023 | GIAI_ASSEMBLAGE | Identifiant mondial des actifs (GIAI) d'un assemblage | Variable |
| 703* | NUMÉRO DU_PROCESSEUR | Numéro de processeurs avec code ISO du pays | Variable |
| 7040 | UIC_EXT | GS1 UIC avec l'extension 1 et l'index de l'importateur | Variable |
| 710 | NHRN_PZN | Numéro national de remboursement des soins de santé (NHRN) -PZN Allemagne | Variable |
| 711 | NHRN_CIP | Numéro national de remboursement des soins de santé (NHRN) -CIP France | Variable |
| 712 | NHRN_CN | Numéro national de remboursement des soins de santé (NHRN) -CN Espagne | Variable |
| 713 | NHRN_DRN | Numéro national de remboursement des soins de santé (NHRN) - DRN Brésil | Variable |
| 714 | NHRN_AIM | Numéro national de remboursement des soins de santé (NHRN) - AIM Portugal | Variable |
| 723* | NUMÉRO DE_LA CERTIFICATION | Référence de la certification | Variable |
| 7240 | PROTOCOLE | Identifiant du protocole | Variable |
| 8001 | DIMENSIONS | Produits en rouleaux (largeur, longueur, diamètre du noyau, direction, épissures) | Variable |
| 8002 | NUMÉRO_CMT | Identifiant de téléphone portable cellulaire | Variable |
| 8003 | GRAI | Identifiant mondial des biens consignés (GRAI) | Variable |
| 8004 | GIAI | Identifiant mondial des actifs individuels (GIAI) | Variable |
| 8005 | PRIX_PAR_UNITÉ | Prix par unité de mesure | Variable |
| 8006 | ITIP | Identification d'un article commercial individuel (ITIP) | Variable |
| 8007 | IBAN | Numéro de compte bancaire international (IBAN) | Variable |
| 8008 | HEURE DE_FABRICATION | Date et heure de fabrication | Variable |
| 8009 | OPTSEN | Indicateur de détecteur à lecture optique | Variable |
| 8010 | CPID | Identifiant du composant/de la partie (CPID) | Variable |
| 8011 | CPID_SERIE | Composant / Numéro de série de l'identificateur de la partie (CPID SERIAL) | Variable |
| 8012 | VERSION | Version du logiciel | Variable |
| 8013 | GMN | Nombre de modèle mondial (GMN) | Variable |
| 8017 | FOURNISSEUR DU_GSRN | Numéro global de relation de service (GSRN) pour identifier la relation entre une organisation offrant des services et le fournisseur de services. | Variable |
| 8018 | DESTINATAIRE DU_GSRN | Numéro global de relation de service (GSRN) pour identifier la relation entre une organisation offrant des services et le destinataire de ces services. | Variable |
| 8019 | SRIN | Numéro d'instance de relation de service (SRIN) | Variable |
| 8020 | NUMÉRO DE_RÉFÉRENCE | Numéro de référence du bulletin de paiement | Variable |
| 8026 | ITIP_SOMMAIRE | Identification des pièces d'un article commercial (ITIP) contenues dans une unité logistique | Variable |
| 8110 | BON_USA | Identification de code de bon de réduction en Amérique du Nord | Variable |
| 8111 | POINTS | Points de fidélité d'un bon de réduction | Variable |
| 8121 | OFFRE_POSITIVE_BON_USA | Identification des codes de coupon sans support papier à utiliser en Amérique du Nord | Variable |
| 8200 | URL_DU PRODUIT | URL de l'emballage élargi | Variable |
| 90 | ACCORD_INTERNE | Informations approuvées d'un commun accord par les partenaires commerciaux | Variable |
| 91 | ENTREPRISE_INTERNE_1 | Informations internes de l'entreprise | Variable |
| 92 | ENTREPRISE_INTERNE_2 | Informations internes de l'entreprise | Variable |
| 93 | ENTREPRISE_INTERNE_3 | Informations internes de l'entreprise | Variable |
| 94 | ENTREPRISE_INTERNE_4 | Informations internes de l'entreprise | Variable |
| 95 | ENTREPRISE_INTERNE_5 | Informations internes de l'entreprise | Variable |
| 96 | ENTREPRISE_INTERNE_6 | Informations internes de l'entreprise | Variable |
| 97 | ENTREPRISE_INTERNE_7 | Informations internes de l'entreprise | Variable |
| 98 | ENTREPRISE_INTERNE_8 | Informations internes de l'entreprise | Variable |
| 99 | ENTREPRISE_INTERNE_9 | Informations internes de l'entreprise | Variable |
Tableau : Variables standard à utiliser dans les expressions des règles du programme
| Variable | Type | Description |
|---|---|---|
| V{date_actuelle} | (date) | Contient la date du jour lorsque la règle est exécutée. Exemple d'expression : d2:daysBetween(#{symptomDate},V{current_date}) < 0 |
| V{date de_l'événement} | (date) | Contient la date de l'événement en cours d'exécution. N'aura pas de valeur au moment où la règle est exécutée dans le cadre du formulaire d'enregistrement. |
| V{satut de_l'événement} | (Chaîne) | Contient le statut de l'événement ou de l'inscription en cours. Exemple d'expression pour vérifier l'état : V{event_status} == 'TERMINÉ' |
| V{due_date} | (date) | Cette variable contient la date actuelle à laquelle la règle est exécutée. Remarque : cela signifie que la règle peut produire des résultats différents à des moments différents, même si rien d'autre n'a changé. |
| V{nombre_d'événement} | (nombre) | Contient le nombre total d'événements dans l'inscription. |
| V{date_d'inscription} | (date) | Contient la date d'inscription de l'inscription actuelle. N'a pas de valeur pour les programmes à événement unique. |
| V{date de_l'incident} | (date) | Contient la date d'incident de l'inscription actuelle. N'a pas de valeur pour les programmes à événement unique. |
| V{identifiant de_l'inscription} | (Chaîne) | Chaîne d'identification universelle (UID) de l'inscription en cours. N'aura pas de valeur pour les programmes à événement unique. |
| V{enrollment_status} | (Chaîne) | Contient le statut de l'inscription en cours. Il peut être ACTIF, COMPLÉTÉ ou ANNULÉ. Voici un exemple d'expression pour vérifier l'état de l'inscription : V{enrollment_status} == 'COMPLETED' |
| V{identifiant de_l'événement} | (Chaîne) | Chaîne d'identification universelle (UID) du contexte de l'événement en cours. N'aura pas de valeur au moment où la règle est exécutée dans le cadre du formulaire d'enregistrement. |
| V{code de_l'unité d'organisation} | (Chaîne) | Contient le code de l'unité d'organisation liée à l'inscription en cours. Pour les programmes à événement unique, le code de l'unité d'organisation de l'événement en cours sera utilisé à la place. Exemple d'expression pour vérifier si le code de l'unité d'organisation commence par WB_ : d2:left(V{orgunit_code},3) == 'WB_' |
| V{environnement} | (Chaîne) | Contient un code représentant l'environnement d'exécution actuel des règles. Les valeurs possibles sont "le WebClient", " l'AndroidClient" et "le Serveur". Peut être utilisé lorsqu'une règle de programme n'est censée s'exécuter que dans un ou plusieurs types de clients. |
| V{identifiant de_l'étape du_programme} | (Chaîne) | Contient l'ID de l'étape du programme en cours qui a déclenché les règles. Cette variable peut être utilisée pour exécuter les règles dans des étapes spécifiques du programme, ou pour éviter l'exécution dans certaines étapes. Lorsque les règles sont exécutées dans le contexte d'un formulaire d'enregistrement TEI, la variable est vide. |
| V{nom de_l'étape_du programme} | (Chaîne) | Contient le nom de l'étape du programme en cours qui a déclenché les règles. Cette variable peut être utilisée pour exécuter les règles dans des étapes spécifiques du programme, ou pour éviter l'exécution dans certaines étapes. Lorsque les règles sont exécutées dans le contexte d'un formulaire d'enregistrement TEI, la variable est vide. |
| V{date_d'achèvement} | (Chaîne) | Cette variable contient la date d'achèvement de l'événement qui a déclenché cette règle. Si l'événement n'est pas encore terminé, "completed_date" ne contient rien. |
Configurer les types de relation.¶
À propos des types de relation¶
Une relation est un lien entre deux entités dans le modèle Tracker. Une relation est considérée comme une donnée dans DHIS2 et est basée sur un type de relation, de la même manière qu'une entité suivie est basée sur un type d'entité suivie.
Les relations comprennent toujours deux entités, et ces entités peuvent comprendre des entités suivies, des inscriptions et des événements, ainsi que toute combinaison de ces éléments.
[!REMARQUE] Notez que ce ne sont pas toutes ces combinaisons qui sont disponibles dans les applications actuelles. Actuellement, dans l'application Saisie, vous pouvez créer : * des relations d'entités suivies à entités suivies * des relations entre événements dans des programmes d'événements et des entités suivies (uniquement à partir de l'événement) *des relations entre événements d'une étape de programme et des événements d'une autre étape au sein du même programme (étapes liées - Plus d'informations [ici] (https://docs.dhis2.org/en/use/user-guides/dhis-core-version-241/tracking-individual-level-data/capture.html#related-stages-and-linked-events-for-tracker-programs)).
En outre, les relations peuvent être définies comme unidirectionnelles ou bidirectionnelles. La seule différence fonctionnelle est qu'elles nécessitent actuellement différents niveaux d'accès pour être créées. Les relations unidirectionnelles exigent que l'utilisateur ait un accès en écriture de données à l'entité "de" et un accès en lecture de données à l'entité "à", tandis que les relations bidirectionnelles exigent un accès en écriture de données pour les deux parties.
Pour plus d'informations sur la configuration et la signification de 'De la contrainte' et 'À la contrainte', voir Modèle de relation.
Créer ou modifier un type de relation¶
-
Ouvrez l'application Maintenance et cliquez sur Programme > Type de d'indicateur.
-
Cliquez sur le bouton Ajouter.
-
Entrez un Nom du type de relation.
-
(Facultatif) Attribuez un Code.
-
(Facultatif) Faites une Description de la relation.
-
(Facultatif) Choisissez si la relation doit être bidirectionnelle
-
Indiquez Nom de la relation vu de l'entité initiale. C'est le nom de la relation s'affichera dans l'application Saisie de données à gauche de la relation. Par exemple, dans une relation mère-enfant, il peut s'agir de "Mère de".
-
(Facultatif) Indiquez Nom de la relation vu de l'entité réceptrice. C'est le nom de la relation qui s'affichera à droite de la relation dans l'application Saisie de données. Par exemple, dans le cas d'une relation mère-enfant, il peut s'agir de "Mère".
-
Sélectionnez "De la contrainte". Cette contrainte limite le type d'entités pouvant être incluses dans la relation. Modèle de relation. Après avoir sélectionné "De la contrainte", vous avez la possibilité de choisir les attributs ou les éléments de données qui doivent être affichés dans le widget de la relation dans la saisie Tracker et la saisie "De la contrainte". La liste varie en fonction de la contrainte :
- Lorsque vous sélectionnez "Instance d'entité suivie", puis un type d'entité suivie uniquement, vous devez choisir parmi les attributs de type d'entité suivie configurés.
- En sélectionnant "Instance d'Entité Suivie", puis un Type d'Entité Suivie et un Programme, vous devez choisir entre les attributs qui ont été configurés pour le Type d'Entité Suivie et pour le Programme.
- Lorsque vous sélectionnez "Inscription au programme", vous devez choisir parmi les attributs qui ont été configurés pour le programme.
- Lorsque vous sélectionnez "Événement dans le programme ou l'étape du programme", vous devez choisir parmi les éléments de données qui ont été configurés pour ce programme d'événement ou cette étape du programme.
-
Sélectionnez 'À la contrainte'. Cela limite le type d'entités pouvant être incluses dans la relation. Modèle de relation. Répétez la sélection des attributs ou des éléments de données qui doivent être affichés dans le widget de relation pour " À la contrainte ".
-
Cliquez sur Sauvegarder.
Configurer les types d'entités suivies¶
À propos des types d'entités suivies¶
Une entité suivie est un type d'entités qui peuvent être suivies par le système. Il peut s'agir de n'importe quoi, des personnes aux marchandises, par exemple un médicament ou une personne.
Un programme doit avoir une entité suivie. Pour inscrire une instance d'entité suivie dans un programme, le type d'entité suivie et le type d'entité suivie d'un programme doivent être identiques.
Les attributs d'entités suivies sont utilisés pour enregistrer des informations supplémentaires pour une entité suivie. Les attributs des entités suivies peuvent être partagés entre les programmes.
Créer ou modifier un attribut d'entité suivie¶
-
Ouvrez l'application Maintenance et cliquez sur Programme > Attribut d'entité suivie.
-
Cliquez sur le bouton Ajouter.
-
Dans le champ Nom, saisissez le nom de l'attribut de l'entité suivie.
-
(Facultatif) Tapez un Nom abrégé.
-
(Facultatif) Entrez un nom du formulaire.
-
(Facultatif) Dans le champ Code, attribuez un code.
-
(Facultatif) Saisissez une Description.
-
(Facultatif) Dans le champ Masque de champ, vous pouvez taper un modèle qui est utilisé pour fournir des conseils permettant un bon formatage de l'élément de donnée. NB : Uniquement implémenté à ce jour, dans l'application de saisie Android du DHIS2, pas dans les applications de saisie et de saisie de suivi web. Voici donc les caractères spéciaux qui peuvent être utilisés dans le masque. Les caractères spéciaux correspondent exactement à un caractère du type donné.
| Caractère | Correspondance |
|---|---|
| \d | chiffre |
| \x | lettre minuscule |
| \X | lettre majuscule |
| \w | tout caractère alphanumérique |
Par exemple, le modèle peut être utilisé pour afficher des traits d'union dans le champ de saisie de l'élément de données selon les besoins. Par exemple, "\d\d\d-\d\d\d-\d\d\d" montre un trait d'union après chaque troisième chiffre.
-
Sélectionnez un ensemble d'options.
-
Dans le champ Type de valeur, sélectionnez le type de données que l'entité suivie pourra enregistrer.
Tableau : Types de valeurs
| Type de valeur | Description |
|---|---|
| Âge | Les dates sont affichées sous la forme d'un widget de calendrier OU en saisissant un nombre d'années, de mois et/ou de jours qui calcule la valeur de la date en fonction de la date actuelle. La date sera sauvegardée dans le backend. |
| Coordonnée | Coordonnée d'un point spécifiée comme longitude et latitude en degrés décimaux. Toutes les coordonnées doivent être spécifiées au format "-19.23 , 56.42", avec une virgule qui sépare la longitude et la latitude. |
| Date | Les dates sont affichées sous forme de widget de calendrier lors de la saisie des données. |
| Date et heure | Est une combinaison des éléments de données DATE et HEURE. |
| Adresse électronique valide. | |
| Fichier | Ressource de fichier où vous pouvez stocker des fichiers externes, par exemple des documents et des photos. |
| Image | Ressource de fichier où vous pouvez stocker des photos. Contrairement à l'élément de données FICHIER, l'élément de données IMAGE peut afficher l'image téléchargée directement dans les formulaires. |
| Entier | Tout nombre entier (positif et négatif), y compris zéro. |
| Lettre | Une seule lettre. |
| Texte long | Valeur textuelle. Rendue comme une zone de texte sans restriction de longueur dans les formulaires. |
| Nombre entier négatif | Tout nombre entier inférieur à zéro (zéro n'étant pas inclus). |
| Nombre - Toute valeur numérique réelle avec une seule virgule. Les séparateurs de milliers et la notation scientifique ne sont pas pris en charge. | |
| Pourcentage | Nombres entiers compris entre 0 et 100. |
| Numéro de téléphone | Numéro de téléphone. |
| Nombre entier positif | Tout nombre entier supérieur à zéro (zéro n'étant pas inclus). |
| Nombre entier positif ou nul | Tout nombre entier positif, y compris zéro. |
| Unités d'organisation | Les unités d'organisation sont présentées sous forme de widget d'arbre hiérarchique. Si l'utilisateur définit "recherche d'unités d'organisation ", les unités d'organisation recherchées seront affichées à la place des unités d'organisation définies. |
| Intervalle d'unité | Tout nombre réel supérieur ou égal à 0 et inférieur ou égal à 1. |
| Texte | Valeur textuelle. Le nombre maximum de caractères autorisés par valeur est de 50 000. |
| Heure | L'heure est enregistrée au format HH:mm. "HH" est un nombre compris entre 0 et 23 et "mm" est un nombre compris entre 00 et 59. |
| Tracker associate | - |
| Nom d'utilisateur | Utilisateur DHIS2. La boîte de dialogue qui s'affiche contient une liste d'utilisateurs et un champ de recherche. L'utilisateur doit disposer de l'autorité "Voir l'utilisateur" pour pouvoir utiliser ce type de données. |
| Oui/Non | Valeurs booléennes, présentées sous forme de listes déroulantes lors de la saisie des données. |
| Les valeurs booléennes sont présentées sous forme de listes déroulantes lors de la saisie des données. |
-
Sélectionnez un Type d'agrégation.
Tableau : Opérateurs d'agrégation
Opérateur d'agrégation Description Moyenne Moyenne des valeurs dans les dimensions de la période et de l'unité d'organisation. Moyenne (somme dans la hiérarchie des unités d'organisation) Moyenne des valeurs de données dans la dimension de la période, somme dans les dimensions des unités d'organisation. Comptage Nombre de valeurs de données. Min Minimum des valeurs de données. Max Maximum des valeurs de données. Aucune Aucune agrégation n'est effectuée dans une quelconque dimension. Somme Somme des valeurs de données dans la dimension de la période et de l'unité d'organisation. Écart-type Écart-type (basé sur la population) des valeurs de données. Variation Variation (basée sur la population) des valeurs de données. -
Sélectionnez Unique pour spécifier que les valeurs de l'attribut de l'entité suivie sont uniques.
Il existe deux options pour ce cadre unique :
-
Système complet : Les valeurs de l'attribut d'entité suivie peuvent être dupliquées avec des valeurs appartenant à d'autres attributs d'entité suivie. Mais les valeurs contenues dans cet attribut d'entité suivie ne doivent pas être dupliquées.
Sélectionnez Généré automatiquement pour permettre la génération automatique de la valeur de l'attribut de l'entité suivie. Lorsque le paramètre de génération est activé, un champ facultatif permettant de spécifier un modèle s'affiche également. Ce champ doit contenir un motif basé sur la syntaxe TextPattern. Lorsque la valeur est générée automatiquement, elle est unique pour cet attribut dans l'ensemble du système. Voir la section TextPattern pour plus d'informations sur son fonctionnement.
-
Unité d'organisation : Les valeurs de l'attribut de l'entité suivie ne doivent pas être dupliquées dans la même unité d'organisation.
-
-
Sélectionnez Hériter pour enregistrer une nouvelle entité en relation avec une entité disponible. Toutes les valeurs des attributs de l'entité héritée seront pré-remplies dans le formulaire d'enregistrement.
-
(Facultatif) Sélectionnez Confidentiel.
Cette option n'est disponible que si vous avez configuré le cryptage du système.
-
(Facultatif) Sélectionnez Afficher dans la liste sans programme.
-
(Facultatif) Attribuez une ou plusieurs Légendes.
-
Cliquez sur Sauvegarder.
Créer ou modifier un type d'entité suivie¶
-
Ouvrez l'application Maintenance et cliquez sur Programme > Attribut type d'entité.
-
Cliquez sur le bouton d'ajout ou sur un type d'entité d'indicateur.
-
Entrez un Nom de l'entité suivie.
-
(Facultatif) sélectionnez une Couleur et une Icône qui seront utilisées par les applications de saisie des données pour identifier ce type d'entité suivie.
-
(Facultatif) Entrez une Description de l'entité suivie.
-
(Facultatif) Saisissez un Nombre minimum d'attributs requis pour la recherche. Cela indique le nombre d'attributs qui doivent être remplis pour pouvoir rechercher ce type d'entité suivie dans une recherche globale. Voir Configurer la recherche pour plus d'informations.
-
(Facultatif) Saisir un Nombre maximum d'entités suivies à renvoyer dans la recherche. Cette valeur spécifie le nombre d'entités suivies qui sera renvoyée lors d'une recherche hors du champ de saisie de l'utilisateur. Voir Configurer la recherche pour plus d'informations.
-
(Facultatif) Ajouter les attributs du type d'entité suivi. Ceci est utilisé pour configurer la recherche, voir Configurer la recherche pour plus d'informations.
-
(Facultatif) Entrez un Nom alternatif de l'entité suivie.
-
Cliquez sur Sauvegarder.
Configurer la recherche¶
Les utilisateurs peuvent se voir attribuer des unités d'organisation de recherche, ce qui permet de rechercher des instances d'entités suivies en dehors de leurs unités d'organisation de saisie de données.
La recherche peut être effectuée soit dans le cadre d'un programme, soit dans le cadre d'un type d'entité suivie. Pour donner aux utilisateurs la possibilité d'effectuer une recherche dans le cadre d'un programme, il est nécessaire de configurer lequel des attributs de l'entité suivie du programme est interrogeable. Pour donner aux utilisateurs la possibilité d'effectuer une recherche dans le cadre d'un type d'entité suivie, il est nécessaire de configurer lequel des attributs du type d'entité suivi est interrogeable.
Configurer la recherche pour le programme Tracker¶
Pour pouvoir effectuer une recherche avec un programme, vous devrez rendre certains des attributs du programme consultables. Les attributs de programme uniques seront toujours consultables.
-
Ouvrez l'application Maintenance et cliquez sur Programme
-
Ouvrir ou créer un programme tracker
-
Aller à Attributs
-
Si vous n'avez pas d'attributs, ajoutez-en un
-
Définir l'attribut interrogeable
Les attributs des programmes interrogeables seront attribués à un groupe de recherche.
-
Groupe unique. Un groupe par attribut unique du programme. Les attributs uniques ne peuvent pas être combinés avec d'autres attributs de programme dans une recherche. Le résultat de la recherche ne peut être que 0 ou 1 instance d'entité suivie.
-
Groupe non unique. Ce groupe contient tous les attributs de programme non uniques et permet de combiner plusieurs attributs dans une recherche.
Il y a deux limites qui peuvent être établies pour une recherche de programme, dans le cadre de la configuration des Détails du Programme.
- Nombre minimum d'attributs requis pour effectuer une recherche : Cette propriété définit le nombre d'attributs non uniques qui doivent être saisis avant qu'une recherche puisse être effectuée.
-
Nombre maximum d'entités suivies à renvoyer : Cette propriété définit le niveau de précision qu'une recherche doit avoir, en limitant le nombre d'entités suivies qu'un utilisateur peut obtenir avec ses critères de recherche. Si le nombre d'enregistrements correspondants est supérieur à ce paramètre, ils ne seront pas renvoyés. L'utilisateur doit alors fournir des critères de recherche plus spécifiques, afin de réduire le nombre des enregistrements correspondants, avant qu'ils ne soient renvoyés. Pour en savoir plus sur les limites, cliquez ici.
NOTE
This maximum limit setting is only applied to search results when searching outside the users capture org unit. Within the capture scope, the user can see any number of results.
Configurer la recherche pour le type d'entité suivie¶
N.B.
TET = Type d'entité suivie
Pour pouvoir effectuer une recherche sans programme, vous devrez rendre certains des attributs du TET consultables. Les attributs uniques du TET seront toujours interrogeables.
-
Ouvrez l'application Type d'entité suivie
-
Ouvrez un type d'entité suivie
-
Si le TET n'a pas d'attributs, ajoutez-en un
-
Définir l'attribut interrogeable
Les attributs de TET interrogeables seront attribués à un groupe de recherche.
-
Groupe unique. Un groupe par attribut TET unique. Les attributs uniques ne peuvent pas être combinés avec d'autres attributs TET dans une recherche. Le résultat de la recherche ne peut être que 0 ou 1 instance d'entité suivie.
-
Groupe non unique. Ce groupe contient tous les attributs TET non uniques et permet de combiner plusieurs attributs dans une recherche.
Deux limites peuvent être établies pour une recherche de TET
- Nombre minimum d'attributs requis pour effectuer une recherche : Cette propriété définit le nombre d'attributs non uniques qui doivent être saisis avant qu'une recherche puisse être effectuée.
-
Nombre maximum d'instances d'entité suivie à renvoyer : Cette propriété définit le degré de spécificité d'une recherche, en limitant le nombre d'instances d'entité suivie correspondantes qu'un utilisateur est autorisé à obtenir pour ses critères de recherche. Si le nombre d'enregistrements correspondants est supérieur à ce maximum, ils ne seront pas renvoyés. L'utilisateur doit fournir des critères de recherche plus spécifiques, afin de réduire le nombre d'enregistrements correspondants, avant qu'ils ne soient renvoyés.
NOTE
This maximum is only applied to search results outside the users capture org unit. Within the capture scope, the user can see any number of results.
Configurer les unités d'organisation de la recherche pour un utilisateur¶
Pour pouvoir effectuer des recherches dans unités d'organisation autres que celles de la saisie des données de l'utilisateur, ce dernier doit se voir attribuer des unités d'organisation de recherche. Le fait d'attribuer une unité d'organisation de recherche à un utilisateur lui donnera également accès à la recherche dans tous les enfants de cette unité d'organisation.
-
Ouvrir l'application**Utilisateurs**
-
Cliquez sur un utilisateur
-
Ouvert Attribuer des unités d'organisation de recherche
-
Sélectionnez les unités d'organisation
-
Cliquez sur Enregistrer
Cloner des objets de métadonnées¶
Le clonage d'un élément de données ou d'autres objets peut faire gagner du temps lorsque vous créez plusieurs objets similaires.
-
Ouvrez l'application Maintenance et cherchez le type d'objet de métadonnées que vous voulez cloner.
-
Dans la liste des objets, cliquez sur le menu Options et sélectionnez Cloner.
-
Modifiez les options que vous voulez.
-
Cliquez sur Sauvegarder.
Supprimer les objets de métadonnées¶
N.B.
Pour supprimer un élément de données et d'autres objets d'éléments de données, aucune donnée ne doit être associée à cet élément de données.
Avertissement
Tout ensemble de données que vous supprimez du système est définitivement perdu. Tous les formulaires de saisie de données et les formulaires de section créés seront également supprimés. Songez à sauvegarder votre base de données avant de supprimer un ensemble de données au cas où vous auriez besoin de le restaurer à un moment donné.
-
Ouvrez l'application Maintenance et cherchez le type d'objet de métadonnées que vous voulez supprimer.
-
Dans la liste des objets, cliquez sur le menu Options et sélectionnez Supprimer.
-
Cliquez sur Confirmer.
Modifier les paramètres de partage des objets de métadonnées¶
Vous pouvez attribuer différents paramètres de partage aux objets de métadonnées, par exemple des unités d'organisation et des attributs d'entités suivies. Ces paramètres de partage déterminent les utilisateurs et les groupes d'utilisateurs qui peuvent visualiser ou modifier un objet de métadonnées.
Certains objets de métadonnées vous permettent également de modifier le paramètre de partage de la saisie de données pour l'objet. Ces paramètres supplémentaires permettent de déterminer qui peut visualiser ou saisir des données dans les champs de formulaire à l'aide des métadonnées.
N.B.
Le paramètre par défaut signifie que tout le monde (Accès public) peut trouver, visualiser et modifier les objets de métadonnées. >
-
Ouvrez l'application Maintenance et cherchez le type d'objet de métadonnées que vous voulez modifier.
-
Dans la liste des objets, cliquez sur le menu contextuel et sélectionnez Paramètres de partage.
-
(Facultatif) Ajoutez des utilisateurs ou des groupes d'utilisateurs : recherchez un utilisateur ou un groupe d'utilisateurs et sélectionnez-le. L'utilisateur ou le groupe d'utilisateurs est ajouté à la liste.
-
Modifiez les paramètres de partage pour les groupes d'accès que vous souhaitez modifier.
-
Peut modifier et visualiser : Le groupe d'accès peut visualiser et modifier à l'objet.
-
Peut seulement visualiser : Le groupe d'accès peut seulement visualiser l'objet.
-
Pas d'accès (uniquement applicable à L'accès public) : Le public n'aura pas accès à l'objet.
-
-
Modifiez les paramètres de partage des données pour les groupes d'accès que vous voulez modifier.
-
Peut saisir des données : Le groupe d'accès peut visualiser et saisir des données pour l'objet.
-
Peut visualiser les données : Le groupe d'accès peut visualiser les données relatives à à l'objet.
-
Pas d'accès : Le groupe d'accès n'aura pas accès aux données relatives à l'objet.
-
-
Cliquez sur Fermer
Afficher les détails des objets de métadonnées¶
-
Ouvrez l'application Maintenance et cherchez le type d'objet de métadonnées que vous voulez visualiser.
-
Dans la liste des objets, cliquez sur le menu Options et sélectionnez Afficher les détails.
Traduire les objets de métadonnées¶
DHIS2 dispose des fonctionnalités pour la traduction du contenu des bases de données, par exemple les éléments de données, les groupes d'éléments de données, les indicateurs, les groupes d'indicateurs ou les unités d'organisation. Vous pouvez traduire ces éléments pour plusieurs emplacements. Un emplacement représente une région géographique, politique ou culturelle spécifique.
Astuce
Pour activer une traduction, ouvrez l'application Paramètres du système, cliquez sur > > Apparence et sélectionnez une langue.
-
Ouvrez l'application Maintenance et cherchez le type d'objet de métadonnées que vous voulez traduire.
-
Dans la liste des objets, cliquez sur le menu Options et sélectionnez Traduire.
Tip
If you want to translate an organisation unit level, click directly on the Translate icon next to each list item.
-
Sélectionnez un emplacement.
-
Tapez un Nom, Nom court et Description.
-
Cliquez sur Sauvegarder.










