=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementCategoryService.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementCategoryService.java 2013-02-22 08:14:27 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementCategoryService.java 2013-04-22 17:22:52 +0000 @@ -35,7 +35,6 @@ /** * @author Abyot Asalefew - * @version $Id$ */ public interface DataElementCategoryService { @@ -103,6 +102,13 @@ DataElementCategory getDataElementCategoryByName( String name ); /** + * Returns DataElementCategories which are considered data dimensions. + * + * @return DataElementCategories which are considered data dimensions. + */ + Collection getDataDimensionDataElementCategories(); + + /** * Returns all DataElementCategories. * * @return a collection of all DataElementCategories, or an empty collection if there === modified file 'dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/table/AbstractJdbcTableManager.java' --- dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/table/AbstractJdbcTableManager.java 2013-04-22 08:10:07 +0000 +++ dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/table/AbstractJdbcTableManager.java 2013-04-22 17:22:52 +0000 @@ -37,6 +37,7 @@ import org.hisp.dhis.analytics.AnalyticsIndex; import org.hisp.dhis.analytics.AnalyticsTableManager; import org.hisp.dhis.common.CodeGenerator; +import org.hisp.dhis.dataelement.DataElementCategoryService; import org.hisp.dhis.dataelement.DataElementService; import org.hisp.dhis.jdbc.StatementBuilder; import org.hisp.dhis.organisationunit.OrganisationUnitGroupService; @@ -63,6 +64,9 @@ @Autowired protected OrganisationUnitGroupService organisationUnitGroupService; + + @Autowired + protected DataElementCategoryService categoryService; @Autowired protected StatementBuilder statementBuilder; === modified file 'dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/table/JdbcAnalyticsTableManager.java' --- dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/table/JdbcAnalyticsTableManager.java 2013-04-21 19:53:13 +0000 +++ dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/table/JdbcAnalyticsTableManager.java 2013-04-22 17:22:52 +0000 @@ -38,6 +38,7 @@ import java.util.concurrent.Future; import org.hisp.dhis.analytics.DataQueryParams; +import org.hisp.dhis.dataelement.DataElementCategory; import org.hisp.dhis.dataelement.DataElementGroupSet; import org.hisp.dhis.organisationunit.OrganisationUnitGroupSet; import org.hisp.dhis.organisationunit.OrganisationUnitLevel; @@ -161,6 +162,7 @@ "from datavalue dv " + "left join _dataelementgroupsetstructure degs on dv.dataelementid=degs.dataelementid " + "left join _organisationunitgroupsetstructure ougs on dv.sourceid=ougs.organisationunitid " + + "left join _categorystructure cs on dv.categoryoptioncomboid=cs.categoryoptioncomboid " + "left join _orgunitstructure ous on dv.sourceid=ous.organisationunitid " + "left join _periodstructure ps on dv.periodid=ps.periodid " + "left join dataelement de on dv.dataelementid=de.dataelementid " + @@ -187,10 +189,13 @@ Collection orgUnitGroupSets = organisationUnitGroupService.getAllOrganisationUnitGroupSets(); - + + Collection categories = + categoryService.getDataDimensionDataElementCategories(); + Collection levels = organisationUnitService.getOrganisationUnitLevels(); - + for ( DataElementGroupSet groupSet : dataElementGroupSets ) { String[] col = { groupSet.getUid(), "character(11)", "degs." + groupSet.getUid() }; @@ -203,6 +208,12 @@ columns.add( col ); } + for ( DataElementCategory category : categories ) + { + String[] col = { category.getUid(), "character(11)", "cs." + category.getUid() }; + columns.add( col ); + } + for ( OrganisationUnitLevel level : levels ) { String column = PREFIX_ORGUNITLEVEL + level.getLevel(); === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementCategoryService.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementCategoryService.java 2013-02-22 12:26:37 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementCategoryService.java 2013-04-22 17:22:52 +0000 @@ -27,6 +27,16 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +import static org.hisp.dhis.i18n.I18nUtils.i18n; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; + import org.apache.commons.collections.CollectionUtils; import org.hisp.dhis.common.GenericDimensionalObjectStore; import org.hisp.dhis.common.GenericIdentifiableObjectStore; @@ -36,16 +46,6 @@ import org.hisp.dhis.system.util.FilterUtils; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; - -import static org.hisp.dhis.i18n.I18nUtils.i18n; - /** * @author Abyot Asalefew * @version $Id$ @@ -122,6 +122,21 @@ dataElementCategoryStore.delete( dataElementCategory ); } + public Collection getDataDimensionDataElementCategories() + { + Collection categories = getAllDataElementCategories(); + + FilterUtils.filter( categories, new Filter() + { + public boolean retain( DataElementCategory category ) + { + return category != null && category.isDataDimension(); + } + } ); + + return categories; + } + public Collection getAllDataElementCategories() { return i18n( i18nService, dataElementCategoryStore.getAll() ); === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/addDataElementCategoryForm.vm' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/addDataElementCategoryForm.vm 2013-04-22 10:01:08 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/addDataElementCategoryForm.vm 2013-04-22 17:22:52 +0000 @@ -42,7 +42,7 @@ - + === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/updateDataElementCategoryForm.vm' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/updateDataElementCategoryForm.vm 2013-04-22 10:01:08 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/multidimensional/updateDataElementCategoryForm.vm 2013-04-22 17:22:52 +0000 @@ -47,7 +47,7 @@ - +