Re: [Dhis2-devs] [Dhis2-users] Tracker - Identification number
Hi Sumudu, For version 2.15, There is a person Identifier, Go to Program Attributes select Attributes; You can make an ID unique by checking UNIQUE which will give you options like unique with in 1.whole system, 2. org unit, 3. program, or 4. program and orgunit. This means that you get to enter the clinic number on registration. (At some point IDs were automatically generated am not sure if that is still the case may be some one can provide more Information on this). Also it will be possible to see the orgunit and period as an output such as on Search Results. Tracked Entity: Helps to define the different objects that you would like to track with in your system (no longer limited to persons). This can be Persons for TB, HIV and ANC programs or ITEMS if one is interested in tracking drugs or any other Logistic Items. I hope this helps On Sun, May 18, 2014 at 4:01 PM, sumudu weerasinghe sumudu...@gmail.comwrote: Dear All, I want to create a psychiatric patient identification number as - it should contain initial code indicating org unit , program, and year - number need to be generate by system without manual entering 1. Is it possible in DHIS2 2.15 tracker ? 2. Is there Person Identifier in New version 2.15? 3. What is mean by Tracked entity in new version 2.15? Regards Sumudu ___ Mailing list: https://launchpad.net/~dhis2-users Post to : dhis2-us...@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-users More help : https://help.launchpad.net/ListHelp -- Thank you and Kind Regards *Immarcqulate. A (Emma Kassy) * *You miss 100% of the shots you don't take.* ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] [Dhis2-users] No data values found
Hi John, Check that the analytics actually ran and there were no errors in the log. If that is not a problem, try different configuration in the org unit dimension e.g. using groups instead of level or vice versa. I have also found that sometimes I get no values with an org unit level but same analysis runs okay with user org unit or a particular ou group. Hope this helps. Best Busoye Quoting John Ojo jn...@yahoo.com: Hi Everyone, I get the message No values found in the Pivot Table and Data Visualizer applications in dhis2 2.15 when I try to visualize data I have entered into my database. The Dataset report also draws a blank. I updated the Data mart before attempting the data visualization. I have superuser access. I see the data when I open the data entry app and select any of the Orgunits and the same time period for which data had been entered. I would appreciate help to be able to visualize my data values. Currently using dhis2 version 2.15, build revision:14942 and build date: 2014-04-22 21:38, on a Windows 7 platform. Thank you, John John Ojo MD, FMCPH Monitoring Evaluation Specialist West African Regional Disease Surveillance (WARDS) Project West Africa Health Organization (WAHO/ECOWAS) Bobo-Dioulasso, Burkina Faso. Mobile: +226 65897160+226 65897160 Skype: Johnojo ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] [Bug 1320755] [NEW] Replacing Number with Zero does not update Value in Data Entry
Hi Hardingt, This might not be a bug. Check your data elements definition to see if you have checked Save Zero Values. If you have created the data elements as zero is not significant then the database will not store zero. Hope this helps. Best, Busoye Quoting hardingt hardi...@gmail.com: Public bug reported: Replacing a Data Element's value with a 0 will not update the database (Number remains green, and derived indicators also will not update). To circumvent, you must remove the 0 (or whatever number was there) all together so that the data element is now blank. Then it will briefly turn yellow and all indicators based on this data element will automatically update. ** Affects: dhis2 Importance: Undecided Status: New ** Attachment added: I put 1, 2, 3, 4 into the fields, then replaced the 4 with a zero. https://bugs.launchpad.net/bugs/1320755/+attachment/4115297/+files/Capture.PNG -- You received this bug notification because you are a member of DHIS 2 developers, which is subscribed to DHIS. https://bugs.launchpad.net/bugs/1320755 Title: Replacing Number with Zero does not update Value in Data Entry Status in DHIS 2: New Bug description: Replacing a Data Element's value with a 0 will not update the database (Number remains green, and derived indicators also will not update). To circumvent, you must remove the 0 (or whatever number was there) all together so that the data element is now blank. Then it will briefly turn yellow and all indicators based on this data element will automatically update. To manage notifications about this bug go to: https://bugs.launchpad.net/dhis2/+bug/1320755/+subscriptions ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] [Branch ~dhis2-devs-core/dhis2/trunk] Rev 15298: Implemented Interpretations for Mobile Lite
revno: 15298 committer: paulmarkcasti...@gmail.com branch nick: trunk timestamp: Mon 2014-05-19 15:34:54 +0800 message: Implemented Interpretations for Mobile Lite https://blueprints.launchpad.net/dhis-mobile/+spec/mla-interpretations added: dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/interpretation/ dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/interpretation/action/ dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/interpretation/action/GetInterpretation.java dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/interpretation/action/GetInterpretations.java dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/interpretation/action/PostInterpretationComment.java dhis-2/dhis-web/dhis-web-light/src/main/webapp/dhis-web-light/interpretation/ dhis-2/dhis-web/dhis-web-light/src/main/webapp/dhis-web-light/interpretation/interpretation.vm dhis-2/dhis-web/dhis-web-light/src/main/webapp/dhis-web-light/interpretation/interpretations.vm modified: dhis-2/dhis-web/dhis-web-light/src/main/resources/META-INF/dhis/beans.xml dhis-2/dhis-web/dhis-web-light/src/main/resources/org/hisp/dhis/light/i18n_module.properties dhis-2/dhis-web/dhis-web-light/src/main/resources/struts.xml dhis-2/dhis-web/dhis-web-light/src/main/webapp/dhis-web-light/menu.vm -- lp:dhis2 https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk Your team DHIS 2 developers is subscribed to branch lp:dhis2. To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription === added directory 'dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/interpretation' === added directory 'dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/interpretation/action' === added file 'dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/interpretation/action/GetInterpretation.java' --- dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/interpretation/action/GetInterpretation.java 1970-01-01 00:00:00 + +++ dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/interpretation/action/GetInterpretation.java 2014-05-19 07:34:54 + @@ -0,0 +1,112 @@ +package org.hisp.dhis.light.interpretation.action; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.hisp.dhis.interpretation.Interpretation; +import org.hisp.dhis.interpretation.InterpretationService; + +import com.opensymphony.xwork2.Action; + +/** + * + * @author Paul Mark Castillo + * + */ +public class GetInterpretation +implements Action +{ +/** + * + */ +private static final Log log = LogFactory.getLog( GetInterpretations.class ); + +/** + * + */ +public GetInterpretation() +{ +} + +// - +// Dependencies +// - + +/** + * + */ +private InterpretationService interpretationService; + +/** + * @return the interpretationService + */ +public InterpretationService getInterpretationService() +{ +return interpretationService; +} + +/** + * @param interpretationService the interpretationService to set + */ +public void setInterpretationService( InterpretationService interpretationService ) +{ +this.interpretationService = interpretationService; +} + +// - +// Input Output +// - + +/** + * + */ +private int interpretationId; + +/** + * @return the interpretationId + */ +public int getInterpretationId() +{ +return interpretationId; +} + +/** + * @param interpretationId the interpretationId to set + */ +public void setInterpretationId( int interpretationId ) +{ +this.interpretationId = interpretationId; +} + +/** + * + */ +private Interpretation interpretation; + +/** + * @return the interpretation + */ +public Interpretation getInterpretation() +{ +return interpretation; +} + +/** + * @param interpretation the interpretation to set + */ +public void setInterpretation( Interpretation interpretation ) +{ +this.interpretation = interpretation; +} + +// - +// Action Implementation +// - + +@Override +public String execute() +throws Exception +{ +setInterpretation( interpretationService.getInterpretation( getInterpretationId() )
Re: [Dhis2-devs] [Bug 1320755] [NEW] Replacing Number with Zero does not update Value in Data Entry
I think this actually is a bug, or at the very least, something quite confusing to users. The issue here is that IF the data element is not zero significant, and a user enters a zero. Tim describes a case which is reproducible, but what happens is not really what is expected. If a user enters a zero when the DE is not zero significant, then the old value is not replaced and the old value persists, which is likely not what the user intended. I think the desired action would be 0) Value is changed by the user. 1) Data value is deleted in all cases. 2) Data value is replaced with a new value If the data value is zero significant, then the data value is deleted. If the data value is not zero significant, then the tuple is deleted entirely. else, the data value is replaced with the value which the user enters. I think the problem is that users often do not understand the subtleties of how zero storage works in DHIS2, so to them, entering a zero basically means I am deleting this value. DHIS2 however simply ignores when a zero is entered all together (at the point of the user interface) and the zero is never transmitted to the server to determine whether or not the zero actually needs to be stored. Of course, as you both say, the solution is to delete the value first, and then enter a zero. My suggestion here would be that if a user changes a value, then it is first deleted, and then whether or not the value needs to be stored, would be sorted out in a separate step. Regards, Jason On Mon, May 19, 2014 at 9:15 AM, bus...@hisp.org wrote: Hi Hardingt, This might not be a bug. Check your data elements definition to see if you have checked Save Zero Values. If you have created the data elements as zero is not significant then the database will not store zero. Hope this helps. Best, Busoye Quoting hardingt hardi...@gmail.com: Public bug reported: Replacing a Data Element's value with a 0 will not update the database (Number remains green, and derived indicators also will not update). To circumvent, you must remove the 0 (or whatever number was there) all together so that the data element is now blank. Then it will briefly turn yellow and all indicators based on this data element will automatically update. ** Affects: dhis2 Importance: Undecided Status: New ** Attachment added: I put 1, 2, 3, 4 into the fields, then replaced the 4 with a zero. https://bugs.launchpad.net/bugs/1320755/+attachment/ 4115297/+files/Capture.PNG -- You received this bug notification because you are a member of DHIS 2 developers, which is subscribed to DHIS. https://bugs.launchpad.net/bugs/1320755 Title: Replacing Number with Zero does not update Value in Data Entry Status in DHIS 2: New Bug description: Replacing a Data Element's value with a 0 will not update the database (Number remains green, and derived indicators also will not update). To circumvent, you must remove the 0 (or whatever number was there) all together so that the data element is now blank. Then it will briefly turn yellow and all indicators based on this data element will automatically update. To manage notifications about this bug go to: https://bugs.launchpad.net/dhis2/+bug/1320755/+subscriptions ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] [Dhis2-users] Tracker - Identification number
Hi Sumudu, Thanks Emma for the response. Just to add a bit more detail on the identifier issue. There is no way at the moment to automatically generate IDs on the format you suggest. What is possible, as Emma writes, is to define what we call uniqueness scope for attributes. So in your case I would create an attribute Clinic Number (the last part of your ID) with value type Number, then tick unique and select in program within organisation unit. This means that the users only deal with the Clinic Number, but in the back-end the system makes sure that there are no duplicate Clinic Numbers for any combination of program+organisation unit. So when you search for Clinic Number you might get multiple hits/persons, but not for the same organisation unit + program combination. You can then narrow the search by searching in only one organisation unit and one program, which will give you maximum 1 person for a full clinic number search. A typical clinician at a local clinic will only have access to one or a few programs and typically only one organisation unit, so the search scope is by default same or similar to the uniqueness scope, which makes it easier to quickly identify persons using the local Clinic Number (found at the patient/mother/child card or similar). We are planning to support period as part of this uniqueness scope as well, but that is not supported yet in 2.15. That will allow you to support the typical local practice of restarting the Clinic Number count in the paper registers at the beginning of every year (or financial year), so that duplicates will also be allowed for the same program+organisation unit as long as they are in separate periods (e.g. years) of your selected period type for uniqueness scope. On tracked entity, if your programs are about persons then add a tracked entity called Person and make sure to select that one when creating a new program. That's all. Ola --- -- Ola Hodne Titlestad (Mr) HISP Department of Informatics University of Oslo Mobile: +47 48069736 Home address: Eftasåsen 68, 0687 Oslo, Norway. Googlemaps linkhttps://maps.google.com/maps?q=Eftas%C3%A5sen+68,+0687+Oslo,+Norgehl=enie=UTF8sll=59.893855,10.785116sspn=0.222842,0.585709oq=eftas%C3%A5sen+68,+0687+Oslo,+t=hhnear=Eftas%C3%A5sen+68,+%C3%98stensj%C3%B8,+0687+Oslo,+Norwayz=16 On 19 May 2014 09:11, Emma Kassy ekass...@gmail.com wrote: Hi Sumudu, For version 2.15, There is a person Identifier, Go to Program Attributes select Attributes; You can make an ID unique by checking UNIQUE which will give you options like unique with in 1.whole system, 2. org unit, 3. program, or 4. program and orgunit. This means that you get to enter the clinic number on registration. (At some point IDs were automatically generated am not sure if that is still the case may be some one can provide more Information on this). Also it will be possible to see the orgunit and period as an output such as on Search Results. Tracked Entity: Helps to define the different objects that you would like to track with in your system (no longer limited to persons). This can be Persons for TB, HIV and ANC programs or ITEMS if one is interested in tracking drugs or any other Logistic Items. I hope this helps On Sun, May 18, 2014 at 4:01 PM, sumudu weerasinghe sumudu...@gmail.comwrote: Dear All, I want to create a psychiatric patient identification number as - it should contain initial code indicating org unit , program, and year - number need to be generate by system without manual entering 1. Is it possible in DHIS2 2.15 tracker ? 2. Is there Person Identifier in New version 2.15? 3. What is mean by Tracked entity in new version 2.15? Regards Sumudu ___ Mailing list: https://launchpad.net/~dhis2-users Post to : dhis2-us...@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-users More help : https://help.launchpad.net/ListHelp -- Thank you and Kind Regards *Immarcqulate. A (Emma Kassy) * *You miss 100% of the shots you don't take.* ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] 'Average' Aggregation does 'Sum' instead
Hi James, the aggregation operator refers to the time dimension - data will be averaged through time but still summed in the org unit hierarchy dimension. We could make this clearer in the system I guess. regards, Lars On Mon, May 19, 2014 at 12:55 PM, James Chang jamesbch...@gmail.com wrote: Hi, On DHIS demo site, http://apps.dhis2.org/demo, 'Average' aggregation operator seem to do 'Sum' instead. I didn't do any data entry or ran Analytics, but only looking at the current data, 'Total Population' in 'Ngelehun CHC' and 'Njandama MCHP' seem to sum on 'Badjia' even though the 'Total Population' is set to 'Average' for Aggregation operator. See the attached images. ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] [Branch ~dhis2-devs-core/dhis2/trunk] Rev 15299: tei registration and enrollment
revno: 15299 committer: Abyot Asalefew Gizaw aby...@gmail.com branch nick: dhis2 timestamp: Mon 2014-05-19 13:33:07 +0200 message: tei registration and enrollment modified: dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/i18n/en.json dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/controllers.js dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/services.js dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/tracker-capture.js dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/registration.html -- lp:dhis2 https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk Your team DHIS 2 developers is subscribed to branch lp:dhis2. To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription === modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/i18n/en.json' --- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/i18n/en.json 2014-05-16 13:58:07 + +++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/i18n/en.json 2014-05-19 11:33:07 + @@ -75,6 +75,9 @@ add_new: Add New, register_new: Register new, registration: Registration, +registration_error: Error in registration, +category: Category, +entity_type: Entity type, save_and_add_new: Save and add new, save_and_go_back: Save and go back, save_and_continue: Save and continue, === modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/controllers.js' --- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/controllers.js 2014-05-16 13:58:07 + +++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/controllers.js 2014-05-19 11:33:07 + @@ -11,11 +11,10 @@ $modal, Paginator, TranslationService, -SelectedEntity, storage, AttributesFactory, EntityQueryFactory, -TrackedEntityInstanceService) { +TEIService) { //Selection $scope.selectedOrgUnit = ''; @@ -123,8 +122,8 @@ programUrl = 'program=' + $scope.selectedProgram.id; } -$scope.gridColumns = $scope.generateGridColumns($scope.attributes); - +$scope.gridColumns = $scope.generateGridColumns($scope.attributes); + if( mode === $scope.searchMode.freeText ){ if(!$scope.searchText){ $scope.emptySearchText = true; @@ -149,7 +148,7 @@ } //get events for the specified parameters -TrackedEntityInstanceService.search($scope.selectedOrgUnit.id, +TEIService.search($scope.selectedOrgUnit.id, $scope.ouMode, queryUrl, programUrl, @@ -159,7 +158,7 @@ }; $scope.generateGridColumns = function(attributes){ -var columns = attributes; +var columns = angular.copy(attributes); //also add extra columns - orgunit for example columns.push({id: 'orgUnitName', name: 'Organisation unit', type: 'string'}); @@ -266,9 +265,8 @@ }; $scope.showDashboard = function(currentEntity){ -SelectedEntity.setSelectedEntity(currentEntity); storage.set('SELECTED_OU', $scope.selectedOrgUnit); -$location.path('/dashboard').search({selectedEntityId: currentEntity.id}); +$location.path('/dashboard').search({selectedEntityId: currentEntity.id, selectedOrgUnitId: $scope.selectedOrgUnit.id}); }; $scope.getHelpContent = function(){ @@ -303,17 +301,26 @@ .controller('RegistrationController', function($scope, +$location, AttributesFactory, +TEIService, +EnrollmentService, +DialogService, +storage, TranslationService) { //do translation of the registration page TranslationService.translate(); +$scope.enrollment = {enrollmentDate: '', incidentDate: ''}; $scope.attributes = AttributesFactory.getWithoutProgram(); +$scope.trackedEntities = {available: storage.get('TRACKED_ENTITIES')}; +$scope.trackedEntities.selected = $scope.trackedEntities.available[0]; + //watch for selection of org unit from tree
[Dhis2-devs] [Bug 1320838] [NEW] Deletion requires un-related authorities
Public bug reported: Certain places in the system it is required to have authorities not related to the object one is attempting to delete. E.g. to delete a data element group, it is required to have access to updating data elements. This happens because the deletion handlers are cleaning up associations of the object being deleted by updating related objects. In the above case, all data element groups which the data element was part of must have the data element removed, then be updated. ** Affects: dhis2 Importance: Medium Assignee: Morten Olav Hansen (mortenoh) Status: New ** Changed in: dhis2 Milestone: None = 2.16 ** Changed in: dhis2 Assignee: (unassigned) = Morten Olav Hansen (mortenoh) ** Changed in: dhis2 Importance: Undecided = Medium -- You received this bug notification because you are a member of DHIS 2 developers, which is subscribed to DHIS. https://bugs.launchpad.net/bugs/1320838 Title: Deletion requires un-related authorities Status in DHIS 2: New Bug description: Certain places in the system it is required to have authorities not related to the object one is attempting to delete. E.g. to delete a data element group, it is required to have access to updating data elements. This happens because the deletion handlers are cleaning up associations of the object being deleted by updating related objects. In the above case, all data element groups which the data element was part of must have the data element removed, then be updated. To manage notifications about this bug go to: https://bugs.launchpad.net/dhis2/+bug/1320838/+subscriptions ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] [Branch ~dhis2-devs-core/dhis2/trunk] Rev 15300: Web light module, cleaned up code style
revno: 15300 committer: Lars Helge Overland larshe...@gmail.com branch nick: dhis2 timestamp: Mon 2014-05-19 13:42:06 +0200 message: Web light module, cleaned up code style modified: dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/user/DefaultUserService.java dhis-2/dhis-services/dhis-service-tracker/src/main/java/org/hisp/dhis/relationship/DefaultRelationshipService.java dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/interpretation/action/GetInterpretation.java dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/interpretation/action/GetInterpretations.java dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/interpretation/action/PostInterpretationComment.java -- lp:dhis2 https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk Your team DHIS 2 developers is subscribed to branch lp:dhis2. To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/user/DefaultUserService.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/user/DefaultUserService.java 2014-05-16 09:24:56 + +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/user/DefaultUserService.java 2014-05-19 11:42:06 + @@ -682,7 +682,7 @@ boolean onlyManageWithinUserGroups = (Boolean) systemSettingManager.getSystemSetting( KEY_ONLY_MANAGE_WITHIN_USER_GROUPS, false ); -if ( onlyManageWithinUserGroups !currentUserCredentials.getAllAuthorities().contains( ALL ) ) +if ( onlyManageWithinUserGroups !currentUserCredentials.getAllAuthorities().contains( UserAuthorityGroup.AUTHORITY_ALL ) ) { if ( userCredentials.getUser().getGroups() != null ) { === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/main/java/org/hisp/dhis/relationship/DefaultRelationshipService.java' --- dhis-2/dhis-services/dhis-service-tracker/src/main/java/org/hisp/dhis/relationship/DefaultRelationshipService.java 2014-05-16 15:26:10 + +++ dhis-2/dhis-services/dhis-service-tracker/src/main/java/org/hisp/dhis/relationship/DefaultRelationshipService.java 2014-05-19 11:42:06 + @@ -30,6 +30,7 @@ import java.util.Collection; +import org.apache.commons.lang.NotImplementedException; import org.hisp.dhis.trackedentity.TrackedEntityInstance; import org.springframework.transaction.annotation.Transactional; @@ -90,7 +91,6 @@ public CollectionRelationship getRelationships( TrackedEntityInstance entityInstanceA, RelationshipType relationshipType ) { -// TODO Auto-generated method stub -return null; +throw new NotImplementedException(); } } === modified file 'dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/interpretation/action/GetInterpretation.java' --- dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/interpretation/action/GetInterpretation.java 2014-05-19 07:34:54 + +++ dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/interpretation/action/GetInterpretation.java 2014-05-19 11:42:06 + @@ -1,52 +1,22 @@ package org.hisp.dhis.light.interpretation.action; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.hisp.dhis.interpretation.Interpretation; import org.hisp.dhis.interpretation.InterpretationService; import com.opensymphony.xwork2.Action; /** - * * @author Paul Mark Castillo - * */ public class GetInterpretation implements Action { -/** - * - */ -private static final Log log = LogFactory.getLog( GetInterpretations.class ); - -/** - * - */ -public GetInterpretation() -{ -} - // - // Dependencies // - -/** - * - */ private InterpretationService interpretationService; -/** - * @return the interpretationService - */ -public InterpretationService getInterpretationService() -{ -return interpretationService; -} - -/** - * @param interpretationService the interpretationService to set - */ public void setInterpretationService( InterpretationService interpretationService ) { this.interpretationService = interpretationService; @@ -56,43 +26,25 @@ // Input Output // - -/** - * - */ private int interpretationId; -/** - * @return the interpretationId - */ public int getInterpretationId() { return interpretationId; } -/** - * @param interpretationId the interpretationId to set - */
[Dhis2-devs] [Branch ~dhis2-devs-core/dhis2/trunk] Rev 15301: User role schema descriptor fix
revno: 15301 committer: Lars Helge Overland larshe...@gmail.com branch nick: dhis2 timestamp: Mon 2014-05-19 13:44:01 +0200 message: User role schema descriptor fix modified: dhis-2/dhis-api/src/main/java/org/hisp/dhis/schema/descriptors/UserRoleSchemaDescriptor.java -- lp:dhis2 https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk Your team DHIS 2 developers is subscribed to branch lp:dhis2. To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription === modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/schema/descriptors/UserRoleSchemaDescriptor.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/schema/descriptors/UserRoleSchemaDescriptor.java 2014-03-26 14:28:00 + +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/schema/descriptors/UserRoleSchemaDescriptor.java 2014-05-19 11:44:01 + @@ -49,8 +49,8 @@ schema.setShareable( true ); -schema.getAuthorities().add( new Authority( AuthorityType.CREATE, Lists.newArrayList( F_USERROLE_PUBLIC_ADD ) ) ); -schema.getAuthorities().add( new Authority( AuthorityType.UPDATE, Lists.newArrayList( F_USERROLE_PRIVATE_ADD ) ) ); +schema.getAuthorities().add( new Authority( AuthorityType.CREATE_PUBLIC, Lists.newArrayList( F_USERROLE_PUBLIC_ADD ) ) ); +schema.getAuthorities().add( new Authority( AuthorityType.CREATE_PRIVATE, Lists.newArrayList( F_USERROLE_PRIVATE_ADD ) ) ); schema.getAuthorities().add( new Authority( AuthorityType.DELETE, Lists.newArrayList( F_USERROLE_DELETE ) ) ); return schema; ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] 'Average' Aggregation does 'Sum' instead
Hi Lars - thanks for the quick reply. I though AVG was valid within the same data-collection period as well as across time. If this is the case, how do you calculate an average within the same data collection period? AN indicator that divides the DE that has the answer between valid answers? Normally that will be completed forms, but such variable is not available as a denominator. We will have to use a different Data Element that count valid answers. Last, such indicator will make sense within the same period, but not across periods, as it will give you an incorrect value, I think. Are you sure that AVG only makes sense across-time? Wouldn't be better to also use the same logic within the same period? What's the rationale? If there anyone out not wanting AVG to be calculated on the same data collection period as across periods? R *Rodolfo Meliá* *Principal | *rme...@knowming.com Skype: rod.melia | +44 777 576 4090 | +1 708 872 7636 www.knowming.com On Mon, May 19, 2014 at 12:05 PM, Lars Helge Øverland larshe...@gmail.comwrote: Hi James, the aggregation operator refers to the time dimension - data will be averaged through time but still summed in the org unit hierarchy dimension. We could make this clearer in the system I guess. regards, Lars On Mon, May 19, 2014 at 12:55 PM, James Chang jamesbch...@gmail.comwrote: Hi, On DHIS demo site, http://apps.dhis2.org/demo, 'Average' aggregation operator seem to do 'Sum' instead. I didn't do any data entry or ran Analytics, but only looking at the current data, 'Total Population' in 'Ngelehun CHC' and 'Njandama MCHP' seem to sum on 'Badjia' even though the 'Total Population' is set to 'Average' for Aggregation operator. See the attached images. ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] [Bug 1320460] [NEW] Pivot table not showing data element desagregation values
Hi Romain, I just tried this on the online demo site and in works fine following these steps: 1) Open Pivot Table App 2) In data elements, select group Immunization and select the data element BCG doses given 3) Click Update to see the table with data, these are totals for BCG doses given, by month 4) Click on the EPI/nutrition age dimension in the left side menu. Select both options (1, 1). 5) Click on Layout and move EPI/nutrition age to columns. 6) Clik on Update and you will see BCG doses given data disaggregated by age 1, and age 1 7) Click on the Location Fixed/Outreach dimension in the left side menu and select all options 8) In Layout put Location Fixed/Outreach on Rows 9) Click on Update and you will see the data further disaggregated by location Maybe you forgot to actually select the options in the dimension menu on the left side? It is not enough to move the dimension into the table layout, if no options are selected then the table will not show the disaggregations. In the demo database the data element BCG doses given is assigned to a category combination which is combining the two categories EPI/nutrition age and Location Fixed/Outreach. Ola --- -- Ola Hodne Titlestad (Mr) HISP Department of Informatics University of Oslo Mobile: +47 48069736 Home address: Eftasåsen 68, 0687 Oslo, Norway. Googlemaps linkhttps://maps.google.com/maps?q=Eftas%C3%A5sen+68,+0687+Oslo,+Norgehl=enie=UTF8sll=59.893855,10.785116sspn=0.222842,0.585709oq=eftas%C3%A5sen+68,+0687+Oslo,+t=hhnear=Eftas%C3%A5sen+68,+%C3%98stensj%C3%B8,+0687+Oslo,+Norwayz=16 On 17 May 2014 12:17, Romain-Rolland Tohouri rom...@tohouri.com wrote: Public bug reported: Using pivot table app, when selecting data element BCG doses given you see the values in the generated table, but when editing the layout and adding categories dimension to the column or row where data is located, the table generated became empty with no values. I tried it with my local database but also on DHIS2 demo site and same problem. Thanks! ** Affects: dhis2 Importance: Undecided Status: New -- You received this bug notification because you are a member of DHIS 2 developers, which is subscribed to DHIS. https://bugs.launchpad.net/bugs/1320460 Title: Pivot table not showing data element desagregation values Status in DHIS 2: New Bug description: Using pivot table app, when selecting data element BCG doses given you see the values in the generated table, but when editing the layout and adding categories dimension to the column or row where data is located, the table generated became empty with no values. I tried it with my local database but also on DHIS2 demo site and same problem. Thanks! To manage notifications about this bug go to: https://bugs.launchpad.net/dhis2/+bug/1320460/+subscriptions ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] [Branch ~dhis2-devs-core/dhis2/trunk] Rev 15302: Remove unused UserCredentialsCanUpdateFilter.java
revno: 15302 committer: jimgr...@gmail.com branch nick: dhis2 timestamp: Mon 2014-05-19 08:40:33 -0400 message: Remove unused UserCredentialsCanUpdateFilter.java removed: dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/filter/UserCredentialsCanUpdateFilter.java -- lp:dhis2 https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk Your team DHIS 2 developers is subscribed to branch lp:dhis2. To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription === removed file 'dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/filter/UserCredentialsCanUpdateFilter.java' --- dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/filter/UserCredentialsCanUpdateFilter.java 2014-03-23 18:26:50 + +++ dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/filter/UserCredentialsCanUpdateFilter.java 1970-01-01 00:00:00 + @@ -1,63 +0,0 @@ -package org.hisp.dhis.system.filter; - -/* - * Copyright (c) 2004-2014, University of Oslo - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * Neither the name of the HISP project nor the names of its contributors may - * be used to endorse or promote products derived from this software without - * specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS IS AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -import org.hisp.dhis.system.util.Filter; -import org.hisp.dhis.user.User; -import org.hisp.dhis.user.UserCredentials; - -/** - * @author Lars Helge Overland - */ -public class UserCredentialsCanUpdateFilter -implements FilterUserCredentials -{ -private UserCredentials userCredentials; - -private boolean canGrantOwnUserAuthorityGroups = false; - -protected UserCredentialsCanUpdateFilter() -{ -} - -public UserCredentialsCanUpdateFilter( User user, boolean canGrantOwnUserAuthorityGroups ) -{ -if ( user != null user.getUserCredentials() != null ) -{ -this.userCredentials = user.getUserCredentials(); -this.canGrantOwnUserAuthorityGroups = canGrantOwnUserAuthorityGroups; -} -} - -@Override -public boolean retain( UserCredentials credentials ) -{ -return userCredentials != null credentials != null userCredentials.canIssueAll( credentials.getUserAuthorityGroups(), canGrantOwnUserAuthorityGroups ); -} -} ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] 'Average' Aggregation does 'Sum' instead
Hi Rodolfo, I am not sure if I understand you correctly so I will just try to explain how it works: With avg operator, you can get a valid disaggregated data value for period within the data collection frequency. So if you collect population with a yearly frequency for a data element with the avg operator, then you can also ask for the monthly value for a month in that year. In that case, the values will be the same - sort of a standing value for that period. If you have a value of e.g. 1000 people for the year, then the value for the month will also be 1000. This is just the nature of the data - if you have a population of 1000 for the year, then we must assume that the population for a month is also 1000. We do not allow average within a period or disaggregations for data element which naturally sums across time. As an example, if you collect cases of some disease at a quarterly frequency, we don't allow retrieving the value for a month within that quarter simply using the average. The reason is that it would not be valid statistics - we have no evidence that not all cases happened in the last month of the quarter, etc. regards, Lars On Mon, May 19, 2014 at 1:48 PM, Rodolfo Melia rme...@knowming.com wrote: Hi Lars - thanks for the quick reply. I though AVG was valid within the same data-collection period as well as across time. If this is the case, how do you calculate an average within the same data collection period? AN indicator that divides the DE that has the answer between valid answers? Normally that will be completed forms, but such variable is not available as a denominator. We will have to use a different Data Element that count valid answers. Last, such indicator will make sense within the same period, but not across periods, as it will give you an incorrect value, I think. Are you sure that AVG only makes sense across-time? Wouldn't be better to also use the same logic within the same period? What's the rationale? If there anyone out not wanting AVG to be calculated on the same data collection period as across periods? R *Rodolfo Meliá* *Principal | *rme...@knowming.com Skype: rod.melia | +44 777 576 4090 | +1 708 872 7636 www.knowming.com On Mon, May 19, 2014 at 12:05 PM, Lars Helge Øverland larshe...@gmail.com wrote: Hi James, the aggregation operator refers to the time dimension - data will be averaged through time but still summed in the org unit hierarchy dimension. We could make this clearer in the system I guess. regards, Lars On Mon, May 19, 2014 at 12:55 PM, James Chang jamesbch...@gmail.comwrote: Hi, On DHIS demo site, http://apps.dhis2.org/demo, 'Average' aggregation operator seem to do 'Sum' instead. I didn't do any data entry or ran Analytics, but only looking at the current data, 'Total Population' in 'Ngelehun CHC' and 'Njandama MCHP' seem to sum on 'Badjia' even though the 'Total Population' is set to 'Average' for Aggregation operator. See the attached images. ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] 'Average' Aggregation does 'Sum' instead
Hi Lars - your example for population is correct. It makes sense. Our case is scores calculated for quality assurance. On a given month we may get: *Region A* - Outlet 1: 90 - Outlet 2: 100 - Outlet 3: not conducted - Outlet 4: 80 When looking in analytics at Region A, on the that month, we expect to get 90. We currently get 270, which is correct based on your explanation. We will try to create an indicator that divides between 3 (so we need to know conducted assessments). My worry is that the indicator will work of that month, but when looking across multiple months, not sure about what result will it return if we keep the aggregation = Avg. R *Rodolfo Meliá* *Principal | *rme...@knowming.com Skype: rod.melia | +44 777 576 4090 | +1 708 872 7636 www.knowming.com On Mon, May 19, 2014 at 2:36 PM, Lars Helge Øverland larshe...@gmail.comwrote: Hi Rodolfo, I am not sure if I understand you correctly so I will just try to explain how it works: With avg operator, you can get a valid disaggregated data value for period within the data collection frequency. So if you collect population with a yearly frequency for a data element with the avg operator, then you can also ask for the monthly value for a month in that year. In that case, the values will be the same - sort of a standing value for that period. If you have a value of e.g. 1000 people for the year, then the value for the month will also be 1000. This is just the nature of the data - if you have a population of 1000 for the year, then we must assume that the population for a month is also 1000. We do not allow average within a period or disaggregations for data element which naturally sums across time. As an example, if you collect cases of some disease at a quarterly frequency, we don't allow retrieving the value for a month within that quarter simply using the average. The reason is that it would not be valid statistics - we have no evidence that not all cases happened in the last month of the quarter, etc. regards, Lars On Mon, May 19, 2014 at 1:48 PM, Rodolfo Melia rme...@knowming.comwrote: Hi Lars - thanks for the quick reply. I though AVG was valid within the same data-collection period as well as across time. If this is the case, how do you calculate an average within the same data collection period? AN indicator that divides the DE that has the answer between valid answers? Normally that will be completed forms, but such variable is not available as a denominator. We will have to use a different Data Element that count valid answers. Last, such indicator will make sense within the same period, but not across periods, as it will give you an incorrect value, I think. Are you sure that AVG only makes sense across-time? Wouldn't be better to also use the same logic within the same period? What's the rationale? If there anyone out not wanting AVG to be calculated on the same data collection period as across periods? R *Rodolfo Meliá* *Principal | *rme...@knowming.com Skype: rod.melia | +44 777 576 4090 | +1 708 872 7636 www.knowming.com On Mon, May 19, 2014 at 12:05 PM, Lars Helge Øverland larshe...@gmail.com wrote: Hi James, the aggregation operator refers to the time dimension - data will be averaged through time but still summed in the org unit hierarchy dimension. We could make this clearer in the system I guess. regards, Lars On Mon, May 19, 2014 at 12:55 PM, James Chang jamesbch...@gmail.comwrote: Hi, On DHIS demo site, http://apps.dhis2.org/demo, 'Average' aggregation operator seem to do 'Sum' instead. I didn't do any data entry or ran Analytics, but only looking at the current data, 'Total Population' in 'Ngelehun CHC' and 'Njandama MCHP' seem to sum on 'Badjia' even though the 'Total Population' is set to 'Average' for Aggregation operator. See the attached images. ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] [Branch ~dhis2-devs-core/dhis2/trunk] Rev 15303: communication between tei dashboard controller
revno: 15303 committer: Abyot Asalefew Gizaw aby...@gmail.com branch nick: dhis2 timestamp: Mon 2014-05-19 16:00:19 +0200 message: communication between tei dashboard controller modified: dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/controllers.js dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/services.js dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/enrollment.html dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/views/profile.html -- lp:dhis2 https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk Your team DHIS 2 developers is subscribed to branch lp:dhis2. To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription === modified file 'dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/controllers.js' --- dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/controllers.js 2014-05-19 11:33:07 + +++ dhis-2/dhis-web/dhis-web-tracker-capture/src/main/webapp/dhis-web-tracker-capture/scripts/controllers.js 2014-05-19 14:00:19 + @@ -51,7 +51,9 @@ //watch for selection of org unit from tree $scope.$watch('selectedOrgUnit', function() { -if( angular.isObject($scope.selectedOrgUnit)){ +if( angular.isObject($scope.selectedOrgUnit)){ + +storage.set('SELECTED_OU', $scope.selectedOrgUnit); $scope.trackedEntityList = []; $scope.selectedProgram = ''; @@ -264,9 +266,10 @@ }); }; -$scope.showDashboard = function(currentEntity){ -storage.set('SELECTED_OU', $scope.selectedOrgUnit); -$location.path('/dashboard').search({selectedEntityId: currentEntity.id, selectedOrgUnitId: $scope.selectedOrgUnit.id}); +$scope.showDashboard = function(currentEntity){ + +$location.path('/dashboard').search({selectedEntityId: currentEntity.id, +selectedProgramId: $scope.selectedProgram ? $scope.selectedProgram.id: null}); }; $scope.getHelpContent = function(){ @@ -311,6 +314,7 @@ //do translation of the registration page TranslationService.translate(); +$scope.selectedOrgUnit = storage.get('SELECTED_OU'); $scope.enrollment = {enrollmentDate: '', incidentDate: ''}; $scope.attributes = AttributesFactory.getWithoutProgram(); @@ -364,12 +368,14 @@ }; EnrollmentService.enroll(enrollment).then(function(data){ if(data.status === 'SUCCESS'){ -$location.path('/dashboard').search({selectedEntityId: tei.reference}); +$location.path('/dashboard').search({selectedEntityId: tei.reference, +selectedProgramId: $scope.selectedProgram ? $scope.selectedProgram.id: null}); } }); } else{ -$location.path('/dashboard').search({selectedEntityId: tei.reference}); +$location.path('/dashboard').search({selectedEntityId: tei.reference, +selectedProgramId: $scope.selectedProgram ? $scope.selectedProgram.id: null}); } } else{ @@ -413,14 +419,22 @@ $rootScope.dashboardWidgets.smaller.push($rootScope.notesWidget); //selections -$scope.selectedEntityId = ($location.search()).selectedEntityId; -$scope.selectedOrgUnit = storage.get('SELECTED_OU'); +$scope.selectedEntityId = ($location.search()).selectedEntityId; +$scope.selectedProgramId = ($location.search()).selectedProgramId; +$scope.selectedOrgUnit = storage.get('SELECTED_OU'); + +if($scope.selectedProgramId storage.get($scope.selectedProgramId)){ +$scope.selectedProgram = storage.get($scope.selectedProgramId); +} +else{ +$scope.selectedProgram = null; +} if( $scope.selectedEntityId ){ //Fetch the selected entity -TEIService.get($scope.selectedEntityId).then(function(data){ -CurrentSelection.set({tei: data, ou: $scope.selectedOrgUnit}); +TEIService.get($scope.selectedEntityId).then(function(data){ +CurrentSelection.set({tei: data, pr: $scope.selectedProgram}); //broadcast selected entity for dashboard controllers
Re: [Dhis2-devs] 'Average' Aggregation does 'Sum' instead
A possible solution would be to control the behavior of of a cat combination to produce totals or calculate an average across cat combo options and data elements. JM El 19/05/2014, a las 08:54, Rodolfo Melia rme...@knowming.com escribió: Hi Lars - your example for population is correct. It makes sense. Our case is scores calculated for quality assurance. On a given month we may get: Region A - Outlet 1: 90 - Outlet 2: 100 - Outlet 3: not conducted - Outlet 4: 80 When looking in analytics at Region A, on the that month, we expect to get 90. We currently get 270, which is correct based on your explanation. We will try to create an indicator that divides between 3 (so we need to know conducted assessments). My worry is that the indicator will work of that month, but when looking across multiple months, not sure about what result will it return if we keep the aggregation = Avg. R Rodolfo Meliá Principal | rme...@knowming.com Skype: rod.melia | +44 777 576 4090 | +1 708 872 7636 www.knowming.com On Mon, May 19, 2014 at 2:36 PM, Lars Helge Øverland larshe...@gmail.com wrote: Hi Rodolfo, I am not sure if I understand you correctly so I will just try to explain how it works: With avg operator, you can get a valid disaggregated data value for period within the data collection frequency. So if you collect population with a yearly frequency for a data element with the avg operator, then you can also ask for the monthly value for a month in that year. In that case, the values will be the same - sort of a standing value for that period. If you have a value of e.g. 1000 people for the year, then the value for the month will also be 1000. This is just the nature of the data - if you have a population of 1000 for the year, then we must assume that the population for a month is also 1000. We do not allow average within a period or disaggregations for data element which naturally sums across time. As an example, if you collect cases of some disease at a quarterly frequency, we don't allow retrieving the value for a month within that quarter simply using the average. The reason is that it would not be valid statistics - we have no evidence that not all cases happened in the last month of the quarter, etc. regards, Lars On Mon, May 19, 2014 at 1:48 PM, Rodolfo Melia rme...@knowming.com wrote: Hi Lars - thanks for the quick reply. I though AVG was valid within the same data-collection period as well as across time. If this is the case, how do you calculate an average within the same data collection period? AN indicator that divides the DE that has the answer between valid answers? Normally that will be completed forms, but such variable is not available as a denominator. We will have to use a different Data Element that count valid answers. Last, such indicator will make sense within the same period, but not across periods, as it will give you an incorrect value, I think. Are you sure that AVG only makes sense across-time? Wouldn't be better to also use the same logic within the same period? What's the rationale? If there anyone out not wanting AVG to be calculated on the same data collection period as across periods? R Rodolfo Meliá Principal | rme...@knowming.com Skype: rod.melia | +44 777 576 4090 | +1 708 872 7636 www.knowming.com On Mon, May 19, 2014 at 12:05 PM, Lars Helge Øverland larshe...@gmail.com wrote: Hi James, the aggregation operator refers to the time dimension - data will be averaged through time but still summed in the org unit hierarchy dimension. We could make this clearer in the system I guess. regards, Lars On Mon, May 19, 2014 at 12:55 PM, James Chang jamesbch...@gmail.com wrote: Hi, On DHIS demo site, http://apps.dhis2.org/demo, 'Average' aggregation operator seem to do 'Sum' instead. I didn't do any data entry or ran Analytics, but only looking at the current data, 'Total Population' in 'Ngelehun CHC' and 'Njandama MCHP' seem to sum on 'Badjia' even though the 'Total Population' is set to 'Average' for Aggregation operator. See the attached images. ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] [Branch ~dhis2-devs-core/dhis2/trunk] Rev 15304: Add statement to update aggregate query builder formulas from 2.13 to 2.15
revno: 15304 committer: Tran Chau tran.hispviet...@gmail.com branch nick: dhis2 timestamp: Mon 2014-05-19 22:53:36 +0800 message: Add statement to update aggregate query builder formulas from 2.13 to 2.15 modified: dhis-2/dhis-services/dhis-service-tracker/src/main/java/org/hisp/dhis/trackedentity/startup/TableAlteror.java -- lp:dhis2 https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk Your team DHIS 2 developers is subscribed to branch lp:dhis2. To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/main/java/org/hisp/dhis/trackedentity/startup/TableAlteror.java' --- dhis-2/dhis-services/dhis-service-tracker/src/main/java/org/hisp/dhis/trackedentity/startup/TableAlteror.java 2014-05-17 12:04:42 + +++ dhis-2/dhis-services/dhis-service-tracker/src/main/java/org/hisp/dhis/trackedentity/startup/TableAlteror.java 2014-05-19 14:53:36 + @@ -36,6 +36,7 @@ import org.amplecode.quick.StatementManager; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.hisp.dhis.caseaggregation.CaseAggregationCondition; import org.hisp.dhis.common.CodeGenerator; import org.hisp.dhis.jdbc.StatementBuilder; import org.hisp.dhis.system.startup.AbstractStartupRoutine; @@ -266,12 +267,74 @@ executeSql( DROP TABLE orgunitgroupprograms ); executeSql( UPDATE trackedentityattribute SET valuetype='combo' WHERE valuetype='optionSet' ); + +updateAggregateQueryBuilder(); } // - // Supporting methods // - +private void updateAggregateQueryBuilder() +{ +StatementHolder holder = statementManager.getHolder(); + +try +{ +Statement statement = holder.getStatement(); +ResultSet resultSet = statement +.executeQuery( select trackedentityattributeid from trackedentityattribute where name='Age' ); + +if ( resultSet.next() ) +{ +int id = resultSet.getInt( trackedentityattributeid ); + +String source = PC:DATE@executionDate#-DATE@birthDate#; +String target = CaseAggregationCondition.OBJECT_TRACKED_ENTITY_ATTRIBUTE ++ CaseAggregationCondition.SEPARATOR_OBJECT + id + .visit; + +updateFixedAttributeInCaseAggregate( source, target ); +} +} +catch ( Exception ex ) +{ +ex.printStackTrace(); +} +} + +private void updateFixedAttributeInCaseAggregate( String source, String target ) +{ +StatementHolder holder = statementManager.getHolder(); +try +{ +Statement statement = holder.getStatement(); +ResultSet resultSet = statement +.executeQuery( SELECT caseaggregationconditionid, aggregationExpression FROM caseaggregationcondition where aggregationExpression like '% ++ source + %' ); + +source = source.replaceAll( @, \\@ ).replaceAll( #, \\# ); + +while ( resultSet.next() ) +{ +String id = resultSet.getString( caseaggregationconditionid ); +String expression = resultSet.getString( aggregationExpression ); + +expression = expression.replaceAll( source, target ); +expression = expression.replaceAll( ', \ ); +executeSql( UPDATE caseaggregationcondition SET aggregationExpression=' + expression ++ ' WHERE caseaggregationconditionid= + id ); +} +} +catch ( Exception ex ) +{ +log.debug( ex ); +} +finally +{ +holder.close(); +} +} + private void updateProgramInstanceStatus() { // Set active status for events ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] [Bug 1320460] [NEW] Pivot table not showing data element desagregation values
Yes Ola, you're right!! I didn't select the option in the left side menu. Now its works! but now, how do you use the category option in the layout dimension column? Thanks for your help, Romain 2014-05-19 12:24 GMT+00:00 Ola Hodne Titlestad ol...@ifi.uio.no: Hi Romain, I just tried this on the online demo site and in works fine following these steps: 1) Open Pivot Table App 2) In data elements, select group Immunization and select the data element BCG doses given 3) Click Update to see the table with data, these are totals for BCG doses given, by month 4) Click on the EPI/nutrition age dimension in the left side menu. Select both options (1, 1). 5) Click on Layout and move EPI/nutrition age to columns. 6) Clik on Update and you will see BCG doses given data disaggregated by age 1, and age 1 7) Click on the Location Fixed/Outreach dimension in the left side menu and select all options 8) In Layout put Location Fixed/Outreach on Rows 9) Click on Update and you will see the data further disaggregated by location Maybe you forgot to actually select the options in the dimension menu on the left side? It is not enough to move the dimension into the table layout, if no options are selected then the table will not show the disaggregations. In the demo database the data element BCG doses given is assigned to a category combination which is combining the two categories EPI/nutrition age and Location Fixed/Outreach. Ola --- -- Ola Hodne Titlestad (Mr) HISP Department of Informatics University of Oslo Mobile: +47 48069736 Home address: Eftasåsen 68, 0687 Oslo, Norway. Googlemaps linkhttps://maps.google.com/maps?q=Eftas%C3%A5sen+68,+0687+Oslo,+Norgehl=enie=UTF8sll=59.893855,10.785116sspn=0.222842,0.585709oq=eftas%C3%A5sen+68,+0687+Oslo,+t=hhnear=Eftas%C3%A5sen+68,+%C3%98stensj%C3%B8,+0687+Oslo,+Norwayz=16 On 17 May 2014 12:17, Romain-Rolland Tohouri rom...@tohouri.com wrote: Public bug reported: Using pivot table app, when selecting data element BCG doses given you see the values in the generated table, but when editing the layout and adding categories dimension to the column or row where data is located, the table generated became empty with no values. I tried it with my local database but also on DHIS2 demo site and same problem. Thanks! ** Affects: dhis2 Importance: Undecided Status: New -- You received this bug notification because you are a member of DHIS 2 developers, which is subscribed to DHIS. https://bugs.launchpad.net/bugs/1320460 Title: Pivot table not showing data element desagregation values Status in DHIS 2: New Bug description: Using pivot table app, when selecting data element BCG doses given you see the values in the generated table, but when editing the layout and adding categories dimension to the column or row where data is located, the table generated became empty with no values. I tried it with my local database but also on DHIS2 demo site and same problem. Thanks! To manage notifications about this bug go to: https://bugs.launchpad.net/dhis2/+bug/1320460/+subscriptions ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp -- Dr Tohouri Romain-Rolland www.tohouri. Tel: +225 03 44 49 44 ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] [Branch ~dhis2-devs-core/dhis2/trunk] Rev 15305: Deletion of category combination, including check for attributeoptioncombo in datavalues
revno: 15305 committer: Lars Helge Overland larshe...@gmail.com branch nick: dhis2 timestamp: Mon 2014-05-19 17:19:17 +0200 message: Deletion of category combination, including check for attributeoptioncombo in datavalues modified: dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DataElementCategoryOptionComboDeletionHandler.java dhis-2/dhis-web/dhis-web-dataentry/src/main/java/org/hisp/dhis/de/action/ValidationAction.java -- lp:dhis2 https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk Your team DHIS 2 developers is subscribed to branch lp:dhis2. To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DataElementCategoryOptionComboDeletionHandler.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DataElementCategoryOptionComboDeletionHandler.java 2014-03-18 08:10:10 + +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DataElementCategoryOptionComboDeletionHandler.java 2014-05-19 15:19:17 + @@ -77,6 +77,9 @@ select count(*) from datavalue dv + where dv.categoryoptioncomboid in ( + select cc.categoryoptioncomboid from categoryoptioncombos_categoryoptions cc + +where cc.categoryoptionid = + categoryOption.getId() + ) + +or dv.attributeoptioncomboid in ( + +select cc.categoryoptioncomboid from categoryoptioncombos_categoryoptions cc + where cc.categoryoptionid = + categoryOption.getId() + );; return jdbcTemplate.queryForObject( sql, Integer.class ) == 0 ? null : ERROR; @@ -88,9 +91,13 @@ final String sql = select count(*) from datavalue dv + where dv.categoryoptioncomboid in ( + - select cc.categoryoptioncomboid from categoryoptioncombos_categoryoptions cc + - join categories_categoryoptions co on cc.categoryoptionid=co.categoryoptionid + - where co.categoryid= + category.getId() + );; +select cc.categoryoptioncomboid from categoryoptioncombos_categoryoptions cc + +join categories_categoryoptions co on cc.categoryoptionid=co.categoryoptionid + +where co.categoryid= + category.getId() + ) + +or dv.attributeoptioncomboid in ( + +select cc.categoryoptioncomboid from categoryoptioncombos_categoryoptions cc + +join categories_categoryoptions co on cc.categoryoptionid=co.categoryoptionid + +where co.categoryid= + category.getId() + );; return jdbcTemplate.queryForObject( sql, Integer.class ) == 0 ? null : ERROR; } @@ -101,8 +108,11 @@ final String sql = select count(*) from datavalue dv + where dv.categoryoptioncomboid in ( + - select co.categoryoptioncomboid from categorycombos_optioncombos co + - where co.categorycomboid= + categoryCombo.getId() + );; +select co.categoryoptioncomboid from categorycombos_optioncombos co + +where co.categorycomboid= + categoryCombo.getId() + ) + +or dv.attributeoptioncomboid in ( + +select co.categoryoptioncomboid from categorycombos_optioncombos co + +where co.categorycomboid= + categoryCombo.getId() + );; return jdbcTemplate.queryForObject( sql, Integer.class ) == 0 ? null : ERROR; } === modified file 'dhis-2/dhis-web/dhis-web-dataentry/src/main/java/org/hisp/dhis/de/action/ValidationAction.java' --- dhis-2/dhis-web/dhis-web-dataentry/src/main/java/org/hisp/dhis/de/action/ValidationAction.java 2014-05-18 00:49:40 + +++ dhis-2/dhis-web/dhis-web-dataentry/src/main/java/org/hisp/dhis/de/action/ValidationAction.java 2014-05-19 15:19:17 + @@ -43,7 +43,6 @@ import org.hisp.dhis.common.comparator.IdentifiableObjectNameComparator; import org.hisp.dhis.dataanalysis.DataAnalysisService; import org.hisp.dhis.dataelement.DataElement; -import org.hisp.dhis.dataelement.DataElementCategoryOption; import org.hisp.dhis.dataelement.DataElementCategoryOptionCombo; import org.hisp.dhis.dataelement.DataElementCategoryService; import org.hisp.dhis.dataelement.DataElementOperand; @@ -58,11 +57,10 @@ import org.hisp.dhis.period.PeriodService; import org.hisp.dhis.period.PeriodType; import org.hisp.dhis.validation.ValidationResult; -import org.hisp.dhis.validation.ValidationRule; import org.hisp.dhis.validation.ValidationRuleService; +import org.springframework.beans.factory.annotation.Autowired; import com.opensymphony.xwork2.Action; -import org.springframework.beans.factory.annotation.Autowired; /** * @author Margrethe Store
[Dhis2-devs] [Branch ~dhis2-devs-core/dhis2/trunk] Rev 15306: Category deletion, allowing deletion of categories which are linked to option combos. No good rea...
revno: 15306 committer: Lars Helge Overland larshe...@gmail.com branch nick: dhis2 timestamp: Mon 2014-05-19 17:28:18 +0200 message: Category deletion, allowing deletion of categories which are linked to option combos. No good reason to deny that. modified: dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DataElementCategoryOptionComboDeletionHandler.java -- lp:dhis2 https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk Your team DHIS 2 developers is subscribed to branch lp:dhis2. To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DataElementCategoryOptionComboDeletionHandler.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DataElementCategoryOptionComboDeletionHandler.java 2014-05-19 15:19:17 + +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DataElementCategoryOptionComboDeletionHandler.java 2014-05-19 15:28:18 + @@ -86,23 +86,6 @@ } @Override -public String allowDeleteDataElementCategory( DataElementCategory category ) -{ -final String sql = -select count(*) from datavalue dv + -where dv.categoryoptioncomboid in ( + -select cc.categoryoptioncomboid from categoryoptioncombos_categoryoptions cc + -join categories_categoryoptions co on cc.categoryoptionid=co.categoryoptionid + -where co.categoryid= + category.getId() + ) + -or dv.attributeoptioncomboid in ( + -select cc.categoryoptioncomboid from categoryoptioncombos_categoryoptions cc + -join categories_categoryoptions co on cc.categoryoptionid=co.categoryoptionid + -where co.categoryid= + category.getId() + );; - -return jdbcTemplate.queryForObject( sql, Integer.class ) == 0 ? null : ERROR; -} - -@Override public String allowDeleteDataElementCategoryCombo( DataElementCategoryCombo categoryCombo ) { final String sql = ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] [Branch ~dhis2-devs-core/dhis2/trunk] Rev 15307: Added new web api method at api/dimensions/constraints for potential dimensional constraints
revno: 15307 committer: Lars Helge Overland larshe...@gmail.com branch nick: dhis2 timestamp: Mon 2014-05-19 19:59:03 +0200 message: Added new web api method at api/dimensions/constraints for potential dimensional constraints modified: dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/DimensionService.java dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/dimension/DefaultDimensionService.java dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/DimensionController.java -- lp:dhis2 https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk Your team DHIS 2 developers is subscribed to branch lp:dhis2. To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription === modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/DimensionService.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/DimensionService.java 2014-03-18 08:10:10 + +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/DimensionService.java 2014-05-19 17:59:03 + @@ -43,5 +43,7 @@ ListDimensionalObject getAllDimensions(); +ListDimensionalObject getDimensionConstraints(); + void mergeAnalyticalObject( BaseAnalyticalObject object ); } === modified file 'dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/dimension/DefaultDimensionService.java' --- dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/dimension/DefaultDimensionService.java 2014-04-21 11:05:22 + +++ dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/dimension/DefaultDimensionService.java 2014-05-19 17:59:03 + @@ -257,6 +257,19 @@ return dimensions; } + +public ListDimensionalObject getDimensionConstraints() +{ +CollectionCategoryOptionGroupSet cogs = categoryService.getDataDimensionCategoryOptionGroupSets(); +CollectionDataElementCategory cs = categoryService.getAttributeCategories(); + +final ListDimensionalObject dimensions = new ArrayListDimensionalObject(); + +dimensions.addAll( cogs ); +dimensions.addAll( cs ); + +return dimensions; +} @Override public void mergeAnalyticalObject( BaseAnalyticalObject object ) === modified file 'dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/DimensionController.java' --- dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/DimensionController.java 2014-03-18 08:10:10 + +++ dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/DimensionController.java 2014-05-19 17:59:03 + @@ -67,7 +67,7 @@ // Controller // - -@RequestMapping(value = /{uid}, method = RequestMethod.GET) +@RequestMapping( value = /{uid}, method = RequestMethod.GET ) public String getDimension( @PathVariable(uid) String uid, @RequestParam( value = links, defaultValue = true, required = false ) Boolean links, Model model ) @@ -85,7 +85,7 @@ return dimension; } -@RequestMapping(value = /{uid}/items, method = RequestMethod.GET) +@RequestMapping( value = /{uid}/items, method = RequestMethod.GET ) public String getItems( @PathVariable String uid, @RequestParam MapString, String parameters, Model model, HttpServletRequest request, HttpServletResponse response ) { @@ -128,4 +128,23 @@ return dimensions; } + +@RequestMapping( value = /constraints, method = RequestMethod.GET ) +public String getDimensionConstraints( +@RequestParam( value = links, defaultValue = true, required = false ) Boolean links, +Model model ) +{ +WebMetaData metaData = new WebMetaData(); + +metaData.setDimensions( dimensionService.getDimensionConstraints() ); + +model.addAttribute( model, metaData ); + +if ( links ) +{ +WebUtils.generateLinks( metaData ); +} + +return dimensions; +} } ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
[Dhis2-devs] [Branch ~dhis2-devs-core/dhis2/trunk] Rev 15308: Excluded xerces
revno: 15308 committer: Lars Helge Overland larshe...@gmail.com branch nick: dhis2 timestamp: Mon 2014-05-19 20:25:05 +0200 message: Excluded xerces modified: dhis-2/pom.xml -- lp:dhis2 https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk Your team DHIS 2 developers is subscribed to branch lp:dhis2. To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription === modified file 'dhis-2/pom.xml' --- dhis-2/pom.xml 2014-05-12 15:24:01 + +++ dhis-2/pom.xml 2014-05-19 18:25:05 + @@ -997,6 +997,12 @@ groupIdorg.openid4java/groupId artifactIdopenid4java/artifactId version0.9.8/version +exclusions + exclusion +groupIdxerces/groupId +artifactIdxercesImpl/artifactId + /exclusion +/exclusions /dependency /dependencies ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] [Bug 1320212] [NEW] Warning possibly relate to xerces library while migrating to dhis 2.14 to 2.15
Hi Bob, thanks for looking into this. Morten, do you think you can comment on this? I have excluded xercesImpl for now, I think it should be provided by the container anyway so should not be a problem. We can put it back if necessary. Lars On Fri, May 16, 2014 at 2:45 PM, Bob Jolliffe bobjolli...@gmail.com wrote: Yes I see that xercesImpl has crept back in again (this time as a dependency of openid4j). I think we can just exclude it (just like jasperreports and geotools) in root pom.xml but I am reluctant to do it as I don't really have any scaffolding to test openid. Morten, maybe when you get the chance will you try? Or anybody else who has been testing openid. Bob On 16 May 2014 13:33, Romain-Rolland Tohouri rom...@tohouri.com wrote: Public bug reported: Migrating a server from dhis2.14 form dhis2.15 i got the following warning in the log file and we think it may be related to xerces library. May 16, 2014 11:42:49 AM org.apache.catalina.core.ApplicationContext log INFO: Initializing Spring FrameworkServlet 'webapi' Warning: org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser: Property ' http://www.oracle.com/xml/jaxp/properties/entityExpansionLimit' is not recognized. Thanks, Romain ** Affects: dhis2 Importance: Undecided Status: New -- You received this bug notification because you are a member of DHIS 2 developers, which is subscribed to DHIS. https://bugs.launchpad.net/bugs/1320212 Title: Warning possibly relate to xerces library while migrating to dhis 2.14 to 2.15 Status in DHIS 2: New Bug description: Migrating a server from dhis2.14 form dhis2.15 i got the following warning in the log file and we think it may be related to xerces library. May 16, 2014 11:42:49 AM org.apache.catalina.core.ApplicationContext log INFO: Initializing Spring FrameworkServlet 'webapi' Warning: org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser: Property ' http://www.oracle.com/xml/jaxp/properties/entityExpansionLimit' is not recognized. Thanks, Romain To manage notifications about this bug go to: https://bugs.launchpad.net/dhis2/+bug/1320212/+subscriptions ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp -- You received this bug notification because you are a member of DHIS 2 developers, which is subscribed to DHIS. https://bugs.launchpad.net/bugs/1320212 Title: Warning possibly relate to xerces library while migrating to dhis 2.14 to 2.15 Status in DHIS 2: New Bug description: Migrating a server from dhis2.14 form dhis2.15 i got the following warning in the log file and we think it may be related to xerces library. May 16, 2014 11:42:49 AM org.apache.catalina.core.ApplicationContext log INFO: Initializing Spring FrameworkServlet 'webapi' Warning: org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser: Property ' http://www.oracle.com/xml/jaxp/properties/entityExpansionLimit' is not recognized. Thanks, Romain To manage notifications about this bug go to: https://bugs.launchpad.net/dhis2/+bug/1320212/+subscriptions ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] [Bug 1320212] [NEW] Warning possibly relate to xerces library while migrating to dhis 2.14 to 2.15
I think it should be fine, as long as some kind of impl is provided by the container. -- Morten On Mon, May 19, 2014 at 8:30 PM, Lars Helge Øverland larshe...@gmail.comwrote: Hi Bob, thanks for looking into this. Morten, do you think you can comment on this? I have excluded xercesImpl for now, I think it should be provided by the container anyway so should not be a problem. We can put it back if necessary. Lars On Fri, May 16, 2014 at 2:45 PM, Bob Jolliffe bobjolli...@gmail.comwrote: Yes I see that xercesImpl has crept back in again (this time as a dependency of openid4j). I think we can just exclude it (just like jasperreports and geotools) in root pom.xml but I am reluctant to do it as I don't really have any scaffolding to test openid. Morten, maybe when you get the chance will you try? Or anybody else who has been testing openid. Bob On 16 May 2014 13:33, Romain-Rolland Tohouri rom...@tohouri.com wrote: Public bug reported: Migrating a server from dhis2.14 form dhis2.15 i got the following warning in the log file and we think it may be related to xerces library. May 16, 2014 11:42:49 AM org.apache.catalina.core.ApplicationContext log INFO: Initializing Spring FrameworkServlet 'webapi' Warning: org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser: Property ' http://www.oracle.com/xml/jaxp/properties/entityExpansionLimit' is not recognized. Thanks, Romain ** Affects: dhis2 Importance: Undecided Status: New -- You received this bug notification because you are a member of DHIS 2 developers, which is subscribed to DHIS. https://bugs.launchpad.net/bugs/1320212 Title: Warning possibly relate to xerces library while migrating to dhis 2.14 to 2.15 Status in DHIS 2: New Bug description: Migrating a server from dhis2.14 form dhis2.15 i got the following warning in the log file and we think it may be related to xerces library. May 16, 2014 11:42:49 AM org.apache.catalina.core.ApplicationContext log INFO: Initializing Spring FrameworkServlet 'webapi' Warning: org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser: Property ' http://www.oracle.com/xml/jaxp/properties/entityExpansionLimit' is not recognized. Thanks, Romain To manage notifications about this bug go to: https://bugs.launchpad.net/dhis2/+bug/1320212/+subscriptions ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp -- You received this bug notification because you are a member of DHIS 2 developers, which is subscribed to DHIS. https://bugs.launchpad.net/bugs/1320212 Title: Warning possibly relate to xerces library while migrating to dhis 2.14 to 2.15 Status in DHIS 2: New Bug description: Migrating a server from dhis2.14 form dhis2.15 i got the following warning in the log file and we think it may be related to xerces library. May 16, 2014 11:42:49 AM org.apache.catalina.core.ApplicationContext log INFO: Initializing Spring FrameworkServlet 'webapi' Warning: org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser: Property ' http://www.oracle.com/xml/jaxp/properties/entityExpansionLimit' is not recognized. Thanks, Romain To manage notifications about this bug go to: https://bugs.launchpad.net/dhis2/+bug/1320212/+subscriptions ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] 'Average' Aggregation does 'Sum' instead
Hi Rodolfo, now I understand what you mean. The solution I think would be to introduce another aggregation operator: one for the time dimension, and another for the org unit hierarchy dimension. Then you could set the org unit hierarchy aggregation operator to avg to get your desired results. This has actually been discussed before and would be a natural and good feature, see blueprint from Jason herehttps://blueprints.launchpad.net/dhis2/+spec/aggregation-operators. I have put it up for 2.17 for now. One feature that was introduced in 2.15 that might be useful is the org unit group count in indicator function. First, you can create an org unit group called outlets, where you assign all your outlets. Then have a look in indicator formula screen - you can put that group directly into the formula, which will be substituted with the number of org units in that group joined with the org unit hierarchy for which the aggregated value is requested. You can use this as your denominator - simply take the total value as numerator and divide it on the number of outlets. I assume your numbers are percentages? If so you you should keep the aggregation operator on avg. It won't be perfect as you cannot weigh your outlets but maybe close enough. regards, Lars On Mon, May 19, 2014 at 3:54 PM, Rodolfo Melia rme...@knowming.com wrote: Hi Lars - your example for population is correct. It makes sense. Our case is scores calculated for quality assurance. On a given month we may get: *Region A* - Outlet 1: 90 - Outlet 2: 100 - Outlet 3: not conducted - Outlet 4: 80 When looking in analytics at Region A, on the that month, we expect to get 90. We currently get 270, which is correct based on your explanation. We will try to create an indicator that divides between 3 (so we need to know conducted assessments). My worry is that the indicator will work of that month, but when looking across multiple months, not sure about what result will it return if we keep the aggregation = Avg. R *Rodolfo Meliá* *Principal | *rme...@knowming.com Skype: rod.melia | +44 777 576 4090 | +1 708 872 7636 www.knowming.com On Mon, May 19, 2014 at 2:36 PM, Lars Helge Øverland larshe...@gmail.comwrote: Hi Rodolfo, I am not sure if I understand you correctly so I will just try to explain how it works: With avg operator, you can get a valid disaggregated data value for period within the data collection frequency. So if you collect population with a yearly frequency for a data element with the avg operator, then you can also ask for the monthly value for a month in that year. In that case, the values will be the same - sort of a standing value for that period. If you have a value of e.g. 1000 people for the year, then the value for the month will also be 1000. This is just the nature of the data - if you have a population of 1000 for the year, then we must assume that the population for a month is also 1000. We do not allow average within a period or disaggregations for data element which naturally sums across time. As an example, if you collect cases of some disease at a quarterly frequency, we don't allow retrieving the value for a month within that quarter simply using the average. The reason is that it would not be valid statistics - we have no evidence that not all cases happened in the last month of the quarter, etc. regards, Lars On Mon, May 19, 2014 at 1:48 PM, Rodolfo Melia rme...@knowming.comwrote: Hi Lars - thanks for the quick reply. I though AVG was valid within the same data-collection period as well as across time. If this is the case, how do you calculate an average within the same data collection period? AN indicator that divides the DE that has the answer between valid answers? Normally that will be completed forms, but such variable is not available as a denominator. We will have to use a different Data Element that count valid answers. Last, such indicator will make sense within the same period, but not across periods, as it will give you an incorrect value, I think. Are you sure that AVG only makes sense across-time? Wouldn't be better to also use the same logic within the same period? What's the rationale? If there anyone out not wanting AVG to be calculated on the same data collection period as across periods? R *Rodolfo Meliá* *Principal | *rme...@knowming.com Skype: rod.melia | +44 777 576 4090 | +1 708 872 7636 www.knowming.com On Mon, May 19, 2014 at 12:05 PM, Lars Helge Øverland larshe...@gmail.com wrote: Hi James, the aggregation operator refers to the time dimension - data will be averaged through time but still summed in the org unit hierarchy dimension. We could make this clearer in the system I guess. regards, Lars On Mon, May 19, 2014 at 12:55 PM, James Chang jamesbch...@gmail.comwrote: Hi, On DHIS demo site, http://apps.dhis2.org/demo, 'Average' aggregation operator seem to do 'Sum' instead. I
[Dhis2-devs] [Branch ~dhis2-documenters/dhis2/dhis2-docbook-docs] Rev 1070: Typo
revno: 1070 committer: Lars Helge Overland larshe...@gmail.com branch nick: dhis2-docbook-docs timestamp: Mon 2014-05-19 21:27:52 +0200 message: Typo modified: src/docbkx/en/dhis2_user_man_web_api.xml src/docbkx/en/resources/css/docbook_bsd.css -- lp:~dhis2-documenters/dhis2/dhis2-docbook-docs https://code.launchpad.net/~dhis2-documenters/dhis2/dhis2-docbook-docs Your team DHIS 2 developers is subscribed to branch lp:~dhis2-documenters/dhis2/dhis2-docbook-docs. To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-documenters/dhis2/dhis2-docbook-docs/+edit-subscription === modified file 'src/docbkx/en/dhis2_user_man_web_api.xml' --- src/docbkx/en/dhis2_user_man_web_api.xml 2014-05-13 09:52:33 + +++ src/docbkx/en/dhis2_user_man_web_api.xml 2014-05-19 19:27:52 + @@ -373,13 +373,14 @@ /section section titleMeta-data filtering/title -paraTo furhter filter the meta-data, we are now (in 2.15) providing several filter operations that can be applied to the returned - meta-data list. The format of the filter itself is very easy, and follows the pattern emphasis role=italic -property:operator:value/emphasis, where emphasis role=italicproperty/emphasis is which property on the meta-data you want - to filter on (please see the emphasis role=italicschema/emphasis section to find out what properties are available), emphasis -role=italicoperator/emphasis is the comparison action you want to perform, and emphasis role=italicvalue/emphasis is the - value to check against (not all operators require value). - table +paraTo further filter the meta-data there are several filter operations that can be applied to + the returned list of meta-data. The format of the filter itself is straight-forward and + follows the pattern emphasis role=italicproperty:operator:value/emphasis, where +emphasis role=italicproperty/emphasis is the property on the meta-data you want to + filter on (please see the emphasis role=italicschema/emphasis section to find out which + properties are available), emphasis role=italicoperator/emphasis is the comparison + action you want to perform and emphasis role=italicvalue/emphasis is the value to check + against (not all operators require value). table titleAvailable Operators/title tgroup cols=5 thead @@ -448,8 +449,9 @@ /tbody /tgroup /table/para -paraDifferent operators will be taken as emphasis role=boldand/emphasis, and multiple of the same will be taken as emphasis -role=boldor/emphasis, the filtering mechanism also allows for recursion (please see below for an example)./para +paraDifferent operators will be applied as emphasis role=boldand/emphasis, and equal + operators will be applied as emphasis role=boldor/emphasis. The filtering mechanism also + allows for recursion - see below for an example:/para paraemphasis role=boldExample 1/emphasis: Get dataElements with ID1 and ID2screen/api/dataElements?filter=id:eq:ID1amp;filter=id:eq:ID2/screen/para paraemphasis role=boldExample 2/emphasis: Get all dataElements which has the dataSet with id === modified file 'src/docbkx/en/resources/css/docbook_bsd.css' --- src/docbkx/en/resources/css/docbook_bsd.css 2014-05-16 10:34:45 + +++ src/docbkx/en/resources/css/docbook_bsd.css 2014-05-19 19:27:52 + @@ -104,7 +104,6 @@ } BODY HR { - margin: .6em; border-width: 0 0 1px 0; border-style: solid; border-color: #cecece; ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] [Dhis2-users] Tracker - Identification number
Hi, No, that format is not supported out of the box. With a custom report or a small app you could do it though, as all the parts of that composite ID should be available through the Web-API. Ola -- -- Ola Hodne Titlestad (Mr) HISP Department of Informatics University of Oslo Mobile: +47 48069736 Home address: Eftasåsen 68, 0687 Oslo, Norway. Googlemaps linkhttps://maps.google.com/maps?q=Eftas%C3%A5sen+68,+0687+Oslo,+Norgehl=enie=UTF8sll=59.893855,10.785116sspn=0.222842,0.585709oq=eftas%C3%A5sen+68,+0687+Oslo,+t=hhnear=Eftas%C3%A5sen+68,+%C3%98stensj%C3%B8,+0687+Oslo,+Norwayz=16 On 19 May 2014 17:57, sumudu weerasinghe sumudu...@gmail.com wrote: Thanks Emma and Ola Hodne for your reply. Both answers well explained and satisfactory. I want to get printed out put of clinic number to apply on patient clinic books, that including org unit and program eg: CP/GA/RA/PSY/2014/002 . Is there any way of getting printed out put in a this format ? Is it available in current version? On Mon, May 19, 2014 at 1:30 PM, Ola Hodne Titlestad ol...@ifi.uio.nowrote: Hi Sumudu, Thanks Emma for the response. Just to add a bit more detail on the identifier issue. There is no way at the moment to automatically generate IDs on the format you suggest. What is possible, as Emma writes, is to define what we call uniqueness scope for attributes. So in your case I would create an attribute Clinic Number (the last part of your ID) with value type Number, then tick unique and select in program within organisation unit. This means that the users only deal with the Clinic Number, but in the back-end the system makes sure that there are no duplicate Clinic Numbers for any combination of program+organisation unit. So when you search for Clinic Number you might get multiple hits/persons, but not for the same organisation unit + program combination. You can then narrow the search by searching in only one organisation unit and one program, which will give you maximum 1 person for a full clinic number search. A typical clinician at a local clinic will only have access to one or a few programs and typically only one organisation unit, so the search scope is by default same or similar to the uniqueness scope, which makes it easier to quickly identify persons using the local Clinic Number (found at the patient/mother/child card or similar). We are planning to support period as part of this uniqueness scope as well, but that is not supported yet in 2.15. That will allow you to support the typical local practice of restarting the Clinic Number count in the paper registers at the beginning of every year (or financial year), so that duplicates will also be allowed for the same program+organisation unit as long as they are in separate periods (e.g. years) of your selected period type for uniqueness scope. On tracked entity, if your programs are about persons then add a tracked entity called Person and make sure to select that one when creating a new program. That's all. Ola --- -- Ola Hodne Titlestad (Mr) HISP Department of Informatics University of Oslo Mobile: +47 48069736 Home address: Eftasåsen 68, 0687 Oslo, Norway. Googlemaps linkhttps://maps.google.com/maps?q=Eftas%C3%A5sen+68,+0687+Oslo,+Norgehl=enie=UTF8sll=59.893855,10.785116sspn=0.222842,0.585709oq=eftas%C3%A5sen+68,+0687+Oslo,+t=hhnear=Eftas%C3%A5sen+68,+%C3%98stensj%C3%B8,+0687+Oslo,+Norwayz=16 On 19 May 2014 09:11, Emma Kassy ekass...@gmail.com wrote: Hi Sumudu, For version 2.15, There is a person Identifier, Go to Program Attributes select Attributes; You can make an ID unique by checking UNIQUE which will give you options like unique with in 1.whole system, 2. org unit, 3. program, or 4. program and orgunit. This means that you get to enter the clinic number on registration. (At some point IDs were automatically generated am not sure if that is still the case may be some one can provide more Information on this). Also it will be possible to see the orgunit and period as an output such as on Search Results. Tracked Entity: Helps to define the different objects that you would like to track with in your system (no longer limited to persons). This can be Persons for TB, HIV and ANC programs or ITEMS if one is interested in tracking drugs or any other Logistic Items. I hope this helps On Sun, May 18, 2014 at 4:01 PM, sumudu weerasinghe sumudu...@gmail.com wrote: Dear All, I want to create a psychiatric patient identification number as - it should contain initial code indicating org unit , program, and year - number need to be generate by system without manual entering 1. Is it possible in DHIS2 2.15 tracker ? 2. Is there Person Identifier in New version 2.15? 3. What is mean by Tracked entity in new version 2.15? Regards Sumudu ___
Re: [Dhis2-devs] [Bug 1320460] [NEW] Pivot table not showing data element desagregation values
Good. Not sure what you mean Romain. Can you use an example from the demo? What kind out table layout do you want? Ola - -- Ola Hodne Titlestad (Mr) HISP Department of Informatics University of Oslo Mobile: +47 48069736 Home address: Eftasåsen 68, 0687 Oslo, Norway. Googlemaps linkhttps://maps.google.com/maps?q=Eftas%C3%A5sen+68,+0687+Oslo,+Norgehl=enie=UTF8sll=59.893855,10.785116sspn=0.222842,0.585709oq=eftas%C3%A5sen+68,+0687+Oslo,+t=hhnear=Eftas%C3%A5sen+68,+%C3%98stensj%C3%B8,+0687+Oslo,+Norwayz=16 On 19 May 2014 16:56, Romain-Rolland TOHOURI rom...@tohouri.com wrote: Yes Ola, you're right!! I didn't select the option in the left side menu. Now its works! but now, how do you use the category option in the layout dimension column? Thanks for your help, Romain 2014-05-19 12:24 GMT+00:00 Ola Hodne Titlestad ol...@ifi.uio.no: Hi Romain, I just tried this on the online demo site and in works fine following these steps: 1) Open Pivot Table App 2) In data elements, select group Immunization and select the data element BCG doses given 3) Click Update to see the table with data, these are totals for BCG doses given, by month 4) Click on the EPI/nutrition age dimension in the left side menu. Select both options (1, 1). 5) Click on Layout and move EPI/nutrition age to columns. 6) Clik on Update and you will see BCG doses given data disaggregated by age 1, and age 1 7) Click on the Location Fixed/Outreach dimension in the left side menu and select all options 8) In Layout put Location Fixed/Outreach on Rows 9) Click on Update and you will see the data further disaggregated by location Maybe you forgot to actually select the options in the dimension menu on the left side? It is not enough to move the dimension into the table layout, if no options are selected then the table will not show the disaggregations. In the demo database the data element BCG doses given is assigned to a category combination which is combining the two categories EPI/nutrition age and Location Fixed/Outreach. Ola --- -- Ola Hodne Titlestad (Mr) HISP Department of Informatics University of Oslo Mobile: +47 48069736 Home address: Eftasåsen 68, 0687 Oslo, Norway. Googlemaps linkhttps://maps.google.com/maps?q=Eftas%C3%A5sen+68,+0687+Oslo,+Norgehl=enie=UTF8sll=59.893855,10.785116sspn=0.222842,0.585709oq=eftas%C3%A5sen+68,+0687+Oslo,+t=hhnear=Eftas%C3%A5sen+68,+%C3%98stensj%C3%B8,+0687+Oslo,+Norwayz=16 On 17 May 2014 12:17, Romain-Rolland Tohouri rom...@tohouri.com wrote: Public bug reported: Using pivot table app, when selecting data element BCG doses given you see the values in the generated table, but when editing the layout and adding categories dimension to the column or row where data is located, the table generated became empty with no values. I tried it with my local database but also on DHIS2 demo site and same problem. Thanks! ** Affects: dhis2 Importance: Undecided Status: New -- You received this bug notification because you are a member of DHIS 2 developers, which is subscribed to DHIS. https://bugs.launchpad.net/bugs/1320460 Title: Pivot table not showing data element desagregation values Status in DHIS 2: New Bug description: Using pivot table app, when selecting data element BCG doses given you see the values in the generated table, but when editing the layout and adding categories dimension to the column or row where data is located, the table generated became empty with no values. I tried it with my local database but also on DHIS2 demo site and same problem. Thanks! To manage notifications about this bug go to: https://bugs.launchpad.net/dhis2/+bug/1320460/+subscriptions ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp -- Dr Tohouri Romain-Rolland www.tohouri. Tel: +225 03 44 49 44 ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] 'Average' Aggregation does 'Sum' instead
This sounds great ! I like the idea of separating the operators to use across Org Units or across Time. It sounds like we will gain this feature just in time for Christmas... I noticed the new Org Unit count feature on the indicators- this will address many other needs, but not this one in particular, as I need to use the number of submitted forms - I will get this through a different data element, in which to store 1 or 0, so I can divide by the correct number of answers. Thanks again - looking forward for 2.17... *Rodolfo Meliá* *Principal | *rme...@knowming.com Skype: rod.melia | +44 777 576 4090 | +1 708 872 7636 www.knowming.com On Mon, May 19, 2014 at 8:09 PM, Lars Helge Øverland larshe...@gmail.comwrote: Hi Rodolfo, now I understand what you mean. The solution I think would be to introduce another aggregation operator: one for the time dimension, and another for the org unit hierarchy dimension. Then you could set the org unit hierarchy aggregation operator to avg to get your desired results. This has actually been discussed before and would be a natural and good feature, see blueprint from Jason herehttps://blueprints.launchpad.net/dhis2/+spec/aggregation-operators. I have put it up for 2.17 for now. One feature that was introduced in 2.15 that might be useful is the org unit group count in indicator function. First, you can create an org unit group called outlets, where you assign all your outlets. Then have a look in indicator formula screen - you can put that group directly into the formula, which will be substituted with the number of org units in that group joined with the org unit hierarchy for which the aggregated value is requested. You can use this as your denominator - simply take the total value as numerator and divide it on the number of outlets. I assume your numbers are percentages? If so you you should keep the aggregation operator on avg. It won't be perfect as you cannot weigh your outlets but maybe close enough. regards, Lars On Mon, May 19, 2014 at 3:54 PM, Rodolfo Melia rme...@knowming.comwrote: Hi Lars - your example for population is correct. It makes sense. Our case is scores calculated for quality assurance. On a given month we may get: *Region A* - Outlet 1: 90 - Outlet 2: 100 - Outlet 3: not conducted - Outlet 4: 80 When looking in analytics at Region A, on the that month, we expect to get 90. We currently get 270, which is correct based on your explanation. We will try to create an indicator that divides between 3 (so we need to know conducted assessments). My worry is that the indicator will work of that month, but when looking across multiple months, not sure about what result will it return if we keep the aggregation = Avg. R *Rodolfo Meliá* *Principal | *rme...@knowming.com Skype: rod.melia | +44 777 576 4090 | +1 708 872 7636 www.knowming.com On Mon, May 19, 2014 at 2:36 PM, Lars Helge Øverland larshe...@gmail.com wrote: Hi Rodolfo, I am not sure if I understand you correctly so I will just try to explain how it works: With avg operator, you can get a valid disaggregated data value for period within the data collection frequency. So if you collect population with a yearly frequency for a data element with the avg operator, then you can also ask for the monthly value for a month in that year. In that case, the values will be the same - sort of a standing value for that period. If you have a value of e.g. 1000 people for the year, then the value for the month will also be 1000. This is just the nature of the data - if you have a population of 1000 for the year, then we must assume that the population for a month is also 1000. We do not allow average within a period or disaggregations for data element which naturally sums across time. As an example, if you collect cases of some disease at a quarterly frequency, we don't allow retrieving the value for a month within that quarter simply using the average. The reason is that it would not be valid statistics - we have no evidence that not all cases happened in the last month of the quarter, etc. regards, Lars On Mon, May 19, 2014 at 1:48 PM, Rodolfo Melia rme...@knowming.comwrote: Hi Lars - thanks for the quick reply. I though AVG was valid within the same data-collection period as well as across time. If this is the case, how do you calculate an average within the same data collection period? AN indicator that divides the DE that has the answer between valid answers? Normally that will be completed forms, but such variable is not available as a denominator. We will have to use a different Data Element that count valid answers. Last, such indicator will make sense within the same period, but not across periods, as it will give you an incorrect value, I think. Are you sure that AVG only makes sense across-time? Wouldn't be better to also use the same logic within the same period? What's the
Re: [Dhis2-devs] 'Average' Aggregation does 'Sum' instead
Understood - thanks for the feedback. Lars On Mon, May 19, 2014 at 10:18 PM, Rodolfo Melia rme...@knowming.com wrote: This sounds great ! I like the idea of separating the operators to use across Org Units or across Time. It sounds like we will gain this feature just in time for Christmas... I noticed the new Org Unit count feature on the indicators- this will address many other needs, but not this one in particular, as I need to use the number of submitted forms - I will get this through a different data element, in which to store 1 or 0, so I can divide by the correct number of answers. Thanks again - looking forward for 2.17... *Rodolfo Meliá* *Principal | *rme...@knowming.com Skype: rod.melia | +44 777 576 4090 | +1 708 872 7636 www.knowming.com On Mon, May 19, 2014 at 8:09 PM, Lars Helge Øverland larshe...@gmail.comwrote: Hi Rodolfo, now I understand what you mean. The solution I think would be to introduce another aggregation operator: one for the time dimension, and another for the org unit hierarchy dimension. Then you could set the org unit hierarchy aggregation operator to avg to get your desired results. This has actually been discussed before and would be a natural and good feature, see blueprint from Jason herehttps://blueprints.launchpad.net/dhis2/+spec/aggregation-operators. I have put it up for 2.17 for now. One feature that was introduced in 2.15 that might be useful is the org unit group count in indicator function. First, you can create an org unit group called outlets, where you assign all your outlets. Then have a look in indicator formula screen - you can put that group directly into the formula, which will be substituted with the number of org units in that group joined with the org unit hierarchy for which the aggregated value is requested. You can use this as your denominator - simply take the total value as numerator and divide it on the number of outlets. I assume your numbers are percentages? If so you you should keep the aggregation operator on avg. It won't be perfect as you cannot weigh your outlets but maybe close enough. regards, Lars On Mon, May 19, 2014 at 3:54 PM, Rodolfo Melia rme...@knowming.comwrote: Hi Lars - your example for population is correct. It makes sense. Our case is scores calculated for quality assurance. On a given month we may get: *Region A* - Outlet 1: 90 - Outlet 2: 100 - Outlet 3: not conducted - Outlet 4: 80 When looking in analytics at Region A, on the that month, we expect to get 90. We currently get 270, which is correct based on your explanation. We will try to create an indicator that divides between 3 (so we need to know conducted assessments). My worry is that the indicator will work of that month, but when looking across multiple months, not sure about what result will it return if we keep the aggregation = Avg. R *Rodolfo Meliá* *Principal | *rme...@knowming.com Skype: rod.melia | +44 777 576 4090 | +1 708 872 7636 www.knowming.com On Mon, May 19, 2014 at 2:36 PM, Lars Helge Øverland larshe...@gmail.com wrote: Hi Rodolfo, I am not sure if I understand you correctly so I will just try to explain how it works: With avg operator, you can get a valid disaggregated data value for period within the data collection frequency. So if you collect population with a yearly frequency for a data element with the avg operator, then you can also ask for the monthly value for a month in that year. In that case, the values will be the same - sort of a standing value for that period. If you have a value of e.g. 1000 people for the year, then the value for the month will also be 1000. This is just the nature of the data - if you have a population of 1000 for the year, then we must assume that the population for a month is also 1000. We do not allow average within a period or disaggregations for data element which naturally sums across time. As an example, if you collect cases of some disease at a quarterly frequency, we don't allow retrieving the value for a month within that quarter simply using the average. The reason is that it would not be valid statistics - we have no evidence that not all cases happened in the last month of the quarter, etc. regards, Lars On Mon, May 19, 2014 at 1:48 PM, Rodolfo Melia rme...@knowming.comwrote: Hi Lars - thanks for the quick reply. I though AVG was valid within the same data-collection period as well as across time. If this is the case, how do you calculate an average within the same data collection period? AN indicator that divides the DE that has the answer between valid answers? Normally that will be completed forms, but such variable is not available as a denominator. We will have to use a different Data Element that count valid answers. Last, such indicator will make sense within the same period, but not across periods, as it will give you an incorrect value, I think.
Re: [Dhis2-devs] [Bug 1320212] [NEW] Warning possibly relate to xerces library while migrating to dhis 2.14 to 2.15
The parser impl should be provided by the java runtime. On 19 May 2014 19:56, Morten Olav Hansen morte...@gmail.com wrote: I think it should be fine, as long as some kind of impl is provided by the container. -- Morten On Mon, May 19, 2014 at 8:30 PM, Lars Helge Øverland larshe...@gmail.comwrote: Hi Bob, thanks for looking into this. Morten, do you think you can comment on this? I have excluded xercesImpl for now, I think it should be provided by the container anyway so should not be a problem. We can put it back if necessary. Lars On Fri, May 16, 2014 at 2:45 PM, Bob Jolliffe bobjolli...@gmail.comwrote: Yes I see that xercesImpl has crept back in again (this time as a dependency of openid4j). I think we can just exclude it (just like jasperreports and geotools) in root pom.xml but I am reluctant to do it as I don't really have any scaffolding to test openid. Morten, maybe when you get the chance will you try? Or anybody else who has been testing openid. Bob On 16 May 2014 13:33, Romain-Rolland Tohouri rom...@tohouri.com wrote: Public bug reported: Migrating a server from dhis2.14 form dhis2.15 i got the following warning in the log file and we think it may be related to xerces library. May 16, 2014 11:42:49 AM org.apache.catalina.core.ApplicationContext log INFO: Initializing Spring FrameworkServlet 'webapi' Warning: org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser: Property ' http://www.oracle.com/xml/jaxp/properties/entityExpansionLimit' is not recognized. Thanks, Romain ** Affects: dhis2 Importance: Undecided Status: New -- You received this bug notification because you are a member of DHIS 2 developers, which is subscribed to DHIS. https://bugs.launchpad.net/bugs/1320212 Title: Warning possibly relate to xerces library while migrating to dhis 2.14 to 2.15 Status in DHIS 2: New Bug description: Migrating a server from dhis2.14 form dhis2.15 i got the following warning in the log file and we think it may be related to xerces library. May 16, 2014 11:42:49 AM org.apache.catalina.core.ApplicationContext log INFO: Initializing Spring FrameworkServlet 'webapi' Warning: org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser: Property ' http://www.oracle.com/xml/jaxp/properties/entityExpansionLimit' is not recognized. Thanks, Romain To manage notifications about this bug go to: https://bugs.launchpad.net/dhis2/+bug/1320212/+subscriptions ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp -- You received this bug notification because you are a member of DHIS 2 developers, which is subscribed to DHIS. https://bugs.launchpad.net/bugs/1320212 Title: Warning possibly relate to xerces library while migrating to dhis 2.14 to 2.15 Status in DHIS 2: New Bug description: Migrating a server from dhis2.14 form dhis2.15 i got the following warning in the log file and we think it may be related to xerces library. May 16, 2014 11:42:49 AM org.apache.catalina.core.ApplicationContext log INFO: Initializing Spring FrameworkServlet 'webapi' Warning: org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser: Property 'http://www.oracle.com/xml/jaxp/properties/entityExpansionLimit' is not recognized. Thanks, Romain To manage notifications about this bug go to: https://bugs.launchpad.net/dhis2/+bug/1320212/+subscriptions ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp
Re: [Dhis2-devs] [Bug 1320460] [NEW] Pivot table not showing data element desagregation values
Hi Ola, When you clic on layout in the demo, in the Dimensions column you have at the top of the list Categories, how do you use that since it is generic and now you have to specify actual disagregations in the left panel before seeing the result on the table. Hope my question is more clear now... Thank you for your help, Romain 2014-05-19 19:57 GMT+00:00 Ola Hodne Titlestad ol...@ifi.uio.no: Good. Not sure what you mean Romain. Can you use an example from the demo? What kind out table layout do you want? Ola - -- Ola Hodne Titlestad (Mr) HISP Department of Informatics University of Oslo Mobile: +47 48069736 Home address: Eftasåsen 68, 0687 Oslo, Norway. Googlemaps linkhttps://maps.google.com/maps?q=Eftas%C3%A5sen+68,+0687+Oslo,+Norgehl=enie=UTF8sll=59.893855,10.785116sspn=0.222842,0.585709oq=eftas%C3%A5sen+68,+0687+Oslo,+t=hhnear=Eftas%C3%A5sen+68,+%C3%98stensj%C3%B8,+0687+Oslo,+Norwayz=16 On 19 May 2014 16:56, Romain-Rolland TOHOURI rom...@tohouri.com wrote: Yes Ola, you're right!! I didn't select the option in the left side menu. Now its works! but now, how do you use the category option in the layout dimension column? Thanks for your help, Romain 2014-05-19 12:24 GMT+00:00 Ola Hodne Titlestad ol...@ifi.uio.no: Hi Romain, I just tried this on the online demo site and in works fine following these steps: 1) Open Pivot Table App 2) In data elements, select group Immunization and select the data element BCG doses given 3) Click Update to see the table with data, these are totals for BCG doses given, by month 4) Click on the EPI/nutrition age dimension in the left side menu. Select both options (1, 1). 5) Click on Layout and move EPI/nutrition age to columns. 6) Clik on Update and you will see BCG doses given data disaggregated by age 1, and age 1 7) Click on the Location Fixed/Outreach dimension in the left side menu and select all options 8) In Layout put Location Fixed/Outreach on Rows 9) Click on Update and you will see the data further disaggregated by location Maybe you forgot to actually select the options in the dimension menu on the left side? It is not enough to move the dimension into the table layout, if no options are selected then the table will not show the disaggregations. In the demo database the data element BCG doses given is assigned to a category combination which is combining the two categories EPI/nutrition age and Location Fixed/Outreach. Ola --- -- Ola Hodne Titlestad (Mr) HISP Department of Informatics University of Oslo Mobile: +47 48069736 Home address: Eftasåsen 68, 0687 Oslo, Norway. Googlemaps linkhttps://maps.google.com/maps?q=Eftas%C3%A5sen+68,+0687+Oslo,+Norgehl=enie=UTF8sll=59.893855,10.785116sspn=0.222842,0.585709oq=eftas%C3%A5sen+68,+0687+Oslo,+t=hhnear=Eftas%C3%A5sen+68,+%C3%98stensj%C3%B8,+0687+Oslo,+Norwayz=16 On 17 May 2014 12:17, Romain-Rolland Tohouri rom...@tohouri.com wrote: Public bug reported: Using pivot table app, when selecting data element BCG doses given you see the values in the generated table, but when editing the layout and adding categories dimension to the column or row where data is located, the table generated became empty with no values. I tried it with my local database but also on DHIS2 demo site and same problem. Thanks! ** Affects: dhis2 Importance: Undecided Status: New -- You received this bug notification because you are a member of DHIS 2 developers, which is subscribed to DHIS. https://bugs.launchpad.net/bugs/1320460 Title: Pivot table not showing data element desagregation values Status in DHIS 2: New Bug description: Using pivot table app, when selecting data element BCG doses given you see the values in the generated table, but when editing the layout and adding categories dimension to the column or row where data is located, the table generated became empty with no values. I tried it with my local database but also on DHIS2 demo site and same problem. Thanks! To manage notifications about this bug go to: https://bugs.launchpad.net/dhis2/+bug/1320460/+subscriptions ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp -- Dr Tohouri Romain-Rolland www.tohouri. Tel: +225 03 44 49 44 -- Dr Tohouri Romain-Rolland www.tohouri. Tel: +225 03 44 49 44 ___ Mailing list: https://launchpad.net/~dhis2-devs Post to :
Re: [Dhis2-devs] Android App To Populate Dhis2 Forms
Hi guys am a student in Kenya and am trying to pull the list of Org Units, to an android spinner could anyone help me go about it because ave been stuck on this place for about a week now Benjamin Mwalimu Mulyungi Software Developer Cell +254712953938 simplicity is the ultimate sophistication On Tue, May 20, 2014 at 8:48 AM, benjamin dubdabasoduba mwalimu dubdabasod...@gmail.com wrote: Hi guys am a student in Kenya and am trying to pull the list of Org Units, to an android spinner Benjamin Mwalimu Mulyungi Software engineer, Merphy Technologies www,merphy.co.ke Cell +254712953938 simplicity is the ultimate sophistication ___ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp