From: Yegor Kozlov Date: Sat, 2 Mar 2013 11:38:09 +0000 (+0000) Subject: Bugzilla 54436: Fixed metadata for GETPIVOTDATA function X-Git-Tag: 3.10-beta1~52 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=38774b82a807e0155926405aed9cac7a0d14fc8b;p=poi.git Bugzilla 54436: Fixed metadata for GETPIVOTDATA function git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1451875 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFBugs.java b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFBugs.java index 4c55cca900..76e7a36e98 100644 --- a/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFBugs.java +++ b/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFBugs.java @@ -26,6 +26,10 @@ import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.openxml4j.opc.OPCPackage; import org.apache.poi.openxml4j.opc.PackagePart; import org.apache.poi.openxml4j.opc.PackagingURIHelper; +import org.apache.poi.ss.formula.WorkbookEvaluator; +import org.apache.poi.ss.formula.eval.ErrorEval; +import org.apache.poi.ss.formula.eval.ValueEval; +import org.apache.poi.ss.formula.functions.Function; import org.apache.poi.ss.usermodel.BaseTestBugzillaIssues; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellStyle; @@ -1339,4 +1343,17 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues { assertEquals(259.0, a1Value, 0.0); } + public void test54436(){ + Workbook workbook = XSSFTestDataSamples.openSampleWorkbook("54436.xlsx"); + if(!WorkbookEvaluator.getSupportedFunctionNames().contains("GETPIVOTDATA")){ + Function func = new Function() { + public ValueEval evaluate(ValueEval[] args, int srcRowIndex, int srcColumnIndex) { + return ErrorEval.NA; + } + }; + + WorkbookEvaluator.registerFunction("GETPIVOTDATA", func); + } + workbook.getCreationHelper().createFormulaEvaluator().evaluateAll(); + } } diff --git a/src/resources/main/org/apache/poi/ss/formula/function/functionMetadata.txt b/src/resources/main/org/apache/poi/ss/formula/function/functionMetadata.txt index 277d229a82..36775c859d 100644 --- a/src/resources/main/org/apache/poi/ss/formula/function/functionMetadata.txt +++ b/src/resources/main/org/apache/poi/ss/formula/function/functionMetadata.txt @@ -271,13 +271,13 @@ 350 ISPMT 4 4 V V V V V 351 DATEDIF 3 3 V V V V 352 DATESTRING 1 1 V V -353 NUMBERSTRING 2 2 V V V -354 ROMAN 1 2 V V V -# New Built-In Sheet Functions in BIFF8 -358 GETPIVOTDATA 2 30 -359 HYPERLINK 1 2 V V V -360 PHONETIC 1 1 V R -361 AVERAGEA 1 30 V R ... +353 NUMBERSTRING 2 2 V V V +354 ROMAN 1 2 V V V +# New Built-In Sheet Functions in BIFF8 +358 GETPIVOTDATA 2 30 V V R ... +359 HYPERLINK 1 2 V V V +360 PHONETIC 1 1 V R +361 AVERAGEA 1 30 V R ... 362 MAXA 1 30 V R ... 363 MINA 1 30 V R ... 364 STDEVPA 1 30 V R ... diff --git a/test-data/spreadsheet/54436.xlsx b/test-data/spreadsheet/54436.xlsx new file mode 100644 index 0000000000..4f113b8b71 Binary files /dev/null and b/test-data/spreadsheet/54436.xlsx differ