Package org.apache.poi.hssf.record.formula

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


                }
                AreaEval ae = new Area2DEval(ap, values);
                stack.push(ae);
            }
            else if (ptgs[i] instanceof Area3DPtg) {
                Area3DPtg a3dp = (Area3DPtg) ptgs[i];
                short row0 = a3dp.getFirstRow();
                short col0 = a3dp.getFirstColumn();
                short row1 = a3dp.getLastRow();
                short col1 = a3dp.getLastColumn();
                HSSFSheet xsheet = workbook.getSheetAt(a3dp.getExternSheetIndex());
                ValueEval[] values = new ValueEval[(row1 - row0 + 1) * (col1 - col0 + 1)];
                for (short x = row0; sheet != null && x < row1 + 1; x++) {
                    HSSFRow row = sheet.getRow(x);
                    for (short y = col0; row != null && y < col1 + 1; y++) {
                        values[(x - row0) * (col1 - col0 + 1) + (y - col0)] =
View Full Code Here


        }

    }

    private Ptg createNewPtg(){
        Ptg ptg = new Area3DPtg();
        field_13_name_definition.push(ptg);

        return ptg;
    }
View Full Code Here

        } else if (oldPtg.getClass() == Ref3DPtg.class){
            externSheetIndex =  ((Ref3DPtg) oldPtg).getExternSheetIndex();
        }

        if (ra.hasRange()) {
            ptg = new Area3DPtg();
            ((Area3DPtg) ptg).setExternSheetIndex(externSheetIndex);
            ((Area3DPtg) ptg).setArea(ref);
            this.setDefinitionTextLength((short)ptg.getSize());
        } else {
            ptg = new Ref3DPtg();
View Full Code Here

            memFuncPtg.setLenRefSubexpression(23);
            ptgs.add(memFuncPtg);
        }
        if (startColumn >= 0)
        {
            Area3DPtg area3DPtg1 = new Area3DPtg();
            area3DPtg1.setExternSheetIndex(externSheetIndex);
            area3DPtg1.setFirstColumn((short)startColumn);
            area3DPtg1.setLastColumn((short)endColumn);
            area3DPtg1.setFirstRow((short)0);
            area3DPtg1.setLastRow((short)0xFFFF);
            ptgs.add(area3DPtg1);
        }
        if (startRow >= 0)
        {
            Area3DPtg area3DPtg2 = new Area3DPtg();
            area3DPtg2.setExternSheetIndex(externSheetIndex);
            area3DPtg2.setFirstColumn((short)0);
            area3DPtg2.setLastColumn((short)0x00FF);
            area3DPtg2.setFirstRow((short)startRow);
            area3DPtg2.setLastRow((short)endRow);
            ptgs.add(area3DPtg2);
        }
        if (settingRowAndColumn)
        {
            UnionPtg unionPtg = new UnionPtg();
View Full Code Here

        r.setReferenceType( LinkedDataRecord.REFERENCE_TYPE_WORKSHEET );
        r.setCustomNumberFormat( false );
        r.setIndexNumberFmtRecord( (short) 0 );
        LinkedDataFormulaField formula = new LinkedDataFormulaField();
        Stack tokens = new Stack();
        Area3DPtg p = new Area3DPtg();
        p.setExternSheetIndex( (short) 0 );
        p.setFirstColumn( (short) 1 );
        p.setLastColumn( (short) 1 );
        p.setFirstRow( (short) 0 );
        p.setLastRow( (short) 31 );
        tokens.add( p );
        formula.setFormulaTokens( tokens );
        r.setFormulaOfLink( formula );
        return r;
    }
View Full Code Here

        r.setReferenceType( LinkedDataRecord.REFERENCE_TYPE_WORKSHEET );
        r.setCustomNumberFormat( false );
        r.setIndexNumberFmtRecord( (short) 0 );
        LinkedDataFormulaField formula = new LinkedDataFormulaField();
        Stack tokens = new Stack();
        Area3DPtg p = new Area3DPtg();
        p.setExternSheetIndex( (short) 0 );
        p.setFirstColumn( (short) 0 );
        p.setLastColumn( (short) 0 );
        p.setFirstRow( (short) 0 );
        p.setLastRow( (short) 31 );
        tokens.add( p );
        formula.setFormulaTokens( tokens );
        r.setFormulaOfLink( formula );
        return r;
    }
