Examples of FormulaParser


Examples of org.apache.poi.hssf.model.FormulaParser

 
  private String shiftAllColumnsBy1(String  formula)
  {
    int letUsShiftColumn1By1Column=1;
   
    FormulaParser parser = new FormulaParser(formula,null);
    parser.parse();

    final Ptg[] ptgs = parser.getRPNPtg();
    for(int i=0; i<ptgs.length; i++)
    {
      Ptg ptg = ptgs[i];
      if (ptg instanceof AreaPtg )
      {
        AreaPtg aptg = (AreaPtg)ptg;
        aptg.setFirstColumn((short)(aptg.getFirstColumn()+letUsShiftColumn1By1Column));
        aptg.setLastColumn((short)(aptg.getLastColumn()+letUsShiftColumn1By1Column));
      }
    }
    String newFormula = parser.toFormulaString(ptgs);
    return newFormula;
  }
View Full Code Here

Examples of org.apache.poi.hssf.model.FormulaParser

            rec.getFormulaRecord().setOptions(( short ) 2);
            rec.getFormulaRecord().setValue(0);
           
            //only set to default if there is no extended format index already set
            if (rec.getXFIndex() == (short)0) rec.setXFIndex(( short ) 0x0f);
            FormulaParser fp = new FormulaParser(formula+";",book);
            fp.parse();
            Ptg[] ptg  = fp.getRPNPtg();
            int   size = 0;
            //System.out.println("got Ptgs " + ptg.length);
            for (int k = 0; k < ptg.length; k++) {
                size += ptg[ k ].getSize();
                rec.getFormulaRecord().pushExpressionToken(ptg[ k ]);
View Full Code Here

Examples of org.apache.poi.hssf.model.FormulaParser

            setCellType(CELL_TYPE_FORMULA,false);
            FormulaRecordAggregate rec = (FormulaRecordAggregate) record;
            rec.getFormulaRecord().setOptions(( short ) 2);
            rec.getFormulaRecord().setValue(0);
            rec.setXFIndex(( short ) 0x0f);
            FormulaParser fp = new FormulaParser(formula+";",book);
            fp.parse();
            Ptg[] ptg  = fp.getRPNPtg();
            int   size = 0;
            //System.out.println("got Ptgs " + ptg.length);
            for (int k = 0; k < ptg.length; k++) {
                size += ptg[ k ].getSize();
                rec.getFormulaRecord().pushExpressionToken(ptg[ k ]);
View Full Code Here

Examples of org.apache.poi.hssf.model.FormulaParser

            frec.setOptions(( short ) 2);
            frec.setValue(0);
           
            //only set to default if there is no extended format index already set
            if (rec.getXFIndex() == (short)0) rec.setXFIndex(( short ) 0x0f);
            FormulaParser fp = new FormulaParser(formula+";",book);
            fp.parse();
            Ptg[] ptg  = fp.getRPNPtg();
            int   size = 0;

            // clear the Ptg Stack
            for (int i=0, iSize=frec.getNumberOfExpressionTokens(); i<iSize; i++) {
                frec.popExpressionToken();
View Full Code Here

Examples of org.apache.poi.hssf.model.FormulaParser

     * This will allow you to generate the Ptgs yourself, if
     *  your needs are more complex than just having the
     *  formula evaluated.
     */
    public static FormulaParser getUnderlyingParser(HSSFWorkbook workbook, String formula) {
      return new FormulaParser(formula, workbook.getWorkbook());
    }
View Full Code Here

Examples of org.apache.poi.hssf.model.FormulaParser

     * @param workbook
     */
    protected static ValueEval internalEvaluate(HSSFCell srcCell, HSSFRow srcRow, HSSFSheet sheet, HSSFWorkbook workbook) {
        int srcRowNum = srcRow.getRowNum();
        short srcColNum = srcCell.getCellNum();
        FormulaParser parser = new FormulaParser(srcCell.getCellFormula(), workbook.getWorkbook());
        parser.parse();
        Ptg[] ptgs = parser.getRPNPtg();
        // -- parsing over --
       

        Stack stack = new Stack();
        for (int i = 0, iSize = ptgs.length; i < iSize; i++) {
View Full Code Here

Examples of org.apache.poi.hssf.model.FormulaParser

     * @param formula
     * @param sheet
     * @param workbook
     */
    void inspectPtgs(String formula) {
        FormulaParser fp = new FormulaParser(formula, workbook.getWorkbook());
        fp.parse();
        Ptg[] ptgs = fp.getRPNPtg();
        System.out.println("<ptg-group>");
        for (int i = 0, iSize = ptgs.length; i < iSize; i++) {
            System.out.println("<ptg>");
            System.out.println(ptgs[i]);
            if (ptgs[i] instanceof OperationPtg) {
View Full Code Here

Examples of org.apache.poi.hssf.record.formula.FormulaParser

            setCellType(CELL_TYPE_FORMULA,false);
            FormulaRecord rec = (FormulaRecord) record;
            rec.setOptions(( short ) 2);
            rec.setValue(0);
            rec.setXFIndex(( short ) 0x0f);
            FormulaParser fp = new FormulaParser(formula+";");
            fp.parse();
            Ptg[] ptg  = fp.getRPNPtg();
            int   size = 0;
            //System.out.println("got Ptgs " + ptg.length);
            for (int k = 0; k < ptg.length; k++) {
                size += ptg[ k ].getSize();
                rec.pushExpressionToken(ptg[ k ]);
View Full Code Here

Examples of org.apache.poi.hssf.record.formula.FormulaParser

        rec.setRow(row);
        rec.setColumn(col);
        rec.setOptions(( short ) 2);
        rec.setValue(0);
        rec.setXFIndex(( short ) 0x0f);
        FormulaParser fp = new FormulaParser(formula);
        fp.parse();
        Ptg[] ptg  = fp.getRPNPtg();
        int   size = 0;

        for (int k = 0; k < ptg.length; k++)
        {
            size += ptg[ k ].getSize();
View Full Code Here

Examples of org.apache.poi.hssf.record.formula.FormulaParser

        rec.setRow(row);
        rec.setColumn(col);
        rec.setOptions(( short ) 2);
        rec.setValue(0);
        rec.setXFIndex(( short ) 0x0f);
        FormulaParser fp = new FormulaParser(formula);
        fp.parse();
        Ptg[] ptg  = fp.getRPNPtg();
        int   size = 0;

        for (int k = 0; k < ptg.length; k++)
        {
            size += ptg[ k ].getSize();
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.