Good job with the release. By testing our API against the demo version, we just noticed that the status info looks to have changed quite a bit:
status is now “OK” instead of “SUCCESS” when good
“import_type_summaries” have disappeared in favor of a “stats” object
I could not find this on the upgrade notes - do you have some place where the API changes are detailed at that level?
While it may looks like a small change, it is breaking several of our cases. Do you have any advice on how to maintain an API client through various DHIS2 versions?
On Thu, Oct 13, 2016 at 12:51 PM, Lars Helge Øverland email@example.com wrote:
DHIS version 2.25 is out with a lot of new features, apps and improvements.
Log in with admin/district on the demo system.
External map layers: The GIS app now supports TMS (Tile Map Service), XYZ and WMS (Web Map Service) layers. These are all popular protocols for map data and there are numerous map services available, allowing you to display maps for rivers, roads, weather, land data and everything else. External map layers can be set up from the Maintenance app, and then be accessed from the top bar in the GIS app.
Push analysis: You can now push data analysis in the form of reports, charts and maps to your users over email. This allows for improving awareness and visibility of your data, and can encourage people to more actively look at analysis. Push analysis is based on dashboards, and can be set up, run and scheduled from the Maintenance app. You can also run immediately and preview from the the context menu.
Indicator as filter: A single indicator or data set reporting rate can now be used as filter in charts and pivots. This allow you to create charts for example with multiple periods and organisation units.
Dashboard translations: The names of dashboards can now be translated, meaning you can have dashboard names appear in user’s local language.
Deep linking of favorites: When opening favorites in the Pivot Table and Visualizer apps, the browser address bar URL will reflect the current favorite. This allows for easy sharing of favorites through copy-and-pasting the URL.
Chart rendering: The chart rendering engine has been rewritten from scratch and now looks better, renders faster and will allow for new chart types in the coming releases. The Data Visualizer app’s favorite solution has also been upgraded.
Favorite description: You can now specify description for pivot table and chart favorites. This allows you to add more information such as the purpose and method to interpret the analysis favorite. You can also store titles for pivot tables. Click rename to change it.
Interpretations in analytics apps: The Pivot Table and Visualizer apps now have a right-side panel where you can see details and interpretations for the current favorite. Click the right-side arrow to open the panel.
Data analytics export as raw data: The analytics API now lets you produce aggregated data exports in the raw data value set format. This is useful for data exchange, e.g. you can aggregate data in a source system from facility to district and from months to quarters, and combine data elements using aggregate indicators or program indicators, before importing as raw data values in the destination system. You can try it out using the Pivot table app from Download > Advanced > Data value set XML.
Flexible disaggregation: Data elements can now be disaggregated differently for each data set they are part of. Put differently, a data element can be linked to multiple category combinations. When assigning a data element to a data set, you can define which category combination to use. This is useful in order to reuse data elements, for instance when different provinces in a country employ different data disaggregation, or when the disaggregation change from year to year.
Soft data value delete: Data values are now “softly” deleted, meaning they are marked as deleted in the database rather than permanently removed. A new field deleted has been introduced for data values which is set to true for deleted values. Softly deleted data can optionally be included when requesting data through the API by setting the includeDeleted param to true. This allows clients, such as Android apps and third-party systems, to react when data has been deleted in DHIS 2.
Data value audit: The data value import process now generates data value audit records. This allows for proper auditing of data being ingested from bulk data imports.
Predictors: A new data predictor feature allows you to generate data values based on an expression and several other parameters. This is useful for generating targets, thresholds and predicted data in the future.
Profile: The profile section has been rewritten and has received the new and modern look.
Maintenance: The Maintenance app now includes configuration of tracked entity attributes, tracked entity attribute groups, relationship types and tracked entities.
Reminders and notifications: A new notification solution allows for setting up reminders for upcoming events and notifications for missed events in tracker programs. Reminders can be sent before and after scheduled events, directly to people and DHIS2 users. Also, notifications can be sent on program enrollments and enrollment completion. Messages can be delivered by SMS, email and as DHIS2 messages.
Organisation unit value type: A new value type organisation unit has been introduced, allowing you to select organisation units for attributes and data elements in Event Capture and Tracker Capture apps. This means that you can associate multiple organisation units to an event which is useful e.g. to store place of infection in addition to place of treatment. Try it out with the Inpatient morbidity mortality program.
Capture location of enrollment: You can now capture the coordinate / location of an enrollment. This allows you to know where an enrollment took place. The location map widget is based on OpenStreetMap. This can be enabled through the capture coordinates property in program maintenance.
Mapzen-based location search: In the location map widget you can now search for most addresses in the world and store the coordinate of the location. Click the magnifier icon in the top left corner of the map widget and start typing your address. Try it out by clicking register, then click on the get from map icon next to coordinate.
Deletion of tracked entity instances: Tracked entity instances can now be permanently deleted. This means all related records, including enrollments, events and audit records will be removed.
Messaging widget: The tracker person dashboard now has a messaging widget which allows for sending messages directly to the person using email or SMS. The contact info is automatically fetched from the person profile, and can also be specified directly in the widget.
Locking for completed events: Completed events can now be automatically locked for further modification after a given number of days. This can be configured per program through the completed events expiry days field. For example: if expiry days is set to 7, then events which have been completed more than 7 days ago can no longer be edited.
Event locking per program: In the Event Capture and Tracker Capture apps, time periods can be locked in order to prevent new events to be added. This is configurable through the expiry days and expiry period type properties, which controls the number of days after a period of a specific period type for which events can still be added. For example: if expiry days is 7 and expiry period type is monthly; new events can be added for a month up to 7 days after the end date of that month.
Configurable columns: In the Tracker Capture app, the columns to display in the list of tracked entity instances can be selected and remembered per user. In the Event Capture app, the columns to display in the list of events can be selected.
Web server clustering: This release allows for deploying DHIS2 in a web server cluster. When configured appropriately, each node in the cluster will ensure that the application caches of the other nodes are kept in sync. Up to 5 nodes can be configured, allowing for web server horizontal scalability. For each node, the hostname of the other nodes must be configured.
Database read replication: DHIS2 now allows for configuring up to 5 read replicas of the master database. When set up, the application will automatically offload read-only database queries to the read replicas, allowing for horizontal scalability of the database read operation capacity. Each read replica must be specified in the dhis.conf configuration file.
WEB API FEATURES
API versioning: The Web API is now versioned. The versioning is defined through the request URL with a version number. For example /api/25/dataElements will return version 25 of the data elements resource. If you omit the version part of the URL, the system will use the current API version. The last three versions of the API will be supported.
Indicator analytics: The numerator, denominator and factor components of indicator values can be included separately in analytics responses by setting the includeNumDen parameter to true.
Translation in metadata export: Object translations can now be included in the metadata export payload by setting the translate parameter to true.
Async metadata import: Metadata imports can now be performed asynchronously by setting the async parameter to true, which is useful for large metadata imports.
Logical operators: You can now specify whether to use the AND or OR logical operators for filters while using the metadata export resources.
You can download Live package, WAR file, sample data and source code here:
You will find documentation and Javadocs here:
You can read the upgrade notes and find upgrade script here:
You can find the source code on Github here:
The demo application can be found here:
Full list of features can be found at the Launchpad page:
Instructions for signing up for the DHIS 2 mailing lists here:
Thanks goes to EyeSeeTea for contribution to this release.
the DHIS 2 development team
Mailing list: https://launchpad.net/~dhis2-devs
Post to : firstname.lastname@example.org
Unsubscribe : https://launchpad.net/~dhis2-devs
More help : https://help.launchpad.net/ListHelp
**Martin Van Aken - **Freelance Enthusiast Developer
Mobile : +32 486 899 652
Follow me on Twitter : @martinvanaken
Call me on Skype : vanakenm
Hang out with me : email@example.com
Contact me on LinkedIn : http://www.linkedin.com/in/martinvanaken
Company website : www.joyouscoding.com