Aller au contenu
For the complete DHIS2 documentation index, see llms.txt.

Configurer les programmes dans l'application Maintenance

À propos des programmes

Traditionally, public health information systems have been reporting aggregated data of service provision across their health programs. This does not allow you to trace the people provided with these services. In DHIS2, you can define your own programs with stages. These programs are an essential part of the "tracker" functionality which lets you track individual records. You can also track other ‘entities’ such as wells or insurances. You can create two types of programs:

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.

Note

  • Custom forms take precedence over section forms if both are present.

  • If no custom or section form is defined, the basic form will be used.

  • The Android apps only support section forms.

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

  1. Entrez les détails du programme de l'événement.

  2. Attribuer des éléments de données.

  3. Créer un ou plusieurs formulaires de saisie de données : Base, Section ou Personnalisé.

  4. Affectez le programme à une ou plusieurs unités d'organisation.

  5. 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.

  1. Ouvrez l'application Maintenance et cliquez sur Programme > Programme.

  2. Cliquez sur le bouton d'ajout et sélectionnez Programme de l'événement dans le menu popup.

  3. Entrez les détails du programme, puis cliquez sur suivant.

    Field Description
    Name The name of the program.
    Color Color used for this program in the data capture apps.
    Icon Icon used for this program in the data capture apps.
    Short name A short name of the program. The short name is used as the default chart or table title in the analytics apps.
    Description A detailed description of the program.
    Version The version of the program. This is used for example when people collect data offline in an Android implementation. When they go online and synchronize their metadata, they should get the latest version of the program.
    Category combination The category combination you want to use. The default setting is None.
    Open days after category option end date If you selected a category combination other than None, you may enter zero or a positive number. This lets you enter data for this program for a category option up to the specified number of days after that category option's end date.
    Completed events expiry date Defines the number of days for which you can edit a completed event. This means that when an event is completed and the specified number of expiry days has passed, the event is locked.

    If you set "Completed events expiry days" to 10", an event is locked ten days after the completion date. After this date you can no longer edit the event.
    Expiry period type

    Expiry days
    The expiry days defines for how many days after the end of the previous period, an event can be edited. The period type is defined by the expiry period type. This means that when the specified number of expiry days has passed since the end date of the previous period, the events from that period are locked.

    If you set the expiry type to "Monthly" and the expiry days to "10" and the month is October, then you can't add or edit an event to October after the 10th of November.
    User assignment of events Select check box to enable user assignment of the event

    This means that in the form there will be a list of users to which the event can be assigned.
    Block entry form after completed Select checkbox to block the entry form after completion of the event of this program.

    This means that the data in the entry form can't be changed until you reset the status to incomplete.
    Feature type Sets whether the program is going to capture a geographical feature type or not.
    - None Nothing is captured.
    - Polygon An area is captured. For single event programs the area will be the area representing the event being captured. For tracker programs, the area will represent the area of the enrollment.
    - Point A point/coordinate is captured. For single event programs the point will be representing the event being captured. For tracker programs, the point will represent the enrollment.
    Validation strategy Sets the server and client side validation requirement.

    Data type validation is always performed regardless of the validation strategy. An integer field is never stored containing text, for example.
    - On complete This option will enforce required field and error messages to be fixed when completing the event, but the event can be saved to the server without passing these validation requirements. For legacy reasons, this is always the validation strategy for tracker programs, where each data value in the event is stored to the server while entering data.
    - On update and insert This option will enforce required field validation when saving the event to the server regardless of the completion status. When using this option no events can be stored without passing validations.
    Pre-generate event UID Select checkbox to pre-generate unique event id numbers.
    Custom label for report date Type a description of the report date.

    This description is displayed in the case entry form.
  4. Cliquez sur suivant.

