Go to the main page

DHIS 2.32 Overview

Explore DHIS2 version 2.32, which includes many new features, apps, improvements, and bug fixes. On this page you can find information on this software version, including feature descriptions, links to technical documentation, and more

Jump to a section on this page

    Feature Spotlight Videos

    Watch our Feature Spotlight videos for DHIS version 2.33 here, or on our YouTube channel.

    Analytics Features

    Dashboard Filter

    The dashboard app now provides filters which apply to entire dashboards. You can filter the dashboard content by most available dimensions. This is powerful as it combines the usefulness of filters with the ability of dashboards to see all of your most important metrics at a glance. You can click “Add filter” above the dashboard to open the list of filters. If the selected filter exists as a dimension in a dashboard item, the dimension will be replaced; otherwise the filter will be added to the dashboard item as a new filter. Try it out in the demo e.g. by selecting “Facility type” as filter.

    [ Video ][ Screenshot 1 | 2 | 3 ][ Demo][Docs][ Jira]

    Dual-axis Charts

    You can now build a chart with two axes. This is useful for creating charts which combine percentage indicators, like coverage rates or data set reporting rates, and data element numbers, like total number of visits.

    Tracked entity instance relationships in maps

    Now tracked entity instances and their relationships can be shown in the maps application. This is a useful feature, for example, to display relationships between an index case of malaria and the corresponding introduced cases.

    Screenshot 1 | 2 | 3][ Docs][ Jira]

    Event polygons in maps

    The maps application can now show event polygons or shapes. Buffers can also be applied to the event polygons. This is very useful with defining a focus or investigation area and associating it with other tracked entity instances such as Malaria cases, for example.

    Screenshot 1 | 2] [ Docs ][ Jira]

    Optimized layout for pie and gauge charts

    The gauge and pie chart layout now offer only series and filter available for selection. Category has been removed because it was not applicable in order to build these charts.

    Screenshot 1][ Demo ][ Jira ]

    Multiple filters in maps

    The maps app now allows you to specify any number of filters. This allows for a more focused analysis and makes the maps app equally flexible as the visualizer and pivot apps in this regard.

    [ Video ][Screenshot 1 | 2] [ Demo ] [ Docs ]

    Rich text in interpretation panels

    The interpretation panels across all apps now support rich text (emoticons, bold, and italics) in the interpretations drop down in the dashboard application and the interpretations right panel in the other analytics applications. This will help improve the effectiveness of the communication between users about their data. In the new analytics applications (dashboards and data visualizer) there are new rich text buttons.
    [ Video ][ Screenshot 1| 2][ Demo ] [ Jira ]

    Reporting rate aggregation across multiple filter periods

    Previously when viewing reporting rates across multiple filter periods, the number of expected reports would not aggregate properly. This would often produce a reporting rate that was incorrectly high. This has been corrected so that the expected reports aggregates across filter periods and the corresponding reporting rate is calculated properly.

    Screenshot 1][Demo][ Jira]

    Progressive dashboard loading

    This version offers a dramatic performance improvement for users that have dashboards with many items through progressive dashboard loading. This means the items which are visible in the viewport are loaded first, and then other items are loaded progressively as the user scrolls down the dashboard page.

    [Demo][ Jira]

    Server-side analytics cache

    To improve performance of analytics request while at the same time ensuring security, a server-side cache for analytics requests have been added. This is helpful as the cached results are served behind the authentication and security layer of DHIS 2. You can enable it and specify the cache expiration time in seconds by adding a analytics.cache.expiration property to dhis.conf.

    Docs ] [ Jira ]


    18 bugs and issues related to analytics have been fixed in this release. This includes proper totals in pivot tables, proper aggregation of financial year data over time, no restriction on the number of options when searching for options in event reports, “open chart as map” in data visualizer, better performance when suggesting users to mentions in pivot tables.

    [Jira 1| Jira 2|Jira 3 | Jira 4]

    Tracker and Event Features

    FHIR adapter

    The DHIS2 FHIR Adaptor was created to enable the import and export of clinical data using a rule engine that transforms patient-related clinical data from questionnaire-like structures (i.e. DHIS2 Tracker Programs and their Program Stages). It is optimized for national FHIR profiles that are based on standard coding systems like LOINC, SNOMED CT, CVX or even national coding systems.

    [Screenshot ][ Demo][ Docs]

    User assignment for events

    Program Stages can be configured to allow assignment to users, meaning that an event can be assigned to an individual. The assigned user will appear in the form in Tracker Capture.

    Screenshot 1][ Docs ][ Jira]

    Bidirectional relationships

    It is now possible to designate a relationship to be bidirectional, allowing the relationship to be visible from both related entities and displayed in a widget. Descriptive names explaining the relation from both sides can be applied.

    Screenshot][ Demo][ Docs][ Jira]

    Event relationships from Capture app

    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.

    Screenshot 1|2| 3|4][ Demo][ Docs][ Jira]

    Tracked entity attribute form name

    You can now assign a form name to tracked entity attributes. The form name, similar to data elements, will be visualized in your data entry form in tracker capture, the new Capture App, and the Android App.

    Screenshot 1][ Docs][ Jira]

    Z-score calculation

    Using program rules, it is now possible to calculate z-score based on data provided by WHO weight-for-age indicators, using the function d2:zScoreWFA. The zScore can be automatically assigned to a field in the form or shown for reference with a program rule action that displays information to the user. The z-Score calculation is supported on all clients and for server side program rules.

    Screenshot 1][ Docs][ Jira]

    Program indicators for counting org units

    It is now possible to create program indicators that counts organisation units. The indicators will be based on the presence of one or more enrollments or events that matches the filter criteria in that org unit. As an example, it is now possible to count the number of facilities that delivered a certain service.

    Demo][ Docs][ Jira]

    Program rule health analysis

    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.

    Screenshot 1][ Docs][ Jira]

    Stability and performance

    21 tracker-related bugs and performance issues were addressed in this release. This includes significant improvements to API calls; program indicators and rules; relationship handling; and messaging.

    Jira issues]

    Apps Features

    New Reports app

    A new reports app has been created with modern web technologies to improve the user experience. This app is in beta. A new approval app is planned for 2.33 which will replace the current approval UI found in the previous reports app. As this app is in Beta, it exists alongside the existing app. If you wish to try it out, be sure to include the new app Reports app (Beta) in the list of apps accessible for the users/roles. You can remove access to the old Report app, but you will need to keep access if you need to make use of the data approval feature.

    Screenshot 1][ Docs][ Jira]

    New Usage Analytics app

    The usage analytics app has had a make-over to bring it inline with the modern application style of DHIS2.

    Screenshot 1][ Docs][ Jira]

    Icons and colors for program indicators & indicators

    You can now make use of colors, icons and other customization options to optimize the look and feel of your programs in Tracker Capture and Capture app.

    Screenshot 1 ][ 2][ Docs][ Jira]

    Download metadata in maintenance

    The maintenance app now lets you download the current selection of object lists as JSON, XML and CSV. You can decide to download the content compressed or uncompressed, and with or without metadata sharing info. Click on the “gear” icon in the top-right corner of the maintenance object list page and select “Download” to try it out.

    Screenshot 1][ Demo][ Jira]

    Skip zeros in analytics tables

    A new system setting “Skip zero data values in analytics tables” is available under the “analytics” section in the settings app. This setting will dramatically improve performance of both analytics table generation and analytics queries if the database contains a lot of zero data values.

    Screenshot][ Docs ]

    Edit legend set

    Several issues with the “edit legend set” screen in the maintenance app have been fixed, and legend items are now sorted ascending by start and end value, the auto-generate legend items work properly and legends can be saved successfully.

    Screenshot 1][ Demo]

    Skip sharing in metadata dependency export

    In the “metadata dependency export” section in the import-export app there is now an option for skipping sharing information as part of the export payload.

    Screenshot][ Demo]

    API Features

    API for line-listing of enrollments

    A new API is added for line listing enrollments at /analytics/enrollments/query. The new endpoint makes it possible to retrieve data from several program stages for each enrollment, and produces one line per enrollment. This is useful when exporting enrollment data for use in other software, or when producing reports that span more than one program stage. When line-listing an enrollment that contains repeatable program stages, the event with the latest event date is used.


    Org unit analytics API

    A new endpoint for org unit analytics is now available. This endpoint provides statistics on org units classified by org unit group sets, i.e. counts of org units per org unit group within org unit group sets.


    Skip audit in data value import

    A new setting for the data value set import API is available for skipping the generation of audit values is now available. This is useful for very large imports and for data integration jobs where greater performance and reduced database size is a good trade-off for auditability. Enable it by specifying the skipAudit=true query parameter.


    Release Information

    Click on the links in the table below for more information about this software release and to access an interactive demo.

    To find more details about...Follow this link:
    Download release and sample databaseDownloads
    Documentation and JavadocsDocumentation
    Upgrade notesUpgrade notes for 2.32 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 GithubDHIS2 source code
    Demo instanceDemos
    DHIS2 communityDHIS2 Community of Practice