Go to the main page

DHIS2 Version 41 Overview

Explore the new features and improvements in DHIS2 version 41 and highlights from Android Capture version 3.0

Jump to a section on this page

    Highlights of this release

    Here are some of the highlights in this release:

    • The Capture App now has all of the features of Tracker Capture, and more!
    • Line Listing App supports listing Tracked Entities that are enrolled in multiple programs
    • Android Capture App analytics now supports line lists that are updated while offline
    • More than 500 bugs fixed, thanks to the strong focus on maintenance and targeted bug-fixing activities for this release

    Browse the full list of new features below. You can also read the release announcement on the DHIS2 Community of Practice for more details and share comments and questions with us.

    For a complete overview of new features in our mobile application, visit the Android Capture v3.0 overview page.

    Configuration & Platform Features

    DHIS2 v41 new login app

    New, customizable version of the Login App

    In v41, a new login app built on React is introduced. This app provides customizable configuration options, allowing easy customization of the login experience to match your specific context.

    DHIS2 v41 new maintenance app

    Maintenance App redesign (MVP)

    Introducing the first preview of the completely new Maintenance App. In v41 we are releasing the data element sections with new modules continuously introduced as they are developed. The updated features include advanced filtering options, bulk sharing capabilities, and a sleeker user interface.

    DHIS2 v41 Data Exchange UI

    Aggregate Data Exchange configuration UI

    The Data Exchange app has been updated to allow for creation and editing of the data exchanges directly within the app. Making it much easier to set up exchanges and transfer data or convert tracker data into the aggregate model.

    DHIS2 v41 integrity check UI

    Integrity Check Configuration UI

    The Integrity check app has been given an extensive update, allowing individual check runs, separating longer checks, and providing informative recommendations.

    DHIS2 v41 job scheduler UI

    Scheduled job queues configuration UI

    In v41, the Job Scheduler app now allows configuration of grouping jobs to run in sequence or in parallel. This functionality, previously added in v40 via the API, can now be easily configured through the app interface.

    Scheduler app declarative architecture

    Introducing a new simple scheduler based on the current database state, running asynchronously to execute task configurations. This eliminates issues with the previous “black box” approach, ensuring the job triggers as specified in the configuration.

    Option sets multi-select support for individual data

    From this version onward, DHIS2 will support the selection of multiple options for datasets for both aggregated and individual multi-select data elements. They will also be available for analysis through indicators and program indicators.

    Custom icons

    DHIS2 now allows for uploading custom icons, expanding beyond the built-in library, to support context-specific icons such as those used by the Ministry of Health or NGOs, as well as tp expand the availability of icons for non-health-related areas. These icons are available across the web and Android, and are configured via the Maintenance web app.

    Verbose logging for program rule debugging (Capture)

    You can now append &verbose=TRUE to the end of a query in order receive better information for debugging and testing program rules in the Capture app.

    Android configuration features

    New configuration features in the latest version of the DHIS2 mobile app include custom icons, support for customized Tracker terminology, custom map layers, and more. Learn more on the Android Capture v3.0 overview page.

    Data Collection Features: Aggregate Data

    Custom Forms Functionality

    We are adding more configuration options to the aggregate data entry form to allow you to customize the look and feel of the data entry form without building a custom HTML form. We have started with the option to pivot categories as rows and have data elements as columns or move a category to a row. You can now also add rich text fields before and after a section.

    Data Collection Features: Tracker & Event

    Capture App feature parity with Tracker Capture

    From v41, Capture and Tracker Capture are considered feature-equal. This means that the software development team will not add any further functionality to Tracker Capture, but will only fix critical/security bugs if discovered. The Tracker Capture app and old tracker endpoint are now deprecated, and will not be bundled into v42.

    Since the Capture app is on continuous release, you can also use this app from 2.38 and above. There are certain features that have needed new backend dependencies, but if those are not required for you, you can use the app management app and update the app to newer versions on 2.38 and above.

    The features that need specific backend versions are the following:

    • Changelog, previously audit log (v41 and above)
    • Image thumbnails in working lists, forms, and widgets (Currently v41, but will soon be supported for lower versions)

    There are also several features that are only available in the Capture app which we hope will encourage you to test it out. These include:

    • Working lists: The ability to configure, save, and share working lists in the UI itself (Rather than through API as in Tracker Capture), including program stage working lists.
    • Scheduling: The ability to use program rules to calculate the next scheduled date (assigned to a data element) which can then be used as the default date when scheduling.
    • Configure widgets and layout: Similar to Tracker Capture, but done in the data store, meaning it will be the same for all users and stay consistent, with the possibility to have a different layout for the Enrollment Dashboard and the Program stage event workspace.

    Relationship improvements

    The relationships widget is updated for the Capture app with various improvements.

    Inheritable attributes for relationships

    When creating a Tracked Entity through a relationship, Tracked Entity Attributes configured with “inherit” will be prefilled with values from the source Tracked Entity in order to reduce data entry burden and improve data quality.

    Download working lists

    You are now able to download working lists in the Capture app as JSON or CSV files.

    Mark Tracked Entities for follow up

    Individual Tracked Entities in working lists can now be marked for follow-up, and filtered to provide a list of all designated for follow-up.

    Growth chart widget based on WHO Child Growth Standards

    The Capture App now includes a growth chart widget for individual tracked entities, based on the WHO z-scores for head circumference for age, length/height for age, weight for age, and weight for length/height.

    Ownership transfer between org units

    In order to support referal workflows and correct attribution of analytics, we have completed the ownership transfer of enrollments between org units. The ownership transfer overwrites the ownership field of an enrollment, while preserving the enrolling org unit and event org unit fields.

    Related Stages Widget

    The referral widget has been updated and renamed the “Related Stages Widget” in the Capture app, and includes additional functionality and improved user experience.

    Allow one-time referrals between org units

    One-time referrals are now supported in the Capture app, allowing for a selected org unit to access an enrollment without overwriting the ownership field.

    Images displayed in working lists

    Image attributes can now be displayed in working lists, to easier enable identification of tracked entities for use cases such as patient identification, inventory management, lab equipment monitoring, etc.

    Image preview

    Uploaded images can now be previewed in both the event page and profile widget.

    Enhanced changelog

    Various improvements have been made to the changelog for the Capture app, including sorting and filtering in order to provide important information about when a value was created, changed or deleted and by which user.

    Formfield and dashboard plugins in the Capture app

    As a part of the platform strategy to support greater customizability and external development, we have added extension points to the Capture App allowing DHIS2 application developers to inject custom plugins in the data entry form as well as the enrollment dashboard. For an example of this in action, see the new growth charts and documentation, which were built using these same extension points.

    Data Collection Features: Android Capture App

    New data collection features in the latest version of the DHIS2 mobile app include improvements in TEI search and dashboards, form layout, new input types, and more. Learn more on the Android Capture v3.0 overview page.

    Analysis & Visualization Features

    Dashboard email push (Scheduled for 41.1)

    We have replaced the legacy push analytics service with more modern functionality which uses the same visualization engine as the web-based visualization apps. This allows dashboards to be rendered on the server and sent to a user’s email while respecting sharing settings.

    Maps: Vector tiles as external layers

    Vector files can now be imported into DHIS2 and displayed in the Maps app. This allows for much more flexibility in displaying geographic data from other sources in the Maps app.

    Cumulative values in pivot tables

    The Data Visualizer app now supports the “cumulative values” setting for pivot table visualization types in v41. Each cell in the table displays the sum of the value in that cell and all preceding values in the same row.

    Outlier tables in Data Visualizer

    The Data Visualizer application in v41 introduces support for outlier tables as a visualization type. This enhanced functionality replaces and improves upon the legacy outlier tables that were previously available in the WHO Data Quality application.

    Tracked Entity / cross-program line lists

    The Line Listing app now supports the creation of line lists for Tracked Entities, which allows for creating a list of Tracked Entities that are registered or enrolled in multiple programs. This includes the ability to add and filter on data from different programs that a Tracked Entity is enrolled in and/or view attributes of Tracked Entities that are shared across programs.

    Android: Line listing analytics

    The Android Capture app now supports offline line listing analytics. Line lists are displayable on the home screen and in Event/Tracker programs and searchable by period, org. unit, or custom columns. Learn more on the Android Capture v3.0 overview page.

    Extensibility & Architecture Features

    New "Form Field" and "Enrollment Dashboard" plugin types in the Capture app (Experimental)

    Additional plugin types can now be bundled in DHIS2 web apps, allowing Capture app functionality to be easily extended. These widgets can be installed in the App Management app and can be configured for different programs in the Data Store.

    Expanded support for all HTTP methods in the Routes API

    The Routes API, introduced in DHIS2 v40, has been expanded to support all HTTP methods. It was previously restricted to only forward GET requests to upstream targets.

    Partial and rolling updates in Data Store and User Data Store APIs (Experimental)

    It is now possible to apply partial updates to keys in the Data Store and User Data Store. When applying a partial update, items can be appended to array type keys. It is also possible to optionally specify a maximum size in the “roll” parameter which will discard items from the beginning of the array if its size exceeds the maximum after the new item has been appended. This is an experimental feature which may be updated in future DHIS2 releases.

    Query aliases to shorten long API request URLs (Experimental)

    To work around issues with too-long DHIS2 API request URIs, causing “HTTP 414 URI Too Long” errors, it is now possible to create short-lived query aliases. A query alias is a shortened API path which is mapped to a specific longer path on the DHIS2 server. Query aliases can be deterministically created and then reused until they expire. This is an experimental feature which will be expanded, supported by the App Runtime, and leveraged in DHIS2 frontend apps such as the Data Visualizer in future releases.

    Global App Shell (Experimental)

    A global app shell can be optionally installed, which will be served independently of individual applications. The global shell will ensure consistent headerbar and command pallet as well as other common global functionality such as alerts, session management, and more. This is an optional and experimental feature which will be expanded in future releases.

    Release Info & Demo

    Click on the links in the table below for more information about this software release and to access an interactive demo. You can also add comments or ask questions about this release on the DHIS2 Community of Practice.

    To find more details about...Follow this link:
    Download release and sample databaseDownloads
    Documentation and JavadocsDocumentation
    Full list of features and bugsRelease Note
    Source code on GithubDHIS2 source code
    Demo instanceDemos
    Docker hub imagesDocker repository
    DHIS2 communityDHIS2 Community of Practice