← Back to team overview

dhis2-devs team mailing list archive

dhis version 2.21 is released

 

Hi all,

DHIS version 2.21 is out with a lot of great new features and improvements.

Log in with admin/district on the demo <http://play.dhis2.org/demo/> system.

File cloud storage: You can now upload and store large files directly from
data entry forms. Data elements can have a file value type and render as
file upload widgets in forms. Files can be stored either on the Web server
or sent directly to AWS S3 <https://aws.amazon.com/s3/> cloud storage,
which in practice provides unlimited storage capacity. This capability
allows you to use DHIS 2 as a general document repository which can be
utilized for project management, documentation, CMS and many other
purposes.

File storage currently works for aggregate data entry forms - tracker
coming up. Have a look at the “Project management” data set in data entry
on the demo:

Demo <http://play.dhis2.org/demo/dhis-web-dataentry/index.action> | Docs
<https://www.dhis2.org/doc/snapshot/en/implementer/html/ch08s03.html#d5e517>
| Screenshot <https://www.dhis2.org/images/221/file-store.png>


Settings app: The settings front-end has been re-written as a true app. It
features real-time saving, search for settings and a fresh new look.

Demo <http://play.dhis2.org/demo/dhis-web-settings/index.html> | Docs
<https://www.dhis2.org/doc/snapshot/en/user/html/ch23.html> | Screenshot
<https://www.dhis2.org/images/221/settings.png>


Data import constraints: Several optional constraints for data import can
be enabled to provide stricter control of the data being imported. These
include require period to be of same type as data set, data element to be
assigned to data set through org units, and more. The import constraints
can be enabled in settings app under “data import”.

Docs <https://www.dhis2.org/doc/snapshot/en/user/html/ch23.html#d5e4456>



ANALYTICS FEATURES

---

Functions and variables in program indicators: Program indicators support a
range of functions and variables. Functions allows for conditional
statements, calculation of number of days between dates and more. Variables
allows you to insert e.g. event date, enrollment date and value count into
expressions. This is useful for example to calculate “inpatient bed days”
and complex scores.

Docs <https://www.dhis2.org/doc/snapshot/en/user/html/ch30s03.html> | Demo 1
<http://play.dhis2.org/demo/dhis-web-pivot/index.html?id=c9qrFDGxy8o> | 2
<http://play.dhis2.org/demo/dhis-web-pivot/index.html?id=T7Nx1tEqG2f>
| Screenshot
1 <https://www.dhis2.org/images/221/program-indicator-condition.png> | 2
<https://www.dhis2.org/images/221/pivot-program-indicator-condition.png> | 3
<https://www.dhis2.org/images/221/program-indicator-daysbetween.png> | 4
<https://www.dhis2.org/images/221/pivot-program-indicator-daysbetween.png> |


Custom aggregation types: A program indicator now has an aggregation type
property with the standard options such as sum, avg, count, std dev min,
max. When set to custom, the indicator expression can contain inline
aggregation types, allowing for greater control over aggregation.

Docs <https://www.dhis2.org/doc/snapshot/en/user/html/ch30s03.html> |
Screenshot
<https://www.dhis2.org/images/221/program-indicator-custom-aggregation-type.png>


Program indicators and data elements in GIS: The GIS app lets you analyse
program indicators, attributes and data elements on maps.

Demo <http://play.dhis2.org/demo/dhis-web-mapping/index.html?id=jvdDvScWuhv>
| Screenshot 1 <https://www.dhis2.org/images/221/gis-program-indicators.png>
| 2 <https://www.dhis2.org/images/221/dashboard-gis-program-indicators.png>


Program indicators in event reports: The individual event overview supports
program indicators, which allows you to display calculations per event
directly in the overview.

Demo
<http://play.dhis2.org/demo/dhis-web-event-reports/index.html?id=kb9Uml5FEEz>
| Screenshot
<https://www.dhis2.org/images/221/event-overview-program-indicators.png>


Download data dump: Pivot table lets you download data in CSV format
directly without first rendering the data in the Web browser (which might
lead to the browser freezing for large data volumes). This allows you to
download much larger batches of data which is useful for later offline
analysis.

Screenshot <https://www.dhis2.org/images/221/pivot-data-dump.png>


Complete events only option: All analysis apps provides an option for only
including completed events in the aggregation process. This is useful e.g.
to exclude partial events in indicator calculations.

Screenshot
<https://www.dhis2.org/images/221/pivot-completed-events-option.png>


Full precision option: Pivot table has an option for “skip rounding” of
values, i.e. full precision of values. This is useful for certain data
types such as financial data, and when doing calculations in external
systems.

Screenshot <https://www.dhis2.org/images/221/analytics-skip-rounding.png>


Aggregation type for attributes: Tracked entity attributes have an
aggregation type property which lets you control how attributes are
aggregated in pivot tables, charts and analytics.

Screenshot <https://www.dhis2.org/images/221/attribute-aggregation-type.png>


TRACKER FEATURES

---


Attribute categories in event capture: Data set categories can be enabled
for programs without registration and be used in the event capture app.
This means that events can be attributed to projects and partners just like
it can be for aggregate data sets. You can enable it by setting a category
combination for the program. Check it out on the demo for the

Demo <http://play.dhis2.org/demo/dhis-web-event-capture/index.html#/> |
Screenshot
<https://www.dhis2.org/images/221/event-capture-attribute-categories.png>


Sticky right side widgets: In tracker capture, the right-side widgets can
be made “sticky”, meaning that they remain at the top of the screen when
scrolling down the page. You can enable this by clicking the “sticky” icon
in the top-right corner of the dashboard screen. This is useful for example
to display key patient information while entering data.

