Uploaded image for project: 'ZK Spreadsheet'
  1. ZK Spreadsheet
  2. ZSS-621

Delete the cell with a shared formula and export, spreadsheet cannot load the file back correctly

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Normal Normal
    • 2.6.0, 3.0.2
    • 2.6.0, 3.0.2
    • ZSS Component
    • None

      Reproducing Steps

      1. load attached file, shared-formula.xlsx, with zssapp
      2. delete the cell C3
      3. save the file
      4. open it again

      Expected:
      The file is open correctly.

      Actual:
      IllegalStateException is thrown.

      java.lang.IllegalStateException: Master cell of a shared formula with sid=0 was not found
      at org.zkoss.poi.xssf.usermodel.XSSFCell.convertSharedFormula(XSSFCell.java:386)
      at org.zkoss.poi.xssf.usermodel.XSSFCell.getCellFormula(XSSFCell.java:370)
      at org.zkoss.zss.model.sys.impl.BookHelper.evaluate(BookHelper.java:518)
      at org.zkoss.zss.model.sys.impl.BookHelper.getFormatText(BookHelper.java:1073)
      at org.zkoss.zss.ui.impl.XUtils.getFormatText(XUtils.java:343)
      at org.zkoss.zss.ui.impl.CellFormatHelper.getInnerHtmlStyle(CellFormatHelper.java:303)
      at org.zkoss.zss.ui.Spreadsheet$ExtraCtrl.getCellAttr(Spreadsheet.java:3232)
      at org.zkoss.zss.ui.Spreadsheet$ExtraCtrl.getRangeAttrs(Spreadsheet.java:3086)
      at org.zkoss.zss.ui.Spreadsheet.createActiveRange(Spreadsheet.java:1690)
      at org.zkoss.zss.ui.Spreadsheet.renderProperties(Spreadsheet.java:1650)
      at org.zkoss.zk.ui.AbstractComponent.redraw(AbstractComponent.java:1807)
      at org.zkoss.zk.ui.impl.UiVisualizer.redraw(UiVisualizer.java:978)
      at org.zkoss.zk.ui.impl.UiVisualizer.getResponses(UiVisualizer.java:675)
      at org.zkoss.zk.ui.impl.UiEngineImpl.getResponses(UiEngineImpl.java:1420)
      at org.zkoss.zk.ui.impl.UiEngineImpl.execUpdate(UiEngineImpl.java:1232)
      at org.zkoss.zk.au.http.DHtmlUpdateServlet.process(DHtmlUpdateServlet.java:601)
      at org.zkoss.zk.au.http.DHtmlUpdateServlet.doGet(DHtmlUpdateServlet.java:483)
      at org.zkoss.zk.au.http.DHtmlUpdateServlet.doPost(DHtmlUpdateServlet.java:492)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
      at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:686)
      at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:501)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
      at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557)
      at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
      at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)
      at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)
      at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
      at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
      at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
      at org.eclipse.jetty.server.Server.handle(Server.java:370)
      at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
      at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:960)
      at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1021)
      at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865)
      at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
      at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
      at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668)
      at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
      at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
      at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
      at java.lang.Thread.run(Thread.java:662)

      Extra:

      shared-formula-error.xlsx is the file contains the error. (shared formula is deleted)

            paowang paowang
            hawk hawk
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: