Requests for event approvals have come up in the past in the community, for example in these threads:
- Regarding event approval
- Tracker and event programs: compulsory fields, completing, approving
- Data approval workflow for programs - #2 by Jim_Grace
- Data Approval for Programmes - #4 by Hari_Krishna
the feature request is tracked in this (old-timer) issue marked as a To Do: DHIS2-120. Longer-term, is the event approval topic still part of the current roadmap?
Until the support for this process is in dhis2-core we need workarounds for event approvals.
One of the alternatives could look like this:
- Add a yesOnly data element (checkbox) to a program stage (or within its own section).
- Implement a program rule that hides the DE (or the section) if you are NOT assignee of a user role
- In all the Program Indicators of the program, additionally filter for the yesOnly DE to be true (meaning: filter events out that were not “approved”).
- Show line lists in Event Reports to track which Events are approved and which are not.
Bug: Unfortunately this process is blocked in step 2: the function to trigger based on user role membership does not function in the Capture app, i.e. the
d2:hasUserRole function for program rule conditions: DHIS2-11977. This program rule function is the only one acting on the current logged-in user, so it’s unique, powerful, but broken.
For reference, here are two similar fixes made for Tracker Capture (but not for the new Capture app):
@Gassim would it be possible to look into addressing DHIS2-11977 for the next patch release 2.36.5 and 2.37+ please?