Examples of FormulaEvaluator


Examples of org.apache.poi.ss.usermodel.FormulaEvaluator

      }
    }   
  }
 
  private void reCalculateWorkbook(Workbook wb){
    FormulaEvaluator evaluator = wb.getCreationHelper().createFormulaEvaluator();
    for(int sheetNum = 0; sheetNum < wb.getNumberOfSheets(); sheetNum++) {
        Sheet sheet = wb.getSheetAt(sheetNum);
        for(Row r : sheet) {
            for(Cell c : r) {
                if(c.getCellType() == Cell.CELL_TYPE_FORMULA) {
                    evaluator.evaluateFormulaCell(c);
                }
            }
        }
    }
  }
View Full Code Here

Examples of org.apache.poi.ss.usermodel.FormulaEvaluator

                               List<? extends DataListener> listeners ) {
        int maxRows = sheet.getLastRowNum();

        CellRangeAddress[] mergedRanges = getMergedCells( sheet );
        DataFormatter formatter = new DataFormatter( Locale.ENGLISH );
        FormulaEvaluator formulaEvaluator = sheet.getWorkbook().getCreationHelper().createFormulaEvaluator();

        for ( int i = 0; i <= maxRows; i++ ) {
            Row row = sheet.getRow( i );
            int lastCellNum = row != null ? row.getLastCellNum() : 0;
            newRow( listeners, i, lastCellNum );
View Full Code Here

Examples of org.apache.poi.ss.usermodel.FormulaEvaluator

    assertNotNull(mainWorkbook);
    assertNotNull(sourceWorkbook);
  }

  public void testMissingWorkbookMissing() throws IOException {
    FormulaEvaluator evaluator = mainWorkbook.getCreationHelper().createFormulaEvaluator();
   
    Sheet lSheet = mainWorkbook.getSheetAt(0);
    Row lARow = lSheet.getRow(0);
    Cell lA1Cell = lARow.getCell(0);
   
    assertEquals(Cell.CELL_TYPE_FORMULA, lA1Cell.getCellType());
    try {
      evaluator.evaluateFormulaCell(lA1Cell);
      fail("Missing external workbook reference exception expected!");
    }catch(RuntimeException re) {
      assertTrue("Unexpected exception: " + re, re.getMessage().indexOf(SOURCE_DUMMY_WORKBOOK_FILENAME) != -1);
    }
  }
View Full Code Here

Examples of org.apache.poi.ss.usermodel.FormulaEvaluator

        assertEquals(10.0d, lA1Cell.getNumericCellValue(), 0.00001d);
        assertEquals("POI rocks!", lB1Cell.getStringCellValue());
        assertEquals(true, lC1Cell.getBooleanCellValue());
   
        // Evaluate
    FormulaEvaluator evaluator = mainWorkbook.getCreationHelper().createFormulaEvaluator();
        evaluator.setIgnoreMissingWorkbooks(true);

    assertEquals(Cell.CELL_TYPE_NUMERIC, evaluator.evaluateFormulaCell(lA1Cell));
    assertEquals(Cell.CELL_TYPE_STRING,  evaluator.evaluateFormulaCell(lB1Cell));
    assertEquals(Cell.CELL_TYPE_BOOLEAN, evaluator.evaluateFormulaCell(lC1Cell));

    assertEquals(10.0d, lA1Cell.getNumericCellValue(), 0.00001d);
    assertEquals("POI rocks!", lB1Cell.getStringCellValue());
    assertEquals(true, lC1Cell.getBooleanCellValue());
  }
View Full Code Here

Examples of org.apache.poi.ss.usermodel.FormulaEvaluator

   
    assertEquals(Cell.CELL_TYPE_FORMULA, lA1Cell.getCellType());
    assertEquals(Cell.CELL_TYPE_FORMULA, lB1Cell.getCellType());
    assertEquals(Cell.CELL_TYPE_FORMULA, lC1Cell.getCellType());

    FormulaEvaluator lMainWorkbookEvaluator = mainWorkbook.getCreationHelper().createFormulaEvaluator();
    FormulaEvaluator lSourceEvaluator = sourceWorkbook.getCreationHelper().createFormulaEvaluator();
    Map<String,FormulaEvaluator> workbooks = new HashMap<String, FormulaEvaluator>();
    workbooks.put(MAIN_WORKBOOK_FILENAME, lMainWorkbookEvaluator);
    workbooks.put(SOURCE_DUMMY_WORKBOOK_FILENAME, lSourceEvaluator);
    lMainWorkbookEvaluator.setupReferencedWorkbooks(workbooks);
   
