Help needed with a use case and program indicators

Hi, all.

I have a form that registers activities (activ.A, activ.B, activ.C and activ.D) and I enroll participants in these activities. I defined activity as a tracked entity. The registration form registers date of activity, name of activity, topic.

Attendance form which is configured as repeatable stage captures participant’s data: First name, Last Name, Age, Gender.

when it comes to designing program indicators, I get stuck.

I would like to have the following 2 program indicators:

Total number of participants who attended at least two activities.

Total number of participants who attended all activities (A. B, C and D)

Please, can you help me with a step by step procedures for designing these indicators?

Any help is appreciated

Hi @dmbantu,

That is a very interesting configuration, but I think it would be problematic for making those indicators.

If you can still change your configuration I would suggest that you,

  1. Create a single program with different stages for each activity.
  2. Change your TE to be a person and capture their age, name, etc as TE attributes in the program enrollment.

By doing this you should be able to make the program indicators you need.

If you can not change your configuration, then I think you might need some custom scripts to produce those indicators. @juan has quite a lot of experience with this.

All the best,
Scott

Hi @Scott

I did what you suggested and created TE as a person and captured First Name, Last Name, Age and Gender; I also created each name of activity as a program stage. I also produced this on demo


To define the second program indicator, Total number of participants who attended all activities (A. B, C and D), I did the following:
Aggregation and Analytics type

Expression


Filter

But I get zero(0) as a result. I am sure there is something wrong with the indicator. The first indicator, Total number of participants who attended at least two activities., is even harder for me to design.

Note: A person can attend all activities and I think each person may be counted only once even if attending multiple activities.

More help is appreciated.

If I’m understanding correctly, I think if you want to use enrollment count (or TEI count) in the expression, the aggregation time should be count and the analytics type enrollment. I’ve done it where the filter then is a compulsory data element in each stage. You can add a compulsory data element “Client attended Activity A” as a yes/no data element in Activity A, B, C etc, then the filter is Client attended Activity A==1 && Client attended Activity B==1 etc. You can also make another piece of information you’re collecting compulsory in each stage, and use d2:hasValue. Hope this is addressing your question.