diff --git a/src/zcl_excel_worksheet.clas.abap b/src/zcl_excel_worksheet.clas.abap index 306885b..4941db1 100644 --- a/src/zcl_excel_worksheet.clas.abap +++ b/src/zcl_excel_worksheet.clas.abap @@ -1,8 +1,3 @@ -*----------------------------------------------------------------------* -* CLASS ZCL_EXCEL_WORKSHEET DEFINITION -*----------------------------------------------------------------------* -* -*----------------------------------------------------------------------* CLASS zcl_excel_worksheet DEFINITION PUBLIC CREATE PUBLIC . @@ -465,15 +460,15 @@ CLASS zcl_excel_worksheet DEFINITION zcx_excel . METHODS set_cell IMPORTING - !ip_column TYPE simple - !ip_row TYPE zexcel_cell_row - !ip_value TYPE simple OPTIONAL - !ip_formula TYPE zexcel_cell_formula OPTIONAL - !ip_style TYPE zexcel_cell_style OPTIONAL - !ip_hyperlink TYPE REF TO zcl_excel_hyperlink OPTIONAL - !ip_data_type TYPE zexcel_cell_data_type OPTIONAL - !ip_abap_type TYPE abap_typekind OPTIONAL - !it_rtf TYPE zexcel_t_rtf OPTIONAL + !ip_column TYPE simple + !ip_row TYPE zexcel_cell_row + !ip_value TYPE simple OPTIONAL + !ip_formula TYPE zexcel_cell_formula OPTIONAL + !ip_style TYPE zexcel_cell_style OPTIONAL + !ip_hyperlink TYPE REF TO zcl_excel_hyperlink OPTIONAL + !ip_data_type TYPE zexcel_cell_data_type OPTIONAL + !ip_abap_type TYPE abap_typekind OPTIONAL + !it_rtf TYPE zexcel_t_rtf OPTIONAL !ip_column_formula_id TYPE mty_s_column_formula-id OPTIONAL RAISING zcx_excel . @@ -701,10 +696,10 @@ CLASS zcl_excel_worksheet DEFINITION zcx_excel. METHODS check_rtf IMPORTING - !ip_value TYPE simple + !ip_value TYPE simple VALUE(ip_style) TYPE zexcel_cell_style OPTIONAL CHANGING - !ct_rtf TYPE zexcel_t_rtf + !ct_rtf TYPE zexcel_t_rtf RAISING zcx_excel . METHODS clear_initial_colorxfields @@ -723,13 +718,13 @@ CLASS zcl_excel_worksheet DEFINITION !ep_value_type TYPE abap_typekind . METHODS move_supplied_borders IMPORTING - iv_border_supplied TYPE abap_bool - is_border TYPE zexcel_s_cstyle_border - iv_xborder_supplied TYPE abap_bool - is_xborder TYPE zexcel_s_cstylex_border + iv_border_supplied TYPE abap_bool + is_border TYPE zexcel_s_cstyle_border + iv_xborder_supplied TYPE abap_bool + is_xborder TYPE zexcel_s_cstylex_border CHANGING - cs_complete_style_border TYPE zexcel_s_cstyle_border - cs_complete_stylex_border TYPE zexcel_s_cstylex_border. + cs_complete_style_border TYPE zexcel_s_cstyle_border + cs_complete_stylex_border TYPE zexcel_s_cstylex_border. METHODS print_title_set_range . METHODS update_dimension_range RAISING @@ -738,7 +733,7 @@ ENDCLASS. -CLASS zcl_excel_worksheet IMPLEMENTATION. +CLASS ZCL_EXCEL_WORKSHEET IMPLEMENTATION. METHOD add_comment. @@ -845,7 +840,7 @@ CLASS zcl_excel_worksheet IMPLEMENTATION. dim_mismatch_vkey = 5 dim_mismatch_sema = 6 error_in_sema = 7 - others = 8. + OTHERS = 8. IF sy-subrc <> 0. CASE sy-subrc. WHEN 1. RAISE miss_guide. @@ -3360,42 +3355,6 @@ CLASS zcl_excel_worksheet IMPLEMENTATION. ENDMETHOD. "set_area_formula - METHOD set_area_style. - DATA: ld_row_start TYPE zexcel_cell_row, - ld_row_end TYPE zexcel_cell_row, - ld_column_start_int TYPE zexcel_cell_column, - ld_column_end_int TYPE zexcel_cell_column, - ld_current_column TYPE zexcel_cell_column_alpha, - ld_current_row TYPE zexcel_cell_row. - - MOVE: ip_row_to TO ld_row_end, - ip_row TO ld_row_start. - IF ld_row_end IS INITIAL OR ip_row_to IS NOT SUPPLIED. - ld_row_end = ld_row_start. - ENDIF. - ld_column_start_int = zcl_excel_common=>convert_column2int( ip_column_start ). - ld_column_end_int = zcl_excel_common=>convert_column2int( ip_column_end ). - IF ld_column_end_int IS INITIAL OR ip_column_end IS NOT SUPPLIED. - ld_column_end_int = ld_column_start_int. - ENDIF. - - WHILE ld_column_start_int <= ld_column_end_int. - ld_current_column = zcl_excel_common=>convert_column2alpha( ld_column_start_int ). - ld_current_row = ld_row_start. - WHILE ld_current_row <= ld_row_end. - me->set_cell_style( ip_row = ld_current_row ip_column = ld_current_column - ip_style = ip_style ). - ADD 1 TO ld_current_row. - ENDWHILE. - ADD 1 TO ld_column_start_int. - ENDWHILE. - IF ip_merge IS SUPPLIED AND ip_merge = abap_true. - me->set_merge( ip_column_start = ip_column_start ip_row = ld_row_start - ip_column_end = ld_current_column ip_row_to = ld_row_end ). - ENDIF. - ENDMETHOD. "SET_AREA_STYLE - - METHOD set_area_hyperlink. DATA: ld_row_start TYPE zexcel_cell_row, ld_row_end TYPE zexcel_cell_row, @@ -3442,6 +3401,42 @@ CLASS zcl_excel_worksheet IMPLEMENTATION. ENDMETHOD. "SET_AREA_HYPERLINK + METHOD set_area_style. + DATA: ld_row_start TYPE zexcel_cell_row, + ld_row_end TYPE zexcel_cell_row, + ld_column_start_int TYPE zexcel_cell_column, + ld_column_end_int TYPE zexcel_cell_column, + ld_current_column TYPE zexcel_cell_column_alpha, + ld_current_row TYPE zexcel_cell_row. + + MOVE: ip_row_to TO ld_row_end, + ip_row TO ld_row_start. + IF ld_row_end IS INITIAL OR ip_row_to IS NOT SUPPLIED. + ld_row_end = ld_row_start. + ENDIF. + ld_column_start_int = zcl_excel_common=>convert_column2int( ip_column_start ). + ld_column_end_int = zcl_excel_common=>convert_column2int( ip_column_end ). + IF ld_column_end_int IS INITIAL OR ip_column_end IS NOT SUPPLIED. + ld_column_end_int = ld_column_start_int. + ENDIF. + + WHILE ld_column_start_int <= ld_column_end_int. + ld_current_column = zcl_excel_common=>convert_column2alpha( ld_column_start_int ). + ld_current_row = ld_row_start. + WHILE ld_current_row <= ld_row_end. + me->set_cell_style( ip_row = ld_current_row ip_column = ld_current_column + ip_style = ip_style ). + ADD 1 TO ld_current_row. + ENDWHILE. + ADD 1 TO ld_column_start_int. + ENDWHILE. + IF ip_merge IS SUPPLIED AND ip_merge = abap_true. + me->set_merge( ip_column_start = ip_column_start ip_row = ld_row_start + ip_column_end = ld_current_column ip_row_to = ld_row_end ). + ENDIF. + ENDMETHOD. "SET_AREA_STYLE + + METHOD set_cell. DATA: lv_column TYPE zexcel_cell_column, @@ -3539,7 +3534,7 @@ CLASS zcl_excel_worksheet IMPLEMENTATION. lv_value = zcl_excel_common=>number_to_excel_string( ip_value = ). ENDIF. - WHEN cl_abap_typedescr=>typekind_float OR cl_abap_typedescr=>typekind_packed or + WHEN cl_abap_typedescr=>typekind_float OR cl_abap_typedescr=>typekind_packed OR cl_abap_typedescr=>typekind_decfloat OR cl_abap_typedescr=>typekind_decfloat16 OR cl_abap_typedescr=>typekind_decfloat34. @@ -3987,7 +3982,6 @@ CLASS zcl_excel_worksheet IMPLEMENTATION. DATA: lo_tabdescr TYPE REF TO cl_abap_structdescr, lr_data TYPE REF TO data, - ls_header TYPE x030l, lt_dfies TYPE ddfields, lv_row_int TYPE zexcel_cell_row, lv_column_int TYPE zexcel_cell_column, @@ -4006,8 +4000,6 @@ CLASS zcl_excel_worksheet IMPLEMENTATION. lo_tabdescr ?= cl_abap_structdescr=>describe_by_data_ref( lr_data ). - ls_header = lo_tabdescr->get_ddic_header( ). - lt_dfies = lo_tabdescr->get_ddic_field_list( ). * It is better to loop column by column diff --git a/src/zcl_excel_worksheet.clas.testclasses.abap b/src/zcl_excel_worksheet.clas.testclasses.abap index 3b101c6..6117e58 100644 --- a/src/zcl_excel_worksheet.clas.testclasses.abap +++ b/src/zcl_excel_worksheet.clas.testclasses.abap @@ -4,41 +4,20 @@ CLASS zcl_excel_worksheet DEFINITION LOCAL FRIENDS CLASS lcl_excel_worksheet_test DEFINITION FOR TESTING RISK LEVEL HARMLESS - DURATION SHORT -. -*? -*? -*? -*?lcl_Excel_Worksheet_Test -*? -*?f_Cut -*? -*?ZCL_EXCEL_WORKSHEET -*? -*? -*?X -*? -*?X -*? -*?X -*? -*?X -*? -*? -*? -*? + DURATION SHORT. + PRIVATE SECTION. * ================ DATA: - F_CUT TYPE REF TO ZCL_EXCEL_WORKSHEET. "class under test + f_cut TYPE REF TO zcl_excel_worksheet. "class under test - CLASS-METHODS: CLASS_SETUP. - CLASS-METHODS: CLASS_TEARDOWN. - METHODS: SETUP. - METHODS: TEARDOWN. - METHODS: SET_MERGE FOR TESTING. - METHODS: DELETE_MERGE FOR TESTING. - METHODS: GET_DIMENSION_RANGE FOR TESTING. + CLASS-METHODS: class_setup. + CLASS-METHODS: class_teardown. + METHODS: setup. + METHODS: teardown. + METHODS: set_merge FOR TESTING. + METHODS: delete_merge FOR TESTING. + METHODS: get_dimension_range FOR TESTING. ENDCLASS. "lcl_Excel_Worksheet_Test @@ -71,390 +50,391 @@ CLASS ltc_check_cell_column_formula DEFINITION FOR TESTING zcx_excel. DATA: mt_column_formulas TYPE zcl_excel_worksheet=>mty_th_column_formula, - c_messages LIKE zcl_excel_worksheet=>c_messages. + c_messages LIKE zcl_excel_worksheet=>c_messages. ENDCLASS. -CLASS LCL_EXCEL_WORKSHEET_TEST IMPLEMENTATION. +CLASS lcl_excel_worksheet_test IMPLEMENTATION. * ============================================== - METHOD CLASS_SETUP. + METHOD class_setup. * =================== ENDMETHOD. "class_Setup - METHOD CLASS_TEARDOWN. + METHOD class_teardown. * ====================== ENDMETHOD. "class_Teardown - METHOD SETUP. + METHOD setup. * ============= - DATA LO_EXCEL TYPE REF TO ZCL_EXCEL. + DATA lo_excel TYPE REF TO zcl_excel. - CREATE OBJECT LO_EXCEL. + CREATE OBJECT lo_excel. - CREATE OBJECT F_CUT - EXPORTING IP_EXCEL = LO_EXCEL. + CREATE OBJECT f_cut + EXPORTING + ip_excel = lo_excel. ENDMETHOD. "setup - METHOD TEARDOWN. + METHOD teardown. * ================ ENDMETHOD. "teardown - METHOD SET_MERGE. + METHOD set_merge. * ==================== - DATA LT_MERGE TYPE STRING_TABLE. - DATA LV_MERGE TYPE STRING. - DATA LV_SIZE TYPE I. - DATA LV_SIZE_NEXT TYPE I. + DATA lt_merge TYPE string_table. + DATA lv_merge TYPE string. + DATA lv_size TYPE i. + DATA lv_size_next TYPE i. * Test 1. Simple test for initial value - LT_MERGE = F_CUT->GET_MERGE( ). - LV_SIZE = LINES( LT_MERGE ). + lt_merge = f_cut->get_merge( ). + lv_size = lines( lt_merge ). - CL_ABAP_UNIT_ASSERT=>ASSERT_EQUALS( - ACT = LV_SIZE - EXP = 0 - MSG = 'Initial state of merge table is not empty' - LEVEL = IF_AUNIT_CONSTANTS=>CRITICAL + cl_abap_unit_assert=>assert_equals( + act = lv_size + exp = 0 + msg = 'Initial state of merge table is not empty' + level = if_aunit_constants=>critical ). * Test 2. Add merge - F_CUT->SET_MERGE( - IP_COLUMN_START = 2 - IP_COLUMN_END = 3 - IP_ROW = 2 - IP_ROW_TO = 3 + f_cut->set_merge( + ip_column_start = 2 + ip_column_end = 3 + ip_row = 2 + ip_row_to = 3 ). - LT_MERGE = F_CUT->GET_MERGE( ). - LV_SIZE_NEXT = LINES( LT_MERGE ). + lt_merge = f_cut->get_merge( ). + lv_size_next = lines( lt_merge ). - CL_ABAP_UNIT_ASSERT=>ASSERT_EQUALS( - ACT = LV_SIZE_NEXT - LV_SIZE - EXP = 1 - MSG = 'Expect add 1 table line when 1 merge added' - LEVEL = IF_AUNIT_CONSTANTS=>CRITICAL + cl_abap_unit_assert=>assert_equals( + act = lv_size_next - lv_size + exp = 1 + msg = 'Expect add 1 table line when 1 merge added' + level = if_aunit_constants=>critical ). * Test 2. Add same merge - LV_SIZE = LV_SIZE_NEXT. + lv_size = lv_size_next. TRY. - F_CUT->SET_MERGE( - IP_COLUMN_START = 2 - IP_COLUMN_END = 3 - IP_ROW = 2 - IP_ROW_TO = 3 - ). - CATCH ZCX_EXCEL. + f_cut->set_merge( + ip_column_start = 2 + ip_column_end = 3 + ip_row = 2 + ip_row_to = 3 + ). + CATCH zcx_excel. ENDTRY. - LT_MERGE = F_CUT->GET_MERGE( ). - LV_SIZE_NEXT = LINES( LT_MERGE ). + lt_merge = f_cut->get_merge( ). + lv_size_next = lines( lt_merge ). - CL_ABAP_UNIT_ASSERT=>ASSERT_EQUALS( - ACT = LV_SIZE_NEXT - LV_SIZE - EXP = 0 - MSG = 'Expect no change when add same merge' - LEVEL = IF_AUNIT_CONSTANTS=>CRITICAL + cl_abap_unit_assert=>assert_equals( + act = lv_size_next - lv_size + exp = 0 + msg = 'Expect no change when add same merge' + level = if_aunit_constants=>critical ). * Test 3. Add one different merge - LV_SIZE = LV_SIZE_NEXT. + lv_size = lv_size_next. - F_CUT->SET_MERGE( - IP_COLUMN_START = 4 - IP_COLUMN_END = 5 - IP_ROW = 2 - IP_ROW_TO = 3 + f_cut->set_merge( + ip_column_start = 4 + ip_column_end = 5 + ip_row = 2 + ip_row_to = 3 ). - LT_MERGE = F_CUT->GET_MERGE( ). - LV_SIZE_NEXT = LINES( LT_MERGE ). + lt_merge = f_cut->get_merge( ). + lv_size_next = lines( lt_merge ). - CL_ABAP_UNIT_ASSERT=>ASSERT_EQUALS( - ACT = LV_SIZE_NEXT - LV_SIZE - EXP = 1 - MSG = 'Expect 1 change when add different merge' - LEVEL = IF_AUNIT_CONSTANTS=>CRITICAL + cl_abap_unit_assert=>assert_equals( + act = lv_size_next - lv_size + exp = 1 + msg = 'Expect 1 change when add different merge' + level = if_aunit_constants=>critical ). * Test 4. Merge added with concrete value #1 - F_CUT->DELETE_MERGE( ). + f_cut->delete_merge( ). - F_CUT->SET_MERGE( - IP_COLUMN_START = 2 - IP_COLUMN_END = 3 - IP_ROW = 2 - IP_ROW_TO = 3 + f_cut->set_merge( + ip_column_start = 2 + ip_column_end = 3 + ip_row = 2 + ip_row_to = 3 ). - LT_MERGE = F_CUT->GET_MERGE( ). - READ TABLE LT_MERGE INTO LV_MERGE INDEX 1. + lt_merge = f_cut->get_merge( ). + READ TABLE lt_merge INTO lv_merge INDEX 1. - CL_ABAP_UNIT_ASSERT=>ASSERT_EQUALS( - ACT = LV_MERGE - EXP = 'B2:C3' - MSG = 'Expect B2:C3' - LEVEL = IF_AUNIT_CONSTANTS=>CRITICAL + cl_abap_unit_assert=>assert_equals( + act = lv_merge + exp = 'B2:C3' + msg = 'Expect B2:C3' + level = if_aunit_constants=>critical ). * Test 5. Merge added with concrete value #2 - F_CUT->DELETE_MERGE( ). + f_cut->delete_merge( ). - F_CUT->SET_MERGE( - IP_COLUMN_START = 4 - IP_COLUMN_END = 5 - IP_ROW = 4 - IP_ROW_TO = 5 + f_cut->set_merge( + ip_column_start = 4 + ip_column_end = 5 + ip_row = 4 + ip_row_to = 5 ). - LT_MERGE = F_CUT->GET_MERGE( ). - READ TABLE LT_MERGE INTO LV_MERGE INDEX 1. + lt_merge = f_cut->get_merge( ). + READ TABLE lt_merge INTO lv_merge INDEX 1. - CL_ABAP_UNIT_ASSERT=>ASSERT_EQUALS( - ACT = LV_MERGE - EXP = 'D4:E5' - MSG = 'Expect D4:E5' - LEVEL = IF_AUNIT_CONSTANTS=>CRITICAL + cl_abap_unit_assert=>assert_equals( + act = lv_merge + exp = 'D4:E5' + msg = 'Expect D4:E5' + level = if_aunit_constants=>critical ). ENDMETHOD. - METHOD DELETE_MERGE. + METHOD delete_merge. * ==================== - DATA LT_MERGE TYPE STRING_TABLE. - DATA LV_MERGE TYPE STRING. - DATA LV_SIZE TYPE I. - DATA LV_INDEX TYPE I. + DATA lt_merge TYPE string_table. + DATA lv_merge TYPE string. + DATA lv_size TYPE i. + DATA lv_index TYPE i. * Test 1. Simple test delete all merges - F_CUT->SET_MERGE( - IP_COLUMN_START = 2 - IP_COLUMN_END = 3 - IP_ROW = 2 - IP_ROW_TO = 3 + f_cut->set_merge( + ip_column_start = 2 + ip_column_end = 3 + ip_row = 2 + ip_row_to = 3 ). - F_CUT->DELETE_MERGE( ). - LT_MERGE = F_CUT->GET_MERGE( ). - LV_SIZE = LINES( LT_MERGE ). + f_cut->delete_merge( ). + lt_merge = f_cut->get_merge( ). + lv_size = lines( lt_merge ). - CL_ABAP_UNIT_ASSERT=>ASSERT_EQUALS( - ACT = LV_SIZE - EXP = 0 - MSG = 'Expect merge table with 1 line fully cleared' - LEVEL = IF_AUNIT_CONSTANTS=>CRITICAL + cl_abap_unit_assert=>assert_equals( + act = lv_size + exp = 0 + msg = 'Expect merge table with 1 line fully cleared' + level = if_aunit_constants=>critical ). * Test 2. Simple test delete all merges DO 10 TIMES. - F_CUT->SET_MERGE( - IP_COLUMN_START = 2 + SY-INDEX * 2 - IP_COLUMN_END = 3 + SY-INDEX * 2 - IP_ROW = 2 + SY-INDEX * 2 - IP_ROW_TO = 3 + SY-INDEX * 2 + f_cut->set_merge( + ip_column_start = 2 + sy-index * 2 + ip_column_end = 3 + sy-index * 2 + ip_row = 2 + sy-index * 2 + ip_row_to = 3 + sy-index * 2 ). ENDDO. - F_CUT->DELETE_MERGE( ). - LT_MERGE = F_CUT->GET_MERGE( ). - LV_SIZE = LINES( LT_MERGE ). + f_cut->delete_merge( ). + lt_merge = f_cut->get_merge( ). + lv_size = lines( lt_merge ). - CL_ABAP_UNIT_ASSERT=>ASSERT_EQUALS( - ACT = LV_SIZE - EXP = 0 - MSG = 'Expect merge table with few lines fully cleared' - LEVEL = IF_AUNIT_CONSTANTS=>CRITICAL + cl_abap_unit_assert=>assert_equals( + act = lv_size + exp = 0 + msg = 'Expect merge table with few lines fully cleared' + level = if_aunit_constants=>critical ). * Test 3. Delete concrete merge with success DO 4 TIMES. - LV_INDEX = SY-INDEX. + lv_index = sy-index. - F_CUT->DELETE_MERGE( ). + f_cut->delete_merge( ). - F_CUT->SET_MERGE( - IP_COLUMN_START = 2 - IP_COLUMN_END = 3 - IP_ROW = 2 - IP_ROW_TO = 3 + f_cut->set_merge( + ip_column_start = 2 + ip_column_end = 3 + ip_row = 2 + ip_row_to = 3 ). - CASE LV_INDEX. - WHEN 1. F_CUT->DELETE_MERGE( IP_CELL_COLUMN = 2 IP_CELL_ROW = 2 ). - WHEN 2. F_CUT->DELETE_MERGE( IP_CELL_COLUMN = 2 IP_CELL_ROW = 3 ). - WHEN 3. F_CUT->DELETE_MERGE( IP_CELL_COLUMN = 3 IP_CELL_ROW = 2 ). - WHEN 4. F_CUT->DELETE_MERGE( IP_CELL_COLUMN = 3 IP_CELL_ROW = 3 ). + CASE lv_index. + WHEN 1. f_cut->delete_merge( ip_cell_column = 2 ip_cell_row = 2 ). + WHEN 2. f_cut->delete_merge( ip_cell_column = 2 ip_cell_row = 3 ). + WHEN 3. f_cut->delete_merge( ip_cell_column = 3 ip_cell_row = 2 ). + WHEN 4. f_cut->delete_merge( ip_cell_column = 3 ip_cell_row = 3 ). ENDCASE. - LT_MERGE = F_CUT->GET_MERGE( ). - LV_SIZE = LINES( LT_MERGE ). + lt_merge = f_cut->get_merge( ). + lv_size = lines( lt_merge ). - CL_ABAP_UNIT_ASSERT=>ASSERT_EQUALS( - ACT = LV_SIZE - EXP = 0 - MSG = 'Expect merge table with 1 line fully cleared' - LEVEL = IF_AUNIT_CONSTANTS=>CRITICAL + cl_abap_unit_assert=>assert_equals( + act = lv_size + exp = 0 + msg = 'Expect merge table with 1 line fully cleared' + level = if_aunit_constants=>critical ). ENDDO. * Test 4. Delete concrete merge with fail DO 4 TIMES. - LV_INDEX = SY-INDEX. + lv_index = sy-index. - F_CUT->DELETE_MERGE( ). + f_cut->delete_merge( ). - F_CUT->SET_MERGE( - IP_COLUMN_START = 2 - IP_COLUMN_END = 3 - IP_ROW = 2 - IP_ROW_TO = 3 + f_cut->set_merge( + ip_column_start = 2 + ip_column_end = 3 + ip_row = 2 + ip_row_to = 3 ). - CASE LV_INDEX. - WHEN 1. F_CUT->DELETE_MERGE( IP_CELL_COLUMN = 1 IP_CELL_ROW = 2 ). - WHEN 2. F_CUT->DELETE_MERGE( IP_CELL_COLUMN = 2 IP_CELL_ROW = 1 ). - WHEN 3. F_CUT->DELETE_MERGE( IP_CELL_COLUMN = 4 IP_CELL_ROW = 2 ). - WHEN 4. F_CUT->DELETE_MERGE( IP_CELL_COLUMN = 2 IP_CELL_ROW = 4 ). + CASE lv_index. + WHEN 1. f_cut->delete_merge( ip_cell_column = 1 ip_cell_row = 2 ). + WHEN 2. f_cut->delete_merge( ip_cell_column = 2 ip_cell_row = 1 ). + WHEN 3. f_cut->delete_merge( ip_cell_column = 4 ip_cell_row = 2 ). + WHEN 4. f_cut->delete_merge( ip_cell_column = 2 ip_cell_row = 4 ). ENDCASE. - LT_MERGE = F_CUT->GET_MERGE( ). - LV_SIZE = LINES( LT_MERGE ). + lt_merge = f_cut->get_merge( ). + lv_size = lines( lt_merge ). - CL_ABAP_UNIT_ASSERT=>ASSERT_EQUALS( - ACT = LV_SIZE - EXP = 1 - MSG = 'Expect no merge were deleted' - LEVEL = IF_AUNIT_CONSTANTS=>CRITICAL + cl_abap_unit_assert=>assert_equals( + act = lv_size + exp = 1 + msg = 'Expect no merge were deleted' + level = if_aunit_constants=>critical ). ENDDO. * Test 5. Delete concrete merge #1 - F_CUT->DELETE_MERGE( ). + f_cut->delete_merge( ). - F_CUT->SET_MERGE( - IP_COLUMN_START = 2 - IP_COLUMN_END = 3 - IP_ROW = 2 - IP_ROW_TO = 3 + f_cut->set_merge( + ip_column_start = 2 + ip_column_end = 3 + ip_row = 2 + ip_row_to = 3 ). - F_CUT->SET_MERGE( - IP_COLUMN_START = 4 - IP_COLUMN_END = 5 - IP_ROW = 4 - IP_ROW_TO = 5 + f_cut->set_merge( + ip_column_start = 4 + ip_column_end = 5 + ip_row = 4 + ip_row_to = 5 ). - F_CUT->DELETE_MERGE( IP_CELL_COLUMN = 2 IP_CELL_ROW = 2 ). - LT_MERGE = F_CUT->GET_MERGE( ). - LV_SIZE = LINES( LT_MERGE ). + f_cut->delete_merge( ip_cell_column = 2 ip_cell_row = 2 ). + lt_merge = f_cut->get_merge( ). + lv_size = lines( lt_merge ). - CL_ABAP_UNIT_ASSERT=>ASSERT_EQUALS( - ACT = LV_SIZE - EXP = 1 - MSG = 'Expect we have the one merge' - LEVEL = IF_AUNIT_CONSTANTS=>CRITICAL + cl_abap_unit_assert=>assert_equals( + act = lv_size + exp = 1 + msg = 'Expect we have the one merge' + level = if_aunit_constants=>critical ). - READ TABLE LT_MERGE INTO LV_MERGE INDEX 1. + READ TABLE lt_merge INTO lv_merge INDEX 1. - CL_ABAP_UNIT_ASSERT=>ASSERT_EQUALS( - ACT = LV_MERGE - EXP = 'D4:E5' - MSG = 'Expect delete B2:C3 merge' - LEVEL = IF_AUNIT_CONSTANTS=>CRITICAL + cl_abap_unit_assert=>assert_equals( + act = lv_merge + exp = 'D4:E5' + msg = 'Expect delete B2:C3 merge' + level = if_aunit_constants=>critical ). * Test 6. Delete concrete merge #2 - F_CUT->DELETE_MERGE( ). + f_cut->delete_merge( ). - F_CUT->SET_MERGE( - IP_COLUMN_START = 2 - IP_COLUMN_END = 3 - IP_ROW = 2 - IP_ROW_TO = 3 + f_cut->set_merge( + ip_column_start = 2 + ip_column_end = 3 + ip_row = 2 + ip_row_to = 3 ). - F_CUT->SET_MERGE( - IP_COLUMN_START = 4 - IP_COLUMN_END = 5 - IP_ROW = 4 - IP_ROW_TO = 5 + f_cut->set_merge( + ip_column_start = 4 + ip_column_end = 5 + ip_row = 4 + ip_row_to = 5 ). - F_CUT->DELETE_MERGE( IP_CELL_COLUMN = 4 IP_CELL_ROW = 4 ). - LT_MERGE = F_CUT->GET_MERGE( ). - LV_SIZE = LINES( LT_MERGE ). + f_cut->delete_merge( ip_cell_column = 4 ip_cell_row = 4 ). + lt_merge = f_cut->get_merge( ). + lv_size = lines( lt_merge ). - CL_ABAP_UNIT_ASSERT=>ASSERT_EQUALS( - ACT = LV_SIZE - EXP = 1 - MSG = 'Expect we have the one merge' - LEVEL = IF_AUNIT_CONSTANTS=>CRITICAL + cl_abap_unit_assert=>assert_equals( + act = lv_size + exp = 1 + msg = 'Expect we have the one merge' + level = if_aunit_constants=>critical ). - READ TABLE LT_MERGE INTO LV_MERGE INDEX 1. + READ TABLE lt_merge INTO lv_merge INDEX 1. - CL_ABAP_UNIT_ASSERT=>ASSERT_EQUALS( - ACT = LV_MERGE - EXP = 'B2:C3' - MSG = 'Expect delete D4:E5 merge' - LEVEL = IF_AUNIT_CONSTANTS=>CRITICAL + cl_abap_unit_assert=>assert_equals( + act = lv_merge + exp = 'B2:C3' + msg = 'Expect delete D4:E5 merge' + level = if_aunit_constants=>critical ). ENDMETHOD. "delete_Merge - METHOD GET_DIMENSION_RANGE. - CL_ABAP_UNIT_ASSERT=>ASSERT_EQUALS( - ACT = F_CUT->GET_DIMENSION_RANGE( ) - EXP = 'A1' - MSG = 'get_dimension_range inital value' - LEVEL = IF_AUNIT_CONSTANTS=>CRITICAL + METHOD get_dimension_range. + cl_abap_unit_assert=>assert_equals( + act = f_cut->get_dimension_range( ) + exp = 'A1' + msg = 'get_dimension_range inital value' + level = if_aunit_constants=>critical ). - F_CUT->SET_CELL( - IP_ROW = 2 - IP_COLUMN = 3 - IP_VALUE = 'Dummy' + f_cut->set_cell( + ip_row = 2 + ip_column = 3 + ip_value = 'Dummy' ). - F_CUT->SET_CELL( - IP_ROW = 5 - IP_COLUMN = 6 - IP_VALUE = 'Dummy' + f_cut->set_cell( + ip_row = 5 + ip_column = 6 + ip_value = 'Dummy' ). - CL_ABAP_UNIT_ASSERT=>ASSERT_EQUALS( - ACT = F_CUT->GET_DIMENSION_RANGE( ) - EXP = 'C2:F5' - MSG = 'get_dimension_range' - LEVEL = IF_AUNIT_CONSTANTS=>CRITICAL + cl_abap_unit_assert=>assert_equals( + act = f_cut->get_dimension_range( ) + exp = 'C2:F5' + msg = 'get_dimension_range' + level = if_aunit_constants=>critical ). ENDMETHOD. diff --git a/src/zexcel_active_worksheet.dtel.xml b/src/zexcel_active_worksheet.dtel.xml index 17f7d1b..f74077b 100644 --- a/src/zexcel_active_worksheet.dtel.xml +++ b/src/zexcel_active_worksheet.dtel.xml @@ -5,7 +5,6 @@ ZEXCEL_ACTIVE_WORKSHEET E - INT1 16 06 16 @@ -16,7 +15,9 @@ Active Worksheet Active Worksheet E - D + INT1 + 000003 + 000003 diff --git a/src/zexcel_break.dtel.xml b/src/zexcel_break.dtel.xml index 86f2a98..3dc4c99 100644 --- a/src/zexcel_break.dtel.xml +++ b/src/zexcel_break.dtel.xml @@ -5,7 +5,6 @@ ZEXCEL_BREAK E - INT1 15 10 15 @@ -16,7 +15,9 @@ Worksheet Break Worksheet Break E - D + INT1 + 000003 + 000003 diff --git a/src/zexcel_diagonal.dtel.xml b/src/zexcel_diagonal.dtel.xml index acdcecc..e1c314b 100644 --- a/src/zexcel_diagonal.dtel.xml +++ b/src/zexcel_diagonal.dtel.xml @@ -5,7 +5,6 @@ ZEXCEL_DIAGONAL E - INT1 09 09 09 @@ -16,7 +15,9 @@ Fill Type Fill Type E - D + INT1 + 000003 + 000003 diff --git a/src/zexcel_graph_type.dtel.xml b/src/zexcel_graph_type.dtel.xml index 3c3803a..1dd3070 100644 --- a/src/zexcel_graph_type.dtel.xml +++ b/src/zexcel_graph_type.dtel.xml @@ -5,7 +5,6 @@ ZEXCEL_GRAPH_TYPE E - INT1 10 10 15 @@ -16,7 +15,9 @@ Graph type Graph type E - D + INT1 + 000003 + 000003 diff --git a/src/zexcel_indent.dtel.xml b/src/zexcel_indent.dtel.xml index 1b7682a..560b421 100644 --- a/src/zexcel_indent.dtel.xml +++ b/src/zexcel_indent.dtel.xml @@ -5,7 +5,6 @@ ZEXCEL_INDENT E - INT1 13 10 15 @@ -16,7 +15,9 @@ Indent Indent E - D + INT1 + 000003 + 000003 diff --git a/src/zexcel_print_gridlines.dtel.xml b/src/zexcel_print_gridlines.dtel.xml index c4e8110..da8093c 100644 --- a/src/zexcel_print_gridlines.dtel.xml +++ b/src/zexcel_print_gridlines.dtel.xml @@ -5,7 +5,7 @@ ZEXCEL_PRINT_GRIDLINES E - ABAP_BOOLEAN + XSDBOOLEAN 55 10 15 diff --git a/src/zexcel_scalecrop.dtel.xml b/src/zexcel_scalecrop.dtel.xml index 24d9237..665c61c 100644 --- a/src/zexcel_scalecrop.dtel.xml +++ b/src/zexcel_scalecrop.dtel.xml @@ -5,7 +5,7 @@ ZEXCEL_SCALECROP E - ABAP_BOOLEAN + XSDBOOLEAN 55 10 15 diff --git a/src/zexcel_sheet_hidden.dtel.xml b/src/zexcel_sheet_hidden.dtel.xml index b111c07..7eb3e75 100644 --- a/src/zexcel_sheet_hidden.dtel.xml +++ b/src/zexcel_sheet_hidden.dtel.xml @@ -5,7 +5,7 @@ ZEXCEL_SHEET_HIDDEN E - ABAP_BOOLEAN + XSDBOOLEAN 15 10 15 diff --git a/src/zexcel_sheet_paper_size.dtel.xml b/src/zexcel_sheet_paper_size.dtel.xml index 4b21f57..b6fdf2e 100644 --- a/src/zexcel_sheet_paper_size.dtel.xml +++ b/src/zexcel_sheet_paper_size.dtel.xml @@ -5,7 +5,6 @@ ZEXCEL_SHEET_PAPER_SIZE E - INT1 09 09 09 @@ -16,7 +15,9 @@ Fill Type Fill Type E - D + INT1 + 000003 + 000003 diff --git a/src/zexcel_sheet_selected.dtel.xml b/src/zexcel_sheet_selected.dtel.xml index 1f24090..301c74b 100644 --- a/src/zexcel_sheet_selected.dtel.xml +++ b/src/zexcel_sheet_selected.dtel.xml @@ -5,7 +5,7 @@ ZEXCEL_SHEET_SELECTED E - ABAP_BOOLEAN + XSDBOOLEAN 18 10 18 diff --git a/src/zexcel_show_gridlines.dtel.xml b/src/zexcel_show_gridlines.dtel.xml index 4d03ffe..95fc690 100644 --- a/src/zexcel_show_gridlines.dtel.xml +++ b/src/zexcel_show_gridlines.dtel.xml @@ -5,7 +5,7 @@ ZEXCEL_SHOW_GRIDLINES E - ABAP_BOOLEAN + XSDBOOLEAN 55 10 15 diff --git a/src/zexcel_show_rowcolheader.dtel.xml b/src/zexcel_show_rowcolheader.dtel.xml index 340f5ca..b7e4800 100644 --- a/src/zexcel_show_rowcolheader.dtel.xml +++ b/src/zexcel_show_rowcolheader.dtel.xml @@ -5,7 +5,7 @@ ZEXCEL_SHOW_ROWCOLHEADER E - ABAP_BOOLEAN + XSDBOOLEAN 22 10 20 diff --git a/src/zexcel_style_font_family.dtel.xml b/src/zexcel_style_font_family.dtel.xml index e1b735f..0b9e788 100644 --- a/src/zexcel_style_font_family.dtel.xml +++ b/src/zexcel_style_font_family.dtel.xml @@ -5,7 +5,6 @@ ZEXCEL_STYLE_FONT_FAMILY E - INT1 20 10 15 @@ -16,7 +15,9 @@ Font family Font family E - D + INT1 + 000003 + 000003 diff --git a/src/zexcel_style_font_size.dtel.xml b/src/zexcel_style_font_size.dtel.xml index ed6350a..5a2430c 100644 --- a/src/zexcel_style_font_size.dtel.xml +++ b/src/zexcel_style_font_size.dtel.xml @@ -5,7 +5,6 @@ ZEXCEL_STYLE_FONT_SIZE E - INT1 20 10 15 @@ -16,7 +15,9 @@ Font size Font size E - D + INT1 + 000003 + 000003 diff --git a/src/zexcel_text_rotation.dtel.xml b/src/zexcel_text_rotation.dtel.xml index 5d8cf2f..2b57d88 100644 --- a/src/zexcel_text_rotation.dtel.xml +++ b/src/zexcel_text_rotation.dtel.xml @@ -5,7 +5,6 @@ ZEXCEL_TEXT_ROTATION E - INT1 13 10 15 @@ -16,7 +15,9 @@ Text Rotation Text Rotation E - D + INT1 + 000003 + 000003