Attribuer des éléments de données

  1. Cliquez sur Attribuer des éléments de données.

  2. 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.

  3. (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".
  4. 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.

  1. Cliquez sur Créer un formulaire de saisie de données.

  2. Cliquez sur Base, Section ou Personnalisé.

  3. 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.

  4. 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 soit surlignée par une ligne noire.

    3. Ajoutez des éléments de données en cliquant sur le signe "+" à côté du nom des éléments de données.

    4. Repeat the above steps until you have all the sections you need.

    5. Modifiez l'ordre des sections : cliquez sur le menu des options, puis faites glisser la section à l'endroit souhaité.

  5. To create a Custom data entry form: Use the WYSIWYG editor to 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.

  6. 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 :

  1. Dans l'arbre d'organisation, double-cliquez sur les unités d'organisation que vous want to add to the program.

    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 :

  1. 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.

  2. Cliquez sur l'une des lignes et la boîte de dialogue Partage s'affichera.

  3. Modifiez les options d'accès en conséquence. Voir la documentation sur le dialogue de partage pour plus de détails.

  4. Cliquez sur le bouton Appliquer.

  5. 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:

    1. 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.

    2. Cliquez sur Appliquer aux étapes sélectionnées.

Créer des notifications de programme

  1. Créez le message que vous voulez envoyer :

    1. Cliquez sur Quoi envoyer?.

    2. Entrez un Nom.

    3. 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.

    4. 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}.

  2. Définissez quand vous voulez envoyer le message :

    1. Cliquez sur Quand l'envoyer?.

    2. 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.
  3. Définissez à qui vous voulez envoyer le message :

    1. Cliquez sur L'envoyer à ?.

    2. Sélectionnez un Destinataire de la notification.

      Notification recipient Description
      Tracked entity instance Receives program notifications via e-mail or text message.

      To receive a program notification, the recipient must have an e-mail address or a phone number attribute.
      Organisation unit contact Receives program notifications via e-mail or text message.

      To receive a program notification, the receiving organisation unit must have a registered contact person with e-mail address and phone number.
      Users at organisation unit All users registered to the selected organisation unit receive program notifications via the internal DHIS2 messaging system.
      User group All members of the selected user group receive the program notifications via the internal DHIS2 messaging system
      Program attribute Receives program notifications via e-mail or text message.

      To receive a program notification, the recipient must have an e-mail address or a phone number attribute.
      Data element Receives program notifications via e-mail or text message.

      To receive a program notification, the recipient must have an e-mail address or a phone number data element.
      Web hook TBA
    3. Click Save.

  4. Répétez les étapes ci-dessus pour créer toutes les notifications de programme dont vous avez besoin.

  5. Cliquez sur Sauvegarder.

Note

You configure when the program notifications are sent in the Data Administration app > Scheduling > Program notifications scheduler.

  • Click Run now to send the program notifications immediately.

  • Select a time and click Start to schedule the program notifications to be sent at a specific time.

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

  1. Entrez les détails du programme Tracker.

  2. Entrer les détails de l'inscription.

  3. Assigner des attributs et créer un formulaire d'inscription à section ou personnalisé.

  4. Créer des étapes de programme.

  5. Configurer l'accès et l'attribuer aux unités d'organisation.

  6. Créer une ou plusieurs notifications de programme et d'étape de programme.

Créer ou modifier un programme Tracker

  1. Ouvrez l'application Maintenance et cliquez sur Programme > Programme.

  2. 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 Defines the meaning of the incident date in this program.

For example:

In an immunization program for child under 1 year old, the incident date is the child's birthday.

In a maternal program, the incident date is the date of last menstrual period.
Étiquette personnalisée pour la date d'inscription Defines the meaning of the enrollment date in this program, typically representing the date when the tracked entity is enrolled into the program.
Custom label for:
- enrollment(s)
- event(s)
- program stage(s)
- follow-up
- registering unit
- relationship
- note
- tracked entity attribute
Renames standard DHIS2 terms for this program. These labels only affect how the terms are displayed in the user interface and do not change their meaning. Note: Only Enrollment, Event, and Program Stage support plural forms; all other labels do not. Currently, these custom labels are used only by the DHIS2 Android app.
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.

  1. Dans la liste des Attributs d'entités suivies de programme disponibles, double-cliquez sur les attributs que vous souhaitez attribuer au programme.

  2. (Optional) For each assigned attribute, add additional settings:

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.
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é".
  1. 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

A program consists of program stages. A program stage defines which actions should be taken at each stage.

Note

