← Back to team overview

dhis2-users team mailing list archive

Re: dhis version 2.30 is released


Thanks Lars and Team.

This really great, DHIS2 is getting better and better.

So sorry for sending this on this thread but the problem is related to this version.

Last week my team (infrastructure) decided to update our DHIS2 instance to this version (2.30) and since then all non-superuser users are having problems entering data, everyone is getting the follow error message: User has no data write access for CategoryOption

I tried to check on the user roles and category options to see if I could give/enable that permission to the non-superuser users but no luck so far.

Your help will be most appreciated.

Kind Regards,
Eudson bambo
On 12 Jul 2018, at 1:43 PM, Lars Helge Øverland <lars@xxxxxxxxx<mailto:lars@xxxxxxxxx>> wrote:

Hi all,

DHIS version 2.30 is out with many new features, apps and improvements.

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


Linkable dashboards: Individual dashboards can now be linked to through the URL. This makes it easier to share dashboards through email and chats.

Screenshot<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/linkable-dashboards.png> | Demo<https://play.dhis2.org/2.30/dhis-web-dashboard/index.html#/TAMlzYkstb7>

Mentions in interpretations and comments: You can now mention users in interpretations and comments by using @. Users who are mentioned will receive a notification in the messaging app. Notifications over email and SMS can also be enabled through user settings. Interpretations can be written from the right-side panel.

Screenshot<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/mentions-interpretations.png> | Demo<https://play.dhis2.org/2.30/dhis-web-visualizer/?id=pRBQ77mhEJ8>

Subscribe to analytics items:  You can now subscribe to analytics items. Subscribing means that you will receive a notification whenever a new interpretation or comment is made for the analytical object you subscribed to. Look out for the bell icon.

Screenshot<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/favorite-subscribe.png> | Demo<https://play.dhis2.org/2.30/dhis-web-visualizer/index.html?id=DkPKc1EUmC2>

Interpretations panel in maps: The maps app now has an interpretations panel to the right which lets you write new interpretations and view existing ones for a map.

Screenshot<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/maps-interpretations.png> | Demo<https://play.dhis2.org/2.30/dhis-web-maps/index.html?id=ytkZY3ChM6J>

File menu in maps: The maps app now supports the file menu you are used to from pivot table and chart apps.

Screenshot<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/maps-file-menu.png> | Demo<https://play.dhis2.org/2.30/dhis-web-maps/#>

Buffers in event map layers: You can now render buffers for events in the maps app. This is useful e.g. for visualizing coverage of health services. Zoom in to see buffers on the demo.

Screenshot<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/map-event-buffers.png> | Demo<https://play.dhis2.org/2.30/dhis-web-maps/index.html?id=vIZ3V7HJ6T2>

Tracked entity thematic layer: The maps app now provides a thematic layer for viewing tracked entities. Users can choose the the tracked entity type, program, active or complete, period of last updated, organizational unit, and style including an optional buffer.

Screenshot 1<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/maps-add-tei-layer.png> | 2<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/tei-layer-selection.png> | 3<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/tei-layer.png> | Demo<https://play.dhis2.org/2.30/dhis-web-maps/index.html?id=b4yDuYQap7I>

Style by data items in event maps: In the maps app you can now style each event layer independently, i.e. chose the color and size of event points and clusters.

Screenshot 1<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/event-maps-style-per-item.png> | 2<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/event-maps-styling.png> | Demo<https://play.dhis2.org/2.30/dhis-web-maps/index.html?id=kyFVsAGaZYL>


We have completely rewritten 5 web apps to provide a consistent and better user interface and improve the software architecture:

User app: The user app has been redesigned with Material UI to provide a more elegant and user-friendly interface. User roles and authorities management have been reworked to make it a lot clearer and easier to get the overview of the available authorities. Tracker authorities have been replaced to a large extent by the new data level sharing model, simplifying the setup of tracker user roles.

Screenshot 1<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/user-role-management.png> | 2<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/user-landing-page.png> | Demo<https://play.dhis2.org/2.30/dhis-web-user/index.html>

Import-export app: The import-export app also has a new, fresh look. The new app also exposes a lot more of the features and options available through the API in a rich and intuitive interface.

