DHIS2 version 2.33 is out with many new features, apps, improvements and bug fixes. See below for more detail, including links to technical documentation, screenshots, and Jira tickets.
Watch our New Feature Spotlight videos for DHIS version 2.33 here, or on our YouTube channel.
Log in with admin/district on the demo system.

In the maps application you can now render multiple maps in the same screen to show how the data has evolved over time. You can also have a single map which can “play” the changes to data on a timeline to show the change over time. This is useful e.g. to show how an outbreak is spreading over time, or how coverage of a service changes over time.




Performance and stability improvements
- The system has been reviewed to minimize the number of expensive read-write transactions, which has an impact on overall performance and might lead to database deadlocks.
- Tracker attribute uniqueness check performance has been optimized.
- Tracker notifications are asynchronous to avoid blocking.
- Tracked entity instance auditing is asynchronous to avoid blocking.
- Removed expensive circular checks for tracked entity instances, enrollments and events.
- Removed expensive loops checking access permission on data elements during import.
- Database indexes reviewed to make sure the relevant indexes are used for data-intensive querie



It is now possible to add relationships between events and tracked entity instances. When adding or editing event it is possible to link to existing tracked entity instances, or create new ones to link to. This is useful when event programs is used to capture data that somehow is related to tracker data. For example when adding single events that will later be linked to a tracked entity instance.

The current ownership of all enrollments in the selected program is now displayed as “owned by” in the enrollment widget. The ownership is first assigned to the organisation unit that enrolled the TEI into the given program, and is transferred by referring a TEI using the “move permanently” option. Ownership can be different for a single TEI in different programs, for example one clinic can follow up a patient in HIV, while another clinic follows up the same patient in MCH.
A user that has capture access to the organisation unit that is the current owner of the TEI/Program will have write access to all enrollments for that TEI/Program combination. A user that has search access to the organisation unit that is the current owner will have access to search and find the TEI/Program combination.

When searching for tracked entity instances in tracker capture, it is now possible to flag the presence of possible duplicates in the results. When a duplicate is flagged, it acts as a reminder that the data needs to be cleaned up, and as information for anyone using the data in their daily work. The data is also available for future functionality for identifying and merging duplicates.


Integrity checks now identify program rules with faulty configurations, and summarizes any problems localized in the report. The integrity checks can be found under Apps > Data administration > Integrity checks.

Program indicators and rules are now evaluated during the integrity check in the Data Administration app, reviewing for invalid expressions and filters; missing actions or priority and more.


The new reports app is out of beta and comes with many new improvements. As an example, standard reports are now linkable and can be opened from a URL. The old reports module has been removed.

To find more details about... | Follow this link |
---|---|
Download release and sample database | Downloads |
Documentation and Javadocs | Documentation |
Upgrade notes | Upgrade notes for 2.33 on GitHub |
Details about each feature on JIRA (requires login) | Details on JIRA |
Overview of issues on JIRA (requires login) | Overview on JIRA |
Source code on Github | DHIS2 source code |
Demo instance | Demos |
DHIS2 community | DHIS2 Community of Practice |