Changes to a program stage are not saved until you save the program.

  1. Cliquez sur le signe "+" pour créer une étape du programme.
  2. Entrer les détails de l'étape du programme
    1. Entrez un Nom.
    2. (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
    3. Tapez une Description.
    4. Enter the required number of days into the Scheduled days from start field: The first event in this program stage will be scheduled this many days after the enrollment or the incident date, depending on the configuration. If Show incident date in Enrollment details is configured, the system will use incident date as start. If Generate events based on enrollment date in Program stage details is configured the system will use enrollment date as start.
  3. Entrez les détails reproduisibles des étapes du programme.
    1. Précisez si l'étape du programme est Reproduisible ou non.
    2. Sélectionnez un Type de période.
    3. 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.
    4. 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.
    5. (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.
  4. 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 Defines the meaning of the report date in this program stage.

This description is displayed in the data entry form.
Étiquette personnalisée pour la date d'échéance Defines the meaning of the due date in this program stage.
Custom label for:
- event(s)
- program stage
Renames standard DHIS2 terms for this program. These labels only affect how the terms are displayed in the user interface and do not change their meaning. Note: Only Event supports the plural form; Program Stage does not. Currently, these custom labels are used only by the DHIS2 Android app.
  1. Attribuer des éléments de données à une étape du programme :

    1. 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.

    2. 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".
  1. 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.

  2. Cliquez sur Créer un formulaire de saisie de données.

  3. Cliquez sur Base, Section ou Personnalisé.

  4. 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.

  5. 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 soit mise en évidence 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.

    4. Repeat the above steps until you have all the sections you need.

    5. Modifiez l'ordre des sections : cliquez sur le menu des options, puis faites glisser la section à l'endroit souhaité.

  6. To create a Custom data entry form: Use the WYSIWYG editor to 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.

  7. 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 :

  1. Dans l'arbre d'organisation, double-cliquez sur les unités d'organisation que vous want to add to the program.

    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 :

  1. 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.

  2. Cliquez sur l'une des lignes et la boîte de dialogue Partage s'affichera.

  3. Modifiez les options d'accès en conséquence. Voir la documentation sur le dialogue de partage pour plus de détails.

  4. Cliquez sur le bouton Appliquer.

  5. 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:

    1. 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.

    2. 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.

  1. 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.

  2. Cliquez sur le bouton ajouter et sélectionnez Notification du programme.

  3. Entrez un Nom.

  4. 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.

  5. 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}.

  6. Dans le champ Quand l'envoyer, sélectionnez ce qui doit déclencher la notification.

    Trigger Description Note
    Program enrollment The program notification is sent when the TEI enrols in the program. -
    Program completion The program notification is sent when the program of TEI is completed -
    Days scheduled (incident date) The program notification is sent XX number of days before or after the incident date You need to enter the number of days before or after the scheduled date that the notification will be sent.
    Days scheduled (enrollment date) The program notification is sent XX number of days before or after the enrollment date You need to enter the number of days before or after the scheduled date that the notification will be sent.
    Program Rule Notification will be triggered as a result of program rule execution. Program rule with ProgramRuleActionType.SENDMESSAGE need to be in place to make this trigger successful.
  7. 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.
  8. Cliquez sur Sauvegarder.

Créer une notification d'étape de programme

  1. 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.

  2. Cliquez sur le bouton d'ajout et sélectionnez**Notification de l'étape du programme**.

  3. Cliquez sur AJOUTER.

  4. Entrez un Nom.

  5. 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.

  6. 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}.

  7. Dans le champ Quand l'envoyer, sélectionnez ce qui doit déclencher la notification.

    Trigger Description Note
    Program stage completion The program stage notification is sent when the program stage is completed -
    Days scheduled (due date) The program stage notification is sent XX number of days before or after the due date You need to enter the number of days before or after the scheduled date that the notification will be sent.
    Program Rule Notification will be triggered as a result of program rule execution. Program rule with ProgramRuleActionType.SENDMESSAGE need to be in place to make this trigger successful.
    1. Allow notification to be sent multiple times

      This flag can be used if notification is required to be sent multiple times. For example in case of repeatable program stage, same notification will be sent as many times as the stage is repeated.

  8. Dans le champ Destinataires, sélectionnez qui doit recevoir la notification de l'étape du programme. Vous pouvez sélectionner :

    Recipient type Description Note
    Tracked entity instance Receives program notifications via e-mail or text message. To receive a program stage notification, the recipient must have an e-mail address or a phone number attribute.
    Organisation unit contact Receives program notifications via e-mail or text message. To receive a program stage notification, the receiving organisation unit must have a registered contact person with e-mail address and phone number.

    The system selects the same organisation unit as where the event took place.
    Users at organisation unit: All users registered to the selected organisation unit receive program notifications via the internal DHIS2 messaging system. -
    User group All members of the selected user group receive the program notifications via the internal DHIS2 messaging system -
    Limit To Hierarchy Send notification only to those users who belong to any of the organisation unit in the hierarchy. -
    Parent OrgUnit Only Send notification only to those users who belong to parent organisation unit. -
    Data Element Data Element associated with ProgramStage can be selected as recipient. Data Element will only be effective if DataElement has value type PHONE_NUMBER/EMAIL.
    Tracked Entity Attribute Tracked Entity Attribute associated with ProgramInstance/Enrollment can be selected as recipient. Attribute will only be effective if it has value type PHONE_NUMBER/EMAIL.
    Web Hook Web hooks are automated HTTP messages sent to an external URL configured in web hook URL field. Notification template variables will be sent as key-value pairs in the HTTP request. -
  9. 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 :

  1. Le filtre filtrera les événements qui font partie de la routine d'évaluation/agrégation.

  2. La expression sera évaluée par événement.

  3. 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.

  1. Ouvrez l'application Maintenance et cliquez sur Indicateur > Indicateur de programme.

  2. Cliquez sur le bouton Ajouter.

  3. 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.
  4. Sélectionnez un Type d'agrégation.

  5. Select if you want to Display in form.

  6. Attribuez une ou plusieurs Légende.

  7. (Facultatif) Entrez une Combinaison d'options de catégorie pour l'exportation de données agrégées.

  8. (Facultatif) Entrez une Combinaison d'options d'attributs pour l'exportation de données agrégées.

  9. Créer l'expression.

    1. Cliquez sur Modifier l'expression.

    2. Créez l'expression à partir des opérateurs mathématiques et des attributs, variables et constantes énumérés à droite.

  10. Créer le filtre.

    1. Cliquez sur Modifier le filtre.

    2. Créez l'expression à partir des opérateurs mathématiques et des attributs, variables et constantes énumérés à droite.

  11. Cliquez sur Sauvegarder.

