diff --git a/designer-base/src/main/java/com/fr/design/formula/FormulaPane.java b/designer-base/src/main/java/com/fr/design/formula/FormulaPane.java index f836cd571..3d7fe889c 100644 --- a/designer-base/src/main/java/com/fr/design/formula/FormulaPane.java +++ b/designer-base/src/main/java/com/fr/design/formula/FormulaPane.java @@ -838,7 +838,11 @@ public class FormulaPane extends BasicPane implements KeyListener, UIFormula { public void hunter4Tiny(Tiny tiny) { String statement = tiny.getStatement(); if (StringUtils.isNotBlank(statement) && statement.startsWith(ScriptConstants.DETAIL_TAG)) { - parameterList.add(new Parameter(statement.substring(1))); + if (statement.startsWith(ScriptConstants.SUMMARY_TAG)) { + parameterList.add(new Parameter(statement)); + } else { + parameterList.add(new Parameter(statement.substring(1))); + } } else if (tiny.getClass() == ColumnRowRange.class || tiny.getClass() == SheetIntervalLiteral.class || tiny.getClass() == BlockIntervalLiteral.class) { parameterList.add(new Parameter(tiny.toString())); diff --git a/designer-base/src/main/java/com/fr/design/formula/UnsupportedFormulaScanner.java b/designer-base/src/main/java/com/fr/design/formula/UnsupportedFormulaScanner.java index 343086af5..88f7a24b3 100644 --- a/designer-base/src/main/java/com/fr/design/formula/UnsupportedFormulaScanner.java +++ b/designer-base/src/main/java/com/fr/design/formula/UnsupportedFormulaScanner.java @@ -1,6 +1,7 @@ package com.fr.design.formula; import com.fr.parser.BinaryExpression; +import com.fr.parser.DatasetFunctionCall; import com.fr.parser.FunctionCall; import com.fr.stable.script.Node; @@ -35,6 +36,10 @@ public class UnsupportedFormulaScanner { return false; } } + } else if (node instanceof DatasetFunctionCall) { + DatasetFunctionCall datasetFunctionCall = (DatasetFunctionCall) node; + unSupportFormula = datasetFunctionCall.getSourceName() + "." + datasetFunctionCall.getFnName() + "()"; + return false; } return true; }