dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #11810
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 3466: Removed CalculatedDataElement
------------------------------------------------------------
revno: 3466
committer: Lars Helge Overland <larshelge@xxxxxxxxx>
branch nick: dhis2
timestamp: Sun 2011-04-24 17:50:02 +0200
message:
Removed CalculatedDataElement
removed:
dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/CalculatedDataElement.java
dhis-2/dhis-services/dhis-service-core/src/main/resources/org/hisp/dhis/dataelement/hibernate/CalculatedDataElement.hbm.xml
dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/calculateddataelement/
dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/calculateddataelement/CalculatedDataElementDataMart.java
dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/calculateddataelement/DefaultCalculatedDataElementDataMart.java
dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/CalculatedDataElementConverter.java
dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/importer/CalculatedDataElementImporter.java
modified:
dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/Objects.java
dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementService.java
dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementStore.java
dhis-2/dhis-api/src/main/java/org/hisp/dhis/expression/ExpressionService.java
dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementService.java
dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/hibernate/HibernateDataElementStore.java
dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/expression/DefaultExpressionService.java
dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/startup/TableAlteror.java
dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataelement/DataElementServiceTest.java
dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataelement/DataElementStoreTest.java
dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/engine/DefaultDataMartEngine.java
dhis-2/dhis-services/dhis-service-datamart-default/src/main/resources/META-INF/dhis/beans.xml
dhis-2/dhis-services/dhis-service-datamart-default/src/test/java/org/hisp/dhis/datamart/DataMartServiceTest.java
dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/ExportParams.java
dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/ImportObjectManager.java
dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dhis14/util/Dhis14ParsingUtils.java
dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dhis14/xml/converter/DataElementConverter.java
dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dhis14/xml/converter/DataElementGroupMemberConverter.java
dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DXFConverter.java
dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DataElementConverter.java
dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DataElementGroupMemberConverter.java
dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DataElementGroupSetMemberConverter.java
dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DataSetMemberConverter.java
dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/exporter/DefaultDXFExportService.java
dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/importer/DataElementImporter.java
dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/service/DefaultImportObjectManager.java
dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/service/DefaultImportObjectService.java
dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/deletion/DeletionHandler.java
dhis-2/dhis-support/dhis-support-test/src/main/java/org/hisp/dhis/DhisConvenienceTest.java
dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/action/caseentry/CustomDataEntryAction.java
dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/action/caseentry/ProgramStageCustomDataEntryAction.java
dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/screen/DataEntryScreenManager.java
dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/screen/DefaultDataEntryScreenManager.java
dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/exp/DetailedMetaDataExportAction.java
dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/exp/MetaDataExportAction.java
dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/imp/GetMatchOptionsAction.java
dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/imp/GetPreviewOptionsAction.java
dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/util/ClassMapUtil.java
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/dataelement/AddDataElementAction.java
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/dataelement/ShowUpdateDataElementFormAction.java
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/dataelement/UpdateDataElementAction.java
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/indicator/AddIndicatorAction.java
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/indicator/UpdateIndicatorAction.java
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/resources/META-INF/dhis/beans.xml
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/addDataElementForm.vm
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/addDataElementForm.js
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataElement.js
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/updateDataElementForm.js
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/updateDataElementForm.vm
dhis-2/dhis-web/dhis-web-reporting/src/main/java/org/hisp/dhis/reporting/exp/MetaDataExportAction.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/Objects.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/Objects.java 2011-04-24 12:47:31 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/Objects.java 2011-04-24 15:50:02 +0000
@@ -34,7 +34,6 @@
public enum Objects
{
DATAELEMENT,
- CALCULATEDDATAELEMENT,
EXTENDEDDATAELEMENT,
DATAELEMENTGROUP,
DATAELEMENTGROUPSET,
=== removed file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/CalculatedDataElement.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/CalculatedDataElement.java 2010-04-12 21:23:33 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/CalculatedDataElement.java 1970-01-01 00:00:00 +0000
@@ -1,95 +0,0 @@
-package org.hisp.dhis.dataelement;
-
-/*
- * Copyright (c) 2004-2010, 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.expression.Expression;
-
-/**
- * A CalculatedDataElement (CDE) is created for a set of other related
- * DataElements. Each constituent DataElement may be multiplied with a factor.
- *
- * An example: A value for the CDE "Number of births" is summed together from
- * two other Data Elements, "Number of still births" and "Number of live
- * births".
- *
- * CDEs may be displayed as subtotals in a data entry form. The user may specify
- * whether or not the calculated value should be stored in the database. In all
- * other cases, a CDE behaves just like any other DataElement.
- *
- * @author Hans S. Toemmerholt
- * @version $Id$
- */
-public class CalculatedDataElement
- extends DataElement
-{
- private boolean saved;
-
- private Expression expression;
-
- // -------------------------------------------------------------------------
- // Constructors
- // -------------------------------------------------------------------------
-
- public CalculatedDataElement()
- {
- }
-
- // -------------------------------------------------------------------------
- // Getters and setters
- // -------------------------------------------------------------------------
-
- public boolean isSaved()
- {
- return saved;
- }
-
- public void setSaved( boolean saved )
- {
- this.saved = saved;
- }
-
- public Expression getExpression()
- {
- return expression;
- }
-
- public void setExpression( Expression expression )
- {
- this.expression = expression;
- }
-
- public boolean equals( Object other )
- {
- return super.equals( other );
- }
-
- public int hashCode()
- {
- return super.hashCode();
- }
-}
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementService.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementService.java 2011-03-22 05:49:48 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementService.java 2011-04-24 15:50:02 +0000
@@ -132,15 +132,6 @@
Collection<DataElement> getAllDataElements();
/**
- * Returns all DataElements which are not instances of
- * CalculatedDataElements.
- *
- * @return all DataElements which are not instances of
- * CalculatedDataElements.
- */
- Collection<DataElement> getNonCalculatedDataElements();
-
- /**
* Returns all DataElements with corresponding identifiers. Returns all
* DataElements if the given argument is null.
*
@@ -150,24 +141,6 @@
Collection<DataElement> getDataElements( Collection<Integer> identifiers );
/**
- * Returns all CalculatedDataElements with corresponding identifiers.
- * Returns all CalculatedDataElements if the given argument is null.
- *
- * @param identifiers the collection of identifiers.
- * @return a collection of CalculatedDataElements.
- */
- Collection<CalculatedDataElement> getCalculatedDataElements( Collection<Integer> identifiers );
-
- /**
- * Returns all non-calculated DataElements with corresponding identifiers.
- * Returns all non-calculated DataElements if the given argument is null.
- *
- * @param identifiers the collection of identifiers.
- * @return a collection of DataElements.
- */
- Collection<DataElement> getNonCalculatedDataElements( Collection<Integer> identifiers );
-
- /**
* Returns all DataElements with types that are possible to aggregate. The
* types are currently INT and BOOL.
*
@@ -299,76 +272,6 @@
int getDataElementCountByName( String name );
// -------------------------------------------------------------------------
- // Calculated Data Elements
- // -------------------------------------------------------------------------
-
- /**
- * Returns a CalclulatedDataElement which contains a given dataElement
- *
- * @param dataElement the DataElement which is contained by the
- * CalculatedDataElement to return.
- * @return a CalculatedDataElement which contains the given DataElement, or
- * null if the DataElement is not part of a CalculatedDataElement.
- */
- CalculatedDataElement getCalculatedDataElementByDataElement( DataElement dataElement );
-
- /**
- * Returns CalculatedDataElements which contain any of the given
- * DataElements
- *
- * @param dataElements Collection of DataElements which can be contained by
- * the returned CalculatedDataElements
- * @return a collection of CalculatedDataElements which contain any of the
- * given DataElements, or an empty collection if no
- * CalculatedDataElements contain any of the DataElements.
- */
- Collection<CalculatedDataElement> getCalculatedDataElementsByDataElements( Collection<DataElement> dataElements );
-
- /**
- * Returns all CalculatedDataElements
- *
- * @return a collection of all CalculatedDataElements, or an empty
- * collection if there are no CalculcatedDataELements
- */
- Collection<CalculatedDataElement> getAllCalculatedDataElements();
-
- /**
- * Returns a Map of factors for the DataElements in the given
- * CalculatedDataElement
- *
- * @param calculatedDataElement CalculatedDataElement to get factors for
- * @return a map of factors for the DataElements in the given
- * CalculatedDataElement
- */
- Map<DataElement, Double> getDataElementFactors( CalculatedDataElement calculatedDataElement );
-
- /**
- * Returns a Map of factors for the Operands in the given
- * CalculatedDataElement
- *
- * @param calculatedDataElement CalculatedDataElement to get factors for
- * @return a map of factors for the Operands in the given
- * CalculatedDataElement
- */
- Map<String, Double> getOperandFactors( CalculatedDataElement calculatedDataElement );
-
- /**
- * Returns a collection of OperandIds in the given CalculatedDataElement
- *
- * @param calculatedDataElement CalculatedDataElement to get operands for
- * @return a collection of operands (actually string) for the expression in
- * the given CalculatedDataElement
- */
- Collection<String> getOperandIds( CalculatedDataElement calculatedDataElement );
-
- /**
- *
- * @param identifiers
- * @return
- */
- Map<Integer, String> getCalculatedDataElementExpressionMap( Collection<Integer> identifiers );
-
- // -------------------------------------------------------------------------
// DataElementGroup
// -------------------------------------------------------------------------
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementStore.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementStore.java 2011-01-13 10:50:02 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementStore.java 2011-04-24 15:50:02 +0000
@@ -247,40 +247,6 @@
int getDataElementCountByName( String name );
// -------------------------------------------------------------------------
- // Calculated Data Elements
- // -------------------------------------------------------------------------
-
- /**
- * Returns a CalclulatedDataElement which contains a given dataElement
- *
- * @paran dataElement the DataElement which is contained by the
- * CalculatedDataElement to return.
- * @return a CalculatedDataElement which contains the given DataElement, or
- * null if the DataElement is not part of a CalculatedDataElement.
- */
- CalculatedDataElement getCalculatedDataElementByDataElement( DataElement dataElement );
-
- /**
- * Returns CalculatedDataElements which contain any of the given
- * DataElements
- *
- * @param dataElements Collection of DataElements which can be contained by
- * the returned CalculatedDataElements
- * @return a collection of CalculatedDataElements which contain any of the
- * given DataElements, or an empty collection if no
- * CalculatedDataElements contain any of the DataElements.
- */
- Collection<CalculatedDataElement> getCalculatedDataElementsByDataElements( Collection<DataElement> dataElements );
-
- /**
- * Returns all CalculatedDataElements
- *
- * @return a collection of all CalculatedDataElements, or an empty
- * collection if there are no CalculcatedDataELements
- */
- Collection<CalculatedDataElement> getAllCalculatedDataElements();
-
- // -------------------------------------------------------------------------
// DataElementOperand
// -------------------------------------------------------------------------
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/expression/ExpressionService.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/expression/ExpressionService.java 2011-04-22 21:04:14 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/expression/ExpressionService.java 2011-04-24 15:50:02 +0000
@@ -170,15 +170,6 @@
String getExpressionDescription( String expression );
/**
- * Looks for the existence of calculated dataelement in the give expression.
- * If exists, it will replace this CDE with its equivalent expression.
- *
- * @param expression The expression string
- * @return expression containing non CDE
- */
- String replaceCDEsWithTheirExpression( String expression );
-
- /**
* Replaces references to data element totals with references to all
* category option combos in the category combo for that data element.
*
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementService.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementService.java 2011-03-22 05:49:48 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementService.java 2011-04-24 15:50:02 +0000
@@ -39,8 +39,6 @@
import java.util.List;
import java.util.Map;
import java.util.Set;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
import org.hisp.dhis.common.GenericIdentifiableObjectStore;
import org.hisp.dhis.common.comparator.CategoryComboSizeComparator;
@@ -147,21 +145,6 @@
return i18n( i18nService, dataElementStore.getAllDataElements() );
}
- public Collection<DataElement> getNonCalculatedDataElements()
- {
- Collection<DataElement> dataElements = new ArrayList<DataElement>();
-
- for ( DataElement dataElement : getAllDataElements() )
- {
- if ( !(dataElement instanceof CalculatedDataElement) )
- {
- dataElements.add( dataElement );
- }
- }
-
- return dataElements;
- }
-
public Collection<DataElement> getDataElements( final Collection<Integer> identifiers )
{
Collection<DataElement> dataElements = getAllDataElements();
@@ -204,16 +187,6 @@
return dataElements;
}
- public Collection<DataElement> getNonCalculatedDataElements( Collection<Integer> identifiers )
- {
- if ( identifiers == null )
- {
- return getNonCalculatedDataElements();
- }
-
- return getDataElements( identifiers );
- }
-
public Collection<DataElement> getAggregateableDataElements()
{
return i18n( i18nService, dataElementStore.getAggregateableDataElements() );
@@ -365,132 +338,6 @@
return dataElementStore.getDataElementCountByName( name );
}
- // -------------------------------------------------------------------------
- // CalculatedDataElement
- // -------------------------------------------------------------------------
-
- public Collection<CalculatedDataElement> getAllCalculatedDataElements()
- {
- return i18n( i18nService, dataElementStore.getAllCalculatedDataElements() );
- }
-
- public Collection<CalculatedDataElement> getCalculatedDataElements( final Collection<Integer> identifiers )
- {
- Collection<CalculatedDataElement> dataElements = getAllCalculatedDataElements();
-
- return identifiers == null ? dataElements : FilterUtils.filter( dataElements,
- new Filter<CalculatedDataElement>()
- {
- public boolean retain( CalculatedDataElement dataElement )
- {
- return identifiers.contains( dataElement.getId() );
- }
- } );
- }
-
- public CalculatedDataElement getCalculatedDataElementByDataElement( DataElement dataElement )
- {
- return i18n( i18nService, dataElementStore.getCalculatedDataElementByDataElement( dataElement ) );
- }
-
- public Collection<CalculatedDataElement> getCalculatedDataElementsByDataElements(
- Collection<DataElement> dataElements )
- {
- return i18n( i18nService, dataElementStore.getCalculatedDataElementsByDataElements( dataElements ) );
- }
-
- public Map<DataElement, Double> getDataElementFactors( CalculatedDataElement calculatedDataElement )
- {
- Map<DataElement, Double> factorMap = new HashMap<DataElement, Double>();
-
- Pattern pattern = Pattern.compile( "\\[(\\d+)\\]\\s*\\*\\s*(\\d+(\\.\\d)*)" );
-
- // ---------------------------------------------------------------------
- // In readable form: \[(\d+)\]\s*\*\s*(\d+)
- // Meaning any expression on the form "[id] * factor"
- // ---------------------------------------------------------------------
-
- Matcher matcher = pattern.matcher( calculatedDataElement.getExpression().getExpression() );
-
- while ( matcher.find() )
- {
- // -----------------------------------------------------------------
- // Key: Datelementid
- // Value: Factor
- // -----------------------------------------------------------------
-
- factorMap.put( getDataElement( Integer.parseInt( matcher.group( 1 ) ) ), Double.parseDouble( matcher
- .group( 2 ) ) );
- }
-
- return factorMap;
- }
-
- public Map<String, Double> getOperandFactors( CalculatedDataElement calculatedDataElement )
- {
- Map<String, Double> factorMap = new HashMap<String, Double>();
-
- Pattern pattern = Pattern.compile( "\\[(\\d+\\.\\d+)\\]\\s*\\*\\s*(-?\\d+(\\.\\d)*)" );
-
- // ---------------------------------------------------------------------
- // In readable form: \[(\d+)\]\s*\*\s*(\d+)
- // Meaning any expression on the form "[id] * factor"
- // ---------------------------------------------------------------------
-
- Matcher matcher = pattern.matcher( calculatedDataElement.getExpression().getExpression() );
-
- while ( matcher.find() )
- {
- // -----------------------------------------------------------------
- // Key: Datelementid.optioncomboid
- // Value: Factor
- // -----------------------------------------------------------------
-
- factorMap.put( matcher.group( 1 ), Double.parseDouble( matcher.group( 2 ) ) );
- }
-
- return factorMap;
- }
-
- public Collection<String> getOperandIds( CalculatedDataElement calculatedDataElement )
- {
- Collection<String> operands = new ArrayList<String>();
-
- Pattern pattern = Pattern.compile( "\\[(\\d+\\.\\d+)\\]" );
-
- // ---------------------------------------------------------------------
- // In readable form: \[(\d+)\]\s*\*\s*(\d+)
- // Meaning any expression on the form "[id] * factor"
- // ---------------------------------------------------------------------
-
- Matcher matcher = pattern.matcher( calculatedDataElement.getExpression().getExpression() );
-
- while ( matcher.find() )
- {
- // -----------------------------------------------------------------
- // Datelementid.optioncomboid
- // -----------------------------------------------------------------
-
- operands.add( matcher.group( 1 ) );
- }
-
- return operands;
- }
-
- public Map<Integer, String> getCalculatedDataElementExpressionMap( Collection<Integer> identifiers )
- {
- Collection<CalculatedDataElement> dataElements = getCalculatedDataElements( identifiers );
-
- Map<Integer, String> map = new HashMap<Integer, String>();
-
- for ( CalculatedDataElement element : dataElements )
- {
- map.put( element.getId(), element.getExpression().getExpression() );
- }
-
- return map;
- }
-
public Collection<DataElement> getDataElementsByDataSets( Collection<DataSet> dataSets )
{
return i18n( i18nService, dataElementStore.getDataElementsByDataSets( dataSets ) );
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/hibernate/HibernateDataElementStore.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/hibernate/HibernateDataElementStore.java 2011-04-02 09:48:38 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/hibernate/HibernateDataElementStore.java 2011-04-24 15:50:02 +0000
@@ -40,7 +40,6 @@
import org.hibernate.Session;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Restrictions;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementCategoryCombo;
import org.hisp.dhis.dataelement.DataElementOperand;
@@ -331,53 +330,6 @@
ConversionUtils.getIdentifiers( DataSet.class, dataSets ) ).list();
}
- // -------------------------------------------------------------------------
- // CalculatedDataElement
- // -------------------------------------------------------------------------
-
- @SuppressWarnings( "unchecked" )
- public Collection<CalculatedDataElement> getAllCalculatedDataElements()
- {
- Session session = sessionFactory.getCurrentSession();
-
- Criteria criteria = session.createCriteria( CalculatedDataElement.class );
-
- return criteria.list();
- }
-
- public CalculatedDataElement getCalculatedDataElementByDataElement( DataElement dataElement )
- {
- Session session = sessionFactory.getCurrentSession();
-
- Set<Integer> dataElementIds = new HashSet<Integer>();
- dataElementIds.add( dataElement.getId() );
-
- Criteria criteria = session.createCriteria( CalculatedDataElement.class ).createCriteria( "expression" )
- .createCriteria( "dataElementsInExpression" ).add( Restrictions.in( "id", dataElementIds ) );
-
- return (CalculatedDataElement) criteria.uniqueResult();
- }
-
- @SuppressWarnings( "unchecked" )
- public Collection<CalculatedDataElement> getCalculatedDataElementsByDataElements(
- Collection<DataElement> dataElements )
- {
- Session session = sessionFactory.getCurrentSession();
-
- Set<Integer> dataElementIds = new HashSet<Integer>();
-
- for ( DataElement dataElement : dataElements )
- {
- dataElementIds.add( dataElement.getId() );
- }
-
- Criteria criteria = session.createCriteria( CalculatedDataElement.class ).createCriteria( "expression" )
- .createCriteria( "dataElementsInExpression" ).add( Restrictions.in( "id", dataElementIds ) );
-
- return new HashSet<CalculatedDataElement>( criteria.list() );
-
- }
-
public Collection<DataElement> getDataElementsLikeName( String name )
{
return getLikeName( name );
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/expression/DefaultExpressionService.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/expression/DefaultExpressionService.java 2011-04-22 21:04:14 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/expression/DefaultExpressionService.java 2011-04-24 15:50:02 +0000
@@ -34,7 +34,6 @@
import java.util.Collection;
import java.util.HashSet;
-import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import java.util.regex.Matcher;
@@ -44,7 +43,6 @@
import org.apache.commons.logging.LogFactory;
import org.hisp.dhis.aggregation.AggregatedDataValueService;
import org.hisp.dhis.common.GenericStore;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementCategoryCombo;
import org.hisp.dhis.dataelement.DataElementCategoryOptionCombo;
@@ -335,51 +333,6 @@
return buffer != null ? buffer.toString() : null;
}
- public String replaceCDEsWithTheirExpression( String expression )
- {
- StringBuffer buffer = null;
-
- if ( expression != null )
- {
- buffer = new StringBuffer();
-
- final Set<DataElement> caclulatedDataElementsInExpression = getDataElementsInExpression( expression );
-
- final Iterator<DataElement> iterator = caclulatedDataElementsInExpression.iterator();
-
- while ( iterator.hasNext() )
- {
- if ( !(iterator.next() instanceof CalculatedDataElement) )
- {
- iterator.remove();
- }
- }
-
- final Matcher matcher = FORMULA_PATTERN.matcher( expression );
-
- while ( matcher.find() )
- {
- String replaceString = matcher.group();
-
- for ( DataElement dataElement : caclulatedDataElementsInExpression )
- {
- if ( replaceString.startsWith( EXP_OPEN + dataElement.getId() + SEPARATOR ) )
- {
- replaceString = ((CalculatedDataElement) dataElement).getExpression().getExpression();
-
- break;
- }
- }
-
- matcher.appendReplacement( buffer, replaceString );
- }
-
- matcher.appendTail( buffer );
- }
-
- return buffer != null ? buffer.toString() : null;
- }
-
public String explodeExpression( String expression )
{
StringBuffer buffer = null;
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/startup/TableAlteror.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/startup/TableAlteror.java 2011-04-24 12:47:31 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/startup/TableAlteror.java 2011-04-24 15:50:02 +0000
@@ -90,6 +90,7 @@
executeSql( "DROP TABLE dataelement_dataelementgroupsetmembers" );
executeSql( "DROP TABLE dashboardcontent_olapurls" );
executeSql( "DROP TABLE olapurl" );
+ executeSql( "DROP TABLE calculateddataelement" );
executeSql( "ALTER TABLE dataelementcategoryoption drop column categoryid" );
executeSql( "ALTER TABLE reporttable DROP column dimension_type" );
executeSql( "ALTER TABLE reporttable DROP column dimensiontype" );
=== removed file 'dhis-2/dhis-services/dhis-service-core/src/main/resources/org/hisp/dhis/dataelement/hibernate/CalculatedDataElement.hbm.xml'
--- dhis-2/dhis-services/dhis-service-core/src/main/resources/org/hisp/dhis/dataelement/hibernate/CalculatedDataElement.hbm.xml 2011-04-12 13:25:06 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/resources/org/hisp/dhis/dataelement/hibernate/CalculatedDataElement.hbm.xml 1970-01-01 00:00:00 +0000
@@ -1,18 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE hibernate-mapping PUBLIC
- "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
- "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
-
-<hibernate-mapping>
- <joined-subclass name="org.hisp.dhis.dataelement.CalculatedDataElement" extends="org.hisp.dhis.dataelement.DataElement"
- table="calculateddataelement">
-
- <key column="calculateddataelementid" />
-
- <property name="saved" not-null="true" />
-
- <many-to-one name="expression" class="org.hisp.dhis.expression.Expression" cascade="all" column="expressionid"
- foreign-key="fk_expression_expressionid" />
-
- </joined-subclass>
-</hibernate-mapping>
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataelement/DataElementServiceTest.java'
--- dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataelement/DataElementServiceTest.java 2011-03-22 05:49:48 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataelement/DataElementServiceTest.java 2011-04-24 15:50:02 +0000
@@ -28,20 +28,18 @@
*/
+import static junit.framework.Assert.assertEquals;
+import static junit.framework.Assert.assertNotNull;
+import static junit.framework.Assert.assertNull;
+import static junit.framework.Assert.assertTrue;
+
import java.util.Collection;
import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Map;
import java.util.Set;
import org.hisp.dhis.DhisSpringTest;
-import org.hisp.dhis.expression.Expression;
-import org.hisp.dhis.system.util.UUIdUtils;
-import org.junit.Ignore;
import org.junit.Test;
-import static junit.framework.Assert.*;
-
/**
* @author Kristian Nordal
* @version $Id: DataElementServiceTest.java 5742 2008-09-26 11:37:35Z larshelg $
@@ -61,23 +59,6 @@
{
dataElementService = (DataElementService) getBean( DataElementService.ID );
}
-
- // -------------------------------------------------------------------------
- // Support methods
- // -------------------------------------------------------------------------
-
- private DataElement setDataElementFields( DataElement dataElement, char uniqueCharacter )
- {
- dataElement.setUuid( UUIdUtils.getUUId() );
- dataElement.setName( "DataElement" + uniqueCharacter );
- dataElement.setAlternativeName( "DataElementAlternative" + uniqueCharacter );
- dataElement.setShortName( "DataElementShort" + uniqueCharacter );
- dataElement.setCode( "DataElementCode" + uniqueCharacter );
- dataElement.setDescription( "DataElementDescription" + uniqueCharacter );
- dataElement.setAggregationOperator( DataElement.AGGREGATION_OPERATOR_SUM );
- dataElement.setType( DataElement.VALUE_TYPE_INT );
- return dataElement;
- }
// -------------------------------------------------------------------------
// Tests
@@ -430,93 +411,6 @@
}
// -------------------------------------------------------------------------
- // CalculatedDataElements
- // -------------------------------------------------------------------------
-
- @Ignore //TODO
- @Test
- public void testCalculatedDataElements()
- throws Exception
- {
- DataElement deA = createDataElement('A');
- DataElement deB = createDataElement('B');
- DataElement deC = createDataElement('C');
- DataElement deD = createDataElement('D');
- DataElement deE = createDataElement('E');
-
- int deIdA = dataElementService.addDataElement(deA);
- int deIdB = dataElementService.addDataElement(deB);
- int deIdC = dataElementService.addDataElement(deC);
- int deIdD = dataElementService.addDataElement(deD);
- dataElementService.addDataElement(deE);
-
- CalculatedDataElement cdeX = (CalculatedDataElement) setDataElementFields( new CalculatedDataElement (), 'X' );
- CalculatedDataElement cdeY = (CalculatedDataElement) setDataElementFields( new CalculatedDataElement (), 'Y' );
-
- Set<DataElement> dataElementsX = new HashSet<DataElement> ();
- dataElementsX.add(deA);
- dataElementsX.add(deB);
- Expression expressionX = new Expression ( "["+deIdA+"] * 2 + ["+deIdB+"] * 3", "foo", dataElementsX );
- cdeX.setExpression(expressionX);
- cdeX.setSaved(true);
- dataElementService.addDataElement(cdeX);
-
- Set<DataElement> dataElementsY = new HashSet<DataElement> ();
- dataElementsY.add(deC);
- dataElementsY.add(deD);
- Expression expressionY = new Expression ( "["+deIdC+"] * 2 + ["+deIdD+"] * 3", "foo", dataElementsY );
- cdeY.setExpression(expressionY);
- cdeY.setSaved(true);
- dataElementService.addDataElement(cdeY);
-
- Collection<CalculatedDataElement> cdes = dataElementService.getAllCalculatedDataElements();
- assertEquals( 2, cdes.size() );
-
- //CalculatedDataElement cde;
- CalculatedDataElement cde = dataElementService.getCalculatedDataElementByDataElement( deA );
- assertNotNull(cde);
- assertEquals("DataElementX", cde.getName() );
-
- cde = dataElementService.getCalculatedDataElementByDataElement( deE );
- assertNull(cde);
-
- Set<DataElement> dataElements = new HashSet<DataElement> ();
- dataElements.add(deA);
- cdes = dataElementService.getCalculatedDataElementsByDataElements( dataElements );
- assertEquals( 1, cdes.size() );
- assertEquals("DataElementX", cdes.iterator().next().getName());
-
- dataElements.add(deC);
- cdes = dataElementService.getCalculatedDataElementsByDataElements( dataElements );
- assertEquals( 2, cdes.size() );
-
- Iterator<CalculatedDataElement> iterator = cdes.iterator();
- assertEquals( iterator.next().getName(), "DataElementX" );
- assertEquals( iterator.next().getName(), "DataElementY" );
-
- //Make sure the results are unique
- dataElements.add(deB);
- cdes = dataElementService.getCalculatedDataElementsByDataElements( dataElements );
- assertEquals( 2, cdes.size() );
-
- iterator = cdes.iterator();
- assertEquals( iterator.next().getName(), "DataElementX" );
- assertEquals( iterator.next().getName(), "DataElementY" );
-
- //Check that no other data elements are returned
- dataElements.add(deE);
- cdes = dataElementService.getCalculatedDataElementsByDataElements( dataElements );
- assertEquals( 2, cdes.size() );
-
- Map<DataElement,Double> factorMap = dataElementService.getDataElementFactors(cdeX);
- assertEquals( 2, factorMap.size() );
- assertTrue(factorMap.keySet().contains(deA));
- assertEquals( new Integer(2), factorMap.get(deA));
- assertTrue(factorMap.keySet().contains(deB));
- assertEquals( new Integer(3), factorMap.get(deB));
- }
-
- // -------------------------------------------------------------------------
// DataElementGroup
// -------------------------------------------------------------------------
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataelement/DataElementStoreTest.java'
--- dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataelement/DataElementStoreTest.java 2011-02-15 20:14:22 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataelement/DataElementStoreTest.java 2011-04-24 15:50:02 +0000
@@ -36,17 +36,13 @@
import java.util.Arrays;
import java.util.Collection;
import java.util.HashSet;
-import java.util.Iterator;
import java.util.List;
-import java.util.Set;
import org.hisp.dhis.DhisSpringTest;
import org.hisp.dhis.dataset.DataSet;
import org.hisp.dhis.dataset.DataSetService;
-import org.hisp.dhis.expression.Expression;
import org.hisp.dhis.period.MonthlyPeriodType;
import org.hisp.dhis.system.util.UUIdUtils;
-import org.junit.Ignore;
import org.junit.Test;
/**
@@ -74,25 +70,6 @@
dataSetService = (DataSetService) getBean( DataSetService.ID );
}
-
- // -------------------------------------------------------------------------
- // Support methods
- // -------------------------------------------------------------------------
-
- private DataElement setDataElementFields( DataElement dataElement, char uniqueCharacter )
- {
- dataElement.setUuid( UUIdUtils.getUUId() );
- dataElement.setName( "DataElement" + uniqueCharacter );
- dataElement.setAlternativeName( "DataElementAlternative" + uniqueCharacter );
- dataElement.setShortName( "DataElementShort" + uniqueCharacter );
- dataElement.setCode( "DataElementCode" + uniqueCharacter );
- dataElement.setDescription( "DataElementDescription" + uniqueCharacter );
- dataElement.setAggregationOperator( DataElement.AGGREGATION_OPERATOR_SUM );
- dataElement.setType( DataElement.VALUE_TYPE_INT );
- dataElement.setDomainType( DataElement.DOMAIN_TYPE_AGGREGATE );
-
- return dataElement;
- }
// -------------------------------------------------------------------------
// Tests
@@ -527,83 +504,4 @@
assertTrue( dataElements.contains( dataElementD ) );
assertTrue( dataElements.contains( dataElementF ) );
}
-
- // -------------------------------------------------------------------------
- // CalculatedDataElements
- // -------------------------------------------------------------------------
-
- @Ignore //TODO
- @Test
- public void testCalculatedDataElements()
- {
- DataElement deA = createDataElement('A');
- DataElement deB = createDataElement('B');
- DataElement deC = createDataElement('C');
- DataElement deD = createDataElement('D');
- DataElement deE = createDataElement('E');
-
- int deIdA = dataElementStore.addDataElement(deA);
- int deIdB = dataElementStore.addDataElement(deB);
- int deIdC = dataElementStore.addDataElement(deC);
- int deIdD = dataElementStore.addDataElement(deD);
- dataElementStore.addDataElement(deE);
-
- CalculatedDataElement cdeX = (CalculatedDataElement) setDataElementFields( new CalculatedDataElement (), 'X' );
- CalculatedDataElement cdeY = (CalculatedDataElement) setDataElementFields( new CalculatedDataElement (), 'Y' );
-
- Set<DataElement> dataElementsX = new HashSet<DataElement> ();
- dataElementsX.add(deA);
- dataElementsX.add(deB);
- Expression expressionX = new Expression ( "["+deIdA+"] * 2 + ["+deIdB+"] * 3", "foo", dataElementsX );
- cdeX.setExpression(expressionX);
- cdeX.setSaved(true);
- dataElementStore.addDataElement(cdeX);
-
- Set<DataElement> dataElementsY = new HashSet<DataElement> ();
- dataElementsY.add(deC);
- dataElementsY.add(deD);
- Expression expressionY = new Expression ( "["+deIdC+"] * 2 + ["+deIdD+"] * 3", "foo", dataElementsY );
- cdeY.setExpression(expressionY);
- cdeY.setSaved(true);
- dataElementStore.addDataElement(cdeY);
-
- Collection<CalculatedDataElement> cdes = dataElementStore.getAllCalculatedDataElements();
- assertEquals( 2, cdes.size() );
-
- //CalculatedDataElement cde;
- CalculatedDataElement cde = dataElementStore.getCalculatedDataElementByDataElement( deA );
- assertNotNull(cde);
- assertEquals("DataElementX", cde.getName() );
-
- cde = dataElementStore.getCalculatedDataElementByDataElement( deE );
- assertNull(cde);
-
- Set<DataElement> dataElements = new HashSet<DataElement> ();
- dataElements.add(deA);
- cdes = dataElementStore.getCalculatedDataElementsByDataElements( dataElements );
- assertEquals( 1, cdes.size() );
- assertEquals("DataElementX", cdes.iterator().next().getName());
-
- dataElements.add(deC);
- cdes = dataElementStore.getCalculatedDataElementsByDataElements( dataElements );
- assertEquals( 2, cdes.size() );
-
- Iterator<CalculatedDataElement> iterator = cdes.iterator();
- assertEquals( iterator.next().getName(), "DataElementX" );
- assertEquals( iterator.next().getName(), "DataElementY" );
-
- //Make sure the results are unique
- dataElements.add(deB);
- cdes = dataElementStore.getCalculatedDataElementsByDataElements( dataElements );
- assertEquals( 2, cdes.size() );
-
- iterator = cdes.iterator();
- assertEquals( iterator.next().getName(), "DataElementX" );
- assertEquals( iterator.next().getName(), "DataElementY" );
-
- //Check that no other data elements are returned
- dataElements.add(deE);
- cdes = dataElementStore.getCalculatedDataElementsByDataElements( dataElements );
- assertEquals( 2, cdes.size() );
- }
}
=== removed directory 'dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/calculateddataelement'
=== removed file 'dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/calculateddataelement/CalculatedDataElementDataMart.java'
--- dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/calculateddataelement/CalculatedDataElementDataMart.java 2011-04-15 15:02:55 +0000
+++ dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/calculateddataelement/CalculatedDataElementDataMart.java 1970-01-01 00:00:00 +0000
@@ -1,45 +0,0 @@
-package org.hisp.dhis.datamart.calculateddataelement;
-
-/*
- * Copyright (c) 2004-2010, 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 java.util.Collection;
-
-import org.hisp.dhis.dataelement.CalculatedDataElement;
-import org.hisp.dhis.dataelement.DataElementOperand;
-import org.hisp.dhis.organisationunit.OrganisationUnit;
-import org.hisp.dhis.period.Period;
-
-/**
- * @author Lars Helge Overland
- * @version $Id$
- */
-public interface CalculatedDataElementDataMart
-{
- int exportCalculatedDataElements( Collection<CalculatedDataElement> calculatedDataElements,
- Collection<Period> periods, Collection<OrganisationUnit> organisationUnits, Collection<DataElementOperand> operands, String key );
-}
=== removed file 'dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/calculateddataelement/DefaultCalculatedDataElementDataMart.java'
--- dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/calculateddataelement/DefaultCalculatedDataElementDataMart.java 2011-04-15 15:02:55 +0000
+++ dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/calculateddataelement/DefaultCalculatedDataElementDataMart.java 1970-01-01 00:00:00 +0000
@@ -1,185 +0,0 @@
-package org.hisp.dhis.datamart.calculateddataelement;
-
-/*
- * Copyright (c) 2004-2010, 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 static org.hisp.dhis.datamart.util.ParserUtil.generateExpression;
-import static org.hisp.dhis.system.util.MathUtils.calculateExpression;
-import static org.hisp.dhis.system.util.MathUtils.getRounded;
-
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Map;
-
-import org.amplecode.quick.BatchHandler;
-import org.amplecode.quick.BatchHandlerFactory;
-import org.hisp.dhis.aggregation.AggregatedDataValue;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
-import org.hisp.dhis.dataelement.DataElement;
-import org.hisp.dhis.dataelement.DataElementCategoryOptionCombo;
-import org.hisp.dhis.dataelement.DataElementCategoryService;
-import org.hisp.dhis.dataelement.DataElementOperand;
-import org.hisp.dhis.datamart.aggregation.cache.AggregationCache;
-import org.hisp.dhis.datamart.aggregation.dataelement.DataElementAggregator;
-import org.hisp.dhis.jdbc.batchhandler.AggregatedDataValueBatchHandler;
-import org.hisp.dhis.organisationunit.OrganisationUnit;
-import org.hisp.dhis.organisationunit.OrganisationUnitHierarchy;
-import org.hisp.dhis.organisationunit.OrganisationUnitService;
-import org.hisp.dhis.period.Period;
-import org.hisp.dhis.period.PeriodType;
-
-/**
- * @author Lars Helge Overland
- * @version $Id$
- */
-public class DefaultCalculatedDataElementDataMart
- implements CalculatedDataElementDataMart
-{
- private static final int DECIMALS = 1;
-
- // -------------------------------------------------------------------------
- // Dependencies
- // -------------------------------------------------------------------------
-
- private OrganisationUnitService organisationUnitService;
-
- public void setOrganisationUnitService( OrganisationUnitService organisationUnitService )
- {
- this.organisationUnitService = organisationUnitService;
- }
-
- private DataElementAggregator sumIntAggregator;
-
- public void setSumIntAggregator( DataElementAggregator sumIntAggregator )
- {
- this.sumIntAggregator = sumIntAggregator;
- }
-
- private DataElementAggregator averageIntAggregator;
-
- public void setAverageIntAggregator( DataElementAggregator averageIntDataElementAggregator )
- {
- this.averageIntAggregator = averageIntDataElementAggregator;
- }
-
- private DataElementAggregator averageIntSingleValueAggregator;
-
- public void setAverageIntSingleValueAggregator( DataElementAggregator averageIntSingleValueAggregator )
- {
- this.averageIntSingleValueAggregator = averageIntSingleValueAggregator;
- }
-
- private DataElementCategoryService categoryService;
-
- public void setCategoryService( DataElementCategoryService categoryService )
- {
- this.categoryService = categoryService;
- }
-
- private AggregationCache aggregationCache;
-
- public void setAggregationCache( AggregationCache aggregationCache )
- {
- this.aggregationCache = aggregationCache;
- }
-
- private BatchHandlerFactory batchHandlerFactory;
-
- public void setBatchHandlerFactory( BatchHandlerFactory batchHandlerFactory )
- {
- this.batchHandlerFactory = batchHandlerFactory;
- }
-
- // -------------------------------------------------------------------------
- // CalculatedDataElementDataMart implementation
- // -------------------------------------------------------------------------
-
- public int exportCalculatedDataElements( final Collection<CalculatedDataElement> calculatedDataElements, final Collection<Period> periods,
- final Collection<OrganisationUnit> organisationUnits, final Collection<DataElementOperand> operands, String key )
- {
- final DataElementCategoryOptionCombo categoryOptionCombo = categoryService.getDefaultDataElementCategoryOptionCombo();
-
- final BatchHandler<AggregatedDataValue> batchHandler = batchHandlerFactory.createBatchHandler( AggregatedDataValueBatchHandler.class ).init();
-
- final OrganisationUnitHierarchy hierarchy = organisationUnitService.getOrganisationUnitHierarchy().prepareChildren( organisationUnits );
-
- int count = 0;
-
- CalculatedDataElement calculatedDataElement = null;
-
- double aggregatedValue = 0.0;
-
- final AggregatedDataValue dataValue = new AggregatedDataValue();
-
- for ( final Period period : periods )
- {
- final PeriodType periodType = period.getPeriodType();
-
- final Collection<DataElementOperand> sumOperands = sumIntAggregator.filterOperands( operands, periodType );
- final Collection<DataElementOperand> averageOperands = averageIntAggregator.filterOperands( operands, periodType );
- final Collection<DataElementOperand> averageSingleValueOperands = averageIntSingleValueAggregator.filterOperands( operands, periodType );
-
- for ( final OrganisationUnit unit : organisationUnits )
- {
- final int level = aggregationCache.getLevelOfOrganisationUnit( unit.getId() );
-
- final Map<DataElementOperand, Double> sumIntValueMap = sumIntAggregator.getAggregatedValues( sumOperands, period, unit, level, hierarchy, key );
- final Map<DataElementOperand, Double> averageIntValueMap = averageIntAggregator.getAggregatedValues( averageOperands, period, unit, level, hierarchy, key );
- final Map<DataElementOperand, Double> averageIntSingleValueMap = averageIntSingleValueAggregator.getAggregatedValues( averageSingleValueOperands, period, unit, level, hierarchy, key );
-
- final Map<DataElementOperand, Double> valueMap = new HashMap<DataElementOperand, Double>( sumIntValueMap );
- valueMap.putAll( averageIntValueMap );
- valueMap.putAll( averageIntSingleValueMap );
-
- for ( final DataElement element : calculatedDataElements )
- {
- calculatedDataElement = (CalculatedDataElement) element;
-
- aggregatedValue = calculateExpression( generateExpression( calculatedDataElement.getExpression().getExpression(), valueMap ) );
-
- dataValue.clear();
-
- dataValue.setDataElementId( calculatedDataElement.getId() );
- dataValue.setCategoryOptionComboId( categoryOptionCombo.getId() );
- dataValue.setPeriodId( period.getId() );
- dataValue.setPeriodTypeId( periodType.getId() );
- dataValue.setOrganisationUnitId( unit.getId() );
- dataValue.setLevel( level );
- dataValue.setValue( getRounded( aggregatedValue, DECIMALS ) );
-
- batchHandler.addObject( dataValue );
-
- count++;
- }
- }
- }
-
- batchHandler.flush();
-
- return count;
- }
-}
=== modified file 'dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/engine/DefaultDataMartEngine.java'
--- dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/engine/DefaultDataMartEngine.java 2011-04-15 15:02:55 +0000
+++ dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/engine/DefaultDataMartEngine.java 2011-04-24 15:50:02 +0000
@@ -35,14 +35,12 @@
import org.apache.commons.logging.LogFactory;
import org.hisp.dhis.aggregation.AggregatedDataValueService;
import org.hisp.dhis.common.ProcessState;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementCategoryService;
import org.hisp.dhis.dataelement.DataElementOperand;
import org.hisp.dhis.dataelement.DataElementService;
import org.hisp.dhis.datamart.aggregation.cache.AggregationCache;
import org.hisp.dhis.datamart.aggregation.dataelement.DataElementAggregator;
-import org.hisp.dhis.datamart.calculateddataelement.CalculatedDataElementDataMart;
import org.hisp.dhis.datamart.crosstab.CrossTabService;
import org.hisp.dhis.datamart.dataelement.DataElementDataMart;
import org.hisp.dhis.datamart.indicator.IndicatorDataMart;
@@ -105,13 +103,6 @@
this.indicatorDataMart = indicatorDataMart;
}
- private CalculatedDataElementDataMart calculatedDataElementDataMart;
-
- public void setCalculatedDataElementDataMart( CalculatedDataElementDataMart calculatedDataElementDataMart )
- {
- this.calculatedDataElementDataMart = calculatedDataElementDataMart;
- }
-
private DataElementAggregator sumIntAggregator;
public void setSumIntAggregator( DataElementAggregator sumIntDataElementAggregator )
@@ -208,9 +199,7 @@
Collection<Indicator> indicators = indicatorService.getIndicators( indicatorIds );
Collection<Period> periods = periodService.getPeriods( periodIds );
Collection<OrganisationUnit> organisationUnits = organisationUnitService.getOrganisationUnits( organisationUnitIds );
- Collection<CalculatedDataElement> calculatedDataElements = dataElementService.getCalculatedDataElements( dataElementIds );
- Collection<DataElement> nonCalculatedDataElements = dataElementService.getDataElements( dataElementIds );
- nonCalculatedDataElements.removeAll( calculatedDataElements );
+ Collection<DataElement> dataElements = dataElementService.getDataElements( dataElementIds );
// ---------------------------------------------------------------------
// Explode indicator expressions
@@ -226,14 +215,12 @@
// Get operands
// ---------------------------------------------------------------------
- Collection<DataElementOperand> nonCalculatedOperands = categoryService.getOperands( nonCalculatedDataElements );
+ Collection<DataElementOperand> dataElementOperands = categoryService.getOperands( dataElements );
Collection<DataElementOperand> indicatorOperands = categoryService.populateOperands( getOperandsInIndicators( indicators ) );
- Collection<DataElementOperand> calculatedOperands = categoryService.populateOperands( getOperandsInCalculatedDataElements( calculatedDataElements ) );
Set<DataElementOperand> allOperands = new HashSet<DataElementOperand>();
- allOperands.addAll( nonCalculatedOperands );
+ allOperands.addAll( dataElementOperands );
allOperands.addAll( indicatorOperands );
- allOperands.addAll( calculatedOperands );
log.info( "Filtered data elements, number of operands: " + allOperands.size() + ", " + TimeUtils.getHMS() );
@@ -243,9 +230,8 @@
allOperands = new HashSet<DataElementOperand>( crossTabService.getOperandsWithData( allOperands ) );
- nonCalculatedOperands.retainAll( allOperands );
+ dataElementOperands.retainAll( allOperands );
indicatorOperands.retainAll( allOperands );
- calculatedOperands.retainAll( allOperands );
log.info( "Number of operands with data: " + allOperands.size() + ", "+ TimeUtils.getHMS() );
@@ -272,7 +258,6 @@
// ---------------------------------------------------------------------
boolean isIndicators = indicators != null && indicators.size() > 0;
- boolean isCalculatedDataElements = calculatedDataElements != null && calculatedDataElements.size() > 0;
aggregatedDataValueService.dropIndex( true, isIndicators );
@@ -296,25 +281,25 @@
state.setMessage( "exporting_data_for_data_elements" );
- if ( nonCalculatedOperands.size() > 0 )
+ if ( dataElementOperands.size() > 0 )
{
- count += dataElementDataMart.exportDataValues( nonCalculatedOperands, periods, organisationUnits, sumIntAggregator, key );
+ count += dataElementDataMart.exportDataValues( dataElementOperands, periods, organisationUnits, sumIntAggregator, key );
log.info( "Exported values for data element operands with sum aggregation operator of type number: " + TimeUtils.getHMS() );
- count += dataElementDataMart.exportDataValues( nonCalculatedOperands, periods, organisationUnits, averageIntAggregator, key );
+ count += dataElementDataMart.exportDataValues( dataElementOperands, periods, organisationUnits, averageIntAggregator, key );
log.info( "Exported values for data element operands with average aggregation operator of type number: " + TimeUtils.getHMS() );
- count += dataElementDataMart.exportDataValues( nonCalculatedOperands, periods, organisationUnits, averageIntSingleValueAggregator, key );
+ count += dataElementDataMart.exportDataValues( dataElementOperands, periods, organisationUnits, averageIntSingleValueAggregator, key );
log.info( "Exported values for data element operands with average aggregation operator with single value of type number: " + TimeUtils.getHMS() );
- count += dataElementDataMart.exportDataValues( nonCalculatedOperands, periods, organisationUnits, sumBoolAggregator, key );
+ count += dataElementDataMart.exportDataValues( dataElementOperands, periods, organisationUnits, sumBoolAggregator, key );
log.info( "Exported values for data element operands with sum aggregation operator of type yes/no: " + TimeUtils.getHMS() );
- count += dataElementDataMart.exportDataValues( nonCalculatedOperands, periods, organisationUnits, averageBoolAggregator, key );
+ count += dataElementDataMart.exportDataValues( dataElementOperands, periods, organisationUnits, averageBoolAggregator, key );
log.info( "Exported values for data element operands with average aggregation operator of type yes/no: " + TimeUtils.getHMS() );
}
@@ -333,19 +318,6 @@
}
// ---------------------------------------------------------------------
- // Calculated data element export
- // ---------------------------------------------------------------------
-
- state.setMessage( "exporting_data_for_calculated_data_elements" );
-
- if ( isCalculatedDataElements )
- {
- count += calculatedDataElementDataMart.exportCalculatedDataElements( calculatedDataElements, periods, organisationUnits, calculatedOperands, key );
-
- log.info( "Exported values for calculated data elements (" + calculatedDataElements.size() + "): " + TimeUtils.getHMS() );
- }
-
- // ---------------------------------------------------------------------
// Drop crosstab tables
// ---------------------------------------------------------------------
@@ -392,20 +364,4 @@
return operands;
}
-
- private Set<DataElementOperand> getOperandsInCalculatedDataElements( final Collection<CalculatedDataElement> calculatedDataElements )
- {
- final Set<DataElementOperand> operands = new HashSet<DataElementOperand>();
-
- for ( final CalculatedDataElement calculatedDataElement : calculatedDataElements )
- {
- if ( calculatedDataElement != null && calculatedDataElement.getExpression() != null )
- {
- Set<DataElementOperand> temp = expressionService.getOperandsInExpression( calculatedDataElement.getExpression().getExpression() );
- operands.addAll( temp != null ? temp : new HashSet<DataElementOperand>() );
- }
- }
-
- return operands;
- }
}
=== modified file 'dhis-2/dhis-services/dhis-service-datamart-default/src/main/resources/META-INF/dhis/beans.xml'
--- dhis-2/dhis-services/dhis-service-datamart-default/src/main/resources/META-INF/dhis/beans.xml 2011-04-16 16:18:58 +0000
+++ dhis-2/dhis-services/dhis-service-datamart-default/src/main/resources/META-INF/dhis/beans.xml 2011-04-24 15:50:02 +0000
@@ -40,8 +40,6 @@
ref="org.hisp.dhis.datamart.dataelement.DataElementDataMart"/>
<property name="indicatorDataMart"
ref="org.hisp.dhis.datamart.indicator.IndicatorDataMart"/>
- <property name="calculatedDataElementDataMart"
- ref="org.hisp.dhis.datamart.calculateddataelement.CalculatedDataElementDataMart"/>
<property name="sumIntAggregator"
ref="org.hisp.dhis.datamart.aggregation.dataelement.SumIntAggregator"/>
<property name="averageIntAggregator"
@@ -174,26 +172,7 @@
ref="org.hisp.dhis.options.SystemSettingManager"/>
<property name="batchHandlerFactory" ref="batchHandlerFactory"/>
</bean>
-
- <!-- CalculatedDataElementDataMart -->
-
- <bean id="org.hisp.dhis.datamart.calculateddataelement.CalculatedDataElementDataMart"
- class="org.hisp.dhis.datamart.calculateddataelement.DefaultCalculatedDataElementDataMart">
- <property name="organisationUnitService"
- ref="org.hisp.dhis.organisationunit.OrganisationUnitService"/>
- <property name="sumIntAggregator"
- ref="org.hisp.dhis.datamart.aggregation.dataelement.SumIntAggregator"/>
- <property name="averageIntAggregator"
- ref="org.hisp.dhis.datamart.aggregation.dataelement.AverageIntAggregator"/>
- <property name="averageIntSingleValueAggregator"
- ref="org.hisp.dhis.datamart.aggregation.dataelement.AverageIntSingleValueAggregator"/>
- <property name="categoryService"
- ref="org.hisp.dhis.dataelement.DataElementCategoryService"/>
- <property name="aggregationCache"
- ref="org.hisp.dhis.datamart.aggregation.cache.AggregationCache"/>
- <property name="batchHandlerFactory" ref="batchHandlerFactory"/>
- </bean>
-
+
<!-- DeletionHandler -->
<bean id="org.hisp.dhis.datamart.DataMartExportDeletionHandler"
=== modified file 'dhis-2/dhis-services/dhis-service-datamart-default/src/test/java/org/hisp/dhis/datamart/DataMartServiceTest.java'
--- dhis-2/dhis-services/dhis-service-datamart-default/src/test/java/org/hisp/dhis/datamart/DataMartServiceTest.java 2010-08-31 05:47:11 +0000
+++ dhis-2/dhis-services/dhis-service-datamart-default/src/test/java/org/hisp/dhis/datamart/DataMartServiceTest.java 2011-04-24 15:50:02 +0000
@@ -35,7 +35,6 @@
import org.hisp.dhis.DhisTest;
import org.hisp.dhis.aggregation.AggregatedDataValueService;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementCategoryCombo;
import org.hisp.dhis.dataelement.DataElementCategoryOptionCombo;
@@ -566,75 +565,4 @@
assertEquals( aggregatedDataValueService.getAggregatedValue( indicatorA, periodC, unitG ), 16.1, 0.5 );
assertEquals( aggregatedDataValueService.getAggregatedValue( indicatorA, periodC, unitH ), 412.1, 0.5 );
}
-
- @Test
- public void testCalculatedDataElementDataMart()
- {
- // ---------------------------------------------------------------------
- // Setup DataElements
- // ---------------------------------------------------------------------
-
- DataElement dataElementC = createDataElement( 'C', DataElement.VALUE_TYPE_INT, DataElement.AGGREGATION_OPERATOR_SUM, categoryCombo );
- DataElement dataElementD = createDataElement( 'D', DataElement.VALUE_TYPE_INT, DataElement.AGGREGATION_OPERATOR_SUM, categoryCombo );
-
- int idC = dataElementService.addDataElement( dataElementC );
- int idD = dataElementService.addDataElement( dataElementD );
-
- dataSet.getDataElements().add( dataElementC );
- dataSet.getDataElements().add( dataElementD );
- dataSetService.updateDataSet( dataSet );
- dataElementC.getDataSets().add( dataSet );
- dataElementD.getDataSets().add( dataSet );
- dataElementService.updateDataElement( dataElementC );
- dataElementService.updateDataElement( dataElementD );
-
- // ---------------------------------------------------------------------
- // Setup DataValues
- // ---------------------------------------------------------------------
-
- dataValueService.addDataValue( createDataValue( dataElementC, periodA, unitF, "40", categoryOptionCombo ) );
- dataValueService.addDataValue( createDataValue( dataElementC, periodA, unitG, "10", categoryOptionCombo ) );
- dataValueService.addDataValue( createDataValue( dataElementC, periodA, unitH, "75", categoryOptionCombo ) );
- dataValueService.addDataValue( createDataValue( dataElementC, periodB, unitF, "45", categoryOptionCombo ) );
- dataValueService.addDataValue( createDataValue( dataElementC, periodB, unitG, "10", categoryOptionCombo ) );
- dataValueService.addDataValue( createDataValue( dataElementC, periodB, unitH, "75", categoryOptionCombo ) );
- dataValueService.addDataValue( createDataValue( dataElementC, periodC, unitF, "40", categoryOptionCombo ) );
- dataValueService.addDataValue( createDataValue( dataElementC, periodC, unitG, "10", categoryOptionCombo ) );
- dataValueService.addDataValue( createDataValue( dataElementC, periodC, unitH, "70", categoryOptionCombo ) );
-
- dataValueService.addDataValue( createDataValue( dataElementD, periodA, unitF, "65", categoryOptionCombo ) );
- dataValueService.addDataValue( createDataValue( dataElementD, periodA, unitG, "90", categoryOptionCombo ) );
- dataValueService.addDataValue( createDataValue( dataElementD, periodA, unitH, "25", categoryOptionCombo ) );
- dataValueService.addDataValue( createDataValue( dataElementD, periodB, unitF, "10", categoryOptionCombo ) );
- dataValueService.addDataValue( createDataValue( dataElementD, periodB, unitG, "55", categoryOptionCombo ) );
- dataValueService.addDataValue( createDataValue( dataElementD, periodB, unitH, "85", categoryOptionCombo ) );
- dataValueService.addDataValue( createDataValue( dataElementD, periodC, unitF, "45", categoryOptionCombo ) );
- dataValueService.addDataValue( createDataValue( dataElementD, periodC, unitG, "15", categoryOptionCombo ) );
- dataValueService.addDataValue( createDataValue( dataElementD, periodC, unitH, "25", categoryOptionCombo ) );
-
- // ---------------------------------------------------------------------
- // Setup CalculatedDataElement
- // ---------------------------------------------------------------------
-
- String suffix = Expression.SEPARATOR + categoryOptionCombo.getId();
-
- Expression expression = createExpression( 'A', "(2*[" + idC + suffix + "])+(1*[" + idD + suffix + "])", null );
-
- expressionService.addExpression( expression );
-
- CalculatedDataElement calculated = createCalculatedDataElement( 'E', DataElement.VALUE_TYPE_INT, DataElement.AGGREGATION_OPERATOR_SUM, categoryCombo, expression );
-
- dataElementIds.clear();
- dataElementIds.add( dataElementService.addDataElement( calculated ) );
-
- dataMartService.export( dataElementIds, indicatorIds, periodIds, organisationUnitIds );
-
- // ---------------------------------------------------------------------
- // Assert
- // ---------------------------------------------------------------------
-
- assertEquals( 430.0, aggregatedDataValueService.getAggregatedValue( calculated, categoryOptionCombo, periodA, unitF ) );
- assertEquals( 110.0, aggregatedDataValueService.getAggregatedValue( calculated, categoryOptionCombo, periodA, unitG ) );
- assertEquals( 175.0, aggregatedDataValueService.getAggregatedValue( calculated, categoryOptionCombo, periodA, unitH ) );
- }
}
=== modified file 'dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/ExportParams.java'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/ExportParams.java 2011-02-02 17:56:01 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/ExportParams.java 2011-04-24 15:50:02 +0000
@@ -61,8 +61,6 @@
private Collection<Integer> dataElements = new ArrayList<Integer>();
- private Collection<Integer> calculatedDataElements = new ArrayList<Integer>();
-
private Collection<Integer> dataElementGroups = new ArrayList<Integer>();
private Collection<Integer> dataElementGroupSets = new ArrayList<Integer>();
@@ -115,35 +113,6 @@
// Getters & setters
// -------------------------------------------------------------------------
- public Collection<Integer> getAllDataElements()
- {
- if ( dataElements == null && calculatedDataElements == null )
- {
- return null;
- }
- else if ( dataElements == null && calculatedDataElements != null )
- {
- return calculatedDataElements;
- }
- else if ( dataElements != null && calculatedDataElements == null )
- {
- return dataElements;
- }
- else
- {
- final Collection<Integer> elements = getDataElements();
-
- elements.addAll( getCalculatedDataElements() );
-
- return elements;
- }
-
- }
-
- // -------------------------------------------------------------------------
- // Getters & setters
- // -------------------------------------------------------------------------
-
public boolean isIncludeDataValues()
{
return includeDataValues;
@@ -264,16 +233,6 @@
this.dataElements = dataElements;
}
- public Collection<Integer> getCalculatedDataElements()
- {
- return calculatedDataElements;
- }
-
- public void setCalculatedDataElements( Collection<Integer> calculatedDataElements )
- {
- this.calculatedDataElements = calculatedDataElements;
- }
-
public Collection<Integer> getDataElementGroups()
{
return dataElementGroups;
=== modified file 'dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/ImportObjectManager.java'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/ImportObjectManager.java 2011-04-24 12:47:31 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/ImportObjectManager.java 2011-04-24 15:50:02 +0000
@@ -47,8 +47,6 @@
void importDataElements();
- void importCalculatedDataElements();
-
void importDataElementGroups();
void importDataElementGroupMembers();
=== modified file 'dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dhis14/util/Dhis14ParsingUtils.java'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dhis14/util/Dhis14ParsingUtils.java 2010-04-12 21:23:33 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dhis14/util/Dhis14ParsingUtils.java 2011-04-24 15:50:02 +0000
@@ -27,15 +27,6 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-import static org.hisp.dhis.expression.Expression.SEPARATOR;
-
-import java.util.HashMap;
-import java.util.Map;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.hisp.dhis.dataelement.CalculatedDataElement;
-import org.hisp.dhis.dataelement.DataElementOperand;
/**
* @author Lars Helge Overland
@@ -58,35 +49,5 @@
}
return string;
- }
-
- /**
- * Gets the operands and corresponding factor from the calculated data element
- * expression.
- *
- * @param calculatedDataElement the calculated data element.
- * @return a map with operands and factors.
- */
- public static Map<DataElementOperand, Double> getOperandFactors( CalculatedDataElement calculatedDataElement )
- {
- Map<DataElementOperand, Double> factorMap = new HashMap<DataElementOperand, Double>();
-
- Pattern pattern = Pattern.compile( "\\[(\\d+\\.\\d+)\\]\\s*\\*\\s*(-?\\d+)" ); // "[id] * factor"
-
- Matcher matcher = pattern.matcher( calculatedDataElement.getExpression().getExpression() );
-
- while ( matcher.find() )
- {
- final DataElementOperand operand = new DataElementOperand();
-
- String operandString = matcher.group( 1 );
-
- operand.setDataElementId( Integer.valueOf( operandString.substring( 0, operandString.indexOf( SEPARATOR ) ) ) );
- operand.setOptionComboId( Integer.valueOf( operandString.substring( operandString.indexOf( SEPARATOR ) + 1, operandString.length() ) ) );
-
- factorMap.put( operand, Double.parseDouble( matcher.group( 2 ) ) );
- }
-
- return factorMap;
}
}
=== modified file 'dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dhis14/xml/converter/DataElementConverter.java'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dhis14/xml/converter/DataElementConverter.java 2011-04-22 13:43:13 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dhis14/xml/converter/DataElementConverter.java 2011-04-24 15:50:02 +0000
@@ -130,7 +130,7 @@
public void write( XMLWriter writer, ExportParams params )
{
- Collection<DataElement> elements = dataElementService.getDataElements( params.getAllDataElements() ); // Calculated elements handled together
+ Collection<DataElement> elements = dataElementService.getDataElements( params.getDataElements() ); // Calculated elements handled together
if ( elements != null && elements.size() > 0 )
{
=== modified file 'dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dhis14/xml/converter/DataElementGroupMemberConverter.java'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dhis14/xml/converter/DataElementGroupMemberConverter.java 2010-04-12 21:23:33 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dhis14/xml/converter/DataElementGroupMemberConverter.java 2011-04-24 15:50:02 +0000
@@ -72,7 +72,7 @@
{
Collection<DataElementGroup> groups = dataElementService.getDataElementGroups( params.getDataElementGroups() );
- Collection<DataElement> elements = dataElementService.getDataElements( params.getAllDataElements() );
+ Collection<DataElement> elements = dataElementService.getDataElements( params.getDataElements() );
if ( groups != null && groups.size() > 0 && elements != null && elements.size() > 0 )
{
=== removed file 'dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/CalculatedDataElementConverter.java'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/CalculatedDataElementConverter.java 2010-05-29 16:06:56 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/CalculatedDataElementConverter.java 1970-01-01 00:00:00 +0000
@@ -1,180 +0,0 @@
-package org.hisp.dhis.importexport.dxf.converter;
-
-/*
- * Copyright (c) 2004-2010, 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 java.util.Collection;
-import java.util.HashSet;
-import java.util.Map;
-
-import org.amplecode.staxwax.reader.XMLReader;
-import org.amplecode.staxwax.writer.XMLWriter;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
-import org.hisp.dhis.dataelement.DataElement;
-import org.hisp.dhis.dataelement.DataElementCategoryCombo;
-import org.hisp.dhis.dataelement.DataElementService;
-import org.hisp.dhis.expression.Expression;
-import org.hisp.dhis.expression.ExpressionService;
-import org.hisp.dhis.importexport.ExportParams;
-import org.hisp.dhis.importexport.ImportObjectService;
-import org.hisp.dhis.importexport.ImportParams;
-import org.hisp.dhis.importexport.XMLConverter;
-import org.hisp.dhis.importexport.importer.CalculatedDataElementImporter;
-
-/**
- * @author Lars Helge Overland
- * @version $Id$
- */
-public class CalculatedDataElementConverter
- extends CalculatedDataElementImporter implements XMLConverter
-{
- public static final String COLLECTION_NAME = "calculatedDataElements";
- public static final String ELEMENT_NAME = "calculatedDataElement";
-
- private static final String FIELD_ID = "id";
- private static final String FIELD_UUID = "uuid";
- private static final String FIELD_NAME = "name";
- private static final String FIELD_ALTERNATIVE_NAME = "alternativeName";
- private static final String FIELD_SHORT_NAME = "shortName";
- private static final String FIELD_CODE = "code";
- private static final String FIELD_DESCRIPTION = "description";
- private static final String FIELD_ACTIVE = "active";
- private static final String FIELD_TYPE = "type";
- private static final String FIELD_AGGREGATION_OPERATOR = "aggregationOperator";
- private static final String FIELD_CATEGORY_COMBO = "categoryCombo";
- private static final String FIELD_SAVED = "saved";
- private static final String FIELD_EXPRESSION = "expression";
-
- private ExpressionService expressionService;
-
- private Map<Object, Integer> dataElementMapping;
- private Map<Object, Integer> categoryComboMapping;
- private Map<Object, Integer> categoryOptionComboMapping;
-
- // -------------------------------------------------------------------------
- // Constructor
- // -------------------------------------------------------------------------
-
- /**
- * Constructor for write operations.
- */
- public CalculatedDataElementConverter( DataElementService dataElementService )
- {
- this.dataElementService = dataElementService;
- }
-
- /**
- * Constructor for read operations.
- *
- * @param importObjectService the importObjectService to use.
- * @param dataElementService the dataElementService to use.
- * @param expressionService the expressionService to use.
- * @param categoryComboMapping the categoryComboMapping to use.
- * @param categoryOptionComboMapping the categoryOptionComboMapping to use.
- */
- public CalculatedDataElementConverter( ImportObjectService importObjectService,
- DataElementService dataElementService,
- ExpressionService expressionService,
- Map<Object, Integer> dataElementMapping,
- Map<Object, Integer> categoryComboMapping,
- Map<Object, Integer> categoryOptionComboMapping )
- {
- this.importObjectService = importObjectService;
- this.dataElementService = dataElementService;
- this.expressionService = expressionService;
- this.dataElementMapping = dataElementMapping;
- this.categoryComboMapping = categoryComboMapping;
- this.categoryOptionComboMapping = categoryOptionComboMapping;
- }
-
- // -------------------------------------------------------------------------
- // XMLConverter implementation
- // -------------------------------------------------------------------------
-
- public void write( XMLWriter writer, ExportParams params )
- {
- Collection<CalculatedDataElement> elements = dataElementService.getCalculatedDataElements( params.getCalculatedDataElements() );
-
- if ( elements != null && elements.size() > 0 )
- {
- writer.openElement( COLLECTION_NAME );
-
- for ( CalculatedDataElement element : elements )
- {
- writer.openElement( ELEMENT_NAME );
-
- writer.writeElement( FIELD_ID, String.valueOf( element.getId() ) );
- writer.writeElement( FIELD_UUID, element.getUuid() );
- writer.writeElement( FIELD_NAME, element.getName() );
- writer.writeElement( FIELD_ALTERNATIVE_NAME, element.getAlternativeName() );
- writer.writeElement( FIELD_SHORT_NAME, element.getShortName() );
- writer.writeElement( FIELD_CODE, element.getCode() );
- writer.writeElement( FIELD_DESCRIPTION, element.getDescription() );
- writer.writeElement( FIELD_ACTIVE, String.valueOf( element.isActive() ) );
- writer.writeElement( FIELD_TYPE, element.getType() );
- writer.writeElement( FIELD_AGGREGATION_OPERATOR, element.getAggregationOperator() );
- writer.writeElement( FIELD_CATEGORY_COMBO, String.valueOf( element.getCategoryCombo().getId() ) );
- writer.writeElement( FIELD_SAVED, String.valueOf( element.isSaved() ) );
- writer.writeElement( FIELD_EXPRESSION, element.getExpression().getExpression() );
-
- writer.closeElement();
- }
-
- writer.closeElement();
- }
- }
-
- public void read( XMLReader reader, ImportParams params )
- {
- while ( reader.moveToStartElement( ELEMENT_NAME, COLLECTION_NAME ) )
- {
- final Map<String, String> values = reader.readElements( ELEMENT_NAME );
-
- final CalculatedDataElement element = new CalculatedDataElement();
-
- final DataElementCategoryCombo categoryCombo = new DataElementCategoryCombo();
- element.setCategoryCombo( categoryCombo );
-
- element.setId( Integer.parseInt( values.get( FIELD_ID ) ) );
- element.setUuid( values.get( FIELD_UUID ) );
- element.setName( values.get( FIELD_NAME ) );
- element.setAlternativeName( values.get( FIELD_ALTERNATIVE_NAME ) );
- element.setShortName( values.get( FIELD_SHORT_NAME ) );
- element.setCode( values.get( FIELD_CODE ) );
- element.setDescription( values.get( FIELD_DESCRIPTION ) );
- element.setActive( Boolean.parseBoolean( values.get( FIELD_ACTIVE ) ) );
- element.setType( values.get( FIELD_TYPE ) );
- element.setAggregationOperator( values.get( FIELD_AGGREGATION_OPERATOR ) );
- element.getCategoryCombo().setId( categoryComboMapping.get( Integer.parseInt( values.get( FIELD_CATEGORY_COMBO ) ) ) );
- element.setSaved( Boolean.parseBoolean( values.get( FIELD_SAVED ) ) );
- String expression = expressionService.convertExpression( values.get( FIELD_EXPRESSION ), dataElementMapping, categoryOptionComboMapping );
- element.setExpression( new Expression( expression, null, new HashSet<DataElement>() ) );
-
- importObject( element, params );
- }
- }
-}
=== modified file 'dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DXFConverter.java'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DXFConverter.java 2011-04-24 12:47:31 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DXFConverter.java 2011-04-24 15:50:02 +0000
@@ -444,19 +444,6 @@
log.info( "Imported DataElements" );
}
- else if ( reader.isStartElement( CalculatedDataElementConverter.COLLECTION_NAME ) )
- {
- state.setMessage( "importing_calculated_data_elements" );
-
- XMLConverter converter = new CalculatedDataElementConverter( importObjectService, dataElementService,
- expressionService, objectMappingGenerator.getDataElementMapping( params.skipMapping() ),
- objectMappingGenerator.getCategoryComboMapping( params.skipMapping() ), objectMappingGenerator
- .getCategoryOptionComboMapping( params.skipMapping() ) );
-
- converterInvoker.invokeRead( converter, reader, params );
-
- log.info( "Imported CalculatedDataElements" );
- }
else if ( reader.isStartElement( DataElementGroupConverter.COLLECTION_NAME ) )
{
state.setMessage( "importing_data_element_groups" );
=== modified file 'dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DataElementConverter.java'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DataElementConverter.java 2010-06-03 17:31:53 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DataElementConverter.java 2011-04-24 15:50:02 +0000
@@ -112,7 +112,7 @@
public void write( XMLWriter writer, ExportParams params )
{
- Collection<DataElement> elements = dataElementService.getNonCalculatedDataElements( params.getDataElements() );
+ Collection<DataElement> elements = dataElementService.getDataElements( params.getDataElements() );
if ( elements != null && elements.size() > 0 )
{
=== modified file 'dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DataElementGroupMemberConverter.java'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DataElementGroupMemberConverter.java 2010-05-29 16:06:56 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DataElementGroupMemberConverter.java 2011-04-24 15:50:02 +0000
@@ -103,7 +103,7 @@
{
Collection<DataElementGroup> groups = dataElementService.getDataElementGroups( params.getDataElementGroups() );
- Collection<DataElement> elements = dataElementService.getDataElements( params.getAllDataElements() );
+ Collection<DataElement> elements = dataElementService.getDataElements( params.getDataElements() );
if ( groups != null && groups.size() > 0 && elements != null && elements.size() > 0 )
{
=== modified file 'dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DataElementGroupSetMemberConverter.java'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DataElementGroupSetMemberConverter.java 2010-05-29 16:06:56 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DataElementGroupSetMemberConverter.java 2011-04-24 15:50:02 +0000
@@ -104,7 +104,7 @@
{
Collection<DataElementGroupSet> groupSets = dataElementService.getDataElementGroupSets( params.getDataElementGroups() );
- Collection<DataElementGroup> groups = dataElementService.getDataElementGroups( params.getAllDataElements() );
+ Collection<DataElementGroup> groups = dataElementService.getDataElementGroups( params.getDataElements() );
if ( groupSets != null && groupSets.size() > 0 && groups != null && groups.size() > 0 )
{
=== modified file 'dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DataSetMemberConverter.java'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DataSetMemberConverter.java 2010-05-29 16:06:56 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/converter/DataSetMemberConverter.java 2011-04-24 15:50:02 +0000
@@ -108,7 +108,7 @@
{
Collection<DataSet> dataSets = dataSetService.getDataSets( params.getDataSets() );
- Collection<DataElement> elements = dataElementService.getDataElements( params.getAllDataElements() );
+ Collection<DataElement> elements = dataElementService.getDataElements( params.getDataElements() );
if ( dataSets != null && dataSets.size() > 0 && elements != null && elements.size() > 0 )
{
=== modified file 'dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/exporter/DefaultDXFExportService.java'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/exporter/DefaultDXFExportService.java 2011-04-24 12:47:31 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/dxf/exporter/DefaultDXFExportService.java 2011-04-24 15:50:02 +0000
@@ -58,7 +58,6 @@
import org.hisp.dhis.importexport.ExportPipeThread;
import org.hisp.dhis.importexport.ExportService;
import org.hisp.dhis.importexport.dxf.converter.AggregatedDataValueConverter;
-import org.hisp.dhis.importexport.dxf.converter.CalculatedDataElementConverter;
import org.hisp.dhis.importexport.dxf.converter.CategoryCategoryOptionAssociationConverter;
import org.hisp.dhis.importexport.dxf.converter.CategoryComboCategoryAssociationConverter;
import org.hisp.dhis.importexport.dxf.converter.ChartConverter;
@@ -288,7 +287,6 @@
thread.registerXMLConverter( new CategoryComboCategoryAssociationConverter( categoryService ) );
thread.registerXMLConverter( new DataElementConverter( dataElementService ) );
- thread.registerXMLConverter( new CalculatedDataElementConverter( dataElementService ) );
thread.registerXMLConverter( new DataElementGroupConverter( dataElementService ) );
thread.registerXMLConverter( new DataElementGroupMemberConverter( dataElementService ) );
thread.registerXMLConverter( new DataElementGroupSetConverter( dataElementService ) );
=== removed file 'dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/importer/CalculatedDataElementImporter.java'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/importer/CalculatedDataElementImporter.java 2010-06-01 07:57:57 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/importer/CalculatedDataElementImporter.java 1970-01-01 00:00:00 +0000
@@ -1,169 +0,0 @@
-package org.hisp.dhis.importexport.importer;
-
-/*
- * Copyright (c) 2004-2010, 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.dataelement.CalculatedDataElement;
-import org.hisp.dhis.dataelement.DataElement;
-import org.hisp.dhis.dataelement.DataElementService;
-import org.hisp.dhis.importexport.GroupMemberType;
-import org.hisp.dhis.importexport.ImportParams;
-import org.hisp.dhis.importexport.Importer;
-import org.hisp.dhis.importexport.mapping.NameMappingUtil;
-
-/**
- * @author Lars Helge Overland
- * @version $Id$
- */
-public class CalculatedDataElementImporter
- extends AbstractImporter<CalculatedDataElement> implements Importer<CalculatedDataElement>
-{
- protected DataElementService dataElementService;
-
- public CalculatedDataElementImporter()
- {
- }
-
- public CalculatedDataElementImporter( DataElementService dataElementService )
- {
- this.dataElementService = dataElementService;
- }
-
- @Override
- public void importObject( CalculatedDataElement object, ImportParams params )
- {
- NameMappingUtil.addDataElementMapping( object.getId(), object.getName() );
- NameMappingUtil.addDataElementAggregationOperatorMapping( object.getId(), object.getAggregationOperator() );
-
- read( object, GroupMemberType.NONE, params );
- }
-
- @Override
- protected void importUnique( CalculatedDataElement object )
- {
- dataElementService.addDataElement( object );
- }
-
- @Override
- protected void importMatching( CalculatedDataElement object, CalculatedDataElement match )
- {
- match.setUuid( object.getUuid() );
- match.setName( object.getName() );
- match.setShortName( object.getShortName() );
- match.setAlternativeName( object.getAlternativeName() );
- match.setCode( object.getCode() );
- match.setDescription( object.getDescription() );
- match.setActive( object.isActive() );
- match.setType( object.getType() );
- match.setAggregationOperator( object.getAggregationOperator() );
- match.setLastUpdated( object.getLastUpdated() );
- match.setSaved( object.isSaved() );
- match.setExpression( object.getExpression() );
-
- dataElementService.updateDataElement( match );
- }
-
- @Override
- protected CalculatedDataElement getMatching( CalculatedDataElement object )
- {
- DataElement match = dataElementService.getDataElementByName( object.getName() );
-
- if ( match == null )
- {
- match = dataElementService.getDataElementByAlternativeName( object.getAlternativeName() );
- }
- if ( match == null )
- {
- match = dataElementService.getDataElementByShortName( object.getShortName() );
- }
-
- CalculatedDataElement calculated = (CalculatedDataElement) match;
-
- if ( calculated != null )
- {
- calculated.getExpression().getExpression(); // Load Expression in session
- }
-
- return calculated;
- }
-
- @Override
- protected boolean isIdentical( CalculatedDataElement object, CalculatedDataElement existing )
- {
- if ( !object.getName().equals( existing.getName() ) )
- {
- return false;
- }
- if ( !isSimiliar( object.getAlternativeName(), existing.getAlternativeName() ) || ( isNotNull( object.getAlternativeName(), existing.getAlternativeName() ) && !object.getAlternativeName().equals( existing.getAlternativeName() ) ) )
- {
- return false;
- }
- if ( !object.getShortName().equals( existing.getShortName() ) )
- {
- return false;
- }
- if ( !isSimiliar( object.getCode(), existing.getCode() ) || ( isNotNull( object.getCode(), existing.getCode() ) && !object.getCode().equals( existing.getCode() ) ) )
- {
- return false;
- }
- if ( !isSimiliar( object.getDescription(), existing.getDescription() ) || ( isNotNull( object.getDescription(), existing.getDescription() ) && !object.getDescription().equals( existing.getDescription() ) ) )
- {
- return false;
- }
- if ( object.isActive() != existing.isActive() )
- {
- return false;
- }
- if ( !object.getType().equals( existing.getType() ) )
- {
- return false;
- }
- if ( !object.getAggregationOperator().equals( existing.getAggregationOperator() ) )
- {
- return false;
- }
- if ( object.isSaved() != existing.isSaved() )
- {
- return false;
- }
-
- return true;
- }
-
- @Override
- protected boolean ignore( CalculatedDataElement object, CalculatedDataElement match )
- {
- boolean ignore = !(object instanceof CalculatedDataElement) && match instanceof CalculatedDataElement;
-
- if ( ignore )
- {
- log.warn( "Data element ignored because it matches with a calculated data element: " + object );
- }
-
- return ignore;
- }
-}
=== modified file 'dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/importer/DataElementImporter.java'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/importer/DataElementImporter.java 2011-01-17 17:03:05 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/importer/DataElementImporter.java 2011-04-24 15:50:02 +0000
@@ -28,7 +28,6 @@
*/
import org.amplecode.quick.BatchHandler;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementService;
import org.hisp.dhis.importexport.GroupMemberType;
@@ -142,17 +141,4 @@
return true;
}
-
- @Override
- protected boolean ignore( DataElement object, DataElement match )
- {
- boolean ignore = object instanceof CalculatedDataElement && !( match instanceof CalculatedDataElement );
-
- if ( ignore )
- {
- log.warn( "Calculated data element ignored because it matches with a regular data element: " + object );
- }
-
- return ignore;
- }
}
=== modified file 'dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/service/DefaultImportObjectManager.java'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/service/DefaultImportObjectManager.java 2011-04-24 12:47:31 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/service/DefaultImportObjectManager.java 2011-04-24 15:50:02 +0000
@@ -41,7 +41,6 @@
import org.hisp.dhis.chart.ChartService;
import org.hisp.dhis.datadictionary.DataDictionary;
import org.hisp.dhis.datadictionary.DataDictionaryService;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementCategory;
import org.hisp.dhis.dataelement.DataElementCategoryCombo;
@@ -68,7 +67,6 @@
import org.hisp.dhis.importexport.ImportStrategy;
import org.hisp.dhis.importexport.ImportType;
import org.hisp.dhis.importexport.Importer;
-import org.hisp.dhis.importexport.importer.CalculatedDataElementImporter;
import org.hisp.dhis.importexport.importer.ChartImporter;
import org.hisp.dhis.importexport.importer.CompleteDataSetRegistrationImporter;
import org.hisp.dhis.importexport.importer.DataDictionaryImporter;
@@ -466,39 +464,6 @@
}
@Transactional
- public void importCalculatedDataElements()
- {
- Map<Object, Integer> categoryComboMapping = objectMappingGenerator.getCategoryComboMapping( false );
- Map<Object, Integer> dataElementMapping = objectMappingGenerator.getDataElementMapping( false );
- Map<Object, Integer> categoryOptionComboMapping = objectMappingGenerator.getCategoryOptionComboMapping( false );
-
- Collection<ImportObject> importObjects = importObjectStore.getImportObjects( CalculatedDataElement.class );
-
- Importer<CalculatedDataElement> importer = new CalculatedDataElementImporter( dataElementService );
-
- for ( ImportObject importObject : importObjects )
- {
- CalculatedDataElement object = (CalculatedDataElement) importObject.getObject();
- object.getCategoryCombo().setId( categoryComboMapping.get( object.getCategoryCombo().getId() ) );
- object.getExpression().setExpression(
- expressionService.convertExpression( object.getExpression().getExpression(), dataElementMapping, categoryOptionComboMapping ) );
-
- try
- {
- importer.importObject( object, params );
- }
- catch ( ClassCastException e )
- {
- log.warn( "Cannot convert a regular data element to a calculated data element", e );
- }
- }
-
- importObjectStore.deleteImportObjects( CalculatedDataElement.class );
-
- log.info( "Imported CalculatedDataElements" );
- }
-
- @Transactional
public void importDataElementGroups()
{
BatchHandler<DataElementGroup> batchHandler = batchHandlerFactory.createBatchHandler(
=== modified file 'dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/service/DefaultImportObjectService.java'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/service/DefaultImportObjectService.java 2011-04-24 12:47:31 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/java/org/hisp/dhis/importexport/service/DefaultImportObjectService.java 2011-04-24 15:50:02 +0000
@@ -39,7 +39,6 @@
import org.hisp.dhis.common.ImportableObject;
import org.hisp.dhis.datadictionary.DataDictionary;
import org.hisp.dhis.datadictionary.DataDictionaryService;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementCategory;
import org.hisp.dhis.dataelement.DataElementCategoryCombo;
@@ -290,8 +289,7 @@
if ( importObject != null )
{
- if ( importObject.getClassName().equals( DataElement.class.getName() )
- || importObject.getClassName().equals( CalculatedDataElement.class.getName() ) )
+ if ( importObject.getClassName().equals( DataElement.class.getName() ) )
{
DataElement element = (DataElement) importObject.getObject();
@@ -394,7 +392,7 @@
{
importObjectStore.deleteImportObjects( clazz );
- if ( clazz.equals( DataElement.class ) || clazz.equals( CalculatedDataElement.class ) )
+ if ( clazz.equals( DataElement.class ) )
{
importObjectStore.deleteImportObjects( DataElementCategoryOptionCombo.class );
importObjectStore.deleteImportObjects( DataElementCategoryCombo.class );
@@ -494,7 +492,7 @@
// object.
// ---------------------------------------------------------------------
- if ( object.getClass().equals( DataElement.class ) || object.getClass().equals( CalculatedDataElement.class ) )
+ if ( object.getClass().equals( DataElement.class ) )
{
DataElement element = (DataElement) object;
@@ -628,7 +626,6 @@
importObjectManager.importCategoryCategoryOptionAssociations();
importObjectManager.importCategoryComboCategoryAssociations();
importObjectManager.importDataElements();
- importObjectManager.importCalculatedDataElements();
importObjectManager.importDataElementGroups();
importObjectManager.importDataElementGroupMembers();
importObjectManager.importDataElementGroupSets();
=== modified file 'dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/deletion/DeletionHandler.java'
--- dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/deletion/DeletionHandler.java 2011-04-24 12:47:31 +0000
+++ dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/deletion/DeletionHandler.java 2011-04-24 15:50:02 +0000
@@ -30,7 +30,6 @@
import org.hisp.dhis.chart.Chart;
import org.hisp.dhis.concept.Concept;
import org.hisp.dhis.datadictionary.DataDictionary;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementCategory;
import org.hisp.dhis.dataelement.DataElementCategoryCombo;
@@ -136,15 +135,6 @@
return true;
}
- public void deleteCalculatedDataElement( CalculatedDataElement dataElement )
- {
- }
-
- public boolean allowDeleteCalculatedDataElement( CalculatedDataElement dataElement )
- {
- return true;
- }
-
public void deleteDataElementGroup( DataElementGroup dataElementGroup )
{
}
=== modified file 'dhis-2/dhis-support/dhis-support-test/src/main/java/org/hisp/dhis/DhisConvenienceTest.java'
--- dhis-2/dhis-support/dhis-support-test/src/main/java/org/hisp/dhis/DhisConvenienceTest.java 2011-04-24 12:47:31 +0000
+++ dhis-2/dhis-support/dhis-support-test/src/main/java/org/hisp/dhis/DhisConvenienceTest.java 2011-04-24 15:50:02 +0000
@@ -41,7 +41,6 @@
import org.hisp.dhis.concept.Concept;
import org.hisp.dhis.datadictionary.DataDictionary;
import org.hisp.dhis.datadictionary.DataDictionaryService;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementCategoryCombo;
import org.hisp.dhis.dataelement.DataElementCategoryOption;
@@ -397,32 +396,6 @@
}
/**
- * @param uniqueCharacter A unique character to identify the object.
- * @param expression The Expression.
- */
- public static CalculatedDataElement createCalculatedDataElement( char uniqueCharacter, String type,
- String aggregationOperator, DataElementCategoryCombo categoryCombo, Expression expression )
- {
- CalculatedDataElement dataElement = new CalculatedDataElement();
-
- dataElement.setUuid( BASE_UUID + uniqueCharacter );
- dataElement.setName( "DataElement" + uniqueCharacter );
- dataElement.setAlternativeName( "AlternativeName" + uniqueCharacter );
- dataElement.setShortName( "ShortName" + uniqueCharacter );
- dataElement.setCode( "Code" + uniqueCharacter );
- dataElement.setDescription( "Description" + uniqueCharacter );
- dataElement.setActive( true );
- dataElement.setType( type );
- dataElement.setDomainType( DataElement.DOMAIN_TYPE_AGGREGATE );
- dataElement.setAggregationOperator( aggregationOperator );
- dataElement.setCategoryCombo( categoryCombo );
- dataElement.setSaved( false );
- dataElement.setExpression( expression );
-
- return dataElement;
- }
-
- /**
* @param categoryComboUniqueIdentifier A unique character to identify the
* category combo.
* @param categoryOptionUniqueIdentifiers Unique characters to identify the
=== modified file 'dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/action/caseentry/CustomDataEntryAction.java'
--- dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/action/caseentry/CustomDataEntryAction.java 2011-04-06 07:55:28 +0000
+++ dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/action/caseentry/CustomDataEntryAction.java 2011-04-24 15:50:02 +0000
@@ -36,7 +36,6 @@
import org.apache.commons.logging.LogFactory;
import org.hisp.dhis.caseentry.screen.DataEntryScreenManager;
import org.hisp.dhis.caseentry.state.SelectedStateManager;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementCategoryOptionCombo;
import org.hisp.dhis.dataentryform.DataEntryForm;
@@ -359,13 +358,11 @@
boolean cdeFormExists = (dataEntryForm != null);
String disabled = "";
- Map<CalculatedDataElement, Integer> calculatedValueMap = dataEntryScreenManager
- .populateValuesForCalculatedDataElements( organisationUnit, programStage, programStageInstance );
if ( cdeFormExists )
{
customDataEntryFormCode = dataEntryScreenManager.populateCustomDataEntryScreenForMultiDimensional(
- dataEntryForm.getHtmlCode(), patientDataValues, calculatedValueMap, minMaxMap, disabled, i18n,
+ dataEntryForm.getHtmlCode(), patientDataValues, minMaxMap, disabled, i18n,
programStage, programStageInstance, organisationUnit );
}
=== modified file 'dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/action/caseentry/ProgramStageCustomDataEntryAction.java'
--- dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/action/caseentry/ProgramStageCustomDataEntryAction.java 2011-03-31 01:49:21 +0000
+++ dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/action/caseentry/ProgramStageCustomDataEntryAction.java 2011-04-24 15:50:02 +0000
@@ -9,7 +9,6 @@
import org.apache.commons.logging.LogFactory;
import org.hisp.dhis.caseentry.screen.DataEntryScreenManager;
import org.hisp.dhis.caseentry.state.SelectedStateManager;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementCategoryOptionCombo;
import org.hisp.dhis.dataentryform.DataEntryForm;
@@ -270,15 +269,12 @@
boolean cdeFormExists = (dataEntryForm != null);
String disabled = "";
- Map<CalculatedDataElement, Integer> calculatedValueMap = dataEntryScreenManager
- .populateValuesForCalculatedDataElements( organisationUnit, programStage, programStageInstance );
-
if ( cdeFormExists )
{
customDataEntryFormExists = true;
customDataEntryFormCode = dataEntryScreenManager.populateCustomDataEntryScreenForMultiDimensional(
- dataEntryForm.getHtmlCode(), patientDataValues, calculatedValueMap, minMaxMap, disabled,
+ dataEntryForm.getHtmlCode(), patientDataValues, minMaxMap, disabled,
i18n, programStage, programStageInstance, organisationUnit );
}
=== modified file 'dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/screen/DataEntryScreenManager.java'
--- dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/screen/DataEntryScreenManager.java 2011-03-31 01:49:21 +0000
+++ dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/screen/DataEntryScreenManager.java 2011-04-24 15:50:02 +0000
@@ -29,8 +29,6 @@
import java.util.Collection;
import java.util.Map;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
-import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.i18n.I18n;
import org.hisp.dhis.minmax.MinMaxDataElement;
import org.hisp.dhis.organisationunit.OrganisationUnit;
@@ -51,16 +49,8 @@
boolean hasMultiDimensionalDataElement( ProgramStage programStage );
- Collection<Integer> getAllCalculatedDataElements( ProgramStage programStage );
-
- Map<CalculatedDataElement, Map<DataElement, Double>> getNonSavedCalculatedDataElements( ProgramStage programStage );
-
- Map<CalculatedDataElement, Integer> populateValuesForCalculatedDataElements( OrganisationUnit organisationUnit,
- ProgramStage programStage, ProgramStageInstance programStageInstance );
-
String populateCustomDataEntryScreenForMultiDimensional( String dataEntryFormCode,
- Collection<PatientDataValue> dataValues, Map<CalculatedDataElement, Integer> calculatedValueMap,
- Map<Integer, MinMaxDataElement> minMaxMap, String disabled, I18n i18n, ProgramStage programStage,
+ Collection<PatientDataValue> dataValues, Map<Integer, MinMaxDataElement> minMaxMap, String disabled, I18n i18n, ProgramStage programStage,
ProgramStageInstance programStageInstance, OrganisationUnit organisationUnit );
Collection<ProgramStageDataElement> getProgramStageDataElements( String htmlCode );
=== modified file 'dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/screen/DefaultDataEntryScreenManager.java'
--- dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/screen/DefaultDataEntryScreenManager.java 2011-03-31 05:38:57 +0000
+++ dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/screen/DefaultDataEntryScreenManager.java 2011-04-24 15:50:02 +0000
@@ -39,7 +39,6 @@
import org.apache.commons.lang.BooleanUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementCategoryCombo;
import org.hisp.dhis.dataelement.DataElementService;
@@ -159,79 +158,24 @@
return hasMultiDimensionalDataElement( dataSet ) ? MULTI_DIMENSIONAL_FORM : DEFAULT_FORM;
}
- public Collection<Integer> getAllCalculatedDataElements( ProgramStage programStage )
- {
- Collection<Integer> calculatedDataElementIds = new HashSet<Integer>();
-
- Collection<DataElement> dataElements = programStageDataElementService.getListDataElement( programStage );
-
- CalculatedDataElement cde;
-
- for ( DataElement dataElement : dataElements )
- {
- if ( dataElement instanceof CalculatedDataElement )
- {
- cde = (CalculatedDataElement) dataElement;
-
- calculatedDataElementIds.add( cde.getId() );
- }
- }
-
- return calculatedDataElementIds;
- }
-
- public Map<CalculatedDataElement, Map<DataElement, Double>> getNonSavedCalculatedDataElements(
- ProgramStage programStage )
- {
- Map<CalculatedDataElement, Map<DataElement, Double>> calculatedDataElementMap = new HashMap<CalculatedDataElement, Map<DataElement, Double>>();
-
- Collection<DataElement> dataElements = programStageDataElementService.getListDataElement( programStage );
-
- CalculatedDataElement cde;
-
- for ( DataElement dataElement : dataElements )
- {
- if ( dataElement instanceof CalculatedDataElement )
- {
- cde = (CalculatedDataElement) dataElement;
-
- if ( !cde.isSaved() )
- {
- calculatedDataElementMap.put( cde, dataElementService.getDataElementFactors( cde ) );
- }
- }
- }
-
- return calculatedDataElementMap;
- }
-
- public Map<CalculatedDataElement, Integer> populateValuesForCalculatedDataElements(
- OrganisationUnit organisationUnit, ProgramStage programStage, ProgramStageInstance programStageInstance )
- {
- Map<CalculatedDataElement, Integer> calculatedValueMap = new HashMap<CalculatedDataElement, Integer>();
-
- return calculatedValueMap;
- }
-
public String populateCustomDataEntryScreenForMultiDimensional( String dataEntryFormCode,
- Collection<PatientDataValue> dataValues, Map<CalculatedDataElement, Integer> calculatedValueMap,
- Map<Integer, MinMaxDataElement> minMaxMap, String disabled, I18n i18n, ProgramStage programStage,
+ Collection<PatientDataValue> dataValues, Map<Integer, MinMaxDataElement> minMaxMap, String disabled, I18n i18n, ProgramStage programStage,
ProgramStageInstance programStageInstance, OrganisationUnit organisationUnit )
{
Map<Integer, Collection<PatientDataValue>> mapDataValue = new HashMap<Integer, Collection<PatientDataValue>>();
String result = "";
- result = populateCustomDataEntryForTextBox( dataEntryFormCode, dataValues, calculatedValueMap, disabled, i18n,
- programStage, programStageInstance, organisationUnit, mapDataValue );
-
- result = populateCustomDataEntryForBoolean( result, dataValues, calculatedValueMap, minMaxMap, disabled, i18n,
- programStage, programStageInstance, organisationUnit, mapDataValue );
-
- result = populateCustomDataEntryForMutiDimentionalString( result, dataValues, calculatedValueMap, minMaxMap,
+ result = populateCustomDataEntryForTextBox( dataEntryFormCode, dataValues, disabled, i18n,
+ programStage, programStageInstance, organisationUnit, mapDataValue );
+
+ result = populateCustomDataEntryForBoolean( result, dataValues, minMaxMap, disabled, i18n,
+ programStage, programStageInstance, organisationUnit, mapDataValue );
+
+ result = populateCustomDataEntryForMutiDimentionalString( result, dataValues, minMaxMap,
disabled, i18n, programStage, programStageInstance, organisationUnit, mapDataValue );
- result = populateCustomDataEntryForDate( result, dataValues, calculatedValueMap, minMaxMap, disabled, i18n,
+ result = populateCustomDataEntryForDate( result, dataValues, minMaxMap, disabled, i18n,
programStage, programStageInstance, organisationUnit, mapDataValue );
result = populateI18nStrings( result, i18n );
@@ -240,8 +184,7 @@
}
private String populateCustomDataEntryForTextBox( String dataEntryFormCode,
- Collection<PatientDataValue> dataValues, Map<CalculatedDataElement, Integer> calculatedValueMap,
- String disabled, I18n i18n, ProgramStage programStage, ProgramStageInstance programStageInstance,
+ Collection<PatientDataValue> dataValues, String disabled, I18n i18n, ProgramStage programStage, ProgramStageInstance programStageInstance,
OrganisationUnit organisationUnit, Map<Integer, Collection<PatientDataValue>> mapDataValue )
{
// ---------------------------------------------------------------------
@@ -250,8 +193,6 @@
final String jsCodeForInputs = " $DISABLED onchange=\"saveValueCustom( this )\" data=\"{compulsory:$COMPULSORY, optionComboId:$OPTIONCOMBOID, dataElementId:$DATAELEMENTID, dataElementName:'$DATAELEMENTNAME', dataElementType:'$DATAELEMENTTYPE', programStageId:$PROGRAMSTAGEID, programStageName: '$PROGRAMSTAGENAME', orgUnitName:'$ORGUNITNAME'}\" onkeypress=\"return keyPress(event, this)\" ";
- final String calDataElementCode = " class=\"calculated\" disabled ";
-
// ---------------------------------------------------------------------
// Metadata code to add to HTML before outputting
// ---------------------------------------------------------------------
@@ -368,29 +309,9 @@
}
else
{
- if ( (dataElement instanceof CalculatedDataElement) )
- {
- CalculatedDataElement cde = (CalculatedDataElement) dataElement;
-
- if ( cde.isSaved() )
- {
- patientDataValue = getValue( dataValues, dataElementId );
-
- dataElementValue = patientDataValue != null ? patientDataValue.getValue()
- : dataElementValue;
- }
- else
- {
- dataElementValue = String.valueOf( calculatedValueMap.get( cde ) );
- }
- }
- else
- {
- patientDataValue = getValue( dataValues, dataElementId );
-
- dataElementValue = patientDataValue != null ? patientDataValue.getValue() : dataElementValue;
-
- }
+ patientDataValue = getValue( dataValues, dataElementId );
+
+ dataElementValue = patientDataValue != null ? patientDataValue.getValue() : dataElementValue;
}
// -------------------------------------------------------------
@@ -422,11 +343,6 @@
appendCode += jsCodeForInputs;
- if ( (dataElement instanceof CalculatedDataElement) )
- {
- appendCode += calDataElementCode;
- }
-
appendCode += " />";
// -----------------------------------------------------------
@@ -488,8 +404,7 @@
}
private String populateCustomDataEntryForBoolean( String dataEntryFormCode,
- Collection<PatientDataValue> dataValues, Map<CalculatedDataElement, Integer> calculatedValueMap,
- Map<Integer, MinMaxDataElement> minMaxMap, String disabled, I18n i18n, ProgramStage programStage,
+ Collection<PatientDataValue> dataValues, Map<Integer, MinMaxDataElement> minMaxMap, String disabled, I18n i18n, ProgramStage programStage,
ProgramStageInstance programStageInstance, OrganisationUnit organisationUnit,
Map<Integer, Collection<PatientDataValue>> mapDataValue )
{
@@ -500,8 +415,6 @@
final String jsCodeForBoolean = " name=\"entryselect\" data=\"{compulsory:$COMPULSORY, dataElementId:$DATAELEMENTID, dataElementName:'$DATAELEMENTNAME', dataElementType:'$DATAELEMENTTYPE', programStageId:$PROGRAMSTAGEID, programStageName: '$PROGRAMSTAGENAME', orgUnitName:'$ORGUNITNAME'}\" $DISABLED onchange=\"saveChoiceCustom( $PROGRAMSTAGEID, $DATAELEMENTID,this)\"";
- final String calDataElementCode = " class=\"calculated\" disabled ";
-
// ---------------------------------------------------------------------
// Metadata code to add to HTML before outputting
// ---------------------------------------------------------------------
@@ -615,27 +528,11 @@
else
{
- if ( (dataElement instanceof CalculatedDataElement) )
- {
- CalculatedDataElement cde = (CalculatedDataElement) dataElement;
-
- if ( cde.isSaved() )
- {
- patientDataValue = getValue( dataValues, dataElementId );
- if ( patientDataValue != null )
- dataElementValue = patientDataValue.getValue();
- }
- else
- {
- dataElementValue = String.valueOf( calculatedValueMap.get( cde ) );
- }
- }
- else
- {
- patientDataValue = getValue( dataValues, dataElementId );
- if ( patientDataValue != null )
- dataElementValue = patientDataValue.getValue();
-
+ patientDataValue = getValue( dataValues, dataElementId );
+
+ if ( patientDataValue != null )
+ {
+ dataElementValue = patientDataValue.getValue();
}
}
@@ -693,11 +590,6 @@
// fields
// -------------------------------------------------------------
- if ( (dataElement instanceof CalculatedDataElement) )
- {
- appendCode += calDataElementCode;
- }
-
appendCode += metaDataCode;
// -----------------------------------------------------------
@@ -761,8 +653,7 @@
}
private String populateCustomDataEntryForMutiDimentionalString( String dataEntryFormCode,
- Collection<PatientDataValue> dataValues, Map<CalculatedDataElement, Integer> calculatedValueMap,
- Map<Integer, MinMaxDataElement> minMaxMap, String disabled, I18n i18n, ProgramStage programStage,
+ Collection<PatientDataValue> dataValues, Map<Integer, MinMaxDataElement> minMaxMap, String disabled, I18n i18n, ProgramStage programStage,
ProgramStageInstance programStageInstance, OrganisationUnit organisationUnit,
Map<Integer, Collection<PatientDataValue>> mapDataValue )
{
@@ -773,8 +664,6 @@
final String jsCodeForCombo = " name=\"entryselect\" $DISABLED data=\"{compulsory:$COMPULSORY, dataElementId:$DATAELEMENTID, dataElementName:'$DATAELEMENTNAME', dataElementType:'$DATAELEMENTTYPE', programStageId:$PROGRAMSTAGEID, programStageName: '$PROGRAMSTAGENAME', orgUnitName:'$ORGUNITNAME'}\" onchange=\"saveChoiceCustom( $PROGRAMSTAGEID, $DATAELEMENTID,this)\"";
- final String calDataElementCode = " class=\"calculated\" disabled ";
-
// ---------------------------------------------------------------------
// Metadata code to add to HTML before outputting
// ---------------------------------------------------------------------
@@ -888,28 +777,9 @@
}
else
{
- if ( (dataElement instanceof CalculatedDataElement) )
- {
- CalculatedDataElement cde = (CalculatedDataElement) dataElement;
-
- if ( cde.isSaved() )
- {
- patientDataValue = getValue( dataValues, dataElementId );
-
- dataElementValue = patientDataValue != null ? patientDataValue.getValue()
- : dataElementValue;
- }
- else
- {
- dataElementValue = String.valueOf( calculatedValueMap.get( cde ) );
- }
- }
- else
- {
- patientDataValue = getValue( dataValues, dataElementId );
-
- dataElementValue = patientDataValue != null ? patientDataValue.getValue() : dataElementValue;
- }
+ patientDataValue = getValue( dataValues, dataElementId );
+
+ dataElementValue = patientDataValue != null ? patientDataValue.getValue() : dataElementValue;
}
String appendCode = dataElementCode;
@@ -956,11 +826,6 @@
// fields
// -------------------------------------------------------------
- if ( (dataElement instanceof CalculatedDataElement) )
- {
- appendCode += calDataElementCode;
- }
-
appendCode += metaDataCode;
// -----------------------------------------------------------
@@ -1022,8 +887,7 @@
}
private String populateCustomDataEntryForDate( String dataEntryFormCode, Collection<PatientDataValue> dataValues,
- Map<CalculatedDataElement, Integer> calculatedValueMap, Map<Integer, MinMaxDataElement> minMaxMap,
- String disabled, I18n i18n, ProgramStage programStage, ProgramStageInstance programStageInstance,
+ Map<Integer, MinMaxDataElement> minMaxMap, String disabled, I18n i18n, ProgramStage programStage, ProgramStageInstance programStageInstance,
OrganisationUnit organisationUnit, Map<Integer, Collection<PatientDataValue>> mapDataValue )
{
@@ -1149,30 +1013,9 @@
}
else
{
-
- if ( (dataElement instanceof CalculatedDataElement) )
- {
- CalculatedDataElement cde = (CalculatedDataElement) dataElement;
-
- if ( cde.isSaved() )
- {
- patientDataValue = getValue( dataValues, dataElementId );
-
- dataElementValue = patientDataValue != null ? patientDataValue.getValue()
- : dataElementValue;
- }
- else
- {
- dataElementValue = String.valueOf( calculatedValueMap.get( cde ) );
- }
- }
- else
- {
- patientDataValue = getValue( dataValues, dataElementId );
-
- dataElementValue = patientDataValue != null ? patientDataValue.getValue() : dataElementValue;
-
- }
+ patientDataValue = getValue( dataValues, dataElementId );
+
+ dataElementValue = patientDataValue != null ? patientDataValue.getValue() : dataElementValue;
}
// -------------------------------------------------------------
=== modified file 'dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/exp/DetailedMetaDataExportAction.java'
--- dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/exp/DetailedMetaDataExportAction.java 2010-04-12 21:23:33 +0000
+++ dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/exp/DetailedMetaDataExportAction.java 2011-04-24 15:50:02 +0000
@@ -37,7 +37,6 @@
import java.util.Set;
import org.hisp.dhis.common.ServiceProvider;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementService;
import org.hisp.dhis.expression.ExpressionService;
@@ -204,14 +203,7 @@
{
final DataElement element = dataElementService.getDataElement( id );
- if ( element instanceof CalculatedDataElement )
- {
- params.getCalculatedDataElements().add( element.getId() );
- }
- else
- {
- params.getDataElements().add( element.getId() );
- }
+ params.getDataElements().add( element.getId() );
}
params.setIncludeDataValues( false );
=== modified file 'dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/exp/MetaDataExportAction.java'
--- dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/exp/MetaDataExportAction.java 2011-03-22 16:53:11 +0000
+++ dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/exp/MetaDataExportAction.java 2011-04-24 15:50:02 +0000
@@ -240,7 +240,6 @@
params.setCategoryOptions( null );
params.setCategoryOptionCombos( null );
params.setDataElements( null );
- params.setCalculatedDataElements( null );
}
if ( dataElementGroups )
=== modified file 'dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/imp/GetMatchOptionsAction.java'
--- dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/imp/GetMatchOptionsAction.java 2011-04-24 12:47:31 +0000
+++ dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/imp/GetMatchOptionsAction.java 2011-04-24 15:50:02 +0000
@@ -27,7 +27,6 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-import static org.hisp.dhis.common.Objects.CALCULATEDDATAELEMENT;
import static org.hisp.dhis.common.Objects.CHART;
import static org.hisp.dhis.common.Objects.DATADICTIONARY;
import static org.hisp.dhis.common.Objects.DATAELEMENT;
@@ -207,11 +206,7 @@
if ( objectType.equals( DATAELEMENT.name() ) )
{
- objects = dataElementService.getNonCalculatedDataElements();
- }
- else if ( objectType.equals( CALCULATEDDATAELEMENT.name() ) )
- {
- objects = dataElementService.getAllCalculatedDataElements();
+ objects = dataElementService.getAllDataElements();
}
else if ( objectType.equals( DATAELEMENTGROUP.name() ) )
{
=== modified file 'dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/imp/GetPreviewOptionsAction.java'
--- dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/imp/GetPreviewOptionsAction.java 2011-04-24 12:47:31 +0000
+++ dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/imp/GetPreviewOptionsAction.java 2011-04-24 15:50:02 +0000
@@ -41,7 +41,6 @@
import org.hisp.dhis.chart.Chart;
import org.hisp.dhis.datadictionary.DataDictionary;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementGroup;
import org.hisp.dhis.dataelement.DataElementGroupSet;
@@ -431,7 +430,6 @@
throws Exception
{
newDataElements = importObjectService.getImportObjects( NEW, DataElement.class ).size();
- newCalculatedDataElements = importObjectService.getImportObjects( NEW, CalculatedDataElement.class ).size();
newDataElementGroups = importObjectService.getImportObjects( NEW, DataElementGroup.class ).size();
newDataElementGroupSets = importObjectService.getImportObjects( NEW, DataElementGroupSet.class ).size();
newIndicatorTypes = importObjectService.getImportObjects( NEW, IndicatorType.class ).size();
@@ -451,7 +449,6 @@
newDataValues = importDataValueService.getNumberOfImportDataValues( NEW );
updateDataElements = importObjectService.getImportObjects( UPDATE, DataElement.class ).size();
- updateCalculatedDataElements = importObjectService.getImportObjects( UPDATE, CalculatedDataElement.class ).size();
updateDataElementGroups = importObjectService.getImportObjects( UPDATE, DataElementGroup.class ).size();
updateDataElementGroupSets = importObjectService.getImportObjects( UPDATE, DataElementGroupSet.class ).size();
updateIndicatorTypes = importObjectService.getImportObjects( UPDATE, IndicatorType.class ).size();
=== modified file 'dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/util/ClassMapUtil.java'
--- dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/util/ClassMapUtil.java 2011-04-24 12:47:31 +0000
+++ dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/util/ClassMapUtil.java 2011-04-24 15:50:02 +0000
@@ -27,7 +27,6 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-import static org.hisp.dhis.common.Objects.CALCULATEDDATAELEMENT;
import static org.hisp.dhis.common.Objects.DATADICTIONARY;
import static org.hisp.dhis.common.Objects.DATAELEMENT;
import static org.hisp.dhis.common.Objects.DATAELEMENTGROUP;
@@ -51,7 +50,6 @@
import org.hisp.dhis.common.Objects;
import org.hisp.dhis.datadictionary.DataDictionary;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementGroup;
import org.hisp.dhis.dataelement.DataElementGroupSet;
@@ -81,7 +79,6 @@
classMap = new HashMap<Objects, Class<?>>();
classMap.put( DATAELEMENT, DataElement.class );
- classMap.put( CALCULATEDDATAELEMENT, CalculatedDataElement.class );
classMap.put( DATAELEMENTGROUP, DataElementGroup.class );
classMap.put( DATAELEMENTGROUPSET, DataElementGroupSet.class );
classMap.put( INDICATORTYPE, IndicatorType.class );
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/dataelement/AddDataElementAction.java'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/dataelement/AddDataElementAction.java 2011-03-22 05:49:48 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/dataelement/AddDataElementAction.java 2011-04-24 15:50:02 +0000
@@ -27,20 +27,13 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-import static org.hisp.dhis.expression.Expression.SEPARATOR;
-
import java.util.ArrayList;
import java.util.Collection;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementCategoryCombo;
import org.hisp.dhis.dataelement.DataElementCategoryService;
import org.hisp.dhis.dataelement.DataElementService;
-import org.hisp.dhis.expression.Expression;
import org.hisp.dhis.system.util.ConversionUtils;
import com.opensymphony.xwork2.ActionSupport;
@@ -53,8 +46,6 @@
public class AddDataElementAction
extends ActionSupport
{
- private static final String TRUE = "on";
-
// -------------------------------------------------------------------------
// Dependencies
// -------------------------------------------------------------------------
@@ -140,13 +131,6 @@
this.aggregationOperator = aggregationOperator;
}
- private String calculated;
-
- public void setCalculated( String calculated )
- {
- this.calculated = calculated;
- }
-
private String url;
public void setUrl( String url )
@@ -161,27 +145,6 @@
this.aggregationLevels = aggregationLevels;
}
- private String saved;
-
- public void setSaved( String saved )
- {
- this.saved = saved;
- }
-
- private List<String> dataElementIds;
-
- public void setDataElementIds( List<String> dataElementIds )
- {
- this.dataElementIds = dataElementIds;
- }
-
- private List<Double> factors;
-
- public void setFactors( List<Double> factors )
- {
- this.factors = factors;
- }
-
private Integer selectedCategoryComboId;
public void setSelectedCategoryComboId( Integer selectedCategoryComboId )
@@ -225,63 +188,11 @@
// Create data element
// ---------------------------------------------------------------------
- DataElement dataElement = null;
-
- DataElementCategoryCombo defaultCategoryCombo = dataElementCategoryService
- .getDataElementCategoryComboByName( DataElementCategoryCombo.DEFAULT_CATEGORY_COMBO_NAME );
+ DataElement dataElement = new DataElement();
DataElementCategoryCombo categoryCombo = dataElementCategoryService
.getDataElementCategoryCombo( selectedCategoryComboId );
- if ( calculated != null && calculated.equals( TRUE ) )
- {
- categoryCombo = defaultCategoryCombo;
-
- dataElement = new CalculatedDataElement();
-
- CalculatedDataElement calculatedDataElement = (CalculatedDataElement) dataElement;
-
- Set<DataElement> expressionDataElements = new HashSet<DataElement>();
-
- String expressionString = "";
-
- for ( int i = 0; i < dataElementIds.size(); i++ )
- {
- String operandId = dataElementIds.get( i );
-
- String dataElementIdString = operandId.substring( 0, operandId.indexOf( SEPARATOR ) );
-
- DataElement expressionDataElement = dataElementService.getDataElement( Integer
- .parseInt( dataElementIdString ) );
-
- if ( expressionDataElement == null )
- {
- continue;
- }
-
- Double factor = factors.get( i );
-
- expressionString += " + ([" + operandId + "] * " + factor + ")";
-
- expressionDataElements.add( expressionDataElement );
- }
-
- if ( expressionString.length() > 3 )
- {
- expressionString = expressionString.substring( 3 );
- }
-
- Expression expression = new Expression( expressionString, "", expressionDataElements );
-
- calculatedDataElement.setExpression( expression );
-
- calculatedDataElement.setSaved( saved != null );
- }
- else
- {
- dataElement = new DataElement();
- }
-
dataElement.setName( name );
dataElement.setAlternativeName( alternativeName );
dataElement.setShortName( shortName );
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/dataelement/ShowUpdateDataElementFormAction.java'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/dataelement/ShowUpdateDataElementFormAction.java 2011-03-22 05:49:48 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/dataelement/ShowUpdateDataElementFormAction.java 2011-04-24 15:50:02 +0000
@@ -27,17 +27,13 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-import static org.hisp.dhis.expression.Expression.SEPARATOR;
-
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementCategoryCombo;
-import org.hisp.dhis.dataelement.DataElementCategoryOptionCombo;
import org.hisp.dhis.dataelement.DataElementCategoryService;
import org.hisp.dhis.dataelement.DataElementGroup;
import org.hisp.dhis.dataelement.DataElementOperand;
@@ -97,13 +93,6 @@
return dataElement;
}
- private CalculatedDataElement calculatedDataElement;
-
- public CalculatedDataElement getCalculatedDataElement()
- {
- return calculatedDataElement;
- }
-
private Collection<DataElementGroup> dataElementGroups;
public Collection<DataElementGroup> getDataElementGroups()
@@ -186,33 +175,6 @@
organisationUnitLevels.removeAll( aggregationLevels );
- if ( dataElement != null && dataElement instanceof CalculatedDataElement )
- {
- calculatedDataElement = (CalculatedDataElement) dataElement;
- dataElementGroups = dataElementService.getAllDataElementGroups();
-
- Collection<String> operandIds = new ArrayList<String>();
-
- operandIds = dataElementService.getOperandIds( calculatedDataElement );
- factorMap = dataElementService.getOperandFactors( calculatedDataElement );
-
- for ( String operandId : operandIds )
- {
- String dataElementIdString = operandId.substring( 0, operandId.indexOf( SEPARATOR ) );
- String optionComboIdString = operandId.substring( operandId.indexOf( SEPARATOR ) + 1, operandId
- .length() );
-
- DataElement dataElement = dataElementService.getDataElement( Integer.parseInt( dataElementIdString ) );
- DataElementCategoryOptionCombo optionCombo = dataElementCategoryService
- .getDataElementCategoryOptionCombo( Integer.parseInt( optionComboIdString ) );
-
- DataElementOperand operand = new DataElementOperand( dataElement.getId(), optionCombo.getId(),
- dataElement.getName() + optionCombo.getName() );
-
- operands.add( operand );
- }
- }
-
return SUCCESS;
}
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/dataelement/UpdateDataElementAction.java'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/dataelement/UpdateDataElementAction.java 2011-03-22 05:49:48 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/dataelement/UpdateDataElementAction.java 2011-04-24 15:50:02 +0000
@@ -29,18 +29,14 @@
import java.util.ArrayList;
import java.util.Collection;
-import java.util.HashSet;
-import java.util.List;
import java.util.Set;
-import org.hisp.dhis.dataelement.CalculatedDataElement;
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.dataelement.DataElementCategoryCombo;
import org.hisp.dhis.dataelement.DataElementCategoryService;
import org.hisp.dhis.dataelement.DataElementService;
import org.hisp.dhis.dataset.DataSet;
import org.hisp.dhis.dataset.DataSetService;
-import org.hisp.dhis.expression.Expression;
import org.hisp.dhis.system.util.ConversionUtils;
import com.opensymphony.xwork2.ActionSupport;
@@ -167,27 +163,6 @@
this.aggregationLevels = aggregationLevels;
}
- private String saved;
-
- public void setSaved( String saved )
- {
- this.saved = saved;
- }
-
- private List<String> dataElementIds;
-
- public void setDataElementIds( List<String> dataElementIds )
- {
- this.dataElementIds = dataElementIds;
- }
-
- private List<Double> factors;
-
- public void setFactors( List<Double> factors )
- {
- this.factors = factors;
- }
-
private Integer selectedCategoryComboId;
public void setSelectedCategoryComboId( Integer selectedCategoryComboId )
@@ -247,58 +222,9 @@
dataElement.setAggregationOperator( aggregationOperator );
dataElement.setUrl( url );
dataElement.setCategoryCombo( categoryCombo );
- dataElement.setAggregationLevels( new ArrayList<Integer>( ConversionUtils
- .getIntegerCollection( aggregationLevels ) ) );
+ dataElement.setAggregationLevels( new ArrayList<Integer>( ConversionUtils.getIntegerCollection( aggregationLevels ) ) );
dataElement.setZeroIsSignificant( zeroIsSignificant );
-
- // ---------------------------------------------------------------------
- // Calculated data element
- // ---------------------------------------------------------------------
-
- if ( dataElement instanceof CalculatedDataElement )
- {
- CalculatedDataElement calculatedDataElement = (CalculatedDataElement) dataElement;
-
- Expression expression = calculatedDataElement.getExpression();
-
- Set<DataElement> expressionDataElements = new HashSet<DataElement>();
-
- String expressionString = "";
-
- for ( int i = 0; i < dataElementIds.size(); i++ )
- {
- String operandId = dataElementIds.get( i );
-
- String dataElementIdStr = operandId.substring( 0, operandId.indexOf( '.' ) );
-
- DataElement expressionDataElement = dataElementService.getDataElement( Integer
- .parseInt( dataElementIdStr ) );
-
- if ( expressionDataElement == null )
- {
- continue;
- }
-
- Double factor = factors.get( i );
-
- expressionString += " + ([" + operandId + "] * " + factor + ")";
-
- expressionDataElements.add( expressionDataElement );
- }
-
- if ( expressionString.length() > 3 )
- {
- expressionString = expressionString.substring( 3 );
- }
-
- expression.setExpression( expressionString );
-
- expression.setDataElementsInExpression( expressionDataElements );
-
- calculatedDataElement.setSaved( saved != null );
- }
-
Set<DataSet> dataSets = dataElement.getDataSets();
for ( DataSet dataSet : dataSets )
{
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/indicator/AddIndicatorAction.java'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/indicator/AddIndicatorAction.java 2010-04-12 21:23:33 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/indicator/AddIndicatorAction.java 2011-04-24 15:50:02 +0000
@@ -27,7 +27,6 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-import org.hisp.dhis.expression.ExpressionService;
import org.hisp.dhis.indicator.Indicator;
import org.hisp.dhis.indicator.IndicatorService;
import org.hisp.dhis.indicator.IndicatorType;
@@ -51,14 +50,7 @@
{
this.indicatorService = indicatorService;
}
-
- private ExpressionService expressionService;
-
- public void setExpressionService( ExpressionService expressionService )
- {
- this.expressionService = expressionService;
- }
-
+
// -------------------------------------------------------------------------
// Input
// -------------------------------------------------------------------------
@@ -184,10 +176,6 @@
description = null;
}
- numerator = expressionService.replaceCDEsWithTheirExpression( numerator );
-
- denominator = expressionService.replaceCDEsWithTheirExpression( denominator );
-
Indicator indicator = new Indicator();
indicator.setName( name );
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/indicator/UpdateIndicatorAction.java'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/indicator/UpdateIndicatorAction.java 2010-04-12 21:23:33 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/java/org/hisp/dhis/dd/action/indicator/UpdateIndicatorAction.java 2011-04-24 15:50:02 +0000
@@ -27,7 +27,6 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-import org.hisp.dhis.expression.ExpressionService;
import org.hisp.dhis.indicator.Indicator;
import org.hisp.dhis.indicator.IndicatorService;
import org.hisp.dhis.indicator.IndicatorType;
@@ -51,14 +50,7 @@
{
this.indicatorService = indicatorService;
}
-
- private ExpressionService expressionService;
-
- public void setExpressionService( ExpressionService expressionService )
- {
- this.expressionService = expressionService;
- }
-
+
// -------------------------------------------------------------------------
// Input
// -------------------------------------------------------------------------
@@ -193,10 +185,6 @@
description = null;
}
- numerator = expressionService.replaceCDEsWithTheirExpression( numerator );
-
- denominator = expressionService.replaceCDEsWithTheirExpression( denominator );
-
indicator.setName( name );
indicator.setAlternativeName( alternativeName );
indicator.setShortName( shortName );
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/resources/META-INF/dhis/beans.xml'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/resources/META-INF/dhis/beans.xml 2011-01-17 17:03:05 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/resources/META-INF/dhis/beans.xml 2011-04-24 15:50:02 +0000
@@ -545,9 +545,6 @@
<property name="indicatorService">
<ref bean="org.hisp.dhis.indicator.IndicatorService" />
</property>
- <property name="expressionService">
- <ref bean="org.hisp.dhis.expression.ExpressionService" />
- </property>
</bean>
<bean id="org.hisp.dhis.dd.action.indicator.UpdateIndicatorAction"
@@ -555,9 +552,6 @@
<property name="indicatorService">
<ref bean="org.hisp.dhis.indicator.IndicatorService" />
</property>
- <property name="expressionService">
- <ref bean="org.hisp.dhis.expression.ExpressionService" />
- </property>
</bean>
<bean id="org.hisp.dhis.dd.action.indicator.ValidateIndicatorAction"
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/addDataElementForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/addDataElementForm.vm 2011-03-30 11:04:12 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/addDataElementForm.vm 2011-04-24 15:50:02 +0000
@@ -89,7 +89,7 @@
<tr>
<td><label for="selectedCategoryComboId">$i18n.getString( "category_combo" ) <em title="$i18n.getString( 'required' )" class="required">*</em></label></td>
<td>
- <select id="selectedCategoryComboId" style="min-width:20em" onchange="changeCategory(this.value)">
+ <select id="selectedCategoryComboId" style="min-width:20em">
#foreach( $dataElementCategoryCombo in $dataElementCategoryCombos )
<option value="$dataElementCategoryCombo.id" #if( $dataElementCategoryCombo.id == $defaultCategoryCombo.id ) selected="selected" #end>$encoder.htmlEncode( $dataElementCategoryCombo.name )</option>
#end
@@ -97,76 +97,6 @@
<input type="hidden" id="submitCategoryComboId" name="selectedCategoryComboId"/>
</td>
</tr>
- <tr>
- <td style="height:10px"></td>
- </tr>
- <tr>
- <td><label for="calculated" id="lblCalculated">$i18n.getString( "calculated" )</label></td>
- <td><input type="checkbox" id="calculated" name="calculated" onchange="toggleCDEForm()"/></td>
- </tr>
-</table>
-
-<div id="calculatedContainer" style="border:1px solid #808080; padding:10px; display:none;">
-
-<table>
- <tr>
- <td><label for="saved">$i18n.getString( "saved" )</label>
- <input type="checkbox" id="saved" name="saved" #if( $calculatedDataElement.saved ) checked="checked" #end/>
- </td>
- </tr>
- <tr>
- <td style="height:10px"></td>
- </tr>
- <tr>
- <th>$i18n.getString( "available_dataelements" )</td>
- </tr>
- <tr>
- <td>
- <select id="dataElementGroupId" name="dataElementGroupId" onchange="getDataElements( this.options[this.selectedIndex].value, 'int', true )" style="width:450px">
- <option value="[select]" selected="selected">[ $i18n.getString( "select_dataelementgroup" ) ]</option>
- <option value="$ALL">[ $i18n.getString( "all_dataelements" ) ]</option>
- #foreach ( $group in $dataElementGroups )
- <option value="$group.id">$group.name</option>
- #end
- </select><br/>
- <select id="availableDataElements" size="5" multiple="multiple" style="width:450px">
- #foreach( $operand in $operands )
- <option value="[$operand.operandId]">$encoder.htmlEncode( $operand.operandName )</option>
- #end
- </select>
- </td>
- </tr>
- <tr>
- <td>
- <input id="selectOneButton" type="button" value="$i18n.getString('add_selected')" title="$i18n.getString('add_selected')" onclick="addCDEDataElements()" style="width:120px"/><input
- id="deselectAllButton" type="button" value="$i18n.getString('remove_all')" title="$i18n.getString('remove_all')" onclick="removeCDEDataElements()" style="width:120px"/>
- </td>
- </tr>
- <tr>
- <th>$i18n.getString( "selected_dataelements" )</th>
- <td><select id="selectedDEValidator" multiple="multiple" name="selectedDEValidator" style="display:none"></select></td>
- </tr>
- <tr>
- <td>
- <table id="selectedDataElements" style="min-width:450px">
- <tr>
- <td style="font-weight:bold;">$i18n.getString( "data_element" )</td>
- <td style="font-weight:bold;">$i18n.getString( "factor" )</td>
- <td style="font-weight:bold;">$i18n.getString( "remove" )</td>
- </tr>
- <tbody>
- <tr class="placeholder">
- <td colspan="2">None selected</td>
- </tr>
- </tbody>
- </table>
- </td>
- </tr>
-</table>
-
-</div>
-
-<table>
<tr>
<td style="height:10px" colspan="2"></td>
</tr>
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/addDataElementForm.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/addDataElementForm.js 2011-04-11 13:46:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/addDataElementForm.js 2011-04-24 15:50:02 +0000
@@ -1,8 +1,6 @@
jQuery(document).ready( function() {
validation2( 'addDataElementForm', function( form ){ form.submit(); }, {
'beforeValidateHandler': function() {
- getDataElementIdsForValidate();
- getFactors();
setFieldValue( 'submitCategoryComboId', getFieldValue( 'selectedCategoryComboId' ) );
setFieldValue( 'submitValueType', getFieldValue( 'valueType' ) );
},
@@ -12,6 +10,4 @@
checkValueIsExist( "name", "validateDataElement.action");
checkValueIsExist( "shortName", "validateDataElement.action");
checkValueIsExist( "alternativeName", "validateDataElement.action");
-
- toggleCDEForm();
});
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataElement.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataElement.js 2011-03-22 05:49:48 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/dataElement.js 2011-04-24 15:50:02 +0000
@@ -1,10 +1,8 @@
function changeValueType( value )
{
if( value == 'int' ){
- enable( 'calculated' );
enable( 'zeroIsSignificant' );
- }else{
- disable( 'calculated' );
+ }else{
disable( 'zeroIsSignificant' );
}
@@ -21,14 +19,6 @@
}
}
-function changeCategory( value )
-{
- if( value == getFieldValue( 'defaultCategoryCombo') ){
- enable( 'calculated' );
- }else{
- disable( 'calculated' );
- }
-}
// -----------------------------------------------------------------------------
// Change data element group and data dictionary
// -----------------------------------------------------------------------------
@@ -164,161 +154,3 @@
{
removeItem( dataElementId, dataElementName, i18n_confirm_delete, 'removeDataElement.action' );
}
-// -----------------------------------------------------------------------------
-// Calculated Data Elements
-// -----------------------------------------------------------------------------
-
-/**
- * Adds a set of data elements to the CDE table.
- * Either add the selected ones, or add all.
- * @param requireSelect Whether to only add the selected data elements
- */
-function addCDEDataElements()
-{
- var availableList = jQuery("#availableDataElements option");
-
- jQuery("#selectedDataElements tr.placeholder").remove();
-
- var selectedList = jQuery("#selectedDataElements")
-
- jQuery.each( availableList, function(i, item){
- if( item.selected ){
- var id = item.value;
- var name = item.firstChild.nodeValue;
- jQuery( item ).remove();
- addCDEDataElement( id, name, i);
- }
- });
-
- updateValidatorRulesForFactors();
-}
-
-function addCDEDataElement( id, name, index )
-{
- var tr = document.createElement('tr');
-
- var nameTd = tr.appendChild(document.createElement('td'));
- nameTd.appendChild(document.createTextNode(name));
- var idInput = nameTd.appendChild(document.createElement('input'));
- idInput.type = 'hidden';
- idInput.name = 'dataElementIds';
- idInput.value = id;
-
- var factorTd = tr.appendChild(document.createElement('td'));
- var factorInput = factorTd.appendChild(document.createElement('input'));
- factorInput.type = 'text';
- factorInput.name = 'factors' + index;
- factorInput.value = 1;
-
- var opTd = tr.appendChild(document.createElement('td'));
- var button = opTd.appendChild(document.createElement('button')); //TODO: i18n
- button.setAttribute('title', 'Remove from list');
- button.setAttribute('type', 'button');
- button.onclick = removeCDEDataElement;
- var delIcon = button.appendChild(document.createElement('img'));
- delIcon.setAttribute( 'src', '../images/delete.png' );
- delIcon.setAttribute( 'alt', 'Delete icon' );
-
- var selectedTable = byId('selectedDataElements');
- selectedTable.appendChild(tr);
-}
-
-/**
- * Remove all elements from the CDE table.
- */
-function removeCDEDataElements( e )
-{
- var trs = jQuery( "#selectedDataElements tr[class!=placeholder]:gt(0)");
-
- jQuery.each( trs, function(i, item){
- var deId = jQuery( "input[name=dataElementIds]", item )[0].value;
- var deName = jQuery( "td", item )[0].firstChild.nodeValue
- jQuery(item).remove();
- jQuery("#availableDataElements").append( '<option value="' + deId + '" selected="true">' + deName + '</option>' );
-
- });
-}
-
-/**
- * Remove one data element row from the CDE form.
- */
-function removeCDEDataElement( e )
-{
- var tr = jQuery( this ).parent().parent();
- var deId = tr.find( "input[name=dataElementIds]").val();
- var deName = tr.find( "td:first" ).text();
- tr.remove();
- jQuery("#availableDataElements").append( '<option value="' + deId + '" selected="true">' + deName + '</option>' );
-
-}
-
-function updateValidatorRulesForFactors()
-{
- var inputs = jQuery("#selectedDataElements input[name*=factors]");
-
- jQuery.each(inputs, function(i, item ){
- removeValidatorRules( item );
- addValidatorRules( item, {required:true, number:true});
- });
-}
-
-function removeValidatorRulesForFactors()
-{
- var inputs = jQuery("#selectedDataElements input[name*=factors]");
-
- jQuery.each(inputs, function(i, item ){
- removeValidatorRules( item );
- });
-}
-
-/**
- * Display or hide an element
- * @param id Id of the element to toggle
- * @param display Whether or not to display the element
- */
-function toggleCDEForm()
-{
- id = 'calculatedContainer';
- display = isChecked( 'calculated' );
-
- if( display )
- {
- disable( 'valueType' );
- disable( 'selectedCategoryComboId' );
- showById( id );
- addValidatorRulesById("selectedDEValidator", {
- required: true
- });
- updateValidatorRulesForFactors();
- }
- else
- {
- enable( 'valueType' );
- enable( 'selectedCategoryComboId' );
- hideById( id );
- removeValidatorRulesById("selectedDEValidator");
- removeValidatorRulesForFactors();
- }
-}
-
-function getFactors()
-{
- var factorsSubmit = jQuery("#factorsSubmit");
- var inputs = jQuery("#selectedDataElements input[name*=factors]");
-
- jQuery.each(inputs, function(i, item ){
- factorsSubmit.append('<option value="' + item.value + '" selected="selected">' + item.value + '</option>');
- });
-}
-
-function getDataElementIdsForValidate()
-{
- var dataElementValidators = jQuery("#selectedDEValidator");
- var inputs = jQuery( "#selectedDataElements input[type=hidden]" );
-
- dataElementValidators.children().remove();
-
- jQuery.each(inputs, function(i, item ){
- dataElementValidators.append('<option value="' + item.value + '" selected="selected">' + item.value + '</option>');
- });
-}
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/updateDataElementForm.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/updateDataElementForm.js 2011-04-11 13:46:07 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/javascript/updateDataElementForm.js 2011-04-24 15:50:02 +0000
@@ -1,8 +1,6 @@
jQuery(document).ready( function() {
validation2( 'updateDataElementForm', function( form ) { form.submit(); }, {
'beforeValidateHandler': function() {
- getDataElementIdsForValidate();
- getFactors();
setFieldValue( 'submitCategoryComboId', getFieldValue( 'selectedCategoryComboId' ) );
setFieldValue( 'submitValueType', getFieldValue( 'valueType' ) );
},
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/updateDataElementForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/updateDataElementForm.vm 2011-03-30 11:04:12 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-datadictionary/src/main/webapp/dhis-web-maintenance-datadictionary/updateDataElementForm.vm 2011-04-24 15:50:02 +0000
@@ -5,11 +5,7 @@
checkValueIsExist( "shortName", "validateDataElement.action", {id:getFieldValue('id')});
checkValueIsExist( "alternativeName", "validateDataElement.action", {id:getFieldValue('id')});
- #if ( $calculatedDataElement )
- toggleCDEForm();
- #else
- updateAggreationOperation( getFieldValue('valueType') );
- #end
+ updateAggreationOperation( getFieldValue('valueType') );
});
var previousName = '$encoder.jsEscape( $dataElement.name, "'" )';
@@ -124,7 +120,7 @@
<tr #if( $calculatedDataElement ) style="display:none" #end >
<td><label for="selectedCategoryComboId">$i18n.getString( "category_combo" ) <em title="$i18n.getString( 'required' )" class="required">*</em></label></td>
<td>
- <select id="selectedCategoryComboId" style="min-width:20em" onchange="changeCategory(this.value)">
+ <select id="selectedCategoryComboId" style="min-width:20em">
#foreach( $dataElementCategoryCombo in $dataElementCategoryCombos )
<option value="$dataElementCategoryCombo.id" #if( $dataElementCategoryCombo.id == $dataElement.categoryCombo.id ) selected="selected" #end>$encoder.htmlEncode( $dataElementCategoryCombo.name )</option>
#end
@@ -132,82 +128,6 @@
<input type="hidden" id="submitCategoryComboId" name="selectedCategoryComboId"/>
</td>
</tr>
- #if ( $calculatedDataElement )
- <tr>
- <td style="height:10px"></td>
- </tr>
- <tr>
- <td><label for="calculated">$i18n.getString( "calculated" )</label></td>
- <td><input type="checkbox" id="calculated" name="calculated" checked="checked" disabled="disabled"/></td>
- </tr>
- #end
-</table>
-
-#if ( $calculatedDataElement )
-<div id="calculatedContainer" style="border:1px solid #808080; padding:10px;">
- <table>
- <tr>
- <td><label for="saved">$i18n.getString('saved')</label>
- <input type="checkbox" id="saved" name="saved" value="true" #if( $calculatedDataElement.saved ) checked="checked" #end/>
- </td>
- </tr>
- <tr>
- <td style="height:10px"></td>
- </tr>
- <tr>
- <th>$i18n.getString( "available_dataelements" )</td>
- </tr>
- <tr>
- <td>
- <select id="dataElementGroupId" name="dataElementGroupId" onchange="getDataElements( this.options[this.selectedIndex].value, 'int', true )" style="width:30em">
- <option value="[select]" selected="selected">[ $i18n.getString( "select_dataelementgroup" ) ]</option>
- <option value="$ALL">[ $i18n.getString( "all_dataelements" ) ]</option>
- #foreach ( $group in $dataElementGroups )
- <option value="$group.id">$group.name</option>
- #end
- </select><br/>
- <select id="availableDataElements" size="5" multiple="multiple" style="width:30em">
- #foreach( $dataElement in $dataElements )
- <option value="$dataElement.id" title="$dataElement.name">$dataElement.name</option>
- #end
- </select>
- </td>
- </tr>
- <tr>
- <td>
- <input id="selectOneButton" type="button" value="$i18n.getString('add_selected')" title="$i18n.getString('add_selected')" onclick="addCDEDataElements()" style="width:120px"/><input
- id="deselectAllButton" type="button" value="$i18n.getString('remove_all')" title="$i18n.getString('remove_all')" onclick="removeCDEDataElements()" style="width:120px"/>
- </td>
- </tr>
- <tr>
- <th style="width:450px">$i18n.getString( "selected_dataelements" )</th>
- <td><select id="selectedDEValidator" multiple="multiple" name="selectedDEValidator" style="display:none"></select></td>
- </tr>
- <tr>
- <td>
- <table id="selectedDataElements" style="min-width:450px">
- <tr>
- <td style="font-weight:bold;">$i18n.getString( "data_element" )</td>
- <td style="font-weight:bold;">$i18n.getString( "factor" )</td>
- <td style="font-weight:bold;">$i18n.getString( "remove" )</td>
- </tr>
- #set($i = 0)
- #foreach ( $operand in $operands )
- <tr>
- <td>$operand.operandName<input type="hidden" name="dataElementIds" value="$operand.operandId"></td>
- <td><input type="text" name="factors$i" value="$factorMap.get($operand.operandId)"/></td>
- <td><button type="button" title="$i18n.getString('remove_all')" onclick="removeCDEDataElement( this )"><img src="../images/delete.png" alt="$i18n.getString('delete_icon')"/></button></td>
- </tr>
- #set($i = $i + 1)
- #end
- </table>
- </td>
- </tr>
- </table>
-</div>
-#end
-
-<table>
<tr>
<td style="height:10px" colspan="2"></td>
</tr>
=== modified file 'dhis-2/dhis-web/dhis-web-reporting/src/main/java/org/hisp/dhis/reporting/exp/MetaDataExportAction.java'
--- dhis-2/dhis-web/dhis-web-reporting/src/main/java/org/hisp/dhis/reporting/exp/MetaDataExportAction.java 2011-03-23 02:40:08 +0000
+++ dhis-2/dhis-web/dhis-web-reporting/src/main/java/org/hisp/dhis/reporting/exp/MetaDataExportAction.java 2011-04-24 15:50:02 +0000
@@ -107,7 +107,6 @@
params.setCategoryOptions( null );
params.setCategoryOptionCombos( null );
params.setDataElements( null );
- params.setCalculatedDataElements( null );
params.setDataElementGroups( null );
params.setDataElementGroupSets( null );
params.setIndicators( null );
Follow ups