Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Hidden Values Example 2: Calculate Using a Date

A common calculation is to take the date of the Last Menstrual Period (LMP) and calculate the Estimated Date of Delivery (EDD).
In general terms, the way we do this is by taking the date of LMP and adding approximately 9 months to it.

In CommCare terms, we want to take the value of the question "Date of Last Menstrual Period" and add 274 days (9 months + 1 week) to it. The resulting date is the EDD!

Let's try it out!

  • Create a new hidden value by clicking on the 'Add Question' followed by Hidden Value from the question tree.
  • Change the Question ID to "edd"
  • Click on "Edit" next to the Calculate Condition box
  • Drag the question "Date of Last Menstrual Period" over to the Expression Editor (Advanced) box until you see the green check mark, and then release
  • Write a "+" because we want to add something to this date
  • Type "274." Your total expression should look like this:

Image Removed

  • At the beginning of the expression write date and then put parentheses around the expression like this: 

Image Removed

The reason you have to write date first and then put the parentheses around the expression is that when you add an integer number to the question lmp, the result is by default stored as a string, not as a date. We have to "cast" it as a date by putting date first and then parentheses around the expression. Otherwise it will just look like a long number!

...

Tutoriel sur les Valeurs 2: Calculs utilisant une date

La méthode de calcul habituelle consiste à noter la date des dernières règles (DDR) et de calculer la Date prévue d’accouchement (DPA).

D’une manière générale, nous allons prendre la date DDR et y ajouter environ 9 mois.

En termes de CommCare, nous voulons prendre la valeur de la question «  Date des dernières règles » et y ajouter 274 jours (9 mois + 1 semaine). La date obtenue est la DPA !

Faisons un essai !

  • Créez une nouvelle valeur masquée en cliquant sur « Ajouter une question » suivi de Valeur masquée à partir de l’Arbre à questions.
  • Modifier l’Identifiant de la Question en « edd »
  • Cliquez sur « Éditez » à côté de la boîte Condition de calcul
  • Faites glisser la question « Date des dernières règles » sur la boîte Éditeur d’Expression (Avancé) jusqu’à ce que vous voyiez la coche verte, puis lâchez la souris
  • Écrivez un « + » parce que nous voulons ajouter quelque chose à cette date
  • Tapez « 274 ». Votre expression totale devrait ressembler à ceci :


Image Added

  • Au début de l’expression écrivez « date », puis mettez l’expression entre parenthèses comme suit : 

Image Added

La raison pour laquelle vous devez écrire « date » d’abord et ensuite mettre l’expression entre parenthèses est que lorsque vous ajoutez un nombre entier à la question Imp, le résultat est par défaut stocké sous forme de chaîne, et non de date. Nous devons « l’exprimer » sous forme de date en commençant par inscrire  « date » et en mettant ensuite l’expression entre parenthèses. Autrement il ressemblera tout simplement à un long numéro !

  • Cliquez sur « Enregistrer » et vous serez prêt à vous lancer !


Info
titleAwesome! I have a slightly different type of calculation but I'm not sure how to do it...

Great- we have a lot of resources for this and now that you understand the general principles, there are a lot you can do with the instructions on our Common Logic and Calculations page. If you can't figure it out using those resources, send a note to the commcare users group!

You can also use the same tools to write complex AND/OR statements for Display or Validation conditions

 

In the next part of the tutorial you will learn how to write an "if" statement.

Go to the next part

Panel
titleHidden Value Calculations Tutorial Contents
  • Hidden Values Tutorial Home Page - Overview of Hidden Values
  • Hidden Values Tutorial Part 1: Adding Two Questions Using a Hidden Value
  • Hidden Values Tutorial Part 2: Calculations Using a Date
  • Hidden Values Tutorial Part 3: If Statements
  • Hidden Values Tutorial Part 4: Displaying an Output

    Super- nous avons beaucoup de ressources pour cela, et maintenant que vous comprenez les principes généraux, il y a beaucoup de choses que vous pouvez faire avec les instructions qui se trouvent sur notre page Logique commune et calculs.

    Si vous n’arrivez  pas à comprendre l’utilisation de ces ressources, envoyez une note au groupe d’utilisateurs de CommCare !

    Vous pouvez également utiliser les mêmes outils pour écrire des énoncés complexes ET/OU pour les conditions d’Affichage ou de Validation

    Dans la partie suivante du Tutoriel, vous apprendrez comment rédiger un énoncé « si ».

    Allez à la partie suivante

    Panel
    titleContenu du Tutoriel sur les calculs de valeurs masquées

    Page d’accueil du Tutoriel sur les Valeurs masquées - Aperçu des Valeurs masquées