Screenshot 1<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/import-export-landing.png> | 2<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/data-import-screen.png> | Demo<https://play.dhis2.org/2.30/dhis-web-importexport/index.html>

Messaging app: The messaging app is also refreshed, and styled in the manner of modern email and messaging clients. Messages are categorised on the left to allow clear distinction of different types of message for different uses. The ticket message type allows the messaging platform to be used as a simple and effective ticketing system. The new messaging app allows for adding people to an existing conversation, and to search message conversations based on the message content.

Screenshot 1<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/messaging-landing.png> | 2<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/messaging-select-messages.png> | 3<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/messaging-view-assign.png> | Demo<https://play.dhis2.org/2.30/dhis-web-messaging/index.html>

Data quality app: The data quality app has been rewritten and features a Material UI based design which is simpler and more intuitive to use.

Screenshot 1<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/data-quality-landing.png> | 2<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/data-quality-std-dev.png> | Demo<https://play.dhis2.org/2.30/dhis-web-data-quality/index.action>

Data administration app: The data administration app has been rewritten and has a nicer-looking UI. The analytics table generation UI has been moved here from the reports app.

Screenshot 1<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/data-administration-landing.png> | 2<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/data-administration-maintenance.png> | Demo<https://play.dhis2.org/2.30/dhis-web-data-administration/index.action>



Ownership concept: A tracked entity instance (TEI) can now be owned by one org unit per program. The owner will be the latest organization unit that enrolled the TEI into each program. A TEI is searchable in the context of every organization unit that owns any programs for that tracked entity instance, as well as the original registering organization unit. When performing a permanent referral, ownership of the program in the tracked entity instance will be transferred to the receiving organization unit, while the registration org unit remains the same for the purposes of analytics.

Docs<https://docs.dhis2.org/master/en/developer/html/webapi_tracker_api.html#webapi_tracker_ownership_management> | Jira


Enhanced relationships: The relationship model is updated to be more expressive and expandable. All relationships are now modelled as one-way relationships. In version 2.30 relationships between tracked entity instances are supported. Each side of the relationship now is constrained to a tracked entity type and the types on the two sides might be different.

Screenshot<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/relationship-type-management.png> | Jira<https://jira.dhis2.org/browse/DHIS2-3345>


Improved UI for sharing programs and stages: Building on the new granular sharing model there is now an improved UI for sharing programs and program stages available. The add and edit program wizard now includes a step called Access where the configurator will be presented with tools to share the program and program stages.

Screenshot<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/access-sharing.png> | Demo<https://play.dhis2.org/dev/dhis-web-maintenance/#/edit/programSection/program/WSGAb5XwJ3Y> | Jira<https://jira.dhis2.org/browse/DHIS2-2151>

Breaking the glass: If the program access level is set to protected the user is now required to provide a reason for reading a tracked entity instance belonging to an organisation unit where the user does not have data capture access. The reason given will be stored and linked to the tracked entity instance and program.

Screenshot<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/breaking-the-glass.png> | Docs<https://docs.dhis2.org/master/en/user/html/open_existing_tracked_entity_instance_dashboard.html> | Jira<https://jira.dhis2.org/browse/DHIS2-1326?jql=text%20~%20%22glass%22>

Improved audit logs: Audit logs will now retain information on users that read enrollments, whether or not they change or enter data. This will enable improved audit reporting tools and UI in future releases.

Docs<https://docs.dhis2.org/master/en/developer/html/webapi_auditing.html#webapi_enrollment_audits> | Jira<https://jira.dhis2.org/browse/DHIS2-3480>

Capture polygons for events: It is now possible to to capture map polygons instead of coordinates (points) for events.

Screenshot<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/polygon-capture.png> | Jira<https://jira.dhis2.org/browse/DHIS2-3146>


Organisation unit groups in program rules: New function that allows program rules to check whether the user is part of an organisation unit group.

Docs<https://docs.dhis2.org/master/en/user/html/configure_program_rule.html#program_rules_operators_functions> | Jira<https://jira.dhis2.org/browse/DHIS2-2724>

Hide options and option group with program rules: Use program rules to selectively hide options in an option set. Option groups can be used to hide or show options effectively for large option sets. This feature can be used when some data entered into an event can help qualify or disqualify options in an option set. An example is showing relevant malaria vectors based on the location of the infection.

