From 3cbd06e95239ec34d899d831fd9cfc96ca4933dd Mon Sep 17 00:00:00 2001 From: oblomov-dev <102328295+oblomov-dev@users.noreply.github.com> Date: Sat, 15 Feb 2025 16:01:29 -0300 Subject: [PATCH] refactoring utility and raise exceptions directly (#1749) * refactoring utility and raise exceptions directly * update * update --- src/00/03/z2ui5_cl_util.clas.abap | 7 +- src/00/03/z2ui5_cl_util.clas.testclasses.abap | 125 ---------------- src/00/03/z2ui5_cl_util.clas.xml | 2 +- src/00/03/z2ui5_cl_util_abap.clas.abap | 6 - src/00/03/z2ui5_cl_util_abap.clas.xml | 2 +- src/00/03/z2ui5_cl_util_abap_http.clas.xml | 2 +- ...s_imp.abap => z2ui5_cl_util_msg.clas.abap} | 133 +----------------- .../z2ui5_cl_util_msg.clas.testclasses.abap | 125 ++++++++++++++++ src/00/03/z2ui5_cl_util_msg.clas.xml | 17 +++ src/00/03/z2ui5_cl_util_range.clas.abap | 117 +++++++++++++++ src/00/03/z2ui5_cl_util_range.clas.xml | 16 +++ src/00/03/z2ui5_cx_util_error.clas.xml | 2 +- src/01/02/z2ui5_cl_core_client.clas.abap | 8 +- src/01/02/z2ui5_cl_core_srv_json.clas.abap | 4 +- src/02/z2ui5_cl_xml_view.clas.abap | 14 +- 15 files changed, 304 insertions(+), 276 deletions(-) rename src/00/03/{z2ui5_cl_util.clas.locals_imp.abap => z2ui5_cl_util_msg.clas.abap} (58%) create mode 100644 src/00/03/z2ui5_cl_util_msg.clas.testclasses.abap create mode 100644 src/00/03/z2ui5_cl_util_msg.clas.xml create mode 100644 src/00/03/z2ui5_cl_util_range.clas.abap create mode 100644 src/00/03/z2ui5_cl_util_range.clas.xml diff --git a/src/00/03/z2ui5_cl_util.clas.abap b/src/00/03/z2ui5_cl_util.clas.abap index 282a258a..27fc699a 100644 --- a/src/00/03/z2ui5_cl_util.clas.abap +++ b/src/00/03/z2ui5_cl_util.clas.abap @@ -1398,10 +1398,7 @@ CLASS z2ui5_cl_util IMPLEMENTATION. LOOP AT val INTO DATA(ls_filter). - " TODO: variable is assigned but never used (ABAP cleaner) - DATA lo_range TYPE REF TO lcl_range_to_sql. - - lo_range = NEW #( iv_fieldname = ls_filter-name + DATA(lo_range) = NEW z2ui5_cl_util_range( iv_fieldname = ls_filter-name ir_range = REF #( ls_filter-t_range ) ). ENDLOOP. @@ -1410,7 +1407,7 @@ CLASS z2ui5_cl_util IMPLEMENTATION. METHOD msg_get. - result = lcl_msp_mapper=>msg_get( val ). + result = z2ui5_cl_util_msg=>msg_get( val ). ENDMETHOD. diff --git a/src/00/03/z2ui5_cl_util.clas.testclasses.abap b/src/00/03/z2ui5_cl_util.clas.testclasses.abap index f5a271c7..46784781 100644 --- a/src/00/03/z2ui5_cl_util.clas.testclasses.abap +++ b/src/00/03/z2ui5_cl_util.clas.testclasses.abap @@ -769,128 +769,3 @@ CLASS ltcl_unit_test IMPLEMENTATION. ENDMETHOD. ENDCLASS. - -CLASS ltcl_unit_test_msg_mapper DEFINITION FINAL - FOR TESTING RISK LEVEL HARMLESS DURATION SHORT. - - PRIVATE SECTION. - - METHODS test_bal FOR TESTING RAISING cx_static_check. - METHODS test_cx FOR TESTING RAISING cx_static_check. - METHODS test_bapiret FOR TESTING RAISING cx_static_check. - METHODS test_bapirettab FOR TESTING RAISING cx_static_check. - METHODS test_sy FOR TESTING RAISING cx_static_check. - - -ENDCLASS. - -CLASS ltcl_unit_test_msg_mapper IMPLEMENTATION. - - METHOD test_sy. - - IF sy-sysid = 'ABC'. - RETURN. - ENDIF. - - MESSAGE ID 'NET' TYPE 'I' NUMBER '001' INTO DATA(lv_dummy). - DATA(lt_result) = lcl_msp_mapper=>msg_get( sy ). - - cl_abap_unit_assert=>assert_equals( exp = `NET` - act = lt_result[ 1 ]-id ). - - cl_abap_unit_assert=>assert_equals( exp = `001` - act = lt_result[ 1 ]-no ). - - cl_abap_unit_assert=>assert_equals( exp = `I` - act = lt_result[ 1 ]-type ). - - ENDMETHOD. - - METHOD test_bapiret. - - IF sy-sysid = 'ABC'. - RETURN. - ENDIF. - - DATA(lt_msg) = VALUE bapirettab( - ( type = 'E' id = 'MSG1' number = '001' message = 'An empty Report field causes an empty XML Message to be sent' ) - ). - - DATA(lt_result) = lcl_msp_mapper=>msg_get( lt_msg[ 1 ] ). - - cl_abap_unit_assert=>assert_equals( exp = `MSG1` - act = lt_result[ 1 ]-id ). - - cl_abap_unit_assert=>assert_equals( exp = `001` - act = lt_result[ 1 ]-no ). - - cl_abap_unit_assert=>assert_equals( exp = `E` - act = lt_result[ 1 ]-type ). - - ENDMETHOD. - - METHOD test_bapirettab. - - IF sy-sysid = 'ABC'. - RETURN. - ENDIF. - - DATA(lt_msg) = VALUE bapirettab( - ( type = 'E' id = 'MSG1' number = '001' message = 'An empty Report field causes an empty XML Message to be sent' ) - ( type = 'I' id = 'MSG2' number = '002' message = 'Product already in use' ) ). - - DATA(lt_result) = lcl_msp_mapper=>msg_get( lt_msg ). - - cl_abap_unit_assert=>assert_equals( exp = `MSG1` - act = lt_result[ 1 ]-id ). - - cl_abap_unit_assert=>assert_equals( exp = `001` - act = lt_result[ 1 ]-no ). - - cl_abap_unit_assert=>assert_equals( exp = `E` - act = lt_result[ 1 ]-type ). - - ENDMETHOD. - - METHOD test_cx. - - TRY. - DATA(lv_val) = 1 / 0. - CATCH cx_root INTO DATA(lx). - DATA(lt_result) = lcl_msp_mapper=>msg_get( lx ). - ENDTRY. - - cl_abap_unit_assert=>assert_equals( exp = `E` - act = lt_result[ 1 ]-type ). - - - ENDMETHOD. - - method test_bal. - - TYPES: BEGIN OF ty_log_entry, - msgnumber TYPE n LENGTH 6, " Application Log: Internal Message Serial Number - msgty TYPE c LENGTH 1, " Message Type - msgid TYPE c LENGTH 20, " Message Class - msgno TYPE n LENGTH 3, " Message Number - msgv1 TYPE c LENGTH 50, " Message Variable - msgv2 TYPE c LENGTH 50, " Message Variable - msgv3 TYPE c LENGTH 50, " Message Variable - msgv4 TYPE c LENGTH 50, " Message Variable - msgv1_src TYPE c LENGTH 15, " Origin of a Message Variable - msgv2_src TYPE c LENGTH 15, " Origin of a Message Variable - msgv3_src TYPE c LENGTH 15, " Origin of a Message Variable - msgv4_src TYPE c LENGTH 15, " Origin of a Message Variable - detlevel TYPE c LENGTH 1, " Level of Detail - probclass TYPE c LENGTH 1, " Problem Class - alsort TYPE c LENGTH 3, " Sort Criterion/Grouping - time_stmp TYPE p LENGTH 8 DECIMALS 7, " Message Time Stamp - msg_count TYPE i, " Cumulated Message Count - context TYPE c LENGTH 255, " Context (Generic Placeholder) - params TYPE c LENGTH 255, " Parameters (Generic Placeholder) - msg_txt TYPE string, " Message Text - END OF ty_log_entry. - - endmethod. - -ENDCLASS. diff --git a/src/00/03/z2ui5_cl_util.clas.xml b/src/00/03/z2ui5_cl_util.clas.xml index 2c2b83d2..3f8f50f8 100644 --- a/src/00/03/z2ui5_cl_util.clas.xml +++ b/src/00/03/z2ui5_cl_util.clas.xml @@ -5,7 +5,7 @@ Z2UI5_CL_UTIL E - abap toolkit + util 1 X X diff --git a/src/00/03/z2ui5_cl_util_abap.clas.abap b/src/00/03/z2ui5_cl_util_abap.clas.abap index a8c76223..3b70d402 100644 --- a/src/00/03/z2ui5_cl_util_abap.clas.abap +++ b/src/00/03/z2ui5_cl_util_abap.clas.abap @@ -4,12 +4,6 @@ CLASS z2ui5_cl_util_abap DEFINITION PUBLIC SECTION. - " abap-api - Serving a Release & Version Independent ABAP Layer - " version: '0.0.1'. - " origin: https://github.com/oblomov-dev/abap-api - " author: https://github.com/oblomov-dev - " license: MIT. - TYPES: BEGIN OF ty_s_fix_val, low TYPE string, diff --git a/src/00/03/z2ui5_cl_util_abap.clas.xml b/src/00/03/z2ui5_cl_util_abap.clas.xml index e1061bf2..ffe4e40b 100644 --- a/src/00/03/z2ui5_cl_util_abap.clas.xml +++ b/src/00/03/z2ui5_cl_util_abap.clas.xml @@ -5,7 +5,7 @@ Z2UI5_CL_UTIL_ABAP E - abap api + util - api 1 X X diff --git a/src/00/03/z2ui5_cl_util_abap_http.clas.xml b/src/00/03/z2ui5_cl_util_abap_http.clas.xml index cad31d94..8301de8b 100644 --- a/src/00/03/z2ui5_cl_util_abap_http.clas.xml +++ b/src/00/03/z2ui5_cl_util_abap_http.clas.xml @@ -5,7 +5,7 @@ Z2UI5_CL_UTIL_ABAP_HTTP E - abap api + util - api http 1 X X diff --git a/src/00/03/z2ui5_cl_util.clas.locals_imp.abap b/src/00/03/z2ui5_cl_util_msg.clas.abap similarity index 58% rename from src/00/03/z2ui5_cl_util.clas.locals_imp.abap rename to src/00/03/z2ui5_cl_util_msg.clas.abap index 055b6f5e..9ce598b4 100644 --- a/src/00/03/z2ui5_cl_util.clas.locals_imp.abap +++ b/src/00/03/z2ui5_cl_util_msg.clas.abap @@ -1,125 +1,5 @@ -CLASS lcl_range_to_sql DEFINITION +CLASS z2ui5_cl_util_msg DEFINITION PUBLIC FINAL CREATE PUBLIC. - - PUBLIC SECTION. - - CONSTANTS: BEGIN OF signs, - including TYPE string VALUE 'I', - excluding TYPE string VALUE 'E', - END OF signs. - - CONSTANTS: BEGIN OF options, - equal TYPE string VALUE 'EQ', - not_equal TYPE string VALUE 'NE', - between TYPE string VALUE 'BT', - not_between TYPE string VALUE 'NB', - contains_pattern TYPE string VALUE 'CP', - not_contains_pattern TYPE string VALUE 'NP', - greater_than TYPE string VALUE 'GT', - greater_equal TYPE string VALUE 'GE', - less_equal TYPE string VALUE 'LE', - less_than TYPE string VALUE 'LT', - END OF options. - - METHODS constructor - IMPORTING - iv_fieldname TYPE clike - ir_range TYPE REF TO data. - - METHODS get_sql - RETURNING - VALUE(result) TYPE string. - - PROTECTED SECTION. - DATA mv_fieldname TYPE string. - DATA mr_range TYPE REF TO data. - - CLASS-METHODS quote - IMPORTING - val TYPE clike - RETURNING - VALUE(out) TYPE string. - -ENDCLASS. - - -CLASS lcl_range_to_sql IMPLEMENTATION. - METHOD constructor. - - mr_range = ir_range. - mv_fieldname = |{ to_upper( iv_fieldname ) }|. - - ENDMETHOD. - - METHOD get_sql. - - FIELD-SYMBOLS TYPE STANDARD TABLE. - - ASSIGN me->mr_range->* TO . - - IF xsdbool( IS INITIAL ) = abap_true. - RETURN. - ENDIF. - - result = `(`. - - LOOP AT ASSIGNING FIELD-SYMBOL(). - - ASSIGN COMPONENT 'SIGN' OF STRUCTURE TO FIELD-SYMBOL(). - ASSIGN COMPONENT 'OPTION' OF STRUCTURE TO FIELD-SYMBOL(). - ASSIGN COMPONENT 'LOW' OF STRUCTURE TO FIELD-SYMBOL(). - ASSIGN COMPONENT 'HIGH' OF STRUCTURE TO FIELD-SYMBOL(). - - IF sy-tabix <> 1. - result = |{ result } OR|. - ENDIF. - - IF = signs-excluding. - result = |{ result } NOT|. - ENDIF. - - result = |{ result } { me->mv_fieldname }|. - - CASE . - WHEN options-equal OR - options-not_equal OR - options-greater_than OR - options-greater_equal OR - options-less_equal OR - options-less_than. - result = |{ result } { } { quote( ) }|. - - WHEN options-between. - result = |{ result } BETWEEN { quote( ) } AND { quote( ) }|. - - WHEN options-not_between. - result = |{ result } NOT BETWEEN { quote( ) } AND { quote( ) }|. - - WHEN options-contains_pattern. - TRANSLATE USING '*%'. - result = |{ result } LIKE { quote( ) }|. - - WHEN options-not_contains_pattern. - TRANSLATE USING '*%'. - result = |{ result } NOT LIKE { quote( ) }|. - ENDCASE. - ENDLOOP. - - result = |{ result } )|. - - ENDMETHOD. - - METHOD quote. - out = |'{ replace( val = val - sub = `'` - with = `''` - occ = 0 ) }'|. - ENDMETHOD. -ENDCLASS. - -CLASS lcl_msp_mapper DEFINITION - FINAL CREATE PUBLIC. - PUBLIC SECTION. CLASS-METHODS msg_map IMPORTING @@ -128,19 +8,17 @@ CLASS lcl_msp_mapper DEFINITION is_msg TYPE z2ui5_cl_util=>ty_s_msg RETURNING VALUE(result) TYPE z2ui5_cl_util=>ty_s_msg. - CLASS-METHODS msg_get IMPORTING val TYPE any RETURNING VALUE(result) TYPE z2ui5_cl_util=>ty_t_msg. - ENDCLASS. -CLASS lcl_msp_mapper IMPLEMENTATION. - +CLASS z2ui5_cl_util_msg IMPLEMENTATION. METHOD msg_get. + DATA(lv_kind) = z2ui5_cl_util=>rtti_get_type_kind( val ). CASE lv_kind. @@ -250,10 +128,11 @@ CLASS lcl_msp_mapper IMPLEMENTATION. ENDIF. ENDCASE. - ENDMETHOD. + ENDMETHOD. METHOD msg_map. + result = is_msg. CASE name. WHEN 'ID' OR 'MSGID'. @@ -276,6 +155,6 @@ CLASS lcl_msp_mapper IMPLEMENTATION. result-timestampl = val. ENDCASE. - ENDMETHOD. + ENDMETHOD. ENDCLASS. diff --git a/src/00/03/z2ui5_cl_util_msg.clas.testclasses.abap b/src/00/03/z2ui5_cl_util_msg.clas.testclasses.abap new file mode 100644 index 00000000..d1c37e34 --- /dev/null +++ b/src/00/03/z2ui5_cl_util_msg.clas.testclasses.abap @@ -0,0 +1,125 @@ + +CLASS ltcl_unit_test_msg_mapper DEFINITION FINAL + FOR TESTING RISK LEVEL HARMLESS DURATION SHORT. + + PRIVATE SECTION. + + METHODS test_bal FOR TESTING RAISING cx_static_check. + METHODS test_cx FOR TESTING RAISING cx_static_check. + METHODS test_bapiret FOR TESTING RAISING cx_static_check. + METHODS test_bapirettab FOR TESTING RAISING cx_static_check. + METHODS test_sy FOR TESTING RAISING cx_static_check. + + +ENDCLASS. + +CLASS ltcl_unit_test_msg_mapper IMPLEMENTATION. + + METHOD test_sy. + + IF sy-sysid = 'ABC'. + RETURN. + ENDIF. + + MESSAGE ID 'NET' TYPE 'I' NUMBER '001' INTO DATA(lv_dummy). + DATA(lt_result) = z2ui5_cl_util_msg=>msg_get( sy ). + + cl_abap_unit_assert=>assert_equals( exp = `NET` + act = lt_result[ 1 ]-id ). + + cl_abap_unit_assert=>assert_equals( exp = `001` + act = lt_result[ 1 ]-no ). + + cl_abap_unit_assert=>assert_equals( exp = `I` + act = lt_result[ 1 ]-type ). + + ENDMETHOD. + + METHOD test_bapiret. + + IF sy-sysid = 'ABC'. + RETURN. + ENDIF. + + DATA(lt_msg) = VALUE bapirettab( + ( type = 'E' id = 'MSG1' number = '001' message = 'An empty Report field causes an empty XML Message to be sent' ) + ). + + DATA(lt_result) = z2ui5_cl_util_msg=>msg_get( lt_msg[ 1 ] ). + + cl_abap_unit_assert=>assert_equals( exp = `MSG1` + act = lt_result[ 1 ]-id ). + + cl_abap_unit_assert=>assert_equals( exp = `001` + act = lt_result[ 1 ]-no ). + + cl_abap_unit_assert=>assert_equals( exp = `E` + act = lt_result[ 1 ]-type ). + + ENDMETHOD. + + METHOD test_bapirettab. + + IF sy-sysid = 'ABC'. + RETURN. + ENDIF. + + DATA(lt_msg) = VALUE bapirettab( + ( type = 'E' id = 'MSG1' number = '001' message = 'An empty Report field causes an empty XML Message to be sent' ) + ( type = 'I' id = 'MSG2' number = '002' message = 'Product already in use' ) ). + + DATA(lt_result) = z2ui5_cl_util_msg=>msg_get( lt_msg ). + + cl_abap_unit_assert=>assert_equals( exp = `MSG1` + act = lt_result[ 1 ]-id ). + + cl_abap_unit_assert=>assert_equals( exp = `001` + act = lt_result[ 1 ]-no ). + + cl_abap_unit_assert=>assert_equals( exp = `E` + act = lt_result[ 1 ]-type ). + + ENDMETHOD. + + METHOD test_cx. + + TRY. + DATA(lv_val) = 1 / 0. + CATCH cx_root INTO DATA(lx). + DATA(lt_result) = z2ui5_cl_util_msg=>msg_get( lx ). + ENDTRY. + + cl_abap_unit_assert=>assert_equals( exp = `E` + act = lt_result[ 1 ]-type ). + + + ENDMETHOD. + + method test_bal. + + TYPES: BEGIN OF ty_log_entry, + msgnumber TYPE n LENGTH 6, " Application Log: Internal Message Serial Number + msgty TYPE c LENGTH 1, " Message Type + msgid TYPE c LENGTH 20, " Message Class + msgno TYPE n LENGTH 3, " Message Number + msgv1 TYPE c LENGTH 50, " Message Variable + msgv2 TYPE c LENGTH 50, " Message Variable + msgv3 TYPE c LENGTH 50, " Message Variable + msgv4 TYPE c LENGTH 50, " Message Variable + msgv1_src TYPE c LENGTH 15, " Origin of a Message Variable + msgv2_src TYPE c LENGTH 15, " Origin of a Message Variable + msgv3_src TYPE c LENGTH 15, " Origin of a Message Variable + msgv4_src TYPE c LENGTH 15, " Origin of a Message Variable + detlevel TYPE c LENGTH 1, " Level of Detail + probclass TYPE c LENGTH 1, " Problem Class + alsort TYPE c LENGTH 3, " Sort Criterion/Grouping + time_stmp TYPE p LENGTH 8 DECIMALS 7, " Message Time Stamp + msg_count TYPE i, " Cumulated Message Count + context TYPE c LENGTH 255, " Context (Generic Placeholder) + params TYPE c LENGTH 255, " Parameters (Generic Placeholder) + msg_txt TYPE string, " Message Text + END OF ty_log_entry. + + endmethod. + +ENDCLASS. diff --git a/src/00/03/z2ui5_cl_util_msg.clas.xml b/src/00/03/z2ui5_cl_util_msg.clas.xml new file mode 100644 index 00000000..9317d4ae --- /dev/null +++ b/src/00/03/z2ui5_cl_util_msg.clas.xml @@ -0,0 +1,17 @@ + + + + + + Z2UI5_CL_UTIL_MSG + E + util - messages + 1 + X + X + X + X + + + + diff --git a/src/00/03/z2ui5_cl_util_range.clas.abap b/src/00/03/z2ui5_cl_util_range.clas.abap new file mode 100644 index 00000000..7267babf --- /dev/null +++ b/src/00/03/z2ui5_cl_util_range.clas.abap @@ -0,0 +1,117 @@ +CLASS z2ui5_cl_util_range DEFINITION PUBLIC + FINAL CREATE PUBLIC. + PUBLIC SECTION. + CONSTANTS: BEGIN OF signs, + including TYPE string VALUE 'I', + excluding TYPE string VALUE 'E', + END OF signs. + CONSTANTS: BEGIN OF options, + equal TYPE string VALUE 'EQ', + not_equal TYPE string VALUE 'NE', + between TYPE string VALUE 'BT', + not_between TYPE string VALUE 'NB', + contains_pattern TYPE string VALUE 'CP', + not_contains_pattern TYPE string VALUE 'NP', + greater_than TYPE string VALUE 'GT', + greater_equal TYPE string VALUE 'GE', + less_equal TYPE string VALUE 'LE', + less_than TYPE string VALUE 'LT', + END OF options. + METHODS constructor + IMPORTING + iv_fieldname TYPE clike + ir_range TYPE REF TO data. + METHODS get_sql + RETURNING + VALUE(result) TYPE string. + PROTECTED SECTION. + DATA mv_fieldname TYPE string. + DATA mr_range TYPE REF TO data. + CLASS-METHODS quote + IMPORTING + val TYPE clike + RETURNING + VALUE(out) TYPE string. +ENDCLASS. + +CLASS z2ui5_cl_util_range IMPLEMENTATION. + METHOD constructor. + + + mr_range = ir_range. + mv_fieldname = |{ to_upper( iv_fieldname ) }|. + + + mr_range = ir_range. + mv_fieldname = |{ to_upper( iv_fieldname ) }|. + ENDMETHOD. + METHOD get_sql. + + + FIELD-SYMBOLS TYPE STANDARD TABLE. + + ASSIGN me->mr_range->* TO . + + IF xsdbool( IS INITIAL ) = abap_true. + RETURN. + ENDIF. + + result = `(`. + + LOOP AT ASSIGNING FIELD-SYMBOL(). + + ASSIGN COMPONENT 'SIGN' OF STRUCTURE TO FIELD-SYMBOL(). + ASSIGN COMPONENT 'OPTION' OF STRUCTURE TO FIELD-SYMBOL(). + ASSIGN COMPONENT 'LOW' OF STRUCTURE TO FIELD-SYMBOL(). + ASSIGN COMPONENT 'HIGH' OF STRUCTURE TO FIELD-SYMBOL(). + + IF sy-tabix <> 1. + result = |{ result } OR|. + ENDIF. + + IF = signs-excluding. + result = |{ result } NOT|. + ENDIF. + + result = |{ result } { me->mv_fieldname }|. + + CASE . + WHEN options-equal OR + options-not_equal OR + options-greater_than OR + options-greater_equal OR + options-less_equal OR + options-less_than. + result = |{ result } { } { quote( ) }|. + + WHEN options-between. + result = |{ result } BETWEEN { quote( ) } AND { quote( ) }|. + + WHEN options-not_between. + result = |{ result } NOT BETWEEN { quote( ) } AND { quote( ) }|. + + WHEN options-contains_pattern. + TRANSLATE USING '*%'. + result = |{ result } LIKE { quote( ) }|. + + WHEN options-not_contains_pattern. + TRANSLATE USING '*%'. + result = |{ result } NOT LIKE { quote( ) }|. + ENDCASE. + ENDLOOP. + + result = |{ result } )|. + + + ENDMETHOD. + METHOD quote. + + + out = |'{ replace( val = val + sub = `'` + with = `''` + occ = 0 ) }'|. + + + ENDMETHOD. +ENDCLASS. diff --git a/src/00/03/z2ui5_cl_util_range.clas.xml b/src/00/03/z2ui5_cl_util_range.clas.xml new file mode 100644 index 00000000..adeecc6c --- /dev/null +++ b/src/00/03/z2ui5_cl_util_range.clas.xml @@ -0,0 +1,16 @@ + + + + + + Z2UI5_CL_UTIL_RANGE + E + util - ranges + 1 + X + X + X + + + + diff --git a/src/00/03/z2ui5_cx_util_error.clas.xml b/src/00/03/z2ui5_cx_util_error.clas.xml index 66c2faa1..0897d7de 100644 --- a/src/00/03/z2ui5_cx_util_error.clas.xml +++ b/src/00/03/z2ui5_cx_util_error.clas.xml @@ -5,7 +5,7 @@ Z2UI5_CX_UTIL_ERROR E - abap toolkit exception + util - exception 40 1 X diff --git a/src/01/02/z2ui5_cl_core_client.clas.abap b/src/01/02/z2ui5_cl_core_client.clas.abap index d1c37285..0e5642c8 100644 --- a/src/01/02/z2ui5_cl_core_client.clas.abap +++ b/src/01/02/z2ui5_cl_core_client.clas.abap @@ -172,7 +172,9 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION. METHOD z2ui5_if_client~nav_app_call. IF app IS NOT BOUND. - z2ui5_cl_util=>x_raise( `NAV_APP_LEAVE_TO_INITIAL_APP_ERROR` ). + RAISE EXCEPTION TYPE z2ui5_cx_util_error + EXPORTING + val = `NAV_APP_LEAVE_TO_INITIAL_APP_ERROR`. ENDIF. mo_action->ms_next-o_app_call = app. @@ -190,7 +192,9 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION. ENDIF. IF app IS NOT BOUND. - z2ui5_cl_util=>x_raise( `NAV_APP_LEAVE_TO_INITIAL_APP_ERROR` ). + RAISE EXCEPTION TYPE z2ui5_cx_util_error + EXPORTING + val = `NAV_APP_LEAVE_TO_INITIAL_APP_ERROR`. ENDIF. mo_action->ms_next-o_app_leave = app. diff --git a/src/01/02/z2ui5_cl_core_srv_json.clas.abap b/src/01/02/z2ui5_cl_core_srv_json.clas.abap index 06ea30bc..bfd349b5 100644 --- a/src/01/02/z2ui5_cl_core_srv_json.clas.abap +++ b/src/01/02/z2ui5_cl_core_srv_json.clas.abap @@ -74,7 +74,9 @@ CLASS z2ui5_cl_core_srv_json IMPLEMENTATION. lo_val_front->to_abap( IMPORTING ev_container = ). CATCH cx_root INTO DATA(x). - z2ui5_cl_util=>x_raise( |JSON_PARSING_ERROR: { x->get_text( ) } | ). + RAISE EXCEPTION TYPE z2ui5_cx_util_error + EXPORTING + val = |JSON_PARSING_ERROR: { x->get_text( ) } |. ENDTRY. ENDLOOP. diff --git a/src/02/z2ui5_cl_xml_view.clas.abap b/src/02/z2ui5_cl_xml_view.clas.abap index 21769379..769e4e12 100644 --- a/src/02/z2ui5_cl_xml_view.clas.abap +++ b/src/02/z2ui5_cl_xml_view.clas.abap @@ -219,11 +219,11 @@ CLASS z2ui5_cl_xml_view DEFINITION IMPORTING ns TYPE clike OPTIONAL link TYPE clike OPTIONAL - ID type CLIKE optional - CLASS type CLIKE optional - CURRENTLOCATIONTEXT type CLIKE optional - SEPARATORSTYLE type CLIKE optional - VISIBLE type CLIKE optional + id TYPE clike OPTIONAL + class TYPE clike OPTIONAL + currentlocationtext TYPE clike OPTIONAL + separatorstyle TYPE clike OPTIONAL + visible TYPE clike OPTIONAL RETURNING VALUE(result) TYPE REF TO z2ui5_cl_xml_view. @@ -10617,7 +10617,9 @@ CLASS z2ui5_cl_xml_view IMPLEMENTATION. INSERT VALUE #( n = |xmlns:{ ls_prop-n }| v = ls_prop-v ) INTO TABLE mt_prop. CATCH cx_root. - z2ui5_cl_util=>x_raise( |XML_VIEW_ERROR_NO_NAMESPACE_FOUND_FOR: { lr_ns->* }| ). + RAISE EXCEPTION TYPE z2ui5_cx_util_error + EXPORTING + val = |XML_VIEW_ERROR_NO_NAMESPACE_FOUND_FOR: { lr_ns->* }|. ENDTRY. ENDLOOP.