diff --git a/src/zcl_excel_reader_2007.clas.abap b/src/zcl_excel_reader_2007.clas.abap index 9eef36a..3b577d0 100644 --- a/src/zcl_excel_reader_2007.clas.abap +++ b/src/zcl_excel_reader_2007.clas.abap @@ -2253,12 +2253,15 @@ CLASS zcl_excel_reader_2007 IMPLEMENTATION. END OF lty_column. TYPES: BEGIN OF lty_sheetview, - showgridlines TYPE zexcel_show_gridlines, - tabselected TYPE string, - zoomscalenormal TYPE string, - workbookviewid TYPE string, - showrowcolheaders TYPE string, - righttoleft TYPE string, + showgridlines TYPE zexcel_show_gridlines, + tabselected TYPE string, + zoomscale TYPE string, + zoomscalenormal TYPE string, + zoomscalepagelayoutview TYPE string, + zoomscalesheetlayoutview TYPE string, + workbookviewid TYPE string, + showrowcolheaders TYPE string, + righttoleft TYPE string, END OF lty_sheetview. TYPES: BEGIN OF lty_mergecell, @@ -2805,7 +2808,10 @@ CLASS zcl_excel_reader_2007 IMPLEMENTATION. OR ls_sheetview-righttoleft = lc_xml_attr_true_int. io_worksheet->zif_excel_sheet_properties~set_right_to_left( abap_true ). ENDIF. - + io_worksheet->zif_excel_sheet_properties~zoomscale = ls_sheetview-zoomscale. + io_worksheet->zif_excel_sheet_properties~zoomscale_normal = ls_sheetview-zoomscalenormal. + io_worksheet->zif_excel_sheet_properties~zoomscale_pagelayoutview = ls_sheetview-zoomscalepagelayoutview. + io_worksheet->zif_excel_sheet_properties~zoomscale_sheetlayoutview = ls_sheetview-zoomscalesheetlayoutview. "Add merge cell information lo_ixml_mergecells = lo_ixml_worksheet->get_elements_by_tag_name_ns( name = 'mergeCell' uri = namespace-main ). diff --git a/src/zcl_excel_writer_2007.clas.locals_imp.abap b/src/zcl_excel_writer_2007.clas.locals_imp.abap index 988607c..7e01e73 100644 --- a/src/zcl_excel_writer_2007.clas.locals_imp.abap +++ b/src/zcl_excel_writer_2007.clas.locals_imp.abap @@ -327,15 +327,17 @@ CLASS lcl_create_xl_sheet IMPLEMENTATION. value = '0' ). ENDIF. " Zoom scale - IF o_worksheet->zif_excel_sheet_properties~zoomscale GT 400. - o_worksheet->zif_excel_sheet_properties~zoomscale = 400. - ELSEIF o_worksheet->zif_excel_sheet_properties~zoomscale LT 10. - o_worksheet->zif_excel_sheet_properties~zoomscale = 10. + IF o_worksheet->zif_excel_sheet_properties~zoomscale NE 0. + IF o_worksheet->zif_excel_sheet_properties~zoomscale GT 400. + o_worksheet->zif_excel_sheet_properties~zoomscale = 400. + ELSEIF o_worksheet->zif_excel_sheet_properties~zoomscale LT 10. + o_worksheet->zif_excel_sheet_properties~zoomscale = 10. + ENDIF. + lv_value = o_worksheet->zif_excel_sheet_properties~zoomscale. + CONDENSE lv_value. + lo_element_2->set_attribute_ns( name = lc_xml_attr_zoomscale + value = lv_value ). ENDIF. - lv_value = o_worksheet->zif_excel_sheet_properties~zoomscale. - CONDENSE lv_value. - lo_element_2->set_attribute_ns( name = lc_xml_attr_zoomscale - value = lv_value ). IF o_worksheet->zif_excel_sheet_properties~zoomscale_normal NE 0. IF o_worksheet->zif_excel_sheet_properties~zoomscale_normal GT 400. o_worksheet->zif_excel_sheet_properties~zoomscale_normal = 400.