=== modified file 'dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/caseaggregation/DefaultCaseAggregationConditionService.java' --- dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/caseaggregation/DefaultCaseAggregationConditionService.java 2012-03-16 07:50:14 +0000 +++ dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/caseaggregation/DefaultCaseAggregationConditionService.java 2012-03-21 09:19:26 +0000 @@ -210,7 +210,7 @@ Period period ) { String sql = convertCondition( aggregationCondition, orgunit, period ); - + Collection patientIds = aggregationConditionStore.executeSQL( sql ); if ( patientIds == null ) @@ -777,8 +777,11 @@ sql = "SELECT pi.patientid "; } - sql += "FROM patient as pi WHERE pi.organisationunitid = " + orgunitId + " " + "AND pi.registrationdate >= '" - + startDate + "' AND pi.registrationdate <= '" + endDate + "' "; + sql += "FROM patient as pi INNER JOIN programinstance pgi ON pi.patientid = pgi.patientid " + + "INNER JOIN programstageinstance psi ON psi.programinstanceid = pgi.programinstanceid " + + "INNER JOIN patientattributevalue as pav ON pav.patientid = pi.patientid " + + "WHERE pi.organisationunitid = " + orgunitId + " " + "AND pi.registrationdate >= '" + startDate + + "' AND pi.registrationdate <= '" + endDate + "' "; return sql; } @@ -793,12 +796,13 @@ sql = "SELECT pi.patientid "; } - sql += "FROM patient as pi WHERE "; + sql += "FROM patient as pi INNER JOIN programinstance pgi ON pi.patientid = pgi.patientid " + + "INNER JOIN programstageinstance psi ON psi.programinstanceid = pgi.programinstanceid WHERE "; if ( propertyName.equals( PROPERTY_AGE ) ) { - sql += "(( 12 * ( EXTRACT(YEAR FROM '" + startDate + "' ) - EXTRACT(YEAR FROM birthdate ) ) ) + " - + "EXTRACT( MONTH FROM '" + startDate + "' ) - EXTRACT( MONTH FROM birthdate ) )" + " "; + sql += "(( 12 * ( EXTRACT(YEAR FROM DATE '" + startDate + "' ) - EXTRACT(YEAR FROM birthdate ) ) ) + " + + "EXTRACT( MONTH FROM DATE '" + startDate + "' ) - EXTRACT( MONTH FROM birthdate ) )" + " "; } else { @@ -842,7 +846,7 @@ String startDate, String endDate ) { String select = "SELECT distinct(pi.patientid) "; - + if ( operator.equals( AGGRERATION_SUM ) ) { select = "SELECT psi.programstageinstanceid "; === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addCaseAggregation.vm' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addCaseAggregation.vm 2012-03-21 05:48:22 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/addCaseAggregation.vm 2012-03-21 09:19:26 +0000 @@ -137,7 +137,7 @@ === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateCaseAggregation.vm' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateCaseAggregation.vm 2012-03-21 05:48:22 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateCaseAggregation.vm 2012-03-21 09:19:26 +0000 @@ -138,7 +138,7 @@
- @@ -156,7 +156,7 @@
$i18n.getString( "suggested_values" ) -
- @@ -157,7 +157,7 @@
$i18n.getString( "suggested_values" ) -