mirror of
https://github.com/abap2xlsx/abap2xlsx.git
synced 2025-05-04 23:19:45 +08:00
+ worksheet columns right-to-left (#911)
fix #890 Co-authored-by: sandraros <sandra.rossi@gmail.com> Co-authored-by: Lars Hvam <larshp@hotmail.com>
This commit is contained in:
parent
41196fd58a
commit
6532e0e0b5
|
@ -2212,6 +2212,7 @@ CLASS zcl_excel_reader_2007 IMPLEMENTATION.
|
||||||
zoomscalenormal TYPE string,
|
zoomscalenormal TYPE string,
|
||||||
workbookviewid TYPE string,
|
workbookviewid TYPE string,
|
||||||
showrowcolheaders TYPE string,
|
showrowcolheaders TYPE string,
|
||||||
|
righttoleft TYPE string,
|
||||||
END OF lty_sheetview.
|
END OF lty_sheetview.
|
||||||
|
|
||||||
TYPES: BEGIN OF lty_mergecell,
|
TYPES: BEGIN OF lty_mergecell,
|
||||||
|
@ -2728,6 +2729,10 @@ CLASS zcl_excel_reader_2007 IMPLEMENTATION.
|
||||||
ls_sheetview-showgridlines = abap_false.
|
ls_sheetview-showgridlines = abap_false.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
io_worksheet->set_show_gridlines( ls_sheetview-showgridlines ).
|
io_worksheet->set_show_gridlines( ls_sheetview-showgridlines ).
|
||||||
|
IF ls_sheetview-righttoleft = lc_xml_attr_true
|
||||||
|
OR ls_sheetview-righttoleft = lc_xml_attr_true_int.
|
||||||
|
io_worksheet->zif_excel_sheet_properties~set_right_to_left( abap_true ).
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
|
||||||
"Add merge cell information
|
"Add merge cell information
|
||||||
|
|
|
@ -667,6 +667,7 @@ CLASS zcl_excel_worksheet DEFINITION
|
||||||
DATA title TYPE zexcel_sheet_title VALUE 'Worksheet'. "#EC NOTEXT . . . . . . . . . . . . . . . . . . . . . . . . . . . . " .
|
DATA title TYPE zexcel_sheet_title VALUE 'Worksheet'. "#EC NOTEXT . . . . . . . . . . . . . . . . . . . . . . . . . . . . " .
|
||||||
DATA upper_cell TYPE zexcel_s_cell_data .
|
DATA upper_cell TYPE zexcel_s_cell_data .
|
||||||
DATA mt_ignored_errors TYPE mty_th_ignored_errors.
|
DATA mt_ignored_errors TYPE mty_th_ignored_errors.
|
||||||
|
DATA right_to_left TYPE abap_bool.
|
||||||
|
|
||||||
METHODS calculate_cell_width
|
METHODS calculate_cell_width
|
||||||
IMPORTING
|
IMPORTING
|
||||||
|
@ -4260,6 +4261,11 @@ CLASS zcl_excel_worksheet IMPLEMENTATION.
|
||||||
ENDMETHOD. "ZIF_EXCEL_SHEET_PRINTSETTINGS~SET_PRINT_REPEAT_ROWS
|
ENDMETHOD. "ZIF_EXCEL_SHEET_PRINTSETTINGS~SET_PRINT_REPEAT_ROWS
|
||||||
|
|
||||||
|
|
||||||
|
METHOD zif_excel_sheet_properties~get_right_to_left.
|
||||||
|
result = right_to_left.
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD zif_excel_sheet_properties~get_style.
|
METHOD zif_excel_sheet_properties~get_style.
|
||||||
IF zif_excel_sheet_properties~style IS NOT INITIAL.
|
IF zif_excel_sheet_properties~style IS NOT INITIAL.
|
||||||
ep_style = zif_excel_sheet_properties~style.
|
ep_style = zif_excel_sheet_properties~style.
|
||||||
|
@ -4283,6 +4289,11 @@ CLASS zcl_excel_worksheet IMPLEMENTATION.
|
||||||
ENDMETHOD. "ZIF_EXCEL_SHEET_PROPERTIES~INITIALIZE
|
ENDMETHOD. "ZIF_EXCEL_SHEET_PROPERTIES~INITIALIZE
|
||||||
|
|
||||||
|
|
||||||
|
METHOD zif_excel_sheet_properties~set_right_to_left.
|
||||||
|
me->right_to_left = right_to_left.
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD zif_excel_sheet_properties~set_style.
|
METHOD zif_excel_sheet_properties~set_style.
|
||||||
zif_excel_sheet_properties~style = ip_style.
|
zif_excel_sheet_properties~style = ip_style.
|
||||||
ENDMETHOD. "ZIF_EXCEL_SHEET_PROPERTIES~SET_STYLE
|
ENDMETHOD. "ZIF_EXCEL_SHEET_PROPERTIES~SET_STYLE
|
||||||
|
|
|
@ -4088,6 +4088,10 @@ CLASS zcl_excel_writer_2007 IMPLEMENTATION.
|
||||||
lo_element_2->set_attribute_ns( name = lc_xml_attr_zoomscalesheetview
|
lo_element_2->set_attribute_ns( name = lc_xml_attr_zoomscalesheetview
|
||||||
value = lv_value ).
|
value = lv_value ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
IF io_worksheet->zif_excel_sheet_properties~get_right_to_left( ) EQ abap_true.
|
||||||
|
lo_element_2->set_attribute_ns( name = 'rightToLeft'
|
||||||
|
value = '1' ).
|
||||||
|
ENDIF.
|
||||||
lo_element_2->set_attribute_ns( name = lc_xml_attr_workbookviewid
|
lo_element_2->set_attribute_ns( name = lc_xml_attr_workbookviewid
|
||||||
value = '0' ).
|
value = '0' ).
|
||||||
" showGridLines attribute
|
" showGridLines attribute
|
||||||
|
|
|
@ -209,6 +209,7 @@ CLASS zcl_excel_writer_huge_file IMPLEMENTATION.
|
||||||
zoomscalenormal TYPE i,
|
zoomscalenormal TYPE i,
|
||||||
zoomscalepageview TYPE i,
|
zoomscalepageview TYPE i,
|
||||||
zoomscalesheetview TYPE i,
|
zoomscalesheetview TYPE i,
|
||||||
|
righttoleft TYPE i,
|
||||||
workbookviewid TYPE c,
|
workbookviewid TYPE c,
|
||||||
showgridlines TYPE c,
|
showgridlines TYPE c,
|
||||||
showrowcolheaders TYPE c,
|
showrowcolheaders TYPE c,
|
||||||
|
@ -380,6 +381,12 @@ CLASS zcl_excel_writer_huge_file IMPLEMENTATION.
|
||||||
l_worksheet-zoomscalesheetview = io_worksheet->zif_excel_sheet_properties~zoomscale_sheetlayoutview.
|
l_worksheet-zoomscalesheetview = io_worksheet->zif_excel_sheet_properties~zoomscale_sheetlayoutview.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
|
IF io_worksheet->zif_excel_sheet_properties~get_right_to_left( ) EQ abap_true.
|
||||||
|
l_worksheet-righttoleft = lc_one.
|
||||||
|
ELSE.
|
||||||
|
l_worksheet-righttoleft = lc_zero.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
l_worksheet-workbookviewid = lc_zero.
|
l_worksheet-workbookviewid = lc_zero.
|
||||||
|
|
||||||
IF io_worksheet->show_gridlines = abap_true.
|
IF io_worksheet->show_gridlines = abap_true.
|
||||||
|
|
|
@ -48,6 +48,7 @@
|
||||||
<tt:attribute name="zoomScalePageLayoutView" value-ref="WORKSHEET.ZOOMSCALEPAGEVIEW" />
|
<tt:attribute name="zoomScalePageLayoutView" value-ref="WORKSHEET.ZOOMSCALEPAGEVIEW" />
|
||||||
</tt:cond>
|
</tt:cond>
|
||||||
<tt:attribute name="zoomScaleSheetLayoutView" value-ref="WORKSHEET.ZOOMSCALESHEETVIEW" />
|
<tt:attribute name="zoomScaleSheetLayoutView" value-ref="WORKSHEET.ZOOMSCALESHEETVIEW" />
|
||||||
|
<tt:attribute name="rightToLeft" value-ref="WORKSHEET.RIGHTTOLEFT" />
|
||||||
<tt:attribute name="workbookViewId" value-ref="WORKSHEET.WORKBOOKVIEWID" />
|
<tt:attribute name="workbookViewId" value-ref="WORKSHEET.WORKBOOKVIEWID" />
|
||||||
<tt:attribute name="showGridLines" value-ref="WORKSHEET.SHOWGRIDLINES" />
|
<tt:attribute name="showGridLines" value-ref="WORKSHEET.SHOWGRIDLINES" />
|
||||||
<tt:attribute name="showRowColHeaders" value-ref="WORKSHEET.SHOWROWCOLHEADERS" />
|
<tt:attribute name="showRowColHeaders" value-ref="WORKSHEET.SHOWROWCOLHEADERS" />
|
||||||
|
|
|
@ -25,9 +25,15 @@ INTERFACE zif_excel_sheet_properties
|
||||||
DATA hide_columns_from TYPE zexcel_cell_column_alpha .
|
DATA hide_columns_from TYPE zexcel_cell_column_alpha .
|
||||||
|
|
||||||
METHODS initialize .
|
METHODS initialize .
|
||||||
|
METHODS get_right_to_left
|
||||||
|
RETURNING
|
||||||
|
VALUE(result) TYPE abap_bool.
|
||||||
METHODS get_style
|
METHODS get_style
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(ep_style) TYPE zexcel_cell_style .
|
VALUE(ep_style) TYPE zexcel_cell_style .
|
||||||
|
METHODS set_right_to_left
|
||||||
|
IMPORTING
|
||||||
|
!right_to_left TYPE abap_bool .
|
||||||
METHODS set_style
|
METHODS set_style
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!ip_style TYPE zexcel_cell_style .
|
!ip_style TYPE zexcel_cell_style .
|
||||||
|
|
Loading…
Reference in New Issue
Block a user