← Back to team overview

dhis2-devs team mailing list archive

Re: Program Indicator using data from multiple event stages to find TEA


HI Aaron,

that sounds good, glad to hear you got cross-stage calculations to work.

Unfortunately program indicator expressions do not support nested
parentheses/functions - we plan to develop a new version of our program
indicator parser which will be more flexible in this regard.



On 13 February 2018 at 20:56, Aaron C White <aaroncwhite@xxxxxxxxx> wrote:

> Thanks, Lars and Preeti.  I checked the indicator formulation and found a
> problem with a d2:condition() statement using a text option set value.  I
> converted it to an integer and was able to see the calculated data across
> stages.  I think it might be related to the parentheses issue inside the
> condition as a few other recent emails have suggested.  How should the
> condition be formulated if you also need to check a text option inside that
> condition?  Using double quotes on the outside of the formulation does not
> seem to work properly.  i.e. d2:condition("my_de == '3'", true, false)
> Aaron
> --
> Aaron C. White
> 919.522.5585
> On Mon, Feb 12, 2018 at 1:34 AM, Lars Helge Øverland <lars@xxxxxxxxx>
> wrote:
>> Hi Aaron,
>> from your description I think enrollment type program indicators will be
>> appropriate. Can you tell us a bit more about your usecase? I am assuming
>> you want information from two different stages in the *same* program. Do
>> you have multiple enrollments per person (TEI) in your program? If not I
>> think enrollment indicators will do the job.
>> regards,
>> Lars
>> On 8 February 2018 at 21:49, Aaron C White <aaroncwhite@xxxxxxxxx> wrote:
>>> Hi all,
>>> I'm trying to create a program indicator (or just query to the API
>>> directly) that evaluates conditions on data elements from two different
>>> event stages and then be used to find a relevant tracked entity attribute.
>>> From the docs, it seems that a program indicator type of enrollment
>>> would be most appropriate, but this only works at the aggregate level and
>>> not at an individual tracked entity instance level.  When I use an event
>>> type indicator, I don't receive any values back because the indicator
>>> definition contains data from two stages.
>>> Am I correct in this assessment?  Any thoughts on how to get around this?
>>> I've been testing on a v2.28 instance.  A similar reference example from
>>> the demo server would be the "Weight gain(in g) between birth and last
>>> postnatal for Child Programme" program indicator.  The one change would be
>>> that I want to see the weight gain for individual TEIs and view a TEA based
>>> on the weight gain amount instead of the average over all tracked entity
>>> instances.
>>> Thanks in advance,
>>> Aaron
>>> --
>>> Aaron C. White
>>> 919.522.5585 <(919)%20522-5585>
>>> _______________________________________________
>>> Mailing list: https://launchpad.net/~dhis2-devs
>>> Post to     : dhis2-devs@xxxxxxxxxxxxxxxxxxx
>>> Unsubscribe : https://launchpad.net/~dhis2-devs
>>> More help   : https://help.launchpad.net/ListHelp
>> --
>> Lars Helge Øverland
>> Lead developer, DHIS 2
>> University of Oslo
>> Skype: larshelgeoverland
>> lars@xxxxxxxxx
>> http://www.dhis2.org <https://www.dhis2.org/>

Lars Helge Øverland
Lead developer, DHIS 2
University of Oslo
Skype: larshelgeoverland
http://www.dhis2.org <https://www.dhis2.org/>

Follow ups