View Full Code Here

Examples of org.apache.poi.ss.usermodel.FormulaEvaluator

        new CollaboratingWorkbooksEnvironment(evaluatorsByName, evaluators);
    }
    public static void setupFormulaEvaluator(Map<String,FormulaEvaluator> evaluators) {
        Map<String, WorkbookEvaluator> evaluatorsByName = new HashMap<String, WorkbookEvaluator>(evaluators.size());
        for (String wbName : evaluators.keySet()) {
            FormulaEvaluator eval = evaluators.get(wbName);
            if (eval instanceof WorkbookEvaluatorProvider) {
                evaluatorsByName.put(wbName, ((WorkbookEvaluatorProvider)eval)._getWorkbookEvaluator());
            } else {
                throw new IllegalArgumentException("Formula Evaluator " + eval +
                                                   " provides no WorkbookEvaluator access");
View Full Code Here

Examples of org.apache.poi.ss.usermodel.FormulaEvaluator

 
  public void testGetEvaluator() {
    fixture = new ExcelAntWorkbookUtilTestHelper(
                mortgageCalculatorFileName ) ;
   
    FormulaEvaluator evaluator = fixture.getEvaluator(
                                          mortgageCalculatorFileName ) ;
   
    assertNotNull( evaluator ) ;
   
   
View Full Code Here

Examples of org.apache.poi.ss.usermodel.FormulaEvaluator

  public void testGetEvaluatorXLSX() {
    fixture = new ExcelAntWorkbookUtilTestHelper(
                BuildFileTest.getDataDir() + "/spreadsheet/sample.xlsx") ;
   
    FormulaEvaluator evaluator = fixture.getEvaluator(
        BuildFileTest.getDataDir() + "/spreadsheet/sample.xlsx" ) ;
   
    assertNotNull( evaluator ) ;
   }
View Full Code Here

Examples of org.apache.poi.ss.usermodel.FormulaEvaluator

          Cell cfn = r.createCell(2, Cell.CELL_TYPE_FORMULA);
          cfn.setCellFormula("A1")
          Cell cfs = r.createCell(3, Cell.CELL_TYPE_FORMULA);
          cfs.setCellFormula("B1");
         
          FormulaEvaluator fe = wb.getCreationHelper().createFormulaEvaluator();
          assertEquals(Cell.CELL_TYPE_NUMERIC, fe.evaluate(cfn).getCellType());
          assertEquals(Cell.CELL_TYPE_STRING, fe.evaluate(cfs).getCellType());
          fe.evaluateFormulaCell(cfn);
          fe.evaluateFormulaCell(cfs);
         
          // Now test
          assertEquals(Cell.CELL_TYPE_NUMERIC, cn.getCellType());
          assertEquals(Cell.CELL_TYPE_STRING, cs.getCellType());
          assertEquals(Cell.CELL_TYPE_FORMULA, cfn.getCellType());
View Full Code Here

Examples of org.apache.poi.ss.usermodel.FormulaEvaluator

    @Test
    public void bug49783() throws Exception {
        Workbook wb =  XSSFTestDataSamples.openSampleWorkbook("49783.xlsx");
        Sheet sheet = wb.getSheetAt(0);
        FormulaEvaluator evaluator = wb.getCreationHelper().createFormulaEvaluator();
        Cell cell;

        cell = sheet.getRow(0).getCell(0);
        assertEquals("#REF!*#REF!", cell.getCellFormula());
        assertEquals(Cell.CELL_TYPE_ERROR, evaluator.evaluateInCell(cell).getCellType());
        assertEquals("#REF!", FormulaError.forInt(cell.getErrorCellValue()).getString());

        Name nm1 = wb.getName("sale_1");
        assertNotNull("name sale_1 should be present", nm1);
        assertEquals("Sheet1!#REF!", nm1.getRefersToFormula());
        Name nm2 = wb.getName("sale_2");
        assertNotNull("name sale_2 should be present", nm2);
        assertEquals("Sheet1!#REF!", nm2.getRefersToFormula());

        cell = sheet.getRow(1).getCell(0);
        assertEquals("sale_1*sale_2", cell.getCellFormula());
        assertEquals(Cell.CELL_TYPE_ERROR, evaluator.evaluateInCell(cell).getCellType());
        assertEquals("#REF!", FormulaError.forInt(cell.getErrorCellValue()).getString());
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.