Créer ou modifier un groupe d'indicateurs de programme

  1. Ouvrez l'application Maintenance et cliquez sur Indicateur > Indicateur Groupe d’indicateurs.

  2. Cliquez sur le bouton Ajouter.

  3. Entrez Nom et Code.

  4. Dans la liste des indicateurs de programme disponibles, double-cliquez sur les indicateurs de programme que vous souhaitez affecter à votre groupe.

  5. 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

Email
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)
Variables à utiliser dans une expression ou un filtre d'indicateur de programme

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 :

V{program_stage_name} == 'ANC first visit'

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 :

V{program_stage_id} == 'YPSSfbmAtt1'

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.

d2:daysBetween(#{WZbXY0S00lP.w4ky6EkVahL}, V{analytics_period_start})

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

DHIS2 v42 introduces 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.

Program links to Category
tracker and Aggregate Models

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.

Table Example

  1. Install or update the new Maintenance app (Preview)

    If 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

  2. 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

  3. 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

  4. This will load the Program Indicator Mapping and Categories definition screen

    Program Indicator Selection

  5. Select a Program Indicator from the drop down list, in this example we will use BMI

  6. 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.

  7. Under the Disaggregation categories section you should see both of the categories from the combination added as suggestion. Click Add category for both Gender and U5y

Create the category mappings

  1. 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

  2. When mappings for all the category options are complete, click Save and exit

  3. 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.

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

  5. 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

Program rules allow you to create and control dynamic behaviour of the user interface in the Tracker Capture and Event Capture apps. During data entry, the program rules expressions are evaluated each time the user interface is displayed, and each time a data element is changed. Most types of actions will take effect immediately when the user enters values in the Tracker Capture and Event Capture apps.

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

  1. Dans l'application Maintenance, créez la ou les variable(s) de règle du programme si nécessaire.

  2. Dans l'application Maintenance, créez la règle du programme :

    1. Entrer les détails des règles de programme.

    2. Créez l'expression de la règle du programme.

    3. Définissez les actions de la règle du programme.

  3. 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

  1. Ouvrez l'application Maintenance et cliquez sur Programme > Variable de la règle du programme.

  2. Cliquez sur le bouton Ajouter.

  3. Sélectionnez un Programme et entrez un Nom.

    Please note that the name of the program may not contain any of the following excluded keywords: - and - or - not

  4. 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.

  5. 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 maintainable.

    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 calculation 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).
  6. Cliquez sur Sauvegarder.