View Full Code Here

        {
            ptgs.add(new MemFuncPtg(23)); // TODO - where did constant '23' come from?
        }
        if (startColumn >= 0)
        {
            Area3DPtg area3DPtg1 = new Area3DPtg();
            area3DPtg1.setExternSheetIndex(externSheetIndex);
            area3DPtg1.setFirstColumn((short)startColumn);
            area3DPtg1.setLastColumn((short)endColumn);
            area3DPtg1.setFirstRow((short)0);
            area3DPtg1.setLastRow((short)0xFFFF);
            ptgs.add(area3DPtg1);
        }
        if (startRow >= 0)
        {
            Area3DPtg area3DPtg2 = new Area3DPtg();
            area3DPtg2.setExternSheetIndex(externSheetIndex);
            area3DPtg2.setFirstColumn((short)0);
            area3DPtg2.setLastColumn((short)0x00FF);
            area3DPtg2.setFirstRow((short)startRow);
            area3DPtg2.setLastRow((short)endRow);
            ptgs.add(area3DPtg2);
        }
        if (settingRowAndColumn)
        {
            ptgs.add(UnionPtg.instance);
View Full Code Here

     
      // Sheet 2 is deleted
      assertEquals("Sheet1", b.getSheetName(0));
      assertEquals("Sheet3", b.getSheetName(1));
     
      Area3DPtg ptg;
      NameRecord nr;
      HSSFName n;
     
      /* ======= Name pointing to deleted sheet ====== */
     
      // First at low level
      nr = b.getWorkbook().getNameRecord(0);
      assertEquals("On2", nr.getNameText());
      assertEquals(0, nr.getIndexToSheet());
      assertEquals(1, nr.getExternSheetNumber());
      assertEquals(1, nr.getNameDefinition().size());
     
      ptg = (Area3DPtg)nr.getNameDefinition().get(0);
      assertEquals(1, ptg.getExternSheetIndex());
      assertEquals(0, ptg.getFirstColumn());
      assertEquals(0, ptg.getFirstRow());
      assertEquals(0, ptg.getLastColumn());
      assertEquals(2, ptg.getLastRow());
     
      // Now at high level
      n = b.getNameAt(0);
      assertEquals("On2", n.getNameName());
      assertEquals("", n.getSheetName());
      assertEquals("#REF!$A$1:$A$3", n.getReference());
     
     
      /* ======= Name pointing to 1st sheet ====== */
     
      // First at low level
      nr = b.getWorkbook().getNameRecord(1);
      assertEquals("OnOne", nr.getNameText());
      assertEquals(0, nr.getIndexToSheet());
      assertEquals(0, nr.getExternSheetNumber());
      assertEquals(1, nr.getNameDefinition().size());
     
      ptg = (Area3DPtg)nr.getNameDefinition().get(0);
      assertEquals(0, ptg.getExternSheetIndex());
      assertEquals(0, ptg.getFirstColumn());
      assertEquals(2, ptg.getFirstRow());
      assertEquals(0, ptg.getLastColumn());
      assertEquals(3, ptg.getLastRow());
     
      // Now at high level
      n = b.getNameAt(1);
      assertEquals("OnOne", n.getNameName());
      assertEquals("Sheet1", n.getSheetName());
      assertEquals("Sheet1!$A$3:$A$4", n.getReference());
     
     
      /* ======= Name pointing to 3rd sheet ====== */
     
      // First at low level
      nr = b.getWorkbook().getNameRecord(2);
      assertEquals("OnSheet3", nr.getNameText());
      assertEquals(0, nr.getIndexToSheet());
      assertEquals(2, nr.getExternSheetNumber());
      assertEquals(1, nr.getNameDefinition().size());
     
      ptg = (Area3DPtg)nr.getNameDefinition().get(0);
      assertEquals(2, ptg.getExternSheetIndex());
      assertEquals(0, ptg.getFirstColumn());
      assertEquals(0, ptg.getFirstRow());
      assertEquals(0, ptg.getLastColumn());
      assertEquals(1, ptg.getLastRow());
     
      // Now at high level
      n = b.getNameAt(2);
      assertEquals("OnSheet3", n.getNameName());
      assertEquals("Sheet3", n.getSheetName());
View Full Code Here

    }
    if(cols.isOutOfBounds(0, LAST_VALID_COLUMN_INDEX)) {
      throw new EvalEx(ErrorEval.REF_INVALID);
    }
    if(baseRef.isIs3d()) {
      Area3DPtg a3dp = new Area3DPtg(rows.getFirstIndex(), rows.getLastIndex(),
          cols.getFirstIndex(), cols.getLastIndex(),
          false, false, false, false,
          baseRef.getExternalSheetIndex());
      return HSSFFormulaEvaluator.evaluateArea3dPtg(workbook, a3dp);
    }
View Full Code Here

            AreaReference.generateContiguous(ref);
            this.setDefinitionTextLength((short)0);

            // Add the area reference(s)
          for(int i=0; i<refs.length; i++) {
              ptg = new Area3DPtg();
              ((Area3DPtg) ptg).setExternSheetIndex(externSheetIndex);
              ((Area3DPtg) ptg).setArea(refs[i].formatAsString());
              field_13_name_definition.push(ptg);
              this.setDefinitionTextLength( (short)(getDefinitionLength() + ptg.getSize()) );
          }
View Full Code Here

TOP

Related Classes of org.apache.poi.hssf.record.formula.Area3DPtg

Copyright © 2018 www.massapicom. 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.