Class CalculationChain


  • public class CalculationChain
    extends POIXMLDocumentPart
    The cells in a workbook can be calculated in different orders depending on various optimizations and dependencies. The calculation chain object specifies the order in which the cells in a workbook were last calculated.
    Author:
    Yegor Kozlov
    • Constructor Detail

      • CalculationChain

        public CalculationChain()
      • CalculationChain

        public CalculationChain​(PackagePart part)
                         throws java.io.IOException
        Throws:
        java.io.IOException
        Since:
        POI 3.14-Beta1
    • Method Detail

      • readFrom

        public void readFrom​(java.io.InputStream is)
                      throws java.io.IOException
        Throws:
        java.io.IOException
      • writeTo

        public void writeTo​(java.io.OutputStream out)
                     throws java.io.IOException
        Throws:
        java.io.IOException
      • commit

        protected void commit()
                       throws java.io.IOException
        Description copied from class: POIXMLDocumentPart
        Save the content in the underlying package part. Default implementation is empty meaning that the package part is left unmodified.

        Sub-classes should override and add logic to marshal the "model" into Ooxml4J.

        For example, the code saving a generic XML entry may look as follows:

         protected void commit() throws IOException {
           PackagePart part = getPackagePart();
           OutputStream out = part.getOutputStream();
           XmlObject bean = getXmlBean(); //the "model" which holds changes in memory
           bean.save(out, DEFAULT_XML_OPTIONS);
           out.close();
         }
         
        Overrides:
        commit in class POIXMLDocumentPart
        Throws:
        java.io.IOException - a subclass may throw an IOException if the changes can't be committed
      • getCTCalcChain

        public org.openxmlformats.schemas.spreadsheetml.x2006.main.CTCalcChain getCTCalcChain()
      • removeItem

        public void removeItem​(int sheetId,
                               java.lang.String ref)
        Remove a formula reference from the calculation chain
        Parameters:
        sheetId - the sheet Id of a sheet the formula belongs to.
        ref - A1 style reference to the cell containing the formula.