If Excel's shared string table (SST) contains the empty string not only at the beginning but also redundantly at a further place, the following bug in the shared string table reader of class ZCL_EXCEL_READER_HUGE_FILE occurs:
Since the sXML reader was not cleared with the beginning of each node, the last read string of the table was carried over into the next string .
Added unit test ```test_shared_string_some_empty``` to reproduce the bug, and fixed it in the way proposed by Kai Walter (see Def-376)
When setting a style for all columns the reader only reads this style for filled columns. The style of the remaining columns is dropped.
Example: You activate border lines for all cells, but you fill only the first three columns. After reading and writing it with ABAP2XLSX, only the first three columns have border lines.
This is fixed by setting the default style here.
ZCL_EXCEL->GET_WORKSHEET_BY_INDEX ( new )
ZCL_EXCEL->SET_ACTIVE_SHEET_INDEX ( Test if worksheet is existing --> raise on error )
ZCL_EXCEL->DELETE_WORKSHEET ( new )
ZCL_EXCEL->DELETE_WORKSHEET_BY_NAME ( new )
ZCL_EXCEL->DELETE_WORKSHEET_BY_INDEX ( new )
ZCL_EXCEL_WRITER_2007->CREATE_XL_WORKBOOK ( Set active sheet to 1 if illegal active sheet is passed )
Added the pull request #350 "Gradient Fill -> writer + demo programs 2 &
34" manually
Fixed ZEXCEL_DEMO report, bug after fix#345
Excel common has a bug, right now I used a quick and really dirty
solution
Class ZCL_EXCEL_READER_2007: Added new method called before creating the stream from the internal zip-represenation to allow child classes to write own data here
Class ZCL_EXCEL_WRITER_XLSM: Reverted redefinition of method "CREATE" and put the vba-relevant coding into the new method just provided in ZCL_EXCEL_READER_2007.slnk
Class ZCL_EXCEL_READER_2007: Inheritance: Added functionality to allow creation of childclasses from ZCL_EXCEL as well if needed
Interface ZIF_EXCEL_READER: Inheritance: Added the new optional parameters to allow childclassed from ZCL_EXCEL to be created when reading an excel file
CLASS ZCL_EXCEL_COMMON : Extended length of internal field - now we'd really need huuuuuuuge formulae before we truncate ( was afraid to switch to string, no time to analyze if that is feasible )
CLASS ZCL_EXCEL_STYLE_COLOR: Added a method to allow creating rgb-colors with integer input instead of hex-input for the colors
Report ZDEMO_EXCEL37: Added line to create output when using alternate writerclass ( was buggy after my extension of the report ), added code to save .xlsm templates as .xlsm when downloading, added set-get-parameter for better handling
Changes:
ZCL_EXCEL_WORKSHEET: New attributes to hold row-outline information
ZCL_EXCEL_WORKSHEET_ROWDIMENSI: Look at those row-outline information. Modified methods that refer to outlining
ZCL_EXCEL_WRITER_2007: Respect new outlining informatino by using the modified methods from rowdimensi, Also corrected an error that occurs if we have leading or trailing empty rows but information stored in rowdimensions
ZDEMO_EXCEL12: Modified Demoreport 12 to demonstrate new outlining method
Allow inheritance to support testing of modified classes w/o having to change the original or to allow customer-specific variations
Changed objects:
ZCL_EXCEL_READER_2007: Added try-catch block to allow reading excelsheets with textfields ( ignore textfields - just read the rest )
ZCL_EXCEL_READER_2007: Added support of reading hyperlinks
ZCL_EXCEL_WRITER_2007: Corrected method CREATE_XL_SHEET_RELS to not look at internal hyperlinks
ZCL_EXCEL: Allow inheritance to test changes on subobjects w/o changing original ( needed for issue 343 for class ZCL_EXCEL_WORKSHEET )
ZCL_EXCEL_WORKSHEET: Allow inheritance, Changed row-dimensions to hashtable, added tabletype for this, changed method GET_ROW_DIMENSION to use hashtable
ZCL_EXCEL_WRITER_XLSM: Allow inheritance
ZDEMO_EXCEL_OUTPUTOPT_INCL: Changed default to "Display", Allow using any writerclass that inherits from ZCL_EXCEL_WRITER_2007
ZDEMO_EXCEL37: Allow passthrough of .xlsm files as well. Allow using any reader or writerclass that inherits from the ZCL_EXCEL_READER_2007 or ZCL_EXCEL_WRITER_2007
ZDEMO_EXCEL41: Test inheritance - demo for inherited ZCL_EXCEL or ZCL_EXCEL_WORKSHEET