mirror of
https://github.com/abap2xlsx/abap2xlsx.git
synced 2025-05-05 11:06:15 +08:00
* fix print titles range read and write * remove empty line in method definition
This commit is contained in:
parent
5da41aaab2
commit
6d12c57f27
|
@ -46,15 +46,22 @@ CLASS zcl_excel_common DEFINITION
|
||||||
!e_row TYPE zexcel_cell_row .
|
!e_row TYPE zexcel_cell_row .
|
||||||
CLASS-METHODS convert_range2column_a_row
|
CLASS-METHODS convert_range2column_a_row
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!i_range TYPE clike
|
!i_range TYPE clike
|
||||||
|
!i_allow_1dim_range TYPE abap_bool DEFAULT abap_false
|
||||||
EXPORTING
|
EXPORTING
|
||||||
!e_column_start TYPE zexcel_cell_column_alpha
|
!e_column_start TYPE zexcel_cell_column_alpha
|
||||||
!e_column_end TYPE zexcel_cell_column_alpha
|
!e_column_end TYPE zexcel_cell_column_alpha
|
||||||
!e_row_start TYPE zexcel_cell_row
|
!e_row_start TYPE zexcel_cell_row
|
||||||
!e_row_end TYPE zexcel_cell_row
|
!e_row_end TYPE zexcel_cell_row
|
||||||
!e_sheet TYPE clike
|
!e_sheet TYPE clike
|
||||||
RAISING
|
RAISING
|
||||||
zcx_excel .
|
zcx_excel .
|
||||||
|
CLASS-METHODS convert_columnrow2column_o_row
|
||||||
|
IMPORTING
|
||||||
|
!i_columnrow TYPE clike
|
||||||
|
EXPORTING
|
||||||
|
!e_column TYPE zexcel_cell_column_alpha
|
||||||
|
!e_row TYPE zexcel_cell_row .
|
||||||
CLASS-METHODS date_to_excel_string
|
CLASS-METHODS date_to_excel_string
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!ip_value TYPE d
|
!ip_value TYPE d
|
||||||
|
@ -570,21 +577,43 @@ CLASS ZCL_EXCEL_COMMON IMPLEMENTATION.
|
||||||
REPLACE ALL OCCURRENCES OF '$' IN lv_range WITH ''.
|
REPLACE ALL OCCURRENCES OF '$' IN lv_range WITH ''.
|
||||||
SPLIT lv_range AT ':' INTO lv_columnrow_start lv_columnrow_end.
|
SPLIT lv_range AT ':' INTO lv_columnrow_start lv_columnrow_end.
|
||||||
|
|
||||||
convert_columnrow2column_a_row( EXPORTING
|
IF i_allow_1dim_range = abap_true.
|
||||||
i_columnrow = lv_columnrow_start
|
convert_columnrow2column_o_row( EXPORTING i_columnrow = lv_columnrow_start
|
||||||
IMPORTING
|
IMPORTING e_column = e_column_start
|
||||||
e_column = e_column_start
|
e_row = e_row_start ).
|
||||||
e_row = e_row_start ).
|
convert_columnrow2column_o_row( EXPORTING i_columnrow = lv_columnrow_end
|
||||||
convert_columnrow2column_a_row( EXPORTING
|
IMPORTING e_column = e_column_end
|
||||||
i_columnrow = lv_columnrow_end
|
e_row = e_row_end ).
|
||||||
IMPORTING
|
ELSE.
|
||||||
e_column = e_column_end
|
convert_columnrow2column_a_row( EXPORTING i_columnrow = lv_columnrow_start
|
||||||
e_row = e_row_end ).
|
IMPORTING e_column = e_column_start
|
||||||
|
e_row = e_row_start ).
|
||||||
|
convert_columnrow2column_a_row( EXPORTING i_columnrow = lv_columnrow_end
|
||||||
|
IMPORTING e_column = e_column_end
|
||||||
|
e_row = e_row_end ).
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
e_sheet = unescape_string( lv_sheet ). " Return in unescaped form
|
e_sheet = unescape_string( lv_sheet ). " Return in unescaped form
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
|
METHOD convert_columnrow2column_o_row.
|
||||||
|
|
||||||
|
DATA: row TYPE string.
|
||||||
|
DATA: columnrow TYPE string.
|
||||||
|
|
||||||
|
CLEAR e_column.
|
||||||
|
|
||||||
|
columnrow = i_columnrow.
|
||||||
|
|
||||||
|
FIND REGEX '^(\D*)(\d*)$' IN columnrow SUBMATCHES e_column
|
||||||
|
row.
|
||||||
|
|
||||||
|
e_row = row.
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD date_to_excel_string.
|
METHOD date_to_excel_string.
|
||||||
DATA: lv_date_diff TYPE i.
|
DATA: lv_date_diff TYPE i.
|
||||||
|
|
||||||
|
|
|
@ -842,6 +842,100 @@ CLASS lcl_excel_common_test IMPLEMENTATION.
|
||||||
exp = ''
|
exp = ''
|
||||||
msg = 'Conversion of range failed'
|
msg = 'Conversion of range failed'
|
||||||
level = if_aunit_constants=>critical ).
|
level = if_aunit_constants=>critical ).
|
||||||
|
|
||||||
|
**********************************************************************
|
||||||
|
* 1 Dimensional Ranges - Ros or Cols Only (eg Print Tiles)
|
||||||
|
*
|
||||||
|
lv_range = `$2:$7`.
|
||||||
|
zcl_excel_common=>convert_range2column_a_row( EXPORTING i_range = lv_range
|
||||||
|
i_allow_1dim_range = abap_false
|
||||||
|
IMPORTING e_column_start = lv_column_start
|
||||||
|
e_column_end = lv_column_end
|
||||||
|
e_row_start = lv_row_start
|
||||||
|
e_row_end = lv_row_end
|
||||||
|
e_sheet = lv_sheet ).
|
||||||
|
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = lv_column_start
|
||||||
|
exp = ''
|
||||||
|
msg = 'Conversion of range failed'
|
||||||
|
level = if_aunit_constants=>critical ).
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = lv_column_end
|
||||||
|
exp = ''
|
||||||
|
msg = 'Conversion of range failed'
|
||||||
|
level = if_aunit_constants=>critical ).
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = lv_row_start
|
||||||
|
exp = ''
|
||||||
|
msg = 'Conversion of range failed'
|
||||||
|
level = if_aunit_constants=>critical ).
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = lv_row_end
|
||||||
|
exp = ''
|
||||||
|
msg = 'Conversion of range failed'
|
||||||
|
level = if_aunit_constants=>critical ).
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = lv_sheet
|
||||||
|
exp = ''
|
||||||
|
msg = 'Conversion of range failed'
|
||||||
|
level = if_aunit_constants=>critical ).
|
||||||
|
|
||||||
|
***
|
||||||
|
lv_range = `$2:$7`.
|
||||||
|
zcl_excel_common=>convert_range2column_a_row( EXPORTING i_range = lv_range
|
||||||
|
i_allow_1dim_range = abap_true
|
||||||
|
IMPORTING e_column_start = lv_column_start
|
||||||
|
e_column_end = lv_column_end
|
||||||
|
e_row_start = lv_row_start
|
||||||
|
e_row_end = lv_row_end
|
||||||
|
e_sheet = lv_sheet ).
|
||||||
|
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = lv_column_start
|
||||||
|
exp = ''
|
||||||
|
msg = 'Conversion of range failed'
|
||||||
|
level = if_aunit_constants=>critical ).
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = lv_column_end
|
||||||
|
exp = ''
|
||||||
|
msg = 'Conversion of range failed'
|
||||||
|
level = if_aunit_constants=>critical ).
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = lv_row_start
|
||||||
|
exp = '2'
|
||||||
|
msg = 'Conversion of range failed'
|
||||||
|
level = if_aunit_constants=>critical ).
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = lv_row_end
|
||||||
|
exp = '7'
|
||||||
|
msg = 'Conversion of range failed'
|
||||||
|
level = if_aunit_constants=>critical ).
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = lv_sheet
|
||||||
|
exp = ''
|
||||||
|
msg = 'Conversion of range failed'
|
||||||
|
level = if_aunit_constants=>critical ).
|
||||||
|
***
|
||||||
|
lv_range = `Sheet3!$D:$I`.
|
||||||
|
zcl_excel_common=>convert_range2column_a_row( EXPORTING i_range = lv_range
|
||||||
|
i_allow_1dim_range = abap_true
|
||||||
|
IMPORTING e_column_start = lv_column_start
|
||||||
|
e_column_end = lv_column_end
|
||||||
|
e_row_start = lv_row_start
|
||||||
|
e_row_end = lv_row_end
|
||||||
|
e_sheet = lv_sheet ).
|
||||||
|
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = lv_column_start
|
||||||
|
exp = 'D'
|
||||||
|
msg = 'Conversion of range failed'
|
||||||
|
level = if_aunit_constants=>critical ).
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = lv_column_end
|
||||||
|
exp = 'I'
|
||||||
|
msg = 'Conversion of range failed'
|
||||||
|
level = if_aunit_constants=>critical ).
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = lv_row_start
|
||||||
|
exp = ''
|
||||||
|
msg = 'Conversion of range failed'
|
||||||
|
level = if_aunit_constants=>critical ).
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = lv_row_end
|
||||||
|
exp = ''
|
||||||
|
msg = 'Conversion of range failed'
|
||||||
|
level = if_aunit_constants=>critical ).
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = lv_sheet
|
||||||
|
exp = 'Sheet3'
|
||||||
|
msg = 'Conversion of range failed'
|
||||||
|
level = if_aunit_constants=>critical ).
|
||||||
ENDMETHOD. "convert_range2column_a_row
|
ENDMETHOD. "convert_range2column_a_row
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -2081,6 +2081,7 @@ CLASS zcl_excel_reader_2007 IMPLEMENTATION.
|
||||||
*--------------------------------------------------------------------*
|
*--------------------------------------------------------------------*
|
||||||
WHEN zif_excel_sheet_printsettings=>gcv_print_title_name.
|
WHEN zif_excel_sheet_printsettings=>gcv_print_title_name.
|
||||||
lo_range = <worksheet>-worksheet->add_new_range( ).
|
lo_range = <worksheet>-worksheet->add_new_range( ).
|
||||||
|
lo_range->name = zif_excel_sheet_printsettings=>gcv_print_title_name.
|
||||||
*--------------------------------------------------------------------*
|
*--------------------------------------------------------------------*
|
||||||
* This might be a temporary solution. Maybe ranges get be reworked
|
* This might be a temporary solution. Maybe ranges get be reworked
|
||||||
* to support areas consisting of multiple rectangles
|
* to support areas consisting of multiple rectangles
|
||||||
|
@ -2107,11 +2108,12 @@ CLASS zcl_excel_reader_2007 IMPLEMENTATION.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
* 1st range
|
* 1st range
|
||||||
zcl_excel_common=>convert_range2column_a_row( EXPORTING i_range = lv_range_value_1
|
zcl_excel_common=>convert_range2column_a_row( EXPORTING i_range = lv_range_value_1
|
||||||
IMPORTING e_column_start = lv_col_start_alpha
|
i_allow_1dim_range = abap_true
|
||||||
e_column_end = lv_col_end_alpha
|
IMPORTING e_column_start = lv_col_start_alpha
|
||||||
e_row_start = lv_row_start
|
e_column_end = lv_col_end_alpha
|
||||||
e_row_end = lv_row_end ).
|
e_row_start = lv_row_start
|
||||||
|
e_row_end = lv_row_end ).
|
||||||
IF lv_col_start_alpha IS NOT INITIAL.
|
IF lv_col_start_alpha IS NOT INITIAL.
|
||||||
<worksheet>-worksheet->zif_excel_sheet_printsettings~set_print_repeat_columns( iv_columns_from = lv_col_start_alpha
|
<worksheet>-worksheet->zif_excel_sheet_printsettings~set_print_repeat_columns( iv_columns_from = lv_col_start_alpha
|
||||||
iv_columns_to = lv_col_end_alpha ).
|
iv_columns_to = lv_col_end_alpha ).
|
||||||
|
@ -2122,11 +2124,12 @@ CLASS zcl_excel_reader_2007 IMPLEMENTATION.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
* 2nd range
|
* 2nd range
|
||||||
zcl_excel_common=>convert_range2column_a_row( EXPORTING i_range = lv_range_value_2
|
zcl_excel_common=>convert_range2column_a_row( EXPORTING i_range = lv_range_value_2
|
||||||
IMPORTING e_column_start = lv_col_start_alpha
|
i_allow_1dim_range = abap_true
|
||||||
e_column_end = lv_col_end_alpha
|
IMPORTING e_column_start = lv_col_start_alpha
|
||||||
e_row_start = lv_row_start
|
e_column_end = lv_col_end_alpha
|
||||||
e_row_end = lv_row_end ).
|
e_row_start = lv_row_start
|
||||||
|
e_row_end = lv_row_end ).
|
||||||
IF lv_col_start_alpha IS NOT INITIAL.
|
IF lv_col_start_alpha IS NOT INITIAL.
|
||||||
<worksheet>-worksheet->zif_excel_sheet_printsettings~set_print_repeat_columns( iv_columns_from = lv_col_start_alpha
|
<worksheet>-worksheet->zif_excel_sheet_printsettings~set_print_repeat_columns( iv_columns_from = lv_col_start_alpha
|
||||||
iv_columns_to = lv_col_end_alpha ).
|
iv_columns_to = lv_col_end_alpha ).
|
||||||
|
|
Loading…
Reference in New Issue
Block a user