jayasanka
(Jayasanka Weerasinghe)
June 24, 2020, 4:16pm
1
Hi all,
The current module doesn’t support ADX disaggregations. In order to do that we need to map DHIS2’s Categories and CategoryOptions within the module. The next thing is the current import format is not compatible with the exported metadata information of DHIS2. We have to fix it at all.
This is the current DB:
There’s an existing ticket that suggested a structure.
https://issues.openmrs.org/projects/DRM/issues/DRM-43
But according to the DHIS2 ADX documentation we don’t need to store the CategoryOptionCombos
.
I raised a discussion on DHIS2 Community as well.
Hi @jayasanka, I’m sure @morten, our integration team lead, can help you. You can also reach the integration team at integration@dhis2.org.
This is the EER I came up by considering the above.
One more thing to clarify;
The Reporting module supports custom queries right? If it is we no longer need to add another field to store custom queries.
cc: @akshika47 @heliostrike
1 Like
jayasanka
(Jayasanka Weerasinghe)
June 25, 2020, 2:22pm
2
@mseaton @judeniroshan @darius @ssmusoke @dkayiwa @arbaughj @maurya
Could you please help to review this EER diagram?
Also, may I know whether the reporting module supports custom queries?
1 Like
akshika47
(Akshika Wijesundara)
June 25, 2020, 11:28pm
3
This is good progress @jayasanka .
@judeniroshan could you answer the question on the reports module? I have not worked with that module before.
2 Likes
I have shared the knowledge with @jayasanka on this topic
2 Likes
jayasanka
(Jayasanka Weerasinghe)
July 9, 2020, 7:21am
6
Hello there,
We have to remove existing implementations that aren’t compatible with the new ADX disaggregations. The current implementation is designed according to the DFX structure but later on, it has changed to ADX while keeping the same. It supports only non disaggregated data. Unfortunately, the current implementation isn’t expandable because it is incompatible with the latest DHIS2’s data structure. In order to implement it, we have to remove some previous implementations.
Also, there are some unused classes as which used on DFX and haven’t removed when upgrading. Need to remove them as well.
Issue:
DRM-53 Clean existing code which affects by the ADX profile changes
Type: Enhancement
Priority: TBD
@akshika47 could you please review and merge this PR?
openmrs:adx-disaggreagations
← jayasanka-sack:DRM-53
opened 07:17AM - 09 Jul 20 UTC
jayasanka
(Jayasanka Weerasinghe)
July 9, 2020, 8:09am
7
@akshika47 Please review and merge this PR as well, (after merging DRM-53)
openmrs:adx-disaggreagations
← jayasanka-sack:DRM-54
opened 07:54AM - 09 Jul 20 UTC
## The issue I worked on
See https://issues.openmrs.org/browse/DRM-54
## Des… cription of what I changed:
- Implement new model classes
- Add SQL queries to create the DB
- Implement Hibernate mappings
This is the updated EER:
jayasanka
(Jayasanka Weerasinghe)
July 13, 2020, 9:31am
8
@akshika47 could you please review and merge this PR?
openmrs:adx-disaggreagations
← jayasanka-sack:DRM-56
opened 08:44AM - 13 Jul 20 UTC
Ticket:
https://issues.openmrs.org/browse/DRM-56
jayasanka
(Jayasanka Weerasinghe)
July 14, 2020, 1:14pm
9
I’ve generated JAXB classes to fully unmarshal the import file using XJC .
XJC compiles an XML schema file into fully annotated Java classes.
Please review and merge:
openmrs:adx-disaggreagations
← jayasanka-sack:DRM-57
opened 01:06PM - 14 Jul 20 UTC
jayasanka
(Jayasanka Weerasinghe)
July 15, 2020, 5:41pm
10
Hi all,
I implemented the following:
Create methods to extract and save,
Data Elements
Data Set
Categories
Category Options
Disaggregations
Create a new DAO method to save Disaggregations
Create a new DAO method to find a Dissagregation using a Category and a Category Option
Please Review and merge:
openmrs:adx-disaggreagations
← jayasanka-sack:DRM-58
opened 05:32PM - 15 Jul 20 UTC
Ticket:
DRM-58 Import DataElements, Categories and CategoryOptions using Metadata file
Type: Sub-task
Priority: Must
jayasanka
(Jayasanka Weerasinghe)
July 17, 2020, 2:19pm
11
Hi all,
I implemented the following,
Implement a method to generate Data Value Template
Implement a recursive method to generate Disaggregation combinations for a given Data Element
Remove irrelevant field “name” from Data Value Template
Fix wrong field “dataelement_id” in Data Value Template’s mapping file
Implement DAO methods to
save a Data Value Template
remove Data Value Templates of a given Dataset
get Disaggregations of a given Category
With this PR the import function is being fully completed.
Please review and merge:
openmrs:adx-disaggreagations
← jayasanka-sack:DRM-59
opened 09:43AM - 17 Jul 20 UTC
Ticket:
DRM-59 Generate Data Value Templates using Metadata file
Type: Sub-task
Priority: TBD
1 Like
jayasanka
(Jayasanka Weerasinghe)
July 21, 2020, 10:20am
12
Hi all,
I’ve implemented the following,
Create a new view list imported Data Sets
Create a new controller to handle reports
Create a new DAO method to get all Data Sets
Modify the local header with new links and fix broken HTML tags
Remove irrelevant JSP pages
Please review and merge:
openmrs:adx-disaggreagations
← jayasanka-sack:DRM-60
opened 10:08AM - 21 Jul 20 UTC
Ticket: https://issues.openmrs.org/browse/DRM-60
1 Like
jayasanka
(Jayasanka Weerasinghe)
July 25, 2020, 11:11am
13
Hello there,
I’ve implemented the following,
Create DAO methods
Find Data Value Templates by a Data Set
Find a dataset by UUID
Create a new service to update the report of a Data Set
Create a new view to map Report with a DataSet
Please review and merge:
openmrs:adx-disaggreagations
← jayasanka-sack:DRM-61
opened 10:50AM - 25 Jul 20 UTC
Ticket: https://issues.openmrs.org/browse/DRM-61
1 Like
jayasanka
(Jayasanka Weerasinghe)
July 29, 2020, 7:26am
14
Hi,
I’ve implemented the following,
Create a DAO method to find a DataValueTemplate by id
Create a service to update the Report Indicator of a DataValue Template
Create a view to mapping DataValueTemplates with Report Indicators
Please review and merge:
openmrs:adx-disaggreagations
← jayasanka-sack:DRM-62
opened 07:09AM - 29 Jul 20 UTC
1 Like
jayasanka
(Jayasanka Weerasinghe)
August 6, 2020, 1:20pm
15
Hi all,
I’ve implemented the following,
Exclude dependencies which included javax.xml.namespace.QName
Create new Controller and Service methods to
Execute the mapped Report Definition
Map Report result with Data Value Templates
Generate ADX output
Post data to connected DHIS2 instance
Please review and merge:
openmrs:adx-disaggreagations
← jayasanka-sack:DRM-63
opened 11:09AM - 06 Aug 20 UTC
jayasanka
(Jayasanka Weerasinghe)
August 7, 2020, 8:07am
16
Hi all,
I’ve replaced Category and Category Options with Category Options Combos. With that, it will be easy to store metadata and it will reduces the complexity of the module.
Please review and merge:
openmrs:adx-disaggreagations
← jayasanka-sack:DRM-64
opened 07:40AM - 07 Aug 20 UTC
Ticket: https://issues.openmrs.org/browse/DRM-64
jayasanka
(Jayasanka Weerasinghe)
August 14, 2020, 5:12am
17
Hi all,
I’ve added the support for the following period Types:
Daily
Weekly
WeeklyWednesday
WeeklyThursday
WeeklySaturday
WeeklySunday
Monthly
BiMonthly
Quarterly
Yearly
Please review and merge:
openmrs:adx-disaggreagations
← jayasanka-sack:DRM-66
opened 05:08AM - 14 Aug 20 UTC
Ticket: https://issues.openmrs.org/browse/DRM-66
2 Likes
ibacher
(Ian Bacher)
August 14, 2020, 12:36pm
18
@jayasanka After our conversation with @jamesm , do you think there’s a way we could extend or modify the Period
type to support the full range of ADX periods rather than just creating fixed classes for supported period lengths? E.g., as I understand things “01-02-2020/P2D” is a valid ADX period descriptor, but with the current setup, it looks like to support that we’d need to add a new “EveryOtherDay” class and supporting code. It would be nicer if the Period
class defined something like a static function of
:
public static Period of(String periodDescriptor) {
Period newPeriod = new Period();
String[] parts = periodDescriptor.split("/");
...
}