Class ExternSheetRecord

All Implemented Interfaces:
org.apache.poi.common.Duplicatable, GenericRecord

public class ExternSheetRecord extends StandardRecord
EXTERNSHEET (0x0017)

A List of Indexes to EXTERNALBOOK (supplemental book) Records

  • Field Details

  • Constructor Details

    • ExternSheetRecord

      public ExternSheetRecord()
    • ExternSheetRecord

      public ExternSheetRecord(ExternSheetRecord other)
    • ExternSheetRecord

      public ExternSheetRecord(RecordInputStream in)
  • Method Details

    • getNumOfRefs

      public int getNumOfRefs()
      Returns:
      number of REF structures
    • addREFRecord

      public void addREFRecord(org.apache.poi.hssf.record.ExternSheetRecord.RefSubRecord rec)
      adds REF struct (ExternSheetSubRecord)
      Parameters:
      rec - REF struct
    • getNumOfREFRecords

      public int getNumOfREFRecords()
      returns the number of REF Records, which is in model
      Returns:
      number of REF records
    • serialize

      public void serialize(LittleEndianOutput out)
    • removeSheet

      public void removeSheet(int sheetIdx)
    • getSid

      public short getSid()
      return the non static version of the id for this record.
      Specified by:
      getSid in class Record
      Returns:
      he id for this record
    • getExtbookIndexFromRefIndex

      public int getExtbookIndexFromRefIndex(int refIndex)
      Parameters:
      refIndex - specifies the n-th refIndex
      Returns:
      the index of the SupBookRecord for this index
    • findRefIndexFromExtBookIndex

      public int findRefIndexFromExtBookIndex(int extBookIndex)
      Parameters:
      extBookIndex - external sheet reference index
      Returns:
      -1 if not found
    • getFirstSheetIndexFromRefIndex

      public int getFirstSheetIndexFromRefIndex(int extRefIndex)
      Returns the first sheet that the reference applies to, or -1 if the referenced sheet can't be found, or -2 if the reference is workbook scoped.
      Parameters:
      extRefIndex - external sheet reference index
      Returns:
      the first sheet that the reference applies to, or -1 if the referenced sheet can't be found, or -2 if the reference is workbook scoped
    • getLastSheetIndexFromRefIndex

      public int getLastSheetIndexFromRefIndex(int extRefIndex)
      Returns the last sheet that the reference applies to, or -1 if the referenced sheet can't be found, or -2 if the reference is workbook scoped. For a single sheet reference, the first and last should be the same.
      Parameters:
      extRefIndex - external sheet reference index
      Returns:
      the last sheet that the reference applies to, or -1 if the referenced sheet can't be found, or -2 if the reference is workbook scoped.
    • addRef

      public int addRef(int extBookIndex, int firstSheetIndex, int lastSheetIndex)
      Add a zero-based reference to a SupBookRecord.

      If the type of the SupBook record is same-sheet referencing, Add-In referencing, DDE data source referencing, or OLE data source referencing, then no scope is specified and this value MUST be -2. Otherwise, the scope must be set as follows:

      1. -2 Workbook-level reference that applies to the entire workbook.
      2. -1 Sheet-level reference.
      3. >=0 Sheet-level reference. This specifies the first sheet in the reference.

        If the SupBook type is unused or external workbook referencing, then this value specifies the zero-based index of an external sheet name, see SupBookRecord.getSheetNames(). This referenced string specifies the name of the first sheet within the external workbook that is in scope. This sheet MUST be a worksheet or macro sheet.

        If the supporting link type is self-referencing, then this value specifies the zero-based index of a BoundSheetRecord record in the workbook stream that specifies the first sheet within the scope of this reference. This sheet MUST be a worksheet or a macro sheet.

      Parameters:
      extBookIndex - the external book block index
      firstSheetIndex - the scope, must be -2 for add-in references
      lastSheetIndex - the scope, must be -2 for add-in references
      Returns:
      index of newly added ref
    • getRefIxForSheet

      public int getRefIxForSheet(int externalBookIndex, int firstSheetIndex, int lastSheetIndex)
    • combine

      public static ExternSheetRecord combine(ExternSheetRecord[] esrs)
    • copy

      public ExternSheetRecord copy()
      Specified by:
      copy in interface org.apache.poi.common.Duplicatable
      Specified by:
      copy in class StandardRecord
    • getGenericRecordType

      public HSSFRecordTypes getGenericRecordType()
      Specified by:
      getGenericRecordType in interface GenericRecord
      Specified by:
      getGenericRecordType in class Record
    • getGenericProperties

      public Map<String,Supplier<?>> getGenericProperties()