Revision 45162 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.db/org.gvsig.fmap.dal.db.jdbc/src/main/java/org/gvsig/fmap/dal/store/jdbc2/spi/operations/CountOperation.java

View differences:

CountOperation.java
30 30
import java.util.List;
31 31
import org.apache.commons.lang3.StringUtils;
32 32
import org.gvsig.expressionevaluator.Code;
33
import org.gvsig.expressionevaluator.Expression;
33 34
import org.gvsig.expressionevaluator.ExpressionBuilder;
34 35
import static org.gvsig.expressionevaluator.ExpressionBuilder.FUNCTION_LET;
35 36
import org.gvsig.expressionevaluator.ExpressionUtils;
36 37
import org.gvsig.fmap.dal.SQLBuilder.SelectBuilder;
37 38
import org.gvsig.fmap.dal.exception.DataException;
39
import org.gvsig.fmap.dal.expressionevaluator.FeatureAttributeEmulatorExpression;
40
import org.gvsig.fmap.dal.feature.EditableFeatureAttributeDescriptor;
38 41
import org.gvsig.fmap.dal.feature.FeatureQuery;
39 42
import org.gvsig.fmap.dal.feature.FeatureQueryOrder;
40 43
import org.gvsig.fmap.dal.feature.FeatureType;
......
127 130
                for (String columnName : groupbyColumns) {
128 131
                    if (this.featureType.getAttributeDescriptor(columnName) != null) {
129 132
                        subselect.group_by(expbuilder.column(columnName));
133
                    } else if(this.featureType.getExtraColumns().get(columnName)!=null) {
134
                        EditableFeatureAttributeDescriptor attr = this.featureType.getExtraColumns().get(columnName);
135
                        subselect.group_by(expbuilder.column(columnName));
136
                        Expression exp = ((FeatureAttributeEmulatorExpression) attr.getFeatureAttributeEmulator()).getExpression();
137
                        subselect.column().value(exp.getCode().toValue()).as(columnName);
130 138
                    } else {
131 139
                        try {
132 140
                            try {

Also available in: Unified diff