Skip to content

v10.0.0

Compare
Choose a tag to compare
@1t5j0y 1t5j0y released this 23 Sep 09:15

Changes

Improvements to DEA usage experience

Enhancements to dashboards - Documentation

Support for custom filters on standard report cards

Support disabling auto refresh on custom dashboards

Enhancements to CSV uploads

Enhancements to Location upload csv - Documentation

Enhancements to Users and Catchments upload csv

Fixes

Appendix

Dashboard, report card, filters, and group dashboard added after deployment of 10.0 will not synchronise to the mobile app on version < 10.0.

... for mobile apps on version >= 10.0 these features will work as before and normally. As the users update their mobile app to the newer version the next sync will download any the new reports, filters, dashboards made after 10.0 deployment. For new install of app >= 10.0 will also work normally. This applies to - User Group to Dashboard mapping as well. This implies that while user groups will continue to work normally but any dashboard association / addition made to the User group will not sync to old versions.

Workaround (for implementation and support teams)

This should be exercised only if it is absolutely necessary, ideally only if there are defects that need to be fixed in existing reports/dashboards/filters. It should not be exercised for delivering new reports etc. to the users, as simple app update takes care of this.

Like any other data fix, please get it reviewed before running in production.

The data fix involves setting the last modified date time to be before 10.0 deployment date and after the max last modified date time present on the mobile app for that entity type. Tables involved (dashboard, report_card, dashboard_section, dashboard_filter, dashboard_section_card_mapping & group_dashboard).

In prod environment, "End of life1" is currently set to "2024-09-27", therefore, ensure that you set the last_modified_date_time to a value between and "2024-09-27 00:00:00".

Technical explanation of why this limitation

We have developed a lot of new standard report card types and filter types in release 10.0. The older version of mobile app do not understand these and in some cases the app crashes. Specifically disallowing only the newer card types and filters is technically difficult to implement hence there is a blanket restriction. We are testing the 10.x app to make sure we can avoid putting such limitations in the future.

Criteria to evaluate whether a report_card change is eligible for back-dating through manual data-fix

select *
from report_card
where id in (
             <Input your list of report_card ids here>
    )
  and (
        (
            (standard_report_card_type_id is null OR standard_report_card_type_id not in (5, 4, 9, 6, 7, 8))
            AND standard_report_card_input = '{}'
        )
        OR
        (
            standard_report_card_type_id in (5, 4, 9, 6, 7, 8)
            AND standard_report_card_input -> 'programs' = '[]' :: jsonb
            AND standard_report_card_input -> 'subjectTypes' = '[]' :: jsonb
            AND standard_report_card_input -> 'encounterTypes' = '[]' :: jsonb
            AND (
                    standard_report_card_input -> 'recentDuration' is null
                    OR standard_report_card_input -> 'recentDuration' = '"{\"value\":\"1\",\"unit\":\"days\"}"'
                )
        )
    );

The above query checks that the report card do not have any configuration that would be lost in-case this is first synced to old (<= 9.4 version ) client and then he/she upgrades to a newer version(>= 10.0) of client.