ZK Spreadsheet 3.8 Release Notes

The 1st embeddable Ajax spreadsheet for Java Web application!


Released on May 6, 2015.


ZK Spreadsheet is an embeddable Ajax spreadsheet that delivers rich functionalities of Excel within browsers using pure Java without the need for any plugins.

Version 3.8 is an upgrade release introducing new features including the display vertical text, 90 degree text orientation, show table data models from excel and many more!



Feature Highlights




What's New

  • New Features Tracker
    • ZSS-698: Support validation dialog
    • ZSS-855: Support import/export Table data model in XLSX file
    • ZSS-872: Support automatically saving the book model periodically
    • ZSS-883: Make Format Dialog be customized easier
    • ZSS-897: Zssapp should support alert when close window without saving
    • ZSS-901: Improve the filter's usability
    • ZSS-915: Display the indent text in a cell
    • ZSS-918: Support to display vertical text
    • ZSS-923: Support dirty check for book
    • ZSS-939: Changing cell style doesn't trigger formula recalculation
    • ZSS-940: Support removing GA code for EE customer version
    • ZSS-942: Support notification at menu bar for automatic data saving
    • ZSS-944: Support 90/-90 degree Text orientation,
    • ZSS-945: Optimize calling FormatEngine#format when rendering the Spreadsheet
    • ZSS-958: Auto row height should support for client side calculation
    • ZSS-960: Support evaluate formula with Table expressions
    • ZSS-962: SUBTOTAL function should suport ignore hidden cell for subfunction 101 to 111
    • ZSS-963: Support text indent with toolbar button
    • ZSS-964: Support text orientation with dialog
    • ZSS-966: Support change Table name
    • ZSS-967: Support change Table's column name
    • ZSS-973: Hidden rows and columns should not be printed in the exported PDF
    • ZSS-974: Export fill pattern to PDF file
    • ZSS-975: Export bold text to PDF file
    • ZSS-977: Support showing Tables
    • ZSS-981: Support parameters verification of data validation
    • ZSS-982: Add a parameter to show/hide chart when the data source is in hidden columns and rows
    • ZSS-985: Support delete a whole Table Row or a whole Table Column.
    • ZSS-986: Support insert whole Table row or whole Table column.
    • ZSS-988: Support auto filter on Table
    • ZSS-989: Support auto-categorization of formulas in Table's Totals Rows.
    • ZSS-991: Support all built-in TableStyles
    • ZSS-1001: Support clear a Table
    • ZSS-1002: Support copy table related formula from inside table to outside table and vice versa
    • ZSS-1014: Support EOMONTH function
  • Bugs fixed
    • ZSS-808: Auto changing height shouldn't be treated as custom value
    • ZSS-838: Spreadsheet crashes when using autofilter with large amount of rows
    • ZSS-890: After select a sheet on sheet bar, selected sheet doesn't show in viewport
    • ZSS-907: Cannot prevent user to add a new sheet
    • ZSS-908: Cannot prevent user to rename a sheet with disableUserAction
    • ZSS-910: Problem referencing a cell with formula in same position of other file
    • ZSS-914: java.lang.IndexOutOfBoundsException on HSSFRow.getRowStyle()
    • ZSS-916: ZSS doesn't display space character in a cell with wrapped text
    • ZSS-917: ZSS doesn't display a long text across cells with background colors
    • ZSS-919: Missing top border
    • ZSS-920: Unexpected onCtrlKey request is sent to server when using ZSS JSF
    • ZSS-924: JS Error showed in console when ZSS in JSF has no excel source file.
    • ZSS-927: Problem with cell's format after merge cells in frozen column
    • ZSS-928: Setting fit width and height into one page doesn't print gridline and headings
    • ZSS-933: Server console shows "evaluation stack not empty" when load page
    • ZSS-934: Data validations are not visible after switching to another sheet
    • ZSS-935: Data filter show error window if the data contains #N/A or #DIV/0
    • ZSS-936: Friend focus should use new event type instead of model event
    • ZSS-937: Hiding column and row shouldn't cause js error when switching sheets
    • ZSS-938: It shouldn't show tiny part of header's title when hidden column header
    • ZSS-941: zss.wpd file is loaded even if spreadsheet component is not used
    • ZSS-943: Turn off filter shouldn't cause NPE
    • ZSS-946: Cannot upload a file in zssapp
    • ZSS-947: Cannot upload a file with a print area
    • ZSS-948: The top border of the first row is incorrectly covered by the column heading.
    • ZSS-951: Cell overflow should consider indent case
    • ZSS-952: Too many columns with custom width causes incorrectly rendering
    • ZSS-953: Filter button does not properly rendered when scroll into view
    • ZSS-954: Filter button does not properly rendered when change selected sheet
    • ZSS-956: Zssapp exported Excel filename extension should be xlsx
    • ZSS-957: setCellStyle() should not clears a formula result cache
    • ZSS-959: Spreadsheet shouldn't crash when using BaseWidget
    • ZSS-970: Zssapp crashed during editing
    • ZSS-978: Formula parameters in dataValidation shouldn't change valid value
    • ZSS-979: Data validation for a whole row or column should work
    • ZSS-980: Data validation in range should consider clear case
    • ZSS-983: Rename Table then Rename column, the column name in formula inside table should change accordingly
    • ZSS-984: Should not be able to delete the row if the row contains Table Header or across rows of two Tables
    • ZSS-990: Should NOT be able to set DataValidation on Table's total Rows
    • ZSS-994: Data validation with date should work
    • ZSS-996: Cannot scroll rows when mouse pointer is over freezing columns
    • ZSS-1005: formula editing adds arbitrary cell references
    • ZSS-1007: Hide rows shouldn't cause java exception
    • ZSS-1008: Should show frozen pane
    • ZSS-1009: NPE on import
    • ZSS-1010: IndexOutOfBoundsException when export the file
    • ZSS-1011: org.zkoss.zss.model.InvalidFormulaException
    • ZSS-1012: Should export customHeight on Row with cells
    • ZSS-1013: Should be able to refer Table of another sheet
    • ZSS-1016: Should not export default style to Row.
    • ZSS-1017: wrap + Indention is not correct rendered
    • ZSS-1018: Color and decoration of a hyperlink in cell is not correctly displayed
    • ZSS-1019: Should no show Filter button if hiddenButton is set to true
    • ZSS-1022: NPE when load file with theme
    • ZSS-1024: range + range should return a single double value
    • ZSS-1026: Filter button should clickable when selection box on the cell
    • ZSS-1027: Setting a row background color causes exported xlsx to have every row contains that background color
    • ZSS-1029: Cells with background color only shows for cells containing data when exporting to PDF
    • ZSS-1030: Exported PDF's cell border shouldn't be broken
    • ZSS-1031: Fail to export a PDF when set repeating rows title
    • ZSS-1032: Multiple copied Cell case across frozen panel causes js error
    • ZSS-1033: Print heading in smaller default row height
    • ZSS-1034: Resize column causes js error
    • ZSS-1035: Should repeat column titles when exporting to PDF
    • ZSS-1036: Fail to export a file with repeating row title to a PDF
    • ZSS-1038: Saving file shouldn't cause NPE
    • ZSS-1040: Focus mark shouldn't be mis-alignment with grid line
    • ZSS-1041: Linked text should show underline
    • ZSS-1042: focus() doesn't work as expected
    • ZSS-1043: Friend focus mark does not show in frozen panel
    • ZSS-1045: Mouse click doesn't work on a focus mark
    • ZSS-1046: Paste multiple invalid formulas from notepad into cells show infinite warning message
    • ZSS-1047: Cell text is incorrect after inserting column
    • ZSS-1049: When sheet move, the corresponding formula does not update
  • Upgrade Note
    • ZK Spreadsheet 3.8 is suggested to use with ZK 7.0.5.2.
    • Default period for automatically saving in zssapp is 15 minutes.
    • Zssapp supports saving all in-memory saved book when server is shutting down.
    • org.zkoss.zss.model.SCellStyle.BorderType has been moved to org.zkoss.zss.model.SBorder.BorderType; thus APIs that pass the BorderType as a parameter will have to be modified accordingly.
    • org.zkoss.zss.model.SCellStyle.FillPattern has been moved to org.zkoss.zss.model.SFill.FillPattern; thus APIs that pass the FillPattern as a parameter will have to be modified accordingly.