Créer ou modifier une règle de programme

N.B.

Une règle de programme appartient à un seul programme.

  1. Ouvrez l'application Maintenance et cliquez sur Programme > Règle de programme.

  2. Cliquez sur le bouton Ajouter.

  3. 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 :

      1. Règle A du programme

      2. 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)

      3. Règles L - P du programme

  4. 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.

  5. 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.

    1. 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 assign
      Used 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 text
      Used 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 value
      Used 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 text
      Used 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 field
      Used 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 mandatory
      Used 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 text
      Used 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 text
      Used 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 text
      Used 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.
      Schedule event Program stage to schedule event for

      Expression to evaluate the scheduled date
      Automatically schedules a new event for the specified program stage on the date returned by the expression. The expression must evaluate to a valid date; if it does not, no event will be scheduled.

      The event is only scheduled once — if the rule condition evaluates to true again, no duplicate event is created.

      Useful for programs where the timing of the next visit or follow-up can be derived from existing data, for example scheduling a second vaccination dose a fixed number of days after the first.

      Example expression that schedules an event 28 days after a recorded date:
      d2:addDays(#{dateOfFirstDose}, 28)
      Hide option Data element to hide option for

      Tracked entity attribute to hide option for

      Option that should be hidden
      Used 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 precedence.
      Hide option group Data element to hide option group for

      Tracked entity attribute to hide option group for

      Option group that should be hidden
      Used 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 shown
      Used 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.
    2. Click Save.

    3. (Optional) Repeat above steps to add more actions.

  6. 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

This example shows how to configure a program rule which calculates number of weeks and days in a pregnancy and display the result in the format the clinician is used to see it in. The calculation is based on previous recorded data.

  1. 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

Note

When using absolute dates in program rule expressions, always use 'YYYY-MM-DD' date format irrespective of the System Date format setting.

Tip

You can nest functions within each other and with sub-expressions to form more complex conditions. An example that produces the gestational age in weeks, based on last menstrual date:

d2:floor( d2:daysBetween(#{lastMenstrualDate},V{event_date}) / 7 )

Tip

The source type will determine how the d2: function calls will evaluate a (sourcefield) parameter.

Example: where #{hemoglobinCurrent} is set to source type Data element in current event. The following function call with evaluate whether haemoglobin is entered in the current event.

d2:hasValue( 'hemoglobinCurrent' )

Example: where #{hemoglobin} is set to source type Data element from the newest event in the current program. The following function call with evaluate whether there exists a value for the haemoglobin in any event in the enrollment.

d2:hasValue( 'hemoglobin' )

Example: where #{hemoglobinPrevious} is set to source type Data element from previous event . The following function call with evaluate whether there exists a value for the haemoglobin among the events preceding the current event.

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:inUserGroup (texte) Returns true if current user is part of this user group otherwise false. The user group is defined by the ID.
Example expression:
d2:inUserGroup('HrXOT4trAFG')
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) Universal identifier string (UID) of the current enrollment. Will not have a value for single event programs.
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) Universal identifier string (UID) of the current event context. Will not have a value at the moment the rule is executed as part of the registration form.
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

  1. Ouvrez l'application Maintenance et cliquez sur Programme > Type de d'indicateur.

  2. Cliquez sur le bouton Ajouter.

  3. Entrez un Nom du type de relation.

  4. (Facultatif) Attribuez un Code.

  5. (Facultatif) Faites une Description de la relation.

  6. (Facultatif) Choisissez si la relation doit être bidirectionnelle

  7. Provide Relationship name seen from initiating entity. This is the name of the relationship that will be shown in the Data Entry app at the 'left' side of the relationship. E.g. in a Mother-child relationship this could be 'Mother of'.

  8. (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".

  9. 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.
    • When selecting “Tracked Entity Instance”, then a Tracked Entity Type and a Program, choose between the attributes that have been configured for both the Tracked Entity Type and for the Program
    • 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.
  10. 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 ".

  11. Cliquez sur Sauvegarder.

Configurer les types d'entités suivies

À propos des types d'entités suivies

A tracked entity is a type of entity which can be tracked through the system. It can be anything from persons to commodities, for example a medicine or a person.

A program must have one tracked entity. To enroll a tracked entity instance into a program, the tracked entity type of the entity and the tracked entity type of the program must be the same.

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

  1. Ouvrez l'application Maintenance et cliquez sur Programme > Attribut d'entité suivie.

  2. Cliquez sur le bouton Ajouter.

  3. Dans le champ Nom, saisissez le nom de l'attribut de l'entité suivie.

  4. (Facultatif) Tapez un Nom abrégé.

  5. (Facultatif) Entrez un nom du formulaire.

  6. (Facultatif) Dans le champ Code, attribuez un code.

  7. (Facultatif) Saisissez une Description.

  8. (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.

  1. Sélectionnez un ensemble d'options.

  2. Dans le champ Type de valeur, sélectionnez le type de données que l'entité suivie pourra enregistrer.

    Value types
    Value type Description
    Age Dates rendered as calendar widget OR by entering number of years, months and/or days which calculates the date value based on current date. The date will be saved in the backend.
    Coordinate A point coordinate specified as longitude and latitude in decimal degrees. All coordinate should be specified in the format "-19.23 , 56.42" with a comma separating the longitude and latitude.
    Date Dates render as calendar widget in data entry.
    Date & time Is a combination of the DATE and TIME data elements.
    E-mail Valid email address.
    File A file resource where you can store external files, for example documents and photos.
    Image A file resource where you can store photos.

    Unlike the FILE data element, the IMAGE data element can display the uploaded image directly in forms.
    Integer Any whole number (positive and negative), including zero.
    Letter A single letter.
    Long text Textual value. Renders as text area with no length constraint in forms.
    Negative integer Any whole number less than (but not including) zero.
    Number Any real numeric value with a single decimal point. Thousands separators and scientific notation is not supported.
    Percentage Whole numbers inclusive between 0 and 100.
    Phone number Phone number.
    Positive integer Any whole number greater than (but not including) zero.
    Positive of zero integer Any positive whole number, including zero.
    Organisation unit Organisation units rendered as a hierarchy tree widget.

    If the user has assigned "search organisation units", these will be displayed instead of the assigned organisation units.
    Unit interval Any real number greater than or equal to 0 and less than or equal to 1.
    Text Textual value. The maximum number of allowed characters per value is 50,000.
    Time Time is stored in HH:mm format.

    HH is a number between 0 and 23

    mm is a number between 00 and 59
    Username DHIS2 user. Rendered as a dialog with a list of users and a search field. The user will need the "View User" authority to be able to utilise this data type.
    Yes/No Boolean values, renders as drop-down lists in data entry.
    Yes only True values, renders as check-boxes in data entry.
  3. Sélectionnez un Type d'agrégation.

    Table: Aggregation operators

Aggregation operator Description
Moyenne Average the values in both the period and the organisation unit dimensions.
Average (sum in organisation unit hierarchy) Average of data values in the period dimension, sum in the organisation unit dimensions.
Count Count of data values.
Min Minimum of data values.
Max Maximum of data values.
Aucun No aggregation is performed in any dimension.
Somme Sum of data values in the period and organisation unit dimension.
Standard deviation Standard deviation (population-based) of data values.
Variance Variance (population-based) of data values.
program
12. 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.
  1. 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.

  2. (Facultatif) Sélectionnez Confidentiel.

    Cette option n'est disponible que si vous avez configuré le cryptage du système.

[!WARNING] The Confidential flag does not guarantee encryption of data at rest and is not currently functioning as intended. Currently, values are stored as both encrypted and plain text values in the database.

For implementations requiring encryption of sensitive data, it is recommended to use encryption-at-rest features provided by the underlying operating system at the file system level or the block level. Many operating systems support this functionality, including Windows.

Going forward, the Confidential flag should be understood strictly as a visibility control mechanism at Analytics Output level, and not as an encryption feature.

The DHIS2 Core team therefore discourages use of the Confidential flag for data protection or encryption purposes. Upcoming versions will implement and document consistent functionality and recommendations for security approaches.

  1. (Facultatif) Sélectionnez Afficher dans la liste sans programme.

  2. (Facultatif) Attribuez une ou plusieurs Légendes.

  3. Cliquez sur Sauvegarder.

Créer ou modifier un type d'entité suivie

  1. Ouvrez l'application Maintenance et cliquez sur Programme > Attribut type d'entité.

  2. Cliquez sur le bouton d'ajout ou sur un type d'entité d'indicateur.

  3. Entrez un Nom de l'entité suivie.

  4. (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.

  5. (Facultatif) Entrez une Description de l'entité suivie.

  6. (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.

  7. (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.

  8. (Facultatif) Ajouter les attributs du type d'entité suivi. Ceci est utilisé pour configurer la recherche, voir Configurer la recherche pour plus d'informations.

  9. (Facultatif) Entrez un Nom alternatif de l'entité suivie.

  10. Cliquez sur Sauvegarder.

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.

Searching can be done either in the context of a program, or in the context of a tracked entity type. To give users the option of searching in the context of a program, it is necessary to configure which of the programs tracked entity attributes is searchable. To give users the option of searching in the context of a tracked entity type, you will have to configure which of the tracked entity type attributes is searchable.

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.

  1. Ouvrez l'application Maintenance et cliquez sur Programme

  2. Ouvrir ou créer un programme tracker

  3. Aller à Attributs

  4. Si vous n'avez pas d'attributs, ajoutez-en un

  5. Définir l'attribut interrogeable

Searchable program attributes will be assigned to a search group.

  • 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.

  1. Ouvrez l'application Type d'entité suivie

  2. Ouvrez un type d'entité suivie

  3. Si le TET n'a pas d'attributs, ajoutez-en un

  4. Définir l'attribut interrogeable

Searchable TET attributes will be assigned to a search group.

  • 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

To be able to search in other organisation units than the users data capture organisation units, the user must be assigned with search organisation units. Giving a user a search organisation unit will also give them access to search in all children of that organisation unit.

  1. Ouvrir l'application**Utilisateurs**

  2. Cliquez sur un utilisateur

  3. Ouvert Attribuer des unités d'organisation de recherche

  4. Sélectionnez les unités d'organisation

  5. 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.

  1. Ouvrez l'application Maintenance et cherchez le type d'objet de métadonnées que vous voulez cloner.

  2. Dans la liste des objets, cliquez sur le menu Options et sélectionnez Cloner.

  3. Modifiez les options que vous voulez.

  4. 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é.

  1. Ouvrez l'application Maintenance et cherchez le type d'objet de métadonnées que vous voulez supprimer.

  2. Dans la liste des objets, cliquez sur le menu Options et sélectionnez Supprimer.

  3. 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.

Some metadata objects also allow you to change the sharing setting of data entry for the object. These additional settings control who can view or enter data in form fields using the metadata.

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. >

  1. Ouvrez l'application Maintenance et cherchez le type d'objet de métadonnées que vous voulez modifier.

  2. Dans la liste des objets, cliquez sur le menu contextuel et sélectionnez Paramètres de partage.

  3. (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.

  4. 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.

  5. 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.

  6. Cliquez sur Fermer

Afficher les détails des objets de métadonnées

  1. Ouvrez l'application Maintenance et cherchez le type d'objet de métadonnées que vous voulez visualiser.

  2. 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.

  1. Ouvrez l'application Maintenance et cherchez le type d'objet de métadonnées que vous voulez traduire.

  2. 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.

  3. Sélectionnez un emplacement.

  4. Tapez un Nom, Nom court et Description.

  5. Cliquez sur Sauvegarder.