dhis2-users team mailing list archive
-
dhis2-users team
-
Mailing list archive
-
Message #15610
Re: Program indicator expressions
Ok, I understand - was fearing this could be the reason :) The codes need to be quoted when they are text-based, so the other short-term workaround I can think of is to use numeric codes.
Markus
> 12. apr. 2018 kl. 11:06 skrev Jane Greig <jane.greig@xxxxxxxxxxxxxx>:
>
> HI Markus
> Thanks for your response. I thought that might be the problem. Unfortunately our use case is more complex than my example, so the filter workaround doesn’t help – we want the indicator to return a combined set of conditions. For example, 3 data elements all with the same option set for delivery of up to 3 babies for a pregnancy, to count not the event once, but 0, 1, 2 or 3 live births (option ‘LB’) from the 3 data elements for baby outcome. It sounds like we will have to make numerous program indicators using filters, and then aggregate indicators to combine them. We were trying to avoid that!
> Thanks
> Jane
>
> <>
> From: Markus Bekken [mailto:markus@xxxxxxxxx]
> Sent: 12 April 2018 19:02
> To: Jane Greig <jane.greig@xxxxxxxxxxxxxx>
> Cc: dhis2-users@xxxxxxxxxxxxxxxxxxx
> Subject: Re: [Dhis2-users] Program indicator expressions
>
> Hi there Jane!
> The problem with the below condition is that we are using single quotes inside a single quoted statement. This is not supported at the moment.
>
> Not really knowing enough about the use case, I venture into suggeting a possible workaround: If you are able to use the condition below as a filter statement instead of an expression, you can change the aggregation type to "Count", and the expression to "V{event_count}".
>
> Markus
>
>
> 10. apr. 2018 kl. 08:09 skrev Jane Greig <jane.greig@xxxxxxxxxxxxxx <mailto:jane.greig@xxxxxxxxxxxxxx>>:
>
> Hi
> Can anyone advise on whether program indicator expressions can use data elements with option sets? They do not appear in the list of data elements available, but it does not tell me my expression using the UID of one is invalid. However, it also does not give me a result. Example I am trying to use is:
> d2:condition('#{qaDVwQUHD0j.g4bPEQ4a7WM} == 'LB' ',1,0)
> to return a value of 1 if that condition is true, otherwise 0. Is that possible and I am just writing my expression wrongly? Even with a Boolean data element that does appear in the list of data elements, I could not get a result using == 1, == TRUE, == Yes.
> Any guidance is appreciated.
> Thanks
> Jane
>
> ________________
> Jane Greig, PhD
> Epidemiologist MSF-OCA
> Manson Unit, MSF-UK
>
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~dhis2-users <https://launchpad.net/~dhis2-users>
> Post to : dhis2-users@xxxxxxxxxxxxxxxxxxx <mailto:dhis2-users@xxxxxxxxxxxxxxxxxxx>
> Unsubscribe : https://launchpad.net/~dhis2-users <https://launchpad.net/~dhis2-users>
> More help : https://help.launchpad.net/ListHelp <https://help.launchpad.net/ListHelp>
Follow ups
References