Screenshot 1<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/configure-option-group.png> | 2<https://s3-eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/program-rule-show-option-group.png> | Docs<https://docs.dhis2.org/master/en/user/html/configure_program_rule.html#create_program_rule> | Jira<https://jira.dhis2.org/browse/DHIS2-431>

Variable for program rule runtime environment: Program rules now have a new variable that can be used to see which runtime environment is triggering the rule: Web client, Android client or server. This can be useful when making a rule that for example only should run on the web client and not on Android.

Docs<https://docs.dhis2.org/master/en/user/html/configure_program_rule.html#program_rules_operators_functions> | Jira<https://jira.dhis2.org/browse/DHIS2-3129>


Icon library for metadata: You now have the ability to associate icons to programs, stages, data elements and the options of an option set. There are currently 134 icons available through the maintenance app. In the Android app, program icons render in the home screen, and stage icons render when adding a new stage. For data elements and options, the icons render for single event programs when a section contains a single data element.

Screenshot 1<https://s3.eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/assign-icon-program.png> | 2<https://s3.eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/icon-picker.png> | 3<https://s3.eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/icon-android-app.png> | Demo<https://play.dhis2.org/2.30/dhis-web-maintenance/#/edit/programSection/program/uy2gU8kT1jF> | Docs<https://docs.dhis2.org/master/en/developer/html/webapi_object_style.html> | Jira<https://jira.dhis2.org/browse/DHIS2-2443>

Color palette for metadata: The new Android app can now assign background colours for programs, stages, data elements and options in option sets. A color in the maintenance app allows selection from a optimized color palette.

Screenshot 1<https://s3.eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/assign-color-program.png> | 2<https://s3.eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/color-android-app.png> | Demo<https://play.dhis2.org/2.30/dhis-web-maintenance/#/edit/programSection/program/uy2gU8kT1jF> | Docs<https://docs.dhis2.org/master/en/developer/html/webapi_object_style.html> | Jira<https://jira.dhis2.org/browse/DHIS2-2441>

Rendering types for program sections: For the new Android app, a program section with a single data element and associated option set can render the options in sequential or matrix layout based on the the associated icon of the option.

Screenshot 1<https://s3.eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/section-render-type.png> | 2<https://s3.eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/render-section-sequential.png> | 3<https://s3.eu-west-1.amazonaws.com/content.dhis2.org/releases/screenshots/30/render-section-matrix.png> | Docs<https://docs.dhis2.org/master/en/developer/html/webapi_render_type.html> | Jira<https://jira.dhis2.org/browse/DHIS2-2439>


Horizontal scalability: DHIS 2 can now be scaled horizontally at the application layer by hosting multiple DHIS 2 application instances in a cluster. Several technical challenges have beens solved, such as shared sessions, shared application cache and cluster leader election through the use of the Redis data store, and Hibernate cluster cache invalidation. The Redis data store is a requirement for horizontal scalability.


Two-factor authentication: You can now enable two-factor authentication for your DHIS 2 user. This lets you to enable a secondary authentication step for improved performance, using a TOTP<https://en.wikipedia.org/wiki/Time-based_One-time_Password_algorithm> based authentication app such as Google Authenticator<https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2&hl=en>. You can enable 2FA from Profile menu > Account settings. Admins can disable 2FA for other users from the list of users in the user app.



Kafka support: DHIS 2 now utilizes Kafka for queueing events sent to the API before being imported into the system. This will allow for improved performance and scalability of bulk imports of events, enrollments and tracked entity instances.



Release Information


Download release and sample database


Documentation and Javadocs


Upgrade notes

Upgrade notes on GitHub<https://github.com/dhis2/dhis2-releases/blob/master/releases/2.30/README.md>

Details about each feature on JIRA (requires login)


Overview of issues on JIRA (requires login)


Source code on Github


Demo instance


Instructions for signing up for DHIS 2 mailing lists


Enjoy the new release.

Best regards,

The DHIS2 development team

Mailing list: https://launchpad.net/~dhis2-users
Post to     : dhis2-users@xxxxxxxxxxxxxxxxxxx<mailto:dhis2-users@xxxxxxxxxxxxxxxxxxx>
Unsubscribe : https://launchpad.net/~dhis2-users
More help   : https://help.launchpad.net/ListHelp

Follow ups