Screenshot
<https://www.dhis2.org/images/221/tracker-capture-sticky-right-column.png>


Program rule warnings and errors: The program rules let you define warning
and error messages as actions based on rule evaluation. This is useful e.g.
to provide assistance and guidance to health workers based on medical best
practises during consultations. It can also be used for data validation
purposes, e.g. to provide warnings for values out of range or logical
violations between data elements. Program rules are supported in tracker
capture dashboard and event capture. Try it out on the demo with the “WHO
RMNCH Tracker” program.

Demo <http://play.dhis2.org/demo/dhis-web-tracker-capture/index.html#/> |
Docs <https://www.dhis2.org/doc/snapshot/en/user/html/ch31.html> |
Screenshot
<https://www.dhis2.org/images/221/program-rules-dashboard-warnings.png> | 2
<https://www.dhis2.org/images/221/program-rules-dashboard-errors.png> | 3
<https://www.dhis2.org/images/221/program-rules-registration-warnings.png>


Program rules for attributes: Tracked entity attributes can be used for
program rules to create dynamic behavior e.g. in tracker dashboard.

Docs <https://www.dhis2.org/doc/snapshot/en/user/html/ch31.html>


Attribute inheritance: Tracked entity attributes can now be defined as
“inherited”. In tracker capture, these attributes will be pre-populated
when registering new persons in the relationships dialog. This is useful
e.g. when registering children in relationship to mothers to avoid having
to enter last names / family names.

Screenshot
<https://www.dhis2.org/images/221/tracker-capture-attribute-inheritance.png>


Hide sections: Program rules let you hide form sections based on evaluation
of rules. This provides more flexibility e.g. for surveys where skip-logic
is needed.

Docs <https://www.dhis2.org/doc/snapshot/en/user/html/ch31.html>


Immediate unique attribute validation: In person registration forms, unique
attributes are validated immediately.

Screenshot
<https://www.dhis2.org/images/221/tracker-capture-unique-attribute-validation.png>


Active programs widget: The dashboard in tracker capture has a new widget
for displaying active programs. This is useful to see at a glance which
programs this person is enrolled in. You can select which widgets to
display on the dashboard from the top-right settings icon. By selecting the
“active programs” widget it will be included on the dashboard.

Screenshot
<https://www.dhis2.org/images/221/tracker-capture-active-programs.png>


Ethiopian calendar support: The Ethiopian calendar is now fully supported
in, including tracker and aggregate data entry and analytics.

Screenshot <https://www.dhis2.org/images/221/ethopian-calendar.png>


Coordinate data element value type: A new data element value type for
coordinate is available, which will enforce a valid coordinate to be
entered through data entry forms.

Docs <https://www.dhis2.org/doc/snapshot/en/user/html/ch05.html#d5e995>


Extended attributes: Dynamic meta-data attributes are supported for
category options and category option groups.

Docs <https://www.dhis2.org/doc/snapshot/en/user/html/ch22s14.html> |
Screenshot
<https://www.dhis2.org/images/221/categories-dynamic-attributes.png>


Cache instruction per object: You can set cache lifetime for individual SQL
views and standard reports. This means e.g. that certain SQL views can have
no caching whereas other SQL views can be cached for two weeks, depending
on the requirement of the SQL view.

Demo
<http://play.dhis2.org/demo/dhis-web-maintenance-dataadmin/showAddSqlViewForm.action>
| Screenshot <https://www.dhis2.org/images/221/sql-view-cache-strategy.png>




WEB API FEATURES

---

General-purpose data store: A new key-value store for JSON data has been
introduced in the Web API. This is useful for apps which need storage for
app data or settings. The data store provides a namespace, key and JSON
value for each record, with optional security per namespace linked to
authorities.

Docs <https://www.dhis2.org/doc/snapshot/en/developer/html/ch01s54.html>


Custom logos: Custom logos for front page and top menu can be uploaded
through the new staticContent Web API resource. This allows for easy
customization of the UI.

Docs <https://www.dhis2.org/doc/snapshot/en/developer/html/ch01s38.html>


Preheat cache option: All meta-data endpoints support optional preheat of
caches, which implies better performance for smaller endpoints.

Docs
<https://www.dhis2.org/doc/snapshot/en/developer/html/ch01s09.html#d5e699>


Enums in data model: Enums are introduced for all properties with
predefined sets of valid options in the the data model. This makes it
easier to create apps as you can easily discover valid options for
properties through the schemas endpoint. Consult the upgrade notes for a
list of changes.

Upgrade notes <https://www.dhis2.org/221-upgrade>




TECHNICAL FEATURES

---

Organisation unit hierarchy performance: Everything related to the org unit
hierarchy, including loading of trees, assignment of data sets/programs,
org unit search and analytics, now performs much better, as org units are
now located in the hierarchy using database queries. A lot of performance
improvements have been done in general based on profiling and monitoring.

Temporary resource tables: Resource tables are written to temporary tables,
then swapped with real tables when completed. This removes the timespan
when no resource tables were present, causing trouble for SQL views and
queries which depended on them.

Translations: The French UI translation is now complete.


RELEASE INFO

----


You can download Live package, WAR file, sample data and source code here:

https://www.dhis2.org/downloads


You will find documentation and Javadocs here:

https://www.dhis2.org/documentation


You can read the upgrade notes and find upgrade script here:

https://www.dhis2.org/221-upgrade


The demo application can be found here:

http://play.dhis2.org/demo


Full list of features can be found at the Launchpad page:

https://launchpad.net/dhis2/+milestone/2.21


Instructions for signing up for the DHIS 2 mailing lists here:

https://www.dhis2.org/contact



Enjoy the new features.


best regards,


the DHIS 2 development team

Follow ups