mirror of
https://github.com/abap2UI5/abap2UI5.git
synced 2025-04-29 18:16:16 +08:00
parent
a0df28a4ab
commit
771f7f9d0b
36
.github/workflows/clean_up.yaml
vendored
36
.github/workflows/clean_up.yaml
vendored
|
@ -1,36 +0,0 @@
|
||||||
name: Clean-up ABAP Files
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches: ["main"]
|
|
||||||
# pull_request:
|
|
||||||
# branches: ["main"]
|
|
||||||
|
|
||||||
workflow_dispatch:
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
Code-Cleanup:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- run: git config --global core.autocrlf true
|
|
||||||
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v3
|
|
||||||
|
|
||||||
- name: Download ABAP Cleaner (latest version)
|
|
||||||
run: |
|
|
||||||
mkdir .cleanup
|
|
||||||
cd .cleanup
|
|
||||||
wget -q -c https://github.com/SAP/abap-cleaner/releases/latest/download/com.sap.adt.abapcleaner.app-linux.gtk.x86_64.tar.gz -O - | tar -xz
|
|
||||||
cd ..
|
|
||||||
|
|
||||||
- name: Clean-up files in /src
|
|
||||||
run: ./.cleanup/abapcleaner/abap-cleaner --sourcedir src --recursive --overwrite --profile cleaner-profile.cfj --release 750 --stats --usedrules
|
|
||||||
|
|
||||||
- name: Commit changes
|
|
||||||
uses: EndBug/add-and-commit@v9
|
|
||||||
with:
|
|
||||||
default_author: github_actions
|
|
||||||
message: "style: code cleanup with ABAP cleaner"
|
|
||||||
add: "src"
|
|
|
@ -33,7 +33,7 @@
|
||||||
"RemoveIncludeWarnings": "1",
|
"RemoveIncludeWarnings": "1",
|
||||||
"RemoveEmptyLineAboveEndClass": "0",
|
"RemoveEmptyLineAboveEndClass": "0",
|
||||||
"AddEmptyLineAboveSections": "1",
|
"AddEmptyLineAboveSections": "1",
|
||||||
"RemoveEmptyLineBelowSections": "1",
|
"RemoveEmptyLineBelowSections": "0",
|
||||||
"MaxEmptyLines": "1",
|
"MaxEmptyLines": "1",
|
||||||
"AddLineBetweenDefTypes": "2"
|
"AddLineBetweenDefTypes": "2"
|
||||||
}
|
}
|
|
@ -1,14 +1,14 @@
|
||||||
CLASS z2ui5_cl_abap_api DEFINITION
|
CLASS z2ui5_cl_abap_api DEFINITION
|
||||||
PUBLIC
|
PUBLIC
|
||||||
CREATE PUBLIC .
|
CREATE PUBLIC.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
* abap-api - Serving a Release & Version Independent ABAP Layer
|
" abap-api - Serving a Release & Version Independent ABAP Layer
|
||||||
* version: '0.0.1'.
|
" version: '0.0.1'.
|
||||||
* origin: https://github.com/oblomov-dev/abap-api
|
" origin: https://github.com/oblomov-dev/abap-api
|
||||||
* author: https://github.com/oblomov-dev
|
" author: https://github.com/oblomov-dev
|
||||||
* license: MIT.
|
" license: MIT.
|
||||||
|
|
||||||
TYPES:
|
TYPES:
|
||||||
BEGIN OF ty_s_fix_val,
|
BEGIN OF ty_s_fix_val,
|
||||||
|
@ -78,7 +78,7 @@ CLASS z2ui5_cl_abap_api DEFINITION
|
||||||
short TYPE string,
|
short TYPE string,
|
||||||
medium TYPE string,
|
medium TYPE string,
|
||||||
long TYPE string,
|
long TYPE string,
|
||||||
END OF ty_s_data_element_text .
|
END OF ty_s_data_element_text.
|
||||||
|
|
||||||
TYPES:
|
TYPES:
|
||||||
BEGIN OF ty_s_class_descr,
|
BEGIN OF ty_s_class_descr,
|
||||||
|
@ -180,9 +180,7 @@ CLASS z2ui5_cl_abap_api DEFINITION
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD context_check_abap_cloud.
|
METHOD context_check_abap_cloud.
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
|
@ -211,12 +209,9 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
lv_langu = langu.
|
lv_langu = langu.
|
||||||
|
|
||||||
CALL METHOD elemdescr->('GET_DDIC_FIXED_VALUES')
|
CALL METHOD elemdescr->('GET_DDIC_FIXED_VALUES')
|
||||||
EXPORTING
|
EXPORTING p_langu = lv_langu
|
||||||
p_langu = lv_langu
|
RECEIVING p_fixed_values = lt_values
|
||||||
RECEIVING
|
EXCEPTIONS not_found = 1
|
||||||
p_fixed_values = lt_values
|
|
||||||
EXCEPTIONS
|
|
||||||
not_found = 1
|
|
||||||
no_ddic_type = 2
|
no_ddic_type = 2
|
||||||
OTHERS = 3.
|
OTHERS = 3.
|
||||||
|
|
||||||
|
@ -237,50 +232,40 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lv_web_http_name) = 'CL_WEB_HTTP_UTILITY'.
|
DATA(lv_web_http_name) = 'CL_WEB_HTTP_UTILITY'.
|
||||||
CALL METHOD (lv_web_http_name)=>('DECODE_X_BASE64')
|
CALL METHOD (lv_web_http_name)=>('DECODE_X_BASE64')
|
||||||
EXPORTING
|
EXPORTING encoded = val
|
||||||
encoded = val
|
RECEIVING decoded = result.
|
||||||
RECEIVING
|
|
||||||
decoded = result.
|
|
||||||
|
|
||||||
CATCH cx_root.
|
CATCH cx_root.
|
||||||
|
|
||||||
DATA(classname) = 'CL_HTTP_UTILITY'.
|
DATA(classname) = 'CL_HTTP_UTILITY'.
|
||||||
CALL METHOD (classname)=>('DECODE_X_BASE64')
|
CALL METHOD (classname)=>('DECODE_X_BASE64')
|
||||||
EXPORTING
|
EXPORTING encoded = val
|
||||||
encoded = val
|
RECEIVING decoded = result.
|
||||||
RECEIVING
|
|
||||||
decoded = result.
|
|
||||||
|
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD conv_encode_x_base64.
|
METHOD conv_encode_x_base64.
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
|
|
||||||
DATA(lv_web_http_name) = 'CL_WEB_HTTP_UTILITY'.
|
DATA(lv_web_http_name) = 'CL_WEB_HTTP_UTILITY'.
|
||||||
CALL METHOD (lv_web_http_name)=>('ENCODE_X_BASE64')
|
CALL METHOD (lv_web_http_name)=>('ENCODE_X_BASE64')
|
||||||
EXPORTING
|
EXPORTING unencoded = val
|
||||||
unencoded = val
|
RECEIVING encoded = result.
|
||||||
RECEIVING
|
|
||||||
encoded = result.
|
|
||||||
|
|
||||||
CATCH cx_root.
|
CATCH cx_root.
|
||||||
|
|
||||||
DATA(classname) = 'CL_HTTP_UTILITY'.
|
DATA(classname) = 'CL_HTTP_UTILITY'.
|
||||||
CALL METHOD (classname)=>('ENCODE_X_BASE64')
|
CALL METHOD (classname)=>('ENCODE_X_BASE64')
|
||||||
EXPORTING
|
EXPORTING unencoded = val
|
||||||
unencoded = val
|
RECEIVING encoded = result.
|
||||||
RECEIVING
|
|
||||||
encoded = result.
|
|
||||||
|
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD conv_get_string_by_xstring.
|
METHOD conv_get_string_by_xstring.
|
||||||
|
|
||||||
DATA conv TYPE REF TO object.
|
DATA conv TYPE REF TO object.
|
||||||
|
@ -288,34 +273,26 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
TRY.
|
TRY.
|
||||||
DATA(conv_codepage) = 'CL_ABAP_CONV_CODEPAGE'.
|
DATA(conv_codepage) = 'CL_ABAP_CONV_CODEPAGE'.
|
||||||
CALL METHOD (conv_codepage)=>create_in
|
CALL METHOD (conv_codepage)=>create_in
|
||||||
RECEIVING
|
RECEIVING instance = conv.
|
||||||
instance = conv.
|
|
||||||
|
|
||||||
CALL METHOD conv->('IF_ABAP_CONV_IN~CONVERT')
|
CALL METHOD conv->('IF_ABAP_CONV_IN~CONVERT')
|
||||||
EXPORTING
|
EXPORTING source = val
|
||||||
source = val
|
RECEIVING result = result.
|
||||||
RECEIVING
|
|
||||||
result = result.
|
|
||||||
|
|
||||||
CATCH cx_root.
|
CATCH cx_root.
|
||||||
|
|
||||||
DATA(conv_in_class) = 'CL_ABAP_CONV_IN_CE'.
|
DATA(conv_in_class) = 'CL_ABAP_CONV_IN_CE'.
|
||||||
CALL METHOD (conv_in_class)=>create
|
CALL METHOD (conv_in_class)=>create
|
||||||
EXPORTING
|
EXPORTING encoding = 'UTF-8'
|
||||||
encoding = 'UTF-8'
|
RECEIVING conv = conv.
|
||||||
RECEIVING
|
|
||||||
conv = conv.
|
|
||||||
|
|
||||||
CALL METHOD conv->('CONVERT')
|
CALL METHOD conv->('CONVERT')
|
||||||
EXPORTING
|
EXPORTING input = val
|
||||||
input = val
|
IMPORTING data = result.
|
||||||
IMPORTING
|
|
||||||
data = result.
|
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD conv_get_xstring_by_string.
|
METHOD conv_get_xstring_by_string.
|
||||||
|
|
||||||
DATA conv TYPE REF TO object.
|
DATA conv TYPE REF TO object.
|
||||||
|
@ -323,34 +300,26 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
TRY.
|
TRY.
|
||||||
DATA(conv_codepage) = 'CL_ABAP_CONV_CODEPAGE'.
|
DATA(conv_codepage) = 'CL_ABAP_CONV_CODEPAGE'.
|
||||||
CALL METHOD (conv_codepage)=>create_out
|
CALL METHOD (conv_codepage)=>create_out
|
||||||
RECEIVING
|
RECEIVING instance = conv.
|
||||||
instance = conv.
|
|
||||||
|
|
||||||
CALL METHOD conv->('IF_ABAP_CONV_OUT~CONVERT')
|
CALL METHOD conv->('IF_ABAP_CONV_OUT~CONVERT')
|
||||||
EXPORTING
|
EXPORTING source = val
|
||||||
source = val
|
RECEIVING result = result.
|
||||||
RECEIVING
|
|
||||||
result = result.
|
|
||||||
|
|
||||||
CATCH cx_root.
|
CATCH cx_root.
|
||||||
|
|
||||||
DATA(conv_out_class) = 'CL_ABAP_CONV_OUT_CE'.
|
DATA(conv_out_class) = 'CL_ABAP_CONV_OUT_CE'.
|
||||||
CALL METHOD (conv_out_class)=>create
|
CALL METHOD (conv_out_class)=>create
|
||||||
EXPORTING
|
EXPORTING encoding = 'UTF-8'
|
||||||
encoding = 'UTF-8'
|
RECEIVING conv = conv.
|
||||||
RECEIVING
|
|
||||||
conv = conv.
|
|
||||||
|
|
||||||
CALL METHOD conv->('CONVERT')
|
CALL METHOD conv->('CONVERT')
|
||||||
EXPORTING
|
EXPORTING data = val
|
||||||
data = val
|
IMPORTING buffer = result.
|
||||||
IMPORTING
|
|
||||||
buffer = result.
|
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD source_get_method.
|
METHOD source_get_method.
|
||||||
|
|
||||||
DATA object TYPE REF TO object.
|
DATA object TYPE REF TO object.
|
||||||
|
@ -365,45 +334,35 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(xco_cp_abap) = 'XCO_CP_ABAP'.
|
DATA(xco_cp_abap) = 'XCO_CP_ABAP'.
|
||||||
CALL METHOD (xco_cp_abap)=>('CLASS')
|
CALL METHOD (xco_cp_abap)=>('CLASS')
|
||||||
EXPORTING
|
EXPORTING iv_name = lv_class
|
||||||
iv_name = lv_class
|
RECEIVING ro_class = object.
|
||||||
RECEIVING
|
|
||||||
ro_class = object.
|
|
||||||
|
|
||||||
ASSIGN ('OBJECT->IF_XCO_AO_CLASS~IMPLEMENTATION') TO <any>.
|
ASSIGN ('OBJECT->IF_XCO_AO_CLASS~IMPLEMENTATION') TO <any>.
|
||||||
ASSERT sy-subrc = 0.
|
ASSERT sy-subrc = 0.
|
||||||
object = <any>.
|
object = <any>.
|
||||||
|
|
||||||
CALL METHOD object->('IF_XCO_CLAS_IMPLEMENTATION~METHOD')
|
CALL METHOD object->('IF_XCO_CLAS_IMPLEMENTATION~METHOD')
|
||||||
EXPORTING
|
EXPORTING iv_name = lv_method
|
||||||
iv_name = lv_method
|
RECEIVING ro_method = object.
|
||||||
RECEIVING
|
|
||||||
ro_method = object.
|
|
||||||
|
|
||||||
CALL METHOD object->('IF_XCO_CLAS_I_METHOD~CONTENT')
|
CALL METHOD object->('IF_XCO_CLAS_I_METHOD~CONTENT')
|
||||||
RECEIVING
|
RECEIVING ro_content = object.
|
||||||
ro_content = object.
|
|
||||||
|
|
||||||
CALL METHOD object->('IF_XCO_CLAS_I_METHOD_CONTENT~GET_SOURCE')
|
CALL METHOD object->('IF_XCO_CLAS_I_METHOD_CONTENT~GET_SOURCE')
|
||||||
RECEIVING
|
RECEIVING rt_source = result.
|
||||||
rt_source = result.
|
|
||||||
|
|
||||||
CATCH cx_root.
|
CATCH cx_root.
|
||||||
|
|
||||||
DATA(lv_name) = 'CL_OO_FACTORY'.
|
DATA(lv_name) = 'CL_OO_FACTORY'.
|
||||||
CALL METHOD (lv_name)=>('CREATE_INSTANCE')
|
CALL METHOD (lv_name)=>('CREATE_INSTANCE')
|
||||||
RECEIVING
|
RECEIVING result = object.
|
||||||
result = object.
|
|
||||||
|
|
||||||
CALL METHOD object->('IF_OO_CLIF_SOURCE_FACTORY~CREATE_CLIF_SOURCE')
|
CALL METHOD object->('IF_OO_CLIF_SOURCE_FACTORY~CREATE_CLIF_SOURCE')
|
||||||
EXPORTING
|
EXPORTING clif_name = lv_class
|
||||||
clif_name = lv_class
|
RECEIVING result = object.
|
||||||
RECEIVING
|
|
||||||
result = object.
|
|
||||||
|
|
||||||
CALL METHOD object->('IF_OO_CLIF_SOURCE~GET_SOURCE')
|
CALL METHOD object->('IF_OO_CLIF_SOURCE~GET_SOURCE')
|
||||||
IMPORTING
|
IMPORTING source = lt_source.
|
||||||
source = lt_source.
|
|
||||||
|
|
||||||
DATA(lv_check_method) = abap_false.
|
DATA(lv_check_method) = abap_false.
|
||||||
LOOP AT lt_source INTO DATA(lv_source).
|
LOOP AT lt_source INTO DATA(lv_source).
|
||||||
|
@ -413,7 +372,7 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
lv_check_method = abap_false.
|
lv_check_method = abap_false.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
IF lv_source_upper CS `METHOD ` && lv_method.
|
IF lv_source_upper CS |METHOD { lv_method }|.
|
||||||
lv_check_method = abap_true.
|
lv_check_method = abap_true.
|
||||||
CONTINUE.
|
CONTINUE.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
@ -430,7 +389,6 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_get_classes_impl_intf.
|
METHOD rtti_get_classes_impl_intf.
|
||||||
|
|
||||||
DATA obj TYPE REF TO object.
|
DATA obj TYPE REF TO object.
|
||||||
|
@ -456,10 +414,8 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(xco_cp_abap) = 'XCO_CP_ABAP'.
|
DATA(xco_cp_abap) = 'XCO_CP_ABAP'.
|
||||||
CALL METHOD (xco_cp_abap)=>interface
|
CALL METHOD (xco_cp_abap)=>interface
|
||||||
EXPORTING
|
EXPORTING iv_name = ls_clskey-clsname
|
||||||
iv_name = ls_clskey-clsname
|
RECEIVING ro_interface = obj.
|
||||||
RECEIVING
|
|
||||||
ro_interface = obj.
|
|
||||||
|
|
||||||
ASSIGN obj->('IF_XCO_AO_INTERFACE~IMPLEMENTATIONS') TO <any>.
|
ASSIGN obj->('IF_XCO_AO_INTERFACE~IMPLEMENTATIONS') TO <any>.
|
||||||
IF sy-subrc <> 0.
|
IF sy-subrc <> 0.
|
||||||
|
@ -474,11 +430,9 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
obj = <any>.
|
obj = <any>.
|
||||||
|
|
||||||
CALL METHOD obj->('IF_XCO_INTF_IMPLEMENTATIONS~GET_NAMES')
|
CALL METHOD obj->('IF_XCO_INTF_IMPLEMENTATIONS~GET_NAMES')
|
||||||
RECEIVING
|
RECEIVING rt_names = lt_implementation_names.
|
||||||
rt_names = lt_implementation_names.
|
|
||||||
|
|
||||||
result = VALUE #(
|
result = VALUE #( FOR implementation_name IN lt_implementation_names
|
||||||
FOR implementation_name IN lt_implementation_names
|
|
||||||
( classname = implementation_name
|
( classname = implementation_name
|
||||||
description = rtti_get_class_descr_on_cloud( implementation_name ) ) ).
|
description = rtti_get_class_descr_on_cloud( implementation_name ) ) ).
|
||||||
|
|
||||||
|
@ -488,12 +442,9 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lv_fm) = `SEO_INTERFACE_IMPLEM_GET_ALL`.
|
DATA(lv_fm) = `SEO_INTERFACE_IMPLEM_GET_ALL`.
|
||||||
CALL FUNCTION lv_fm
|
CALL FUNCTION lv_fm
|
||||||
EXPORTING
|
EXPORTING intkey = ls_key
|
||||||
intkey = ls_key
|
IMPORTING impkeys = lt_impl
|
||||||
IMPORTING
|
EXCEPTIONS not_existing = 1
|
||||||
impkeys = lt_impl
|
|
||||||
EXCEPTIONS
|
|
||||||
not_existing = 1
|
|
||||||
OTHERS = 2.
|
OTHERS = 2.
|
||||||
IF sy-subrc <> 0.
|
IF sy-subrc <> 0.
|
||||||
RETURN.
|
RETURN.
|
||||||
|
@ -511,10 +462,8 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
lv_fm = `SEO_CLASS_READ`.
|
lv_fm = `SEO_CLASS_READ`.
|
||||||
CALL FUNCTION lv_fm
|
CALL FUNCTION lv_fm
|
||||||
EXPORTING
|
EXPORTING clskey = ls_clskey
|
||||||
clskey = ls_clskey
|
IMPORTING class = <class>.
|
||||||
IMPORTING
|
|
||||||
class = <class>.
|
|
||||||
|
|
||||||
ASSIGN
|
ASSIGN
|
||||||
COMPONENT 'DESCRIPT'
|
COMPONENT 'DESCRIPT'
|
||||||
|
@ -532,20 +481,18 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_get_data_element_texts.
|
METHOD rtti_get_data_element_texts.
|
||||||
|
|
||||||
DATA:
|
DATA ddic_ref TYPE REF TO data.
|
||||||
ddic_ref TYPE REF TO data,
|
DATA data_element TYPE REF TO object.
|
||||||
data_element TYPE REF TO object,
|
DATA content TYPE REF TO object.
|
||||||
content TYPE REF TO object,
|
DATA: BEGIN OF ddic,
|
||||||
BEGIN OF ddic,
|
|
||||||
reptext TYPE string,
|
reptext TYPE string,
|
||||||
scrtext_s TYPE string,
|
scrtext_s TYPE string,
|
||||||
scrtext_m TYPE string,
|
scrtext_m TYPE string,
|
||||||
scrtext_l TYPE string,
|
scrtext_l TYPE string,
|
||||||
END OF ddic,
|
END OF ddic.
|
||||||
exists TYPE abap_bool.
|
DATA exists TYPE abap_bool.
|
||||||
|
|
||||||
DATA(data_element_name) = i_data_element_name.
|
DATA(data_element_name) = i_data_element_name.
|
||||||
|
|
||||||
|
@ -558,13 +505,9 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
ASSIGN ddic_ref->* TO FIELD-SYMBOL(<ddic>).
|
ASSIGN ddic_ref->* TO FIELD-SYMBOL(<ddic>).
|
||||||
ASSERT sy-subrc = 0.
|
ASSERT sy-subrc = 0.
|
||||||
|
|
||||||
cl_abap_elemdescr=>describe_by_name(
|
cl_abap_elemdescr=>describe_by_name( EXPORTING p_name = data_element_name
|
||||||
EXPORTING
|
RECEIVING p_descr_ref = DATA(lo_typedescr)
|
||||||
p_name = data_element_name
|
EXCEPTIONS OTHERS = 1 ).
|
||||||
RECEIVING
|
|
||||||
p_descr_ref = DATA(lo_typedescr)
|
|
||||||
EXCEPTIONS
|
|
||||||
OTHERS = 1 ).
|
|
||||||
IF sy-subrc <> 0.
|
IF sy-subrc <> 0.
|
||||||
RETURN.
|
RETURN.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
@ -572,10 +515,8 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
DATA(data_descr) = CAST cl_abap_datadescr( lo_typedescr ).
|
DATA(data_descr) = CAST cl_abap_datadescr( lo_typedescr ).
|
||||||
|
|
||||||
CALL METHOD data_descr->('GET_DDIC_FIELD')
|
CALL METHOD data_descr->('GET_DDIC_FIELD')
|
||||||
RECEIVING
|
RECEIVING p_flddescr = <ddic>
|
||||||
p_flddescr = <ddic>
|
EXCEPTIONS not_found = 1
|
||||||
EXCEPTIONS
|
|
||||||
not_found = 1
|
|
||||||
no_ddic_type = 2
|
no_ddic_type = 2
|
||||||
OTHERS = 3.
|
OTHERS = 3.
|
||||||
IF sy-subrc <> 0.
|
IF sy-subrc <> 0.
|
||||||
|
@ -592,38 +533,30 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
TRY.
|
TRY.
|
||||||
DATA(xco_cp_abap_dictionary) = 'XCO_CP_ABAP_DICTIONARY'.
|
DATA(xco_cp_abap_dictionary) = 'XCO_CP_ABAP_DICTIONARY'.
|
||||||
CALL METHOD (xco_cp_abap_dictionary)=>('DATA_ELEMENT')
|
CALL METHOD (xco_cp_abap_dictionary)=>('DATA_ELEMENT')
|
||||||
EXPORTING
|
EXPORTING iv_name = data_element_name
|
||||||
iv_name = data_element_name
|
RECEIVING ro_data_element = data_element.
|
||||||
RECEIVING
|
|
||||||
ro_data_element = data_element.
|
|
||||||
|
|
||||||
CALL METHOD data_element->('IF_XCO_AD_DATA_ELEMENT~EXISTS')
|
CALL METHOD data_element->('IF_XCO_AD_DATA_ELEMENT~EXISTS')
|
||||||
RECEIVING
|
RECEIVING rv_exists = exists.
|
||||||
rv_exists = exists.
|
|
||||||
|
|
||||||
IF exists = abap_false.
|
IF exists = abap_false.
|
||||||
RETURN.
|
RETURN.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
CALL METHOD data_element->('IF_XCO_AD_DATA_ELEMENT~CONTENT')
|
CALL METHOD data_element->('IF_XCO_AD_DATA_ELEMENT~CONTENT')
|
||||||
RECEIVING
|
RECEIVING ro_content = content.
|
||||||
ro_content = content.
|
|
||||||
|
|
||||||
CALL METHOD content->('IF_XCO_DTEL_CONTENT~GET_HEADING_FIELD_LABEL')
|
CALL METHOD content->('IF_XCO_DTEL_CONTENT~GET_HEADING_FIELD_LABEL')
|
||||||
RECEIVING
|
RECEIVING rs_heading_field_label = result-header.
|
||||||
rs_heading_field_label = result-header.
|
|
||||||
|
|
||||||
CALL METHOD content->('IF_XCO_DTEL_CONTENT~GET_SHORT_FIELD_LABEL')
|
CALL METHOD content->('IF_XCO_DTEL_CONTENT~GET_SHORT_FIELD_LABEL')
|
||||||
RECEIVING
|
RECEIVING rs_short_field_label = result-short.
|
||||||
rs_short_field_label = result-short.
|
|
||||||
|
|
||||||
CALL METHOD content->('IF_XCO_DTEL_CONTENT~GET_MEDIUM_FIELD_LABEL')
|
CALL METHOD content->('IF_XCO_DTEL_CONTENT~GET_MEDIUM_FIELD_LABEL')
|
||||||
RECEIVING
|
RECEIVING rs_medium_field_label = result-medium.
|
||||||
rs_medium_field_label = result-medium.
|
|
||||||
|
|
||||||
CALL METHOD content->('IF_XCO_DTEL_CONTENT~GET_LONG_FIELD_LABEL')
|
CALL METHOD content->('IF_XCO_DTEL_CONTENT~GET_LONG_FIELD_LABEL')
|
||||||
RECEIVING
|
RECEIVING rs_long_field_label = result-long.
|
||||||
rs_long_field_label = result-long.
|
|
||||||
|
|
||||||
CATCH cx_root.
|
CATCH cx_root.
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
|
@ -631,7 +564,6 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD uuid_get_c22.
|
METHOD uuid_get_c22.
|
||||||
|
|
||||||
DATA lv_uuid TYPE c LENGTH 22.
|
DATA lv_uuid TYPE c LENGTH 22.
|
||||||
|
@ -641,15 +573,13 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
TRY.
|
TRY.
|
||||||
DATA(lv_classname) = `CL_SYSTEM_UUID`.
|
DATA(lv_classname) = `CL_SYSTEM_UUID`.
|
||||||
CALL METHOD (lv_classname)=>if_system_uuid_static~create_uuid_c22
|
CALL METHOD (lv_classname)=>if_system_uuid_static~create_uuid_c22
|
||||||
RECEIVING
|
RECEIVING uuid = lv_uuid.
|
||||||
uuid = lv_uuid.
|
|
||||||
|
|
||||||
CATCH cx_sy_dyn_call_illegal_class.
|
CATCH cx_sy_dyn_call_illegal_class.
|
||||||
|
|
||||||
DATA(lv_fm) = `GUID_CREATE`.
|
DATA(lv_fm) = `GUID_CREATE`.
|
||||||
CALL FUNCTION lv_fm
|
CALL FUNCTION lv_fm
|
||||||
IMPORTING
|
IMPORTING ev_guid_22 = lv_uuid.
|
||||||
ev_guid_22 = lv_uuid.
|
|
||||||
|
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
|
|
||||||
|
@ -678,7 +608,6 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD uuid_get_c32.
|
METHOD uuid_get_c32.
|
||||||
DATA lv_uuid TYPE c LENGTH 32.
|
DATA lv_uuid TYPE c LENGTH 32.
|
||||||
|
|
||||||
|
@ -687,15 +616,13 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
TRY.
|
TRY.
|
||||||
DATA(lv_classname) = `CL_SYSTEM_UUID`.
|
DATA(lv_classname) = `CL_SYSTEM_UUID`.
|
||||||
CALL METHOD (lv_classname)=>if_system_uuid_static~create_uuid_c32
|
CALL METHOD (lv_classname)=>if_system_uuid_static~create_uuid_c32
|
||||||
RECEIVING
|
RECEIVING uuid = lv_uuid.
|
||||||
uuid = lv_uuid.
|
|
||||||
|
|
||||||
CATCH cx_root.
|
CATCH cx_root.
|
||||||
|
|
||||||
DATA(lv_fm) = `GUID_CREATE`.
|
DATA(lv_fm) = `GUID_CREATE`.
|
||||||
CALL FUNCTION lv_fm
|
CALL FUNCTION lv_fm
|
||||||
IMPORTING
|
IMPORTING ev_guid_32 = lv_uuid.
|
||||||
ev_guid_32 = lv_uuid.
|
|
||||||
|
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
|
|
||||||
|
@ -706,7 +633,6 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_get_class_descr_on_cloud.
|
METHOD rtti_get_class_descr_on_cloud.
|
||||||
|
|
||||||
DATA obj TYPE REF TO object.
|
DATA obj TYPE REF TO object.
|
||||||
|
@ -717,22 +643,17 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(xco_cp_abap) = 'XCO_CP_ABAP'.
|
DATA(xco_cp_abap) = 'XCO_CP_ABAP'.
|
||||||
CALL METHOD (xco_cp_abap)=>('CLASS')
|
CALL METHOD (xco_cp_abap)=>('CLASS')
|
||||||
EXPORTING
|
EXPORTING iv_name = lv_classname
|
||||||
iv_name = lv_classname
|
RECEIVING ro_class = obj.
|
||||||
RECEIVING
|
|
||||||
ro_class = obj.
|
|
||||||
|
|
||||||
CALL METHOD obj->('IF_XCO_AO_CLASS~CONTENT')
|
CALL METHOD obj->('IF_XCO_AO_CLASS~CONTENT')
|
||||||
RECEIVING
|
RECEIVING ro_content = content.
|
||||||
ro_content = content.
|
|
||||||
|
|
||||||
CALL METHOD content->('IF_XCO_CLAS_CONTENT~GET_SHORT_DESCRIPTION')
|
CALL METHOD content->('IF_XCO_CLAS_CONTENT~GET_SHORT_DESCRIPTION')
|
||||||
RECEIVING
|
RECEIVING rv_short_description = result.
|
||||||
rv_short_description = result.
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_get_t_attri_on_prem.
|
METHOD rtti_get_t_attri_on_prem.
|
||||||
|
|
||||||
DATA structdescr TYPE REF TO cl_abap_structdescr.
|
DATA structdescr TYPE REF TO cl_abap_structdescr.
|
||||||
|
@ -762,8 +683,7 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
IF tabname IS INITIAL.
|
IF tabname IS INITIAL.
|
||||||
|
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_abap_api
|
RAISE EXCEPTION TYPE z2ui5_cx_abap_api
|
||||||
EXPORTING
|
EXPORTING val = `RTTI_BY_NAME_TAB_INITIAL`.
|
||||||
val = `RTTI_BY_NAME_TAB_INITIAL`.
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
structdescr ?= cl_abap_structdescr=>describe_by_name( tabname ).
|
structdescr ?= cl_abap_structdescr=>describe_by_name( tabname ).
|
||||||
|
@ -927,7 +847,6 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_get_t_dfies_by_table_name.
|
METHOD rtti_get_t_dfies_by_table_name.
|
||||||
|
|
||||||
IF context_check_abap_cloud( ).
|
IF context_check_abap_cloud( ).
|
||||||
|
@ -937,6 +856,5 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
CLASS ltcl_test DEFINITION FINAL FOR TESTING
|
CLASS ltcl_test DEFINITION FINAL
|
||||||
DURATION SHORT
|
FOR TESTING RISK LEVEL HARMLESS DURATION SHORT.
|
||||||
RISK LEVEL HARMLESS.
|
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS test_func_get_uuid_32 FOR TESTING RAISING cx_static_check.
|
METHODS test_func_get_uuid_32 FOR TESTING RAISING cx_static_check.
|
||||||
|
@ -13,14 +12,12 @@ ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS ltcl_test IMPLEMENTATION.
|
CLASS ltcl_test IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD test_func_get_uuid_32.
|
METHOD test_func_get_uuid_32.
|
||||||
|
|
||||||
DATA(lv_uuid) = z2ui5_cl_abap_api=>uuid_get_c32( ).
|
DATA(lv_uuid) = z2ui5_cl_abap_api=>uuid_get_c32( ).
|
||||||
cl_abap_unit_assert=>assert_not_initial( lv_uuid ).
|
cl_abap_unit_assert=>assert_not_initial( lv_uuid ).
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = strlen( lv_uuid )
|
||||||
act = 32
|
act = 32 ).
|
||||||
exp = strlen( lv_uuid ) ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -28,9 +25,8 @@ CLASS ltcl_test IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lv_uuid) = z2ui5_cl_abap_api=>uuid_get_c22( ).
|
DATA(lv_uuid) = z2ui5_cl_abap_api=>uuid_get_c22( ).
|
||||||
cl_abap_unit_assert=>assert_not_initial( lv_uuid ).
|
cl_abap_unit_assert=>assert_not_initial( lv_uuid ).
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = strlen( lv_uuid )
|
||||||
act = 22
|
act = 22 ).
|
||||||
exp = strlen( lv_uuid ) ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -42,9 +38,8 @@ CLASS ltcl_test IMPLEMENTATION.
|
||||||
DATA(lv_xstring2) = z2ui5_cl_abap_api=>conv_decode_x_base64( lv_string2 ).
|
DATA(lv_xstring2) = z2ui5_cl_abap_api=>conv_decode_x_base64( lv_string2 ).
|
||||||
DATA(lv_string3) = z2ui5_cl_abap_api=>conv_get_string_by_xstring( lv_xstring2 ).
|
DATA(lv_string3) = z2ui5_cl_abap_api=>conv_get_string_by_xstring( lv_xstring2 ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = lv_string
|
||||||
act = lv_string3
|
act = lv_string3 ).
|
||||||
exp = lv_string ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -69,5 +64,4 @@ CLASS ltcl_test IMPLEMENTATION.
|
||||||
cl_abap_unit_assert=>assert_not_initial( mt_classes ).
|
cl_abap_unit_assert=>assert_not_initial( mt_classes ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -35,7 +35,7 @@ CLASS z2ui5_cl_abap_api_http DEFINITION PUBLIC.
|
||||||
|
|
||||||
METHODS set_status
|
METHODS set_status
|
||||||
IMPORTING
|
IMPORTING
|
||||||
code TYPE i
|
!code TYPE i
|
||||||
reason TYPE clike.
|
reason TYPE clike.
|
||||||
|
|
||||||
METHODS set_session_stateful
|
METHODS set_session_stateful
|
||||||
|
@ -54,7 +54,7 @@ CLASS z2ui5_cl_abap_api_http DEFINITION PUBLIC.
|
||||||
|
|
||||||
METHODS set_header_field
|
METHODS set_header_field
|
||||||
IMPORTING
|
IMPORTING
|
||||||
n TYPE clike
|
!n TYPE clike
|
||||||
v TYPE clike.
|
v TYPE clike.
|
||||||
|
|
||||||
DATA mo_server_onprem TYPE REF TO object.
|
DATA mo_server_onprem TYPE REF TO object.
|
||||||
|
@ -62,11 +62,12 @@ CLASS z2ui5_cl_abap_api_http DEFINITION PUBLIC.
|
||||||
DATA mo_response_cloud TYPE REF TO object.
|
DATA mo_response_cloud TYPE REF TO object.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS z2ui5_cl_abap_api_http IMPLEMENTATION.
|
|
||||||
|
|
||||||
|
CLASS z2ui5_cl_abap_api_http IMPLEMENTATION.
|
||||||
METHOD delete_response_cookie.
|
METHOD delete_response_cookie.
|
||||||
|
|
||||||
DATA(lv_val) = CONV string( val ).
|
DATA(lv_val) = CONV string( val ).
|
||||||
|
@ -80,8 +81,7 @@ CLASS z2ui5_cl_abap_api_http IMPLEMENTATION.
|
||||||
object = <any>.
|
object = <any>.
|
||||||
|
|
||||||
CALL METHOD object->('DELETE_COOKIE')
|
CALL METHOD object->('DELETE_COOKIE')
|
||||||
EXPORTING
|
EXPORTING name = lv_val.
|
||||||
name = lv_val.
|
|
||||||
|
|
||||||
ELSE.
|
ELSE.
|
||||||
|
|
||||||
|
@ -97,6 +97,7 @@ CLASS z2ui5_cl_abap_api_http IMPLEMENTATION.
|
||||||
|
|
||||||
DATA object TYPE REF TO object.
|
DATA object TYPE REF TO object.
|
||||||
FIELD-SYMBOLS <any> TYPE any.
|
FIELD-SYMBOLS <any> TYPE any.
|
||||||
|
|
||||||
DATA(lv_val) = CONV string( val ).
|
DATA(lv_val) = CONV string( val ).
|
||||||
|
|
||||||
IF mo_server_onprem IS BOUND.
|
IF mo_server_onprem IS BOUND.
|
||||||
|
@ -105,10 +106,8 @@ CLASS z2ui5_cl_abap_api_http IMPLEMENTATION.
|
||||||
object = <any>.
|
object = <any>.
|
||||||
|
|
||||||
CALL METHOD object->('GET_COOKIE')
|
CALL METHOD object->('GET_COOKIE')
|
||||||
EXPORTING
|
EXPORTING name = lv_val
|
||||||
name = lv_val
|
IMPORTING value = result.
|
||||||
IMPORTING
|
|
||||||
value = result.
|
|
||||||
|
|
||||||
ELSE.
|
ELSE.
|
||||||
|
|
||||||
|
@ -126,6 +125,7 @@ CLASS z2ui5_cl_abap_api_http IMPLEMENTATION.
|
||||||
|
|
||||||
DATA object TYPE REF TO object.
|
DATA object TYPE REF TO object.
|
||||||
FIELD-SYMBOLS <any> TYPE any.
|
FIELD-SYMBOLS <any> TYPE any.
|
||||||
|
|
||||||
DATA(lv_val) = CONV string( val ).
|
DATA(lv_val) = CONV string( val ).
|
||||||
|
|
||||||
IF mo_server_onprem IS BOUND.
|
IF mo_server_onprem IS BOUND.
|
||||||
|
@ -134,18 +134,14 @@ CLASS z2ui5_cl_abap_api_http IMPLEMENTATION.
|
||||||
object = <any>.
|
object = <any>.
|
||||||
|
|
||||||
CALL METHOD object->('GET_HEADER_FIELD')
|
CALL METHOD object->('GET_HEADER_FIELD')
|
||||||
EXPORTING
|
EXPORTING name = lv_val
|
||||||
name = lv_val
|
RECEIVING value = result.
|
||||||
RECEIVING
|
|
||||||
value = result.
|
|
||||||
|
|
||||||
ELSE.
|
ELSE.
|
||||||
|
|
||||||
CALL METHOD mo_request_cloud->('IF_WEB_HTTP_REQUEST~GET_HEADER_FIELD')
|
CALL METHOD mo_request_cloud->('IF_WEB_HTTP_REQUEST~GET_HEADER_FIELD')
|
||||||
EXPORTING
|
EXPORTING i_name = lv_val
|
||||||
i_name = lv_val
|
RECEIVING r_value = result.
|
||||||
RECEIVING
|
|
||||||
r_value = result.
|
|
||||||
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
|
@ -164,15 +160,13 @@ CLASS z2ui5_cl_abap_api_http IMPLEMENTATION.
|
||||||
object = <any>.
|
object = <any>.
|
||||||
|
|
||||||
CALL METHOD object->('SET_HEADER_FIELD')
|
CALL METHOD object->('SET_HEADER_FIELD')
|
||||||
EXPORTING
|
EXPORTING name = lv_n
|
||||||
name = lv_n
|
|
||||||
value = lv_v.
|
value = lv_v.
|
||||||
|
|
||||||
ELSE.
|
ELSE.
|
||||||
|
|
||||||
CALL METHOD mo_response_cloud->('IF_WEB_HTTP_RESPONSE~SET_HEADER_FIELD')
|
CALL METHOD mo_response_cloud->('IF_WEB_HTTP_RESPONSE~SET_HEADER_FIELD')
|
||||||
EXPORTING
|
EXPORTING i_name = lv_n
|
||||||
i_name = lv_n
|
|
||||||
i_value = lv_v.
|
i_value = lv_v.
|
||||||
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
@ -205,14 +199,12 @@ CLASS z2ui5_cl_abap_api_http IMPLEMENTATION.
|
||||||
object = <any>.
|
object = <any>.
|
||||||
|
|
||||||
CALL METHOD object->('GET_CDATA')
|
CALL METHOD object->('GET_CDATA')
|
||||||
RECEIVING
|
RECEIVING data = result.
|
||||||
data = result.
|
|
||||||
|
|
||||||
ELSE.
|
ELSE.
|
||||||
|
|
||||||
CALL METHOD mo_request_cloud->('IF_WEB_HTTP_REQUEST~GET_TEXT')
|
CALL METHOD mo_request_cloud->('IF_WEB_HTTP_REQUEST~GET_TEXT')
|
||||||
RECEIVING
|
RECEIVING r_value = result.
|
||||||
r_value = result.
|
|
||||||
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
|
@ -229,14 +221,12 @@ CLASS z2ui5_cl_abap_api_http IMPLEMENTATION.
|
||||||
object = <any>.
|
object = <any>.
|
||||||
|
|
||||||
CALL METHOD object->('IF_HTTP_REQUEST~GET_METHOD')
|
CALL METHOD object->('IF_HTTP_REQUEST~GET_METHOD')
|
||||||
RECEIVING
|
RECEIVING method = result.
|
||||||
method = result.
|
|
||||||
|
|
||||||
ELSE.
|
ELSE.
|
||||||
|
|
||||||
CALL METHOD mo_request_cloud->('IF_WEB_HTTP_REQUEST~GET_METHOD')
|
CALL METHOD mo_request_cloud->('IF_WEB_HTTP_REQUEST~GET_METHOD')
|
||||||
RECEIVING
|
RECEIVING r_value = result.
|
||||||
r_value = result.
|
|
||||||
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
|
@ -253,14 +243,12 @@ CLASS z2ui5_cl_abap_api_http IMPLEMENTATION.
|
||||||
object = <any>.
|
object = <any>.
|
||||||
|
|
||||||
CALL METHOD object->('SET_CDATA')
|
CALL METHOD object->('SET_CDATA')
|
||||||
EXPORTING
|
EXPORTING data = val.
|
||||||
data = val.
|
|
||||||
|
|
||||||
ELSE.
|
ELSE.
|
||||||
|
|
||||||
CALL METHOD mo_response_cloud->('IF_WEB_HTTP_RESPONSE~SET_TEXT')
|
CALL METHOD mo_response_cloud->('IF_WEB_HTTP_RESPONSE~SET_TEXT')
|
||||||
EXPORTING
|
EXPORTING i_text = val.
|
||||||
i_text = val.
|
|
||||||
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
|
@ -270,6 +258,7 @@ CLASS z2ui5_cl_abap_api_http IMPLEMENTATION.
|
||||||
|
|
||||||
DATA object TYPE REF TO object.
|
DATA object TYPE REF TO object.
|
||||||
FIELD-SYMBOLS <any> TYPE any.
|
FIELD-SYMBOLS <any> TYPE any.
|
||||||
|
|
||||||
DATA(lv_reason) = CONV string( reason ).
|
DATA(lv_reason) = CONV string( reason ).
|
||||||
|
|
||||||
IF mo_server_onprem IS BOUND.
|
IF mo_server_onprem IS BOUND.
|
||||||
|
@ -278,15 +267,13 @@ CLASS z2ui5_cl_abap_api_http IMPLEMENTATION.
|
||||||
object = <any>.
|
object = <any>.
|
||||||
|
|
||||||
CALL METHOD object->('IF_HTTP_RESPONSE~SET_STATUS')
|
CALL METHOD object->('IF_HTTP_RESPONSE~SET_STATUS')
|
||||||
EXPORTING
|
EXPORTING code = code
|
||||||
code = code
|
|
||||||
reason = lv_reason.
|
reason = lv_reason.
|
||||||
|
|
||||||
ELSE.
|
ELSE.
|
||||||
|
|
||||||
CALL METHOD mo_response_cloud->('IF_WEB_HTTP_RESPONSE~SET_STATUS')
|
CALL METHOD mo_response_cloud->('IF_WEB_HTTP_RESPONSE~SET_STATUS')
|
||||||
EXPORTING
|
EXPORTING i_code = code
|
||||||
i_code = code
|
|
||||||
i_reason = lv_reason.
|
i_reason = lv_reason.
|
||||||
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
@ -298,8 +285,7 @@ CLASS z2ui5_cl_abap_api_http IMPLEMENTATION.
|
||||||
IF mo_server_onprem IS BOUND.
|
IF mo_server_onprem IS BOUND.
|
||||||
|
|
||||||
CALL METHOD mo_server_onprem->('SET_SESSION_STATEFUL')
|
CALL METHOD mo_server_onprem->('SET_SESSION_STATEFUL')
|
||||||
EXPORTING
|
EXPORTING stateful = val.
|
||||||
stateful = val.
|
|
||||||
|
|
||||||
ELSE.
|
ELSE.
|
||||||
|
|
||||||
|
@ -308,5 +294,4 @@ CLASS z2ui5_cl_abap_api_http IMPLEMENTATION.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,8 +1,7 @@
|
||||||
CLASS z2ui5_cx_abap_api DEFINITION
|
CLASS z2ui5_cx_abap_api DEFINITION
|
||||||
PUBLIC
|
PUBLIC
|
||||||
INHERITING FROM cx_no_check
|
INHERITING FROM cx_no_check FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -11,26 +10,23 @@ CLASS z2ui5_cx_abap_api DEFINITION
|
||||||
x_root TYPE REF TO cx_root,
|
x_root TYPE REF TO cx_root,
|
||||||
* uuid TYPE string,
|
* uuid TYPE string,
|
||||||
text TYPE string,
|
text TYPE string,
|
||||||
END OF ms_error .
|
END OF ms_error.
|
||||||
|
|
||||||
METHODS constructor
|
METHODS constructor
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!val TYPE any OPTIONAL
|
val TYPE any OPTIONAL
|
||||||
!previous TYPE REF TO cx_root OPTIONAL
|
!previous TYPE REF TO cx_root OPTIONAL
|
||||||
PREFERRED PARAMETER val.
|
PREFERRED PARAMETER val.
|
||||||
|
|
||||||
METHODS if_message~get_text
|
METHODS if_message~get_text REDEFINITION.
|
||||||
REDEFINITION.
|
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cx_abap_api IMPLEMENTATION.
|
CLASS z2ui5_cx_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD constructor ##ADT_SUPPRESS_GENERATION.
|
METHOD constructor ##ADT_SUPPRESS_GENERATION.
|
||||||
|
|
||||||
super->constructor( previous = previous ).
|
super->constructor( previous = previous ).
|
||||||
|
@ -45,7 +41,6 @@ CLASS z2ui5_cx_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD if_message~get_text.
|
METHOD if_message~get_text.
|
||||||
|
|
||||||
IF ms_error-x_root IS NOT INITIAL.
|
IF ms_error-x_root IS NOT INITIAL.
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
CLASS ltcl_unit_test DEFINITION FINAL FOR TESTING
|
CLASS ltcl_unit_test DEFINITION FINAL
|
||||||
DURATION SHORT
|
FOR TESTING RISK LEVEL DANGEROUS DURATION SHORT.
|
||||||
RISK LEVEL DANGEROUS.
|
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS test_raise FOR TESTING RAISING cx_static_check.
|
METHODS test_raise FOR TESTING RAISING cx_static_check.
|
||||||
|
@ -8,21 +7,17 @@ ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS ltcl_unit_test IMPLEMENTATION.
|
CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD test_raise.
|
METHOD test_raise.
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
|
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_abap_api
|
RAISE EXCEPTION TYPE z2ui5_cx_abap_api
|
||||||
EXPORTING
|
EXPORTING val = `this is an error text`.
|
||||||
val = `this is an error text`.
|
|
||||||
|
|
||||||
CATCH z2ui5_cx_abap_api INTO DATA(lx).
|
CATCH z2ui5_cx_abap_api INTO DATA(lx).
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `this is an error text`
|
||||||
act = lx->get_text( )
|
act = lx->get_text( ) ).
|
||||||
exp = `this is an error text` ).
|
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,15 +1,15 @@
|
||||||
CLASS z2ui5_cl_util DEFINITION
|
CLASS z2ui5_cl_util DEFINITION
|
||||||
PUBLIC
|
PUBLIC
|
||||||
CREATE PUBLIC
|
INHERITING FROM z2ui5_cl_abap_api
|
||||||
INHERITING FROM z2ui5_cl_abap_api.
|
CREATE PUBLIC.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
* abap-toolkit - Utility Functions for ABAP Cloud & Standard ABAP
|
" abap-toolkit - Utility Functions for ABAP Cloud & Standard ABAP
|
||||||
* version: '0.0.1'.
|
" version: '0.0.1'.
|
||||||
* origin: https://github.com/oblomov-dev/abap-toolkit
|
" origin: https://github.com/oblomov-dev/abap-toolkit
|
||||||
* author: https://github.com/oblomov-dev
|
" author: https://github.com/oblomov-dev
|
||||||
* license: MIT.
|
" license: MIT.
|
||||||
|
|
||||||
TYPES:
|
TYPES:
|
||||||
BEGIN OF ty_s_name_value,
|
BEGIN OF ty_s_name_value,
|
||||||
|
@ -85,7 +85,7 @@ CLASS z2ui5_cl_util DEFINITION
|
||||||
|
|
||||||
CLASS-METHODS rtti_get_t_attri_by_include
|
CLASS-METHODS rtti_get_t_attri_by_include
|
||||||
IMPORTING
|
IMPORTING
|
||||||
type TYPE REF TO cl_abap_datadescr
|
!type TYPE REF TO cl_abap_datadescr
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE abap_component_tab.
|
VALUE(result) TYPE abap_component_tab.
|
||||||
|
|
||||||
|
@ -153,7 +153,7 @@ CLASS z2ui5_cl_util DEFINITION
|
||||||
|
|
||||||
CLASS-METHODS filter_itab
|
CLASS-METHODS filter_itab
|
||||||
IMPORTING
|
IMPORTING
|
||||||
filter TYPE ty_t_filter_multi
|
!filter TYPE ty_t_filter_multi
|
||||||
CHANGING
|
CHANGING
|
||||||
val TYPE STANDARD TABLE.
|
val TYPE STANDARD TABLE.
|
||||||
|
|
||||||
|
@ -175,7 +175,6 @@ CLASS z2ui5_cl_util DEFINITION
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
|
|
||||||
CLASS-METHODS filter_get_sql_by_sql_string
|
CLASS-METHODS filter_get_sql_by_sql_string
|
||||||
IMPORTING
|
IMPORTING
|
||||||
val TYPE clike
|
val TYPE clike
|
||||||
|
@ -184,20 +183,20 @@ CLASS z2ui5_cl_util DEFINITION
|
||||||
|
|
||||||
CLASS-METHODS url_param_get
|
CLASS-METHODS url_param_get
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!val TYPE string
|
val TYPE string
|
||||||
!url TYPE string
|
url TYPE string
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
CLASS-METHODS url_param_create_url
|
CLASS-METHODS url_param_create_url
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!t_params TYPE ty_t_name_value
|
t_params TYPE ty_t_name_value
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
CLASS-METHODS url_param_set
|
CLASS-METHODS url_param_set
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!url TYPE string
|
url TYPE string
|
||||||
!name TYPE string
|
!name TYPE string
|
||||||
!value TYPE string
|
!value TYPE string
|
||||||
RETURNING
|
RETURNING
|
||||||
|
@ -223,7 +222,7 @@ CLASS z2ui5_cl_util DEFINITION
|
||||||
|
|
||||||
CLASS-METHODS x_check_raise
|
CLASS-METHODS x_check_raise
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!v TYPE clike DEFAULT `CX_SY_SUBRC`
|
v TYPE clike DEFAULT `CX_SY_SUBRC`
|
||||||
!when TYPE xfeld.
|
!when TYPE xfeld.
|
||||||
|
|
||||||
CLASS-METHODS x_raise
|
CLASS-METHODS x_raise
|
||||||
|
@ -237,19 +236,19 @@ CLASS z2ui5_cl_util DEFINITION
|
||||||
|
|
||||||
CLASS-METHODS json_stringify
|
CLASS-METHODS json_stringify
|
||||||
IMPORTING
|
IMPORTING
|
||||||
any TYPE any
|
!any TYPE any
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
CLASS-METHODS xml_parse
|
CLASS-METHODS xml_parse
|
||||||
IMPORTING
|
IMPORTING
|
||||||
xml TYPE clike
|
!xml TYPE clike
|
||||||
EXPORTING
|
EXPORTING
|
||||||
any TYPE any.
|
!any TYPE any.
|
||||||
|
|
||||||
CLASS-METHODS xml_stringify
|
CLASS-METHODS xml_stringify
|
||||||
IMPORTING
|
IMPORTING
|
||||||
any TYPE any
|
!any TYPE any
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string
|
VALUE(result) TYPE string
|
||||||
RAISING
|
RAISING
|
||||||
|
@ -271,7 +270,7 @@ CLASS z2ui5_cl_util DEFINITION
|
||||||
IMPORTING
|
IMPORTING
|
||||||
val TYPE any
|
val TYPE any
|
||||||
CHANGING
|
CHANGING
|
||||||
data TYPE any.
|
!data TYPE any.
|
||||||
|
|
||||||
CLASS-METHODS c_trim_upper
|
CLASS-METHODS c_trim_upper
|
||||||
IMPORTING
|
IMPORTING
|
||||||
|
@ -281,7 +280,7 @@ CLASS z2ui5_cl_util DEFINITION
|
||||||
|
|
||||||
CLASS-METHODS xml_srtti_stringify
|
CLASS-METHODS xml_srtti_stringify
|
||||||
IMPORTING
|
IMPORTING
|
||||||
data TYPE any
|
!data TYPE any
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
|
@ -297,8 +296,8 @@ CLASS z2ui5_cl_util DEFINITION
|
||||||
|
|
||||||
CLASS-METHODS time_substract_seconds
|
CLASS-METHODS time_substract_seconds
|
||||||
IMPORTING
|
IMPORTING
|
||||||
time TYPE timestampl
|
!time TYPE timestampl
|
||||||
seconds TYPE i
|
!seconds TYPE i
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE timestampl.
|
VALUE(result) TYPE timestampl.
|
||||||
|
|
||||||
|
@ -377,7 +376,7 @@ CLASS z2ui5_cl_util DEFINITION
|
||||||
CLASS-METHODS filter_update_tokens
|
CLASS-METHODS filter_update_tokens
|
||||||
IMPORTING
|
IMPORTING
|
||||||
val TYPE ty_t_filter_multi
|
val TYPE ty_t_filter_multi
|
||||||
name TYPE string
|
!name TYPE string
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE ty_t_filter_multi.
|
VALUE(result) TYPE ty_t_filter_multi.
|
||||||
|
|
||||||
|
@ -407,19 +406,19 @@ CLASS z2ui5_cl_util DEFINITION
|
||||||
IMPORTING
|
IMPORTING
|
||||||
val TYPE STANDARD TABLE
|
val TYPE STANDARD TABLE
|
||||||
CHANGING
|
CHANGING
|
||||||
tab TYPE STANDARD TABLE.
|
!tab TYPE STANDARD TABLE.
|
||||||
|
|
||||||
CLASS-METHODS itab_filter_by_val
|
CLASS-METHODS itab_filter_by_val
|
||||||
IMPORTING
|
IMPORTING
|
||||||
val TYPE clike
|
val TYPE clike
|
||||||
CHANGING
|
CHANGING
|
||||||
tab TYPE STANDARD TABLE.
|
!tab TYPE STANDARD TABLE.
|
||||||
|
|
||||||
CLASS-METHODS itab_filter_by_t_range
|
CLASS-METHODS itab_filter_by_t_range
|
||||||
IMPORTING
|
IMPORTING
|
||||||
val TYPE ty_t_filter_multi
|
val TYPE ty_t_filter_multi
|
||||||
CHANGING
|
CHANGING
|
||||||
tab TYPE STANDARD TABLE.
|
!tab TYPE STANDARD TABLE.
|
||||||
|
|
||||||
CLASS-METHODS time_get_time_by_stampl
|
CLASS-METHODS time_get_time_by_stampl
|
||||||
IMPORTING
|
IMPORTING
|
||||||
|
@ -435,7 +434,7 @@ CLASS z2ui5_cl_util DEFINITION
|
||||||
|
|
||||||
CLASS-METHODS conv_copy_ref_data
|
CLASS-METHODS conv_copy_ref_data
|
||||||
IMPORTING
|
IMPORTING
|
||||||
from TYPE any
|
!from TYPE any
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE REF TO data.
|
VALUE(result) TYPE REF TO data.
|
||||||
|
|
||||||
|
@ -445,11 +444,12 @@ CLASS z2ui5_cl_util DEFINITION
|
||||||
|
|
||||||
CLASS-METHODS rtti_tab_get_relative_name
|
CLASS-METHODS rtti_tab_get_relative_name
|
||||||
IMPORTING
|
IMPORTING
|
||||||
table TYPE any
|
!table TYPE any
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
CLASS-METHODS check_raise_srtti_installed.
|
CLASS-METHODS check_raise_srtti_installed.
|
||||||
|
|
||||||
CLASS-METHODS rtti_check_clike
|
CLASS-METHODS rtti_check_clike
|
||||||
IMPORTING
|
IMPORTING
|
||||||
val TYPE any
|
val TYPE any
|
||||||
|
@ -457,15 +457,13 @@ CLASS z2ui5_cl_util DEFINITION
|
||||||
VALUE(result) TYPE abap_bool.
|
VALUE(result) TYPE abap_bool.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_util IMPLEMENTATION.
|
CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD boolean_abap_2_json.
|
METHOD boolean_abap_2_json.
|
||||||
|
|
||||||
IF boolean_check_by_data( val ).
|
IF boolean_check_by_data( val ).
|
||||||
|
@ -476,7 +474,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD boolean_check_by_data.
|
METHOD boolean_check_by_data.
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
|
@ -487,7 +484,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD boolean_check_by_name.
|
METHOD boolean_check_by_name.
|
||||||
|
|
||||||
CASE val.
|
CASE val.
|
||||||
|
@ -505,7 +501,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD check_bound_a_not_inital.
|
METHOD check_bound_a_not_inital.
|
||||||
|
|
||||||
IF val IS NOT BOUND.
|
IF val IS NOT BOUND.
|
||||||
|
@ -516,7 +511,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD check_unassign_inital.
|
METHOD check_unassign_inital.
|
||||||
|
|
||||||
IF val IS INITIAL.
|
IF val IS INITIAL.
|
||||||
|
@ -531,7 +525,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD conv_copy_ref_data.
|
METHOD conv_copy_ref_data.
|
||||||
|
|
||||||
FIELD-SYMBOLS <from> TYPE data.
|
FIELD-SYMBOLS <from> TYPE data.
|
||||||
|
@ -549,14 +542,12 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD conv_get_as_data_ref.
|
METHOD conv_get_as_data_ref.
|
||||||
|
|
||||||
GET REFERENCE OF val INTO result.
|
GET REFERENCE OF val INTO result.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD c_trim.
|
METHOD c_trim.
|
||||||
|
|
||||||
result = shift_left( shift_right( CONV string( val ) ) ).
|
result = shift_left( shift_right( CONV string( val ) ) ).
|
||||||
|
@ -568,21 +559,18 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD c_trim_lower.
|
METHOD c_trim_lower.
|
||||||
|
|
||||||
result = to_lower( c_trim( CONV string( val ) ) ).
|
result = to_lower( c_trim( CONV string( val ) ) ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD c_trim_upper.
|
METHOD c_trim_upper.
|
||||||
|
|
||||||
result = to_upper( c_trim( CONV string( val ) ) ).
|
result = to_upper( c_trim( CONV string( val ) ) ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD filter_itab.
|
METHOD filter_itab.
|
||||||
|
|
||||||
DATA ref TYPE REF TO data.
|
DATA ref TYPE REF TO data.
|
||||||
|
@ -606,7 +594,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD filter_get_multi_by_data.
|
METHOD filter_get_multi_by_data.
|
||||||
|
|
||||||
LOOP AT rtti_get_t_attri_by_any( val ) REFERENCE INTO DATA(lr_comp).
|
LOOP AT rtti_get_t_attri_by_any( val ) REFERENCE INTO DATA(lr_comp).
|
||||||
|
@ -615,32 +602,43 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD filter_get_range_by_token.
|
METHOD filter_get_range_by_token.
|
||||||
|
|
||||||
DATA(lv_length) = strlen( value ) - 1.
|
DATA(lv_length) = strlen( value ) - 1.
|
||||||
CASE value(1).
|
CASE value(1).
|
||||||
|
|
||||||
WHEN `=`.
|
WHEN `=`.
|
||||||
result = VALUE #( sign = `I` option = `EQ` low = value+1 ).
|
result = VALUE #( sign = `I`
|
||||||
|
option = `EQ`
|
||||||
|
low = value+1 ).
|
||||||
WHEN `<`.
|
WHEN `<`.
|
||||||
IF value+1(1) = `=`.
|
IF value+1(1) = `=`.
|
||||||
result = VALUE #( sign = `I` option = `LE` low = value+2 ).
|
result = VALUE #( sign = `I`
|
||||||
|
option = `LE`
|
||||||
|
low = value+2 ).
|
||||||
ELSE.
|
ELSE.
|
||||||
result = VALUE #( sign = `I` option = `LT` low = value+1 ).
|
result = VALUE #( sign = `I`
|
||||||
|
option = `LT`
|
||||||
|
low = value+1 ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
WHEN `>`.
|
WHEN `>`.
|
||||||
IF value+1(1) = `=`.
|
IF value+1(1) = `=`.
|
||||||
result = VALUE #( sign = `I` option = `GE` low = value+2 ).
|
result = VALUE #( sign = `I`
|
||||||
|
option = `GE`
|
||||||
|
low = value+2 ).
|
||||||
ELSE.
|
ELSE.
|
||||||
result = VALUE #( sign = `I` option = `GT` low = value+1 ).
|
result = VALUE #( sign = `I`
|
||||||
|
option = `GT`
|
||||||
|
low = value+1 ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
WHEN `*`.
|
WHEN `*`.
|
||||||
IF value+lv_length(1) = `*`.
|
IF value+lv_length(1) = `*`.
|
||||||
SHIFT value RIGHT DELETING TRAILING `*`.
|
SHIFT value RIGHT DELETING TRAILING `*`.
|
||||||
SHIFT value LEFT DELETING LEADING `*`.
|
SHIFT value LEFT DELETING LEADING `*`.
|
||||||
result = VALUE #( sign = `I` option = `CP` low = value ).
|
result = VALUE #( sign = `I`
|
||||||
|
option = `CP`
|
||||||
|
low = value ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
WHEN OTHERS.
|
WHEN OTHERS.
|
||||||
|
@ -648,14 +646,15 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
SPLIT value AT `...` INTO result-low result-high.
|
SPLIT value AT `...` INTO result-low result-high.
|
||||||
result-option = `BT`.
|
result-option = `BT`.
|
||||||
ELSE.
|
ELSE.
|
||||||
result = VALUE #( sign = `I` option = `EQ` low = value ).
|
result = VALUE #( sign = `I`
|
||||||
|
option = `EQ`
|
||||||
|
low = value ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ENDCASE.
|
ENDCASE.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD filter_update_tokens.
|
METHOD filter_update_tokens.
|
||||||
|
|
||||||
result = val.
|
result = val.
|
||||||
|
@ -665,12 +664,16 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
LOOP AT lr_filter->t_token_added INTO ls_token.
|
LOOP AT lr_filter->t_token_added INTO ls_token.
|
||||||
INSERT VALUE #( key = ls_token-key text = ls_token-text visible = abap_true editable = abap_true ) INTO TABLE lr_filter->t_token.
|
INSERT VALUE #( key = ls_token-key
|
||||||
|
text = ls_token-text
|
||||||
|
visible = abap_true
|
||||||
|
editable = abap_true ) INTO TABLE lr_filter->t_token.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
CLEAR lr_filter->t_token_removed.
|
CLEAR lr_filter->t_token_removed.
|
||||||
CLEAR lr_filter->t_token_added.
|
CLEAR lr_filter->t_token_added.
|
||||||
|
|
||||||
|
" TODO: variable is assigned but never used (ABAP cleaner)
|
||||||
DATA(lt_token) = result[ name = name ]-t_token.
|
DATA(lt_token) = result[ name = name ]-t_token.
|
||||||
DATA(lt_range) = z2ui5_cl_util=>filter_get_range_t_by_token_t( result[ name = name ]-t_token ).
|
DATA(lt_range) = z2ui5_cl_util=>filter_get_range_t_by_token_t( result[ name = name ]-t_token ).
|
||||||
lr_filter->t_range = lt_range.
|
lr_filter->t_range = lt_range.
|
||||||
|
@ -685,11 +688,9 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD filter_get_token_range_mapping.
|
METHOD filter_get_token_range_mapping.
|
||||||
|
|
||||||
result = VALUE #(
|
result = VALUE #( ( n = `EQ` v = `={LOW}` )
|
||||||
( n = `EQ` v = `={LOW}` )
|
|
||||||
( n = `LT` v = `<{LOW}` )
|
( n = `LT` v = `<{LOW}` )
|
||||||
( n = `LE` v = `<={LOW}` )
|
( n = `LE` v = `<={LOW}` )
|
||||||
( n = `GT` v = `>{LOW}` )
|
( n = `GT` v = `>{LOW}` )
|
||||||
|
@ -702,18 +703,14 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD filter_get_token_t_by_range_t.
|
METHOD filter_get_token_t_by_range_t.
|
||||||
|
|
||||||
DATA(lt_mapping) = filter_get_token_range_mapping( ).
|
DATA(lt_mapping) = filter_get_token_range_mapping( ).
|
||||||
|
|
||||||
DATA(lt_tab) = VALUE ty_t_range( ).
|
DATA(lt_tab) = VALUE ty_t_range( ).
|
||||||
|
|
||||||
itab_corresponding(
|
itab_corresponding( EXPORTING val = val
|
||||||
EXPORTING
|
CHANGING tab = lt_tab
|
||||||
val = val
|
|
||||||
CHANGING
|
|
||||||
tab = lt_tab
|
|
||||||
).
|
).
|
||||||
|
|
||||||
LOOP AT lt_tab REFERENCE INTO DATA(lr_row).
|
LOOP AT lt_tab REFERENCE INTO DATA(lr_row).
|
||||||
|
@ -722,12 +719,14 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
REPLACE `{LOW}` IN lv_value WITH lr_row->low.
|
REPLACE `{LOW}` IN lv_value WITH lr_row->low.
|
||||||
REPLACE `{HIGH}` IN lv_value WITH lr_row->high.
|
REPLACE `{HIGH}` IN lv_value WITH lr_row->high.
|
||||||
|
|
||||||
INSERT VALUE #( key = lv_value text = lv_value visible = abap_true editable = abap_true ) INTO TABLE result.
|
INSERT VALUE #( key = lv_value
|
||||||
|
text = lv_value
|
||||||
|
visible = abap_true
|
||||||
|
editable = abap_true ) INTO TABLE result.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD itab_filter_by_val.
|
METHOD itab_filter_by_val.
|
||||||
|
|
||||||
FIELD-SYMBOLS <row> TYPE any.
|
FIELD-SYMBOLS <row> TYPE any.
|
||||||
|
@ -751,17 +750,17 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD itab_get_csv_by_itab.
|
METHOD itab_get_csv_by_itab.
|
||||||
|
|
||||||
FIELD-SYMBOLS <tab> TYPE table.
|
FIELD-SYMBOLS <tab> TYPE table.
|
||||||
|
|
||||||
ASSIGN val TO <tab>.
|
ASSIGN val TO <tab>.
|
||||||
DATA(tab) = CAST cl_abap_tabledescr( cl_abap_typedescr=>describe_by_data( <tab> ) ).
|
DATA(tab) = CAST cl_abap_tabledescr( cl_abap_typedescr=>describe_by_data( <tab> ) ).
|
||||||
|
|
||||||
DATA(struc) = CAST cl_abap_structdescr( tab->get_table_line_type( ) ).
|
DATA(struc) = CAST cl_abap_structdescr( tab->get_table_line_type( ) ).
|
||||||
|
|
||||||
LOOP AT struc->get_components( ) REFERENCE INTO DATA(lr_comp).
|
LOOP AT struc->get_components( ) REFERENCE INTO DATA(lr_comp).
|
||||||
result = result && lr_comp->name && ';'.
|
result = |{ result }{ lr_comp->name };|.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
result = result && cl_abap_char_utilities=>cr_lf.
|
result = result && cl_abap_char_utilities=>cr_lf.
|
||||||
|
@ -777,14 +776,13 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
EXIT.
|
EXIT.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
lv_index = lv_index + 1.
|
lv_index = lv_index + 1.
|
||||||
result = result && <field> && ';'.
|
result = |{ result }{ <field> };|.
|
||||||
ENDDO.
|
ENDDO.
|
||||||
result = result && cl_abap_char_utilities=>cr_lf.
|
result = result && cl_abap_char_utilities=>cr_lf.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD itab_get_itab_by_csv.
|
METHOD itab_get_itab_by_csv.
|
||||||
|
|
||||||
DATA lt_comp TYPE cl_abap_structdescr=>component_table.
|
DATA lt_comp TYPE cl_abap_structdescr=>component_table.
|
||||||
|
@ -794,18 +792,17 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
SPLIT val AT cl_abap_char_utilities=>newline INTO TABLE DATA(lt_rows).
|
SPLIT val AT cl_abap_char_utilities=>newline INTO TABLE DATA(lt_rows).
|
||||||
SPLIT lt_rows[ 1 ] AT ';' INTO TABLE DATA(lt_cols).
|
SPLIT lt_rows[ 1 ] AT ';' INTO TABLE DATA(lt_cols).
|
||||||
|
|
||||||
|
|
||||||
LOOP AT lt_cols REFERENCE INTO DATA(lr_col).
|
LOOP AT lt_cols REFERENCE INTO DATA(lr_col).
|
||||||
|
|
||||||
DATA(lv_name) = c_trim_upper( lr_col->* ).
|
DATA(lv_name) = c_trim_upper( lr_col->* ).
|
||||||
REPLACE ` ` IN lv_name WITH `_`.
|
REPLACE ` ` IN lv_name WITH `_`.
|
||||||
|
|
||||||
INSERT VALUE #( name = lv_name type = cl_abap_elemdescr=>get_c( 40 ) ) INTO TABLE lt_comp.
|
INSERT VALUE #( name = lv_name
|
||||||
|
type = cl_abap_elemdescr=>get_c( 40 ) ) INTO TABLE lt_comp.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
DATA(struc) = cl_abap_structdescr=>get( lt_comp ).
|
DATA(struc) = cl_abap_structdescr=>get( lt_comp ).
|
||||||
DATA(o_table_desc) = cl_abap_tabledescr=>create(
|
DATA(o_table_desc) = cl_abap_tabledescr=>create( p_line_type = CAST #( struc )
|
||||||
p_line_type = CAST #( struc )
|
|
||||||
p_table_kind = cl_abap_tabledescr=>tablekind_std
|
p_table_kind = cl_abap_tabledescr=>tablekind_std
|
||||||
p_unique = abap_false ).
|
p_unique = abap_false ).
|
||||||
|
|
||||||
|
@ -830,42 +827,34 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD json_parse.
|
METHOD json_parse.
|
||||||
TRY.
|
TRY.
|
||||||
|
|
||||||
z2ui5_cl_ajson=>parse( val )->to_abap(
|
z2ui5_cl_ajson=>parse( val )->to_abap( EXPORTING iv_corresponding = abap_true
|
||||||
EXPORTING
|
IMPORTING ev_container = data ).
|
||||||
iv_corresponding = abap_true
|
|
||||||
IMPORTING
|
|
||||||
ev_container = data ).
|
|
||||||
|
|
||||||
CATCH cx_root INTO DATA(x).
|
CATCH cx_root INTO DATA(x).
|
||||||
ASSERT x IS NOT BOUND.
|
ASSERT x IS NOT BOUND.
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD json_stringify.
|
METHOD json_stringify.
|
||||||
TRY.
|
TRY.
|
||||||
|
|
||||||
DATA(li_ajson) = CAST z2ui5_if_ajson( z2ui5_cl_ajson=>create_empty( ) ).
|
DATA(li_ajson) = CAST z2ui5_if_ajson( z2ui5_cl_ajson=>create_empty( ) ).
|
||||||
result = li_ajson->set( iv_path = `/` iv_val = any )->stringify( ).
|
result = li_ajson->set( iv_path = `/`
|
||||||
|
iv_val = any )->stringify( ).
|
||||||
|
|
||||||
CATCH cx_root INTO DATA(x).
|
CATCH cx_root INTO DATA(x).
|
||||||
ASSERT x IS NOT BOUND.
|
ASSERT x IS NOT BOUND.
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_check_class_exists.
|
METHOD rtti_check_class_exists.
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
cl_abap_classdescr=>describe_by_name(
|
cl_abap_classdescr=>describe_by_name( EXPORTING p_name = val
|
||||||
EXPORTING
|
EXCEPTIONS type_not_found = 1 ).
|
||||||
p_name = val
|
|
||||||
EXCEPTIONS
|
|
||||||
type_not_found = 1 ).
|
|
||||||
IF sy-subrc = 0.
|
IF sy-subrc = 0.
|
||||||
result = abap_true.
|
result = abap_true.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
@ -876,7 +865,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_check_ref_data.
|
METHOD rtti_check_ref_data.
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
|
@ -888,7 +876,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_check_type_kind_dref.
|
METHOD rtti_check_type_kind_dref.
|
||||||
|
|
||||||
DATA(lv_type_kind) = cl_abap_datadescr=>get_data_type_kind( val ).
|
DATA(lv_type_kind) = cl_abap_datadescr=>get_data_type_kind( val ).
|
||||||
|
@ -896,32 +883,30 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_get_classname_by_ref.
|
METHOD rtti_get_classname_by_ref.
|
||||||
|
|
||||||
DATA(lv_classname) = cl_abap_classdescr=>get_class_name( in ).
|
DATA(lv_classname) = cl_abap_classdescr=>get_class_name( in ).
|
||||||
result = substring_after( val = lv_classname sub = `\CLASS=` ).
|
result = substring_after( val = lv_classname
|
||||||
|
sub = `\CLASS=` ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_get_intfname_by_ref.
|
METHOD rtti_get_intfname_by_ref.
|
||||||
|
|
||||||
DATA(rtti) = cl_abap_typedescr=>describe_by_data( in ).
|
DATA(rtti) = cl_abap_typedescr=>describe_by_data( in ).
|
||||||
DATA(ref) = CAST cl_abap_refdescr( rtti ).
|
DATA(ref) = CAST cl_abap_refdescr( rtti ).
|
||||||
DATA(name) = ref->get_referenced_type( )->absolute_name.
|
DATA(name) = ref->get_referenced_type( )->absolute_name.
|
||||||
result = substring_after( val = name sub = `\INTERFACE=` ).
|
result = substring_after( val = name
|
||||||
|
sub = `\INTERFACE=` ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_get_type_kind.
|
METHOD rtti_get_type_kind.
|
||||||
|
|
||||||
result = cl_abap_datadescr=>get_data_type_kind( val ).
|
result = cl_abap_datadescr=>get_data_type_kind( val ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_get_type_name.
|
METHOD rtti_get_type_name.
|
||||||
TRY.
|
TRY.
|
||||||
|
|
||||||
|
@ -933,7 +918,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_get_t_attri_by_include.
|
METHOD rtti_get_t_attri_by_include.
|
||||||
|
|
||||||
DATA(sdescr) = CAST cl_abap_structdescr( cl_abap_typedescr=>describe_by_name( type->absolute_name ) ).
|
DATA(sdescr) = CAST cl_abap_structdescr( cl_abap_typedescr=>describe_by_name( type->absolute_name ) ).
|
||||||
|
@ -961,7 +945,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_get_t_attri_by_oref.
|
METHOD rtti_get_t_attri_by_oref.
|
||||||
|
|
||||||
DATA(lo_obj_ref) = cl_abap_objectdescr=>describe_by_object_ref( val ).
|
DATA(lo_obj_ref) = cl_abap_objectdescr=>describe_by_object_ref( val ).
|
||||||
|
@ -969,7 +952,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_get_t_attri_by_any.
|
METHOD rtti_get_t_attri_by_any.
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
|
@ -1003,7 +985,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_get_t_ddic_fixed_values.
|
METHOD rtti_get_t_ddic_fixed_values.
|
||||||
|
|
||||||
IF rollname IS INITIAL.
|
IF rollname IS INITIAL.
|
||||||
|
@ -1022,8 +1003,7 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(elemdescr) = CAST cl_abap_elemdescr( typedescr ).
|
DATA(elemdescr) = CAST cl_abap_elemdescr( typedescr ).
|
||||||
|
|
||||||
result = rtti_get_t_fixvalues(
|
result = rtti_get_t_fixvalues( elemdescr = elemdescr
|
||||||
elemdescr = elemdescr
|
|
||||||
langu = langu ).
|
langu = langu ).
|
||||||
|
|
||||||
CATCH cx_root.
|
CATCH cx_root.
|
||||||
|
@ -1031,7 +1011,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_tab_get_relative_name.
|
METHOD rtti_tab_get_relative_name.
|
||||||
|
|
||||||
FIELD-SYMBOLS <table> TYPE any.
|
FIELD-SYMBOLS <table> TYPE any.
|
||||||
|
@ -1058,32 +1037,28 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD source_get_file_types.
|
METHOD source_get_file_types.
|
||||||
|
|
||||||
DATA(lv_types) = `abap, abc, actionscript, ada, apache_conf, applescript, asciidoc, assembly_x86, autohotkey, batchfile, bro, c9search, c_cpp, cirru, clojure, cobol, coffee, coldfusion, csharp, css, curly, d, dart, diff, django, dockerfile, ` &&
|
DATA(lv_types) = |abap, abc, actionscript, ada, apache_conf, applescript, asciidoc, assembly_x86, autohotkey, batchfile, bro, c9search, c_cpp, cirru, clojure, cobol, coffee, coldfusion, csharp, css, curly, d, dart, diff, django, dockerfile, | &&
|
||||||
`dot, drools, eiffel, yaml, ejs, elixir, elm, erlang, forth, fortran, ftl, gcode, gherkin, gitignore, glsl, gobstones, golang, groovy, haml, handlebars, haskell, haskell_cabal, haxe, hjson, html, html_elixir, html_ruby, ini, io, jack, jade, java, ja` &&
|
|dot, drools, eiffel, yaml, ejs, elixir, elm, erlang, forth, fortran, ftl, gcode, gherkin, gitignore, glsl, gobstones, golang, groovy, haml, handlebars, haskell, haskell_cabal, haxe, hjson, html, html_elixir, html_ruby, ini, io, jack, jade, java, ja| &&
|
||||||
`vascri` &&
|
|vascri| &&
|
||||||
`pt, json, jsoniq, jsp, jsx, julia, kotlin, latex, lean, less, liquid, lisp, live_script, livescript, logiql, lsl, lua, luapage, lucene, makefile, markdown, mask, matlab, mavens_mate_log, maze, mel, mips_assembler, mipsassembler, mushcode, mysql, ni` &&
|
|pt, json, jsoniq, jsp, jsx, julia, kotlin, latex, lean, less, liquid, lisp, live_script, livescript, logiql, lsl, lua, luapage, lucene, makefile, markdown, mask, matlab, mavens_mate_log, maze, mel, mips_assembler, mipsassembler, mushcode, mysql, ni| &&
|
||||||
`x, nsis, objectivec, ocaml, pascal, perl, pgsql, php, plain_text, powershell, praat, prolog, properties, protobuf, python, r, razor, rdoc, rhtml, rst, ruby, rust, sass, scad, scala, scheme, scss, sh, sjs, smarty, snippets, soy_template, space, sql,` &&
|
|x, nsis, objectivec, ocaml, pascal, perl, pgsql, php, plain_text, powershell, praat, prolog, properties, protobuf, python, r, razor, rdoc, rhtml, rst, ruby, rust, sass, scad, scala, scheme, scss, sh, sjs, smarty, snippets, soy_template, space, sql,| &&
|
||||||
` sqlserver, stylus, svg, swift, swig, tcl, tex, text, textile, toml, tsx, twig, typescript, vala, vbscript, velocity, verilog, vhdl, wollok, xml, xquery, terraform, slim, redshift, red, puppet, php_laravel_blade, mixal, jssm, fsharp, edifact,` &&
|
| sqlserver, stylus, svg, swift, swig, tcl, tex, text, textile, toml, tsx, twig, typescript, vala, vbscript, velocity, verilog, vhdl, wollok, xml, xquery, terraform, slim, redshift, red, puppet, php_laravel_blade, mixal, jssm, fsharp, edifact,| &&
|
||||||
` csp, cssound_score, cssound_orchestra, cssound_document`.
|
| csp, cssound_score, cssound_orchestra, cssound_document|.
|
||||||
SPLIT lv_types AT ',' INTO TABLE result.
|
SPLIT lv_types AT ',' INTO TABLE result.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD source_get_method2.
|
METHOD source_get_method2.
|
||||||
|
|
||||||
DATA(lt_source) = source_get_method(
|
DATA(lt_source) = source_get_method( iv_classname = iv_classname
|
||||||
iv_classname = iv_classname
|
|
||||||
iv_methodname = iv_methodname ).
|
iv_methodname = iv_methodname ).
|
||||||
|
|
||||||
result = source_method_to_file( lt_source ).
|
result = source_method_to_file( lt_source ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD source_method_to_file.
|
METHOD source_method_to_file.
|
||||||
|
|
||||||
LOOP AT it_source INTO DATA(lv_source).
|
LOOP AT it_source INTO DATA(lv_source).
|
||||||
|
@ -1095,7 +1070,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD filter_get_sql_by_sql_string.
|
METHOD filter_get_sql_by_sql_string.
|
||||||
|
|
||||||
DATA(lv_sql) = CONV string( val ).
|
DATA(lv_sql) = CONV string( val ).
|
||||||
|
@ -1108,58 +1082,54 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD time_get_date_by_stampl.
|
METHOD time_get_date_by_stampl.
|
||||||
|
" TODO: variable is assigned but never used (ABAP cleaner)
|
||||||
CONVERT TIME STAMP val TIME ZONE sy-zonlo INTO DATE result TIME DATA(lv_dummy).
|
CONVERT TIME STAMP val TIME ZONE sy-zonlo INTO DATE result TIME DATA(lv_dummy).
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD time_get_timestampl.
|
METHOD time_get_timestampl.
|
||||||
GET TIME STAMP FIELD result.
|
GET TIME STAMP FIELD result.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD time_get_time_by_stampl.
|
METHOD time_get_time_by_stampl.
|
||||||
|
" TODO: variable is assigned but never used (ABAP cleaner)
|
||||||
CONVERT TIME STAMP val TIME ZONE sy-zonlo INTO DATE DATA(lv_dummy) TIME result.
|
CONVERT TIME STAMP val TIME ZONE sy-zonlo INTO DATE DATA(lv_dummy) TIME result.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD time_substract_seconds.
|
METHOD time_substract_seconds.
|
||||||
|
|
||||||
result = cl_abap_tstmp=>subtractsecs( tstmp = time
|
result = cl_abap_tstmp=>subtractsecs( tstmp = time
|
||||||
secs = seconds ).
|
secs = seconds ).
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD unassign_data.
|
METHOD unassign_data.
|
||||||
|
|
||||||
FIELD-SYMBOLS <unassign> TYPE any.
|
FIELD-SYMBOLS <unassign> TYPE any.
|
||||||
|
|
||||||
ASSIGN val->* TO <unassign>.
|
ASSIGN val->* TO <unassign>.
|
||||||
result = <unassign>.
|
result = <unassign>.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD unassign_object.
|
METHOD unassign_object.
|
||||||
|
|
||||||
FIELD-SYMBOLS <unassign> TYPE any.
|
FIELD-SYMBOLS <unassign> TYPE any.
|
||||||
|
|
||||||
ASSIGN val->* TO <unassign>.
|
ASSIGN val->* TO <unassign>.
|
||||||
result = <unassign>.
|
result = <unassign>.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD url_param_create_url.
|
METHOD url_param_create_url.
|
||||||
|
|
||||||
LOOP AT t_params INTO DATA(ls_param).
|
LOOP AT t_params INTO DATA(ls_param).
|
||||||
result = result && ls_param-n && `=` && ls_param-v && `&`.
|
result = |{ result }{ ls_param-n }={ ls_param-v }&|.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
result = shift_right( val = result
|
result = shift_right( val = result
|
||||||
sub = `&` ).
|
sub = `&` ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD url_param_get.
|
METHOD url_param_get.
|
||||||
|
|
||||||
DATA(lt_params) = url_param_get_tab( url ).
|
DATA(lt_params) = url_param_get_tab( url ).
|
||||||
|
@ -1168,7 +1138,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD url_param_get_tab.
|
METHOD url_param_get_tab.
|
||||||
|
|
||||||
DATA(lv_search) = replace( val = i_val
|
DATA(lv_search) = replace( val = i_val
|
||||||
|
@ -1199,12 +1168,12 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
LOOP AT lt_param REFERENCE INTO DATA(lr_param).
|
LOOP AT lt_param REFERENCE INTO DATA(lr_param).
|
||||||
SPLIT lr_param->* AT `=` INTO DATA(lv_name) DATA(lv_value).
|
SPLIT lr_param->* AT `=` INTO DATA(lv_name) DATA(lv_value).
|
||||||
INSERT VALUE #( n = c_trim_lower( lv_name ) v = c_trim_lower( lv_value ) ) INTO TABLE rt_params.
|
INSERT VALUE #( n = c_trim_lower( lv_name )
|
||||||
|
v = c_trim_lower( lv_value ) ) INTO TABLE rt_params.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD url_param_set.
|
METHOD url_param_set.
|
||||||
|
|
||||||
DATA(lt_params) = url_param_get_tab( url ).
|
DATA(lt_params) = url_param_get_tab( url ).
|
||||||
|
@ -1215,19 +1184,18 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
lr_params->v = c_trim_lower( value ).
|
lr_params->v = c_trim_lower( value ).
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
IF sy-subrc <> 0.
|
IF sy-subrc <> 0.
|
||||||
INSERT VALUE #( n = lv_n v = c_trim_lower( value ) ) INTO TABLE lt_params.
|
INSERT VALUE #( n = lv_n
|
||||||
|
v = c_trim_lower( value ) ) INTO TABLE lt_params.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
result = url_param_create_url( lt_params ).
|
result = url_param_create_url( lt_params ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD context_get_user_tech.
|
METHOD context_get_user_tech.
|
||||||
result = sy-uname.
|
result = sy-uname.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD xml_parse.
|
METHOD xml_parse.
|
||||||
|
|
||||||
CALL TRANSFORMATION id
|
CALL TRANSFORMATION id
|
||||||
|
@ -1236,7 +1204,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD xml_srtti_parse.
|
METHOD xml_srtti_parse.
|
||||||
|
|
||||||
check_raise_srtti_installed( ).
|
check_raise_srtti_installed( ).
|
||||||
|
@ -1246,8 +1213,7 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
DATA rtti_type TYPE REF TO cl_abap_typedescr.
|
DATA rtti_type TYPE REF TO cl_abap_typedescr.
|
||||||
CALL METHOD srtti->('GET_RTTI')
|
CALL METHOD srtti->('GET_RTTI')
|
||||||
RECEIVING
|
RECEIVING rtti = rtti_type.
|
||||||
rtti = rtti_type.
|
|
||||||
|
|
||||||
DATA lo_datadescr TYPE REF TO cl_abap_datadescr.
|
DATA lo_datadescr TYPE REF TO cl_abap_datadescr.
|
||||||
lo_datadescr ?= rtti_type.
|
lo_datadescr ?= rtti_type.
|
||||||
|
@ -1258,7 +1224,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD xml_srtti_stringify.
|
METHOD xml_srtti_stringify.
|
||||||
|
|
||||||
check_raise_srtti_installed( ).
|
check_raise_srtti_installed( ).
|
||||||
|
@ -1266,16 +1231,13 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
DATA srtti TYPE REF TO object.
|
DATA srtti TYPE REF TO object.
|
||||||
DATA(lv_classname) = 'ZCL_SRTTI_TYPEDESCR'.
|
DATA(lv_classname) = 'ZCL_SRTTI_TYPEDESCR'.
|
||||||
CALL METHOD (lv_classname)=>('CREATE_BY_DATA_OBJECT')
|
CALL METHOD (lv_classname)=>('CREATE_BY_DATA_OBJECT')
|
||||||
EXPORTING
|
EXPORTING data_object = data
|
||||||
data_object = data
|
RECEIVING srtti = srtti.
|
||||||
RECEIVING
|
|
||||||
srtti = srtti.
|
|
||||||
|
|
||||||
CALL TRANSFORMATION id SOURCE srtti = srtti dobj = data RESULT XML result.
|
CALL TRANSFORMATION id SOURCE srtti = srtti dobj = data RESULT XML result.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD xml_stringify.
|
METHOD xml_stringify.
|
||||||
|
|
||||||
CALL TRANSFORMATION id
|
CALL TRANSFORMATION id
|
||||||
|
@ -1285,16 +1247,15 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD x_check_raise.
|
METHOD x_check_raise.
|
||||||
|
|
||||||
IF when = abap_true.
|
IF when = abap_true.
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error EXPORTING val = v.
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
|
EXPORTING val = v.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD x_get_last_t100.
|
METHOD x_get_last_t100.
|
||||||
|
|
||||||
DATA(x) = val.
|
DATA(x) = val.
|
||||||
|
@ -1312,70 +1273,56 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD x_raise.
|
METHOD x_raise.
|
||||||
|
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error EXPORTING val = v.
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
|
EXPORTING val = v.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD check_raise_srtti_installed.
|
METHOD check_raise_srtti_installed.
|
||||||
|
|
||||||
IF rtti_check_class_exists( 'ZCL_SRTTI_TYPEDESCR' ) = abap_false.
|
IF rtti_check_class_exists( 'ZCL_SRTTI_TYPEDESCR' ) = abap_false.
|
||||||
|
|
||||||
DATA(lv_text) = `UNSUPPORTED_FEATURE - Please install the open-source project S-RTTI by sandraros and try again: https://github.com/sandraros/S-RTTI`.
|
DATA(lv_text) = `UNSUPPORTED_FEATURE - Please install the open-source project S-RTTI by sandraros and try again: https://github.com/sandraros/S-RTTI`.
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING val = lv_text.
|
||||||
val = lv_text.
|
|
||||||
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_get_t_attri_by_table_name.
|
METHOD rtti_get_t_attri_by_table_name.
|
||||||
|
|
||||||
IF table_name IS INITIAL.
|
IF table_name IS INITIAL.
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING val = 'TABLE_NAME_INITIAL_ERROR'.
|
||||||
val = 'TABLE_NAME_INITIAL_ERROR'.
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
cl_abap_structdescr=>describe_by_name(
|
cl_abap_structdescr=>describe_by_name( EXPORTING p_name = table_name
|
||||||
EXPORTING
|
RECEIVING p_descr_ref = DATA(lo_obj)
|
||||||
p_name = table_name
|
EXCEPTIONS type_not_found = 1
|
||||||
RECEIVING
|
|
||||||
p_descr_ref = DATA(lo_obj)
|
|
||||||
EXCEPTIONS
|
|
||||||
type_not_found = 1
|
|
||||||
OTHERS = 2
|
OTHERS = 2
|
||||||
).
|
).
|
||||||
|
|
||||||
IF sy-subrc <> 0.
|
IF sy-subrc <> 0.
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING val = |TABLE_NOT_FOUD_NAME___{ table_name }|.
|
||||||
val = 'TABLE_NOT_FOUD_NAME___' && table_name.
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
DATA(lo_struct) = CAST cl_abap_structdescr( lo_obj ).
|
DATA(lo_struct) = CAST cl_abap_structdescr( lo_obj ).
|
||||||
|
|
||||||
CATCH cx_root.
|
CATCH cx_root.
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
cl_abap_structdescr=>describe_by_name(
|
cl_abap_structdescr=>describe_by_name( EXPORTING p_name = table_name
|
||||||
EXPORTING
|
RECEIVING p_descr_ref = lo_obj
|
||||||
p_name = table_name
|
EXCEPTIONS type_not_found = 1
|
||||||
RECEIVING
|
|
||||||
p_descr_ref = lo_obj
|
|
||||||
EXCEPTIONS
|
|
||||||
type_not_found = 1
|
|
||||||
OTHERS = 2
|
OTHERS = 2
|
||||||
).
|
).
|
||||||
IF sy-subrc <> 0.
|
IF sy-subrc <> 0.
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING val = |TABLE_NOT_FOUD_NAME___{ table_name }|.
|
||||||
val = 'TABLE_NOT_FOUD_NAME___' && table_name.
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
DATA(lo_tab) = CAST cl_abap_tabledescr( lo_obj ).
|
DATA(lo_tab) = CAST cl_abap_tabledescr( lo_obj ).
|
||||||
|
@ -1399,7 +1346,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD itab_corresponding.
|
METHOD itab_corresponding.
|
||||||
|
|
||||||
FIELD-SYMBOLS <row_in> TYPE any.
|
FIELD-SYMBOLS <row_in> TYPE any.
|
||||||
|
@ -1420,33 +1366,28 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD itab_filter_by_t_range.
|
METHOD itab_filter_by_t_range.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD filter_get_data_by_multi.
|
METHOD filter_get_data_by_multi.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD filter_get_sql_where.
|
METHOD filter_get_sql_where.
|
||||||
|
|
||||||
LOOP AT val INTO DATA(ls_filter).
|
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.
|
DATA lo_range TYPE REF TO lcl_range_to_sql.
|
||||||
|
|
||||||
CREATE OBJECT lo_range
|
lo_range = NEW #( iv_fieldname = ls_filter-name
|
||||||
EXPORTING
|
ir_range = REF #( ls_filter-t_range ) ).
|
||||||
iv_fieldname = ls_filter-name
|
|
||||||
ir_range = REF #( ls_filter-t_range ).
|
|
||||||
|
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD msg_get.
|
METHOD msg_get.
|
||||||
|
|
||||||
DATA(lv_kind) = z2ui5_cl_util=>rtti_get_type_kind( val ).
|
DATA(lv_kind) = z2ui5_cl_util=>rtti_get_type_kind( val ).
|
||||||
|
@ -1470,7 +1411,7 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(ls_result) = VALUE ty_s_msg( ).
|
DATA(ls_result) = VALUE ty_s_msg( ).
|
||||||
LOOP AT lt_attri REFERENCE INTO DATA(ls_attri).
|
LOOP AT lt_attri REFERENCE INTO DATA(ls_attri).
|
||||||
DATA(lv_name) = 'VAL-' && ls_attri->name.
|
DATA(lv_name) = |VAL-{ ls_attri->name }|.
|
||||||
ASSIGN (lv_name) TO FIELD-SYMBOL(<comp>).
|
ASSIGN (lv_name) TO FIELD-SYMBOL(<comp>).
|
||||||
CASE ls_attri->name.
|
CASE ls_attri->name.
|
||||||
WHEN 'ID' OR 'MSGID'.
|
WHEN 'ID' OR 'MSGID'.
|
||||||
|
@ -1501,8 +1442,7 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
WHEN cl_abap_datadescr=>typekind_oref.
|
WHEN cl_abap_datadescr=>typekind_oref.
|
||||||
TRY.
|
TRY.
|
||||||
DATA(lx) = CAST cx_root( val ).
|
DATA(lx) = CAST cx_root( val ).
|
||||||
ls_result = VALUE #(
|
ls_result = VALUE #( type = 'E'
|
||||||
type = 'E'
|
|
||||||
text = lx->get_text( )
|
text = lx->get_text( )
|
||||||
).
|
).
|
||||||
|
|
||||||
|
@ -1547,8 +1487,7 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
WHEN OTHERS.
|
WHEN OTHERS.
|
||||||
|
|
||||||
IF rtti_check_clike( val ).
|
IF rtti_check_clike( val ).
|
||||||
INSERT VALUE #(
|
INSERT VALUE #( text = val
|
||||||
text = val
|
|
||||||
)
|
)
|
||||||
INTO TABLE result.
|
INTO TABLE result.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
@ -1556,7 +1495,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD rtti_check_clike.
|
METHOD rtti_check_clike.
|
||||||
|
|
||||||
DATA(lv_type) = rtti_get_type_kind( val ).
|
DATA(lv_type) = rtti_get_type_kind( val ).
|
||||||
|
@ -1572,11 +1510,12 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD ui5_get_msg_type.
|
METHOD ui5_get_msg_type.
|
||||||
|
|
||||||
result = SWITCH #( val WHEN 'E' THEN `Error`
|
result = SWITCH #( val
|
||||||
WHEN 'S' THEN `Success` WHEN `W` THEN `Warning`
|
WHEN 'E' THEN `Error`
|
||||||
else `Information`
|
WHEN 'S' THEN `Success`
|
||||||
|
WHEN `W` THEN `Warning`
|
||||||
|
ELSE `Information`
|
||||||
).
|
).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -40,13 +40,10 @@ CLASS lcl_range_to_sql DEFINITION
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(out) TYPE string.
|
VALUE(out) TYPE string.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS lcl_range_to_sql IMPLEMENTATION.
|
CLASS lcl_range_to_sql IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
|
|
||||||
mr_range = ir_range.
|
mr_range = ir_range.
|
||||||
|
@ -118,5 +115,4 @@ CLASS lcl_range_to_sql IMPLEMENTATION.
|
||||||
with = `''`
|
with = `''`
|
||||||
occ = 0 ) }'|.
|
occ = 0 ) }'|.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -21,6 +21,7 @@ CLASS ltcl_test_app DEFINITION FOR TESTING.
|
||||||
CLASS-DATA sv_var TYPE string.
|
CLASS-DATA sv_var TYPE string.
|
||||||
CLASS-DATA ss_tab TYPE ty_row.
|
CLASS-DATA ss_tab TYPE ty_row.
|
||||||
CLASS-DATA st_tab TYPE STANDARD TABLE OF ty_row WITH EMPTY KEY.
|
CLASS-DATA st_tab TYPE STANDARD TABLE OF ty_row WITH EMPTY KEY.
|
||||||
|
|
||||||
CLASS-METHODS class_constructor.
|
CLASS-METHODS class_constructor.
|
||||||
|
|
||||||
DATA mv_val TYPE string ##NEEDED.
|
DATA mv_val TYPE string ##NEEDED.
|
||||||
|
@ -28,11 +29,12 @@ CLASS ltcl_test_app DEFINITION FOR TESTING.
|
||||||
DATA mt_tab TYPE STANDARD TABLE OF ty_row WITH EMPTY KEY ##NEEDED.
|
DATA mt_tab TYPE STANDARD TABLE OF ty_row WITH EMPTY KEY ##NEEDED.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_test_app IMPLEMENTATION.
|
|
||||||
|
|
||||||
|
CLASS ltcl_test_app IMPLEMENTATION.
|
||||||
METHOD class_constructor.
|
METHOD class_constructor.
|
||||||
|
|
||||||
sv_var = 1.
|
sv_var = 1.
|
||||||
|
@ -42,9 +44,9 @@ CLASS ltcl_test_app IMPLEMENTATION.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_unit_test_abap_api DEFINITION FINAL FOR TESTING
|
|
||||||
DURATION SHORT
|
CLASS ltcl_unit_test_abap_api DEFINITION FINAL
|
||||||
RISK LEVEL HARMLESS.
|
FOR TESTING RISK LEVEL HARMLESS DURATION SHORT.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
|
|
||||||
|
@ -67,9 +69,9 @@ CLASS ltcl_unit_test_abap_api DEFINITION FINAL FOR TESTING
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_unit_test DEFINITION FINAL FOR TESTING
|
|
||||||
DURATION MEDIUM
|
CLASS ltcl_unit_test DEFINITION FINAL
|
||||||
RISK LEVEL HARMLESS.
|
FOR TESTING RISK LEVEL HARMLESS DURATION MEDIUM.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
|
|
||||||
|
@ -87,7 +89,6 @@ CLASS ltcl_unit_test DEFINITION FINAL FOR TESTING
|
||||||
METHODS test_time_substract_seconds FOR TESTING RAISING cx_static_check.
|
METHODS test_time_substract_seconds FOR TESTING RAISING cx_static_check.
|
||||||
METHODS test_func_get_user_tech FOR TESTING RAISING cx_static_check.
|
METHODS test_func_get_user_tech FOR TESTING RAISING cx_static_check.
|
||||||
|
|
||||||
|
|
||||||
METHODS test_rtti_get_t_attri_by_incl FOR TESTING RAISING cx_static_check.
|
METHODS test_rtti_get_t_attri_by_incl FOR TESTING RAISING cx_static_check.
|
||||||
METHODS test_rtti_get_classname_by_ref FOR TESTING RAISING cx_static_check.
|
METHODS test_rtti_get_classname_by_ref FOR TESTING RAISING cx_static_check.
|
||||||
METHODS test_rtti_get_type_name FOR TESTING RAISING cx_static_check.
|
METHODS test_rtti_get_type_name FOR TESTING RAISING cx_static_check.
|
||||||
|
@ -119,9 +120,8 @@ CLASS ltcl_unit_test DEFINITION FINAL FOR TESTING
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS ltcl_unit_test_abap_api IMPLEMENTATION.
|
CLASS ltcl_unit_test_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD test_assign.
|
METHOD test_assign.
|
||||||
|
|
||||||
DATA(lo_app) = NEW ltcl_test_app( ).
|
DATA(lo_app) = NEW ltcl_test_app( ).
|
||||||
|
@ -129,23 +129,22 @@ CLASS ltcl_unit_test_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
lo_app->mv_val = `ABC`.
|
lo_app->mv_val = `ABC`.
|
||||||
|
|
||||||
DATA(lv_assign) = `LO_APP->` && 'MV_VAL'.
|
DATA(lv_assign) = |LO_APP->MV_VAL|.
|
||||||
ASSIGN (lv_assign) TO <any>.
|
ASSIGN (lv_assign) TO <any>.
|
||||||
ASSERT sy-subrc = 0.
|
ASSERT sy-subrc = 0.
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `ABC`
|
||||||
act = <any>
|
act = <any> ).
|
||||||
exp = `ABC` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD test_classdescr.
|
METHOD test_classdescr.
|
||||||
|
|
||||||
DATA(lo_app) = NEW ltcl_test_app( ).
|
DATA(lo_app) = NEW ltcl_test_app( ).
|
||||||
|
|
||||||
DATA(lt_attri) = CAST cl_abap_classdescr( cl_abap_objectdescr=>describe_by_object_ref( lo_app ) )->attributes.
|
DATA(lt_attri) = CAST cl_abap_classdescr( cl_abap_objectdescr=>describe_by_object_ref( lo_app ) )->attributes.
|
||||||
|
|
||||||
|
" TODO: variable is assigned but never used (ABAP cleaner)
|
||||||
DATA(lv_test) = lt_attri[ name = `MS_TAB` ].
|
DATA(lv_test) = lt_attri[ name = `MS_TAB` ].
|
||||||
lv_test = lt_attri[ name = `MT_TAB` ].
|
lv_test = lt_attri[ name = `MT_TAB` ].
|
||||||
lv_test = lt_attri[ name = `MV_VAL` ].
|
lv_test = lt_attri[ name = `MV_VAL` ].
|
||||||
|
@ -160,33 +159,32 @@ CLASS ltcl_unit_test_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lo_ele) = CAST cl_abap_elemdescr( cl_abap_elemdescr=>describe_by_data( abap_true ) ).
|
DATA(lo_ele) = CAST cl_abap_elemdescr( cl_abap_elemdescr=>describe_by_data( abap_true ) ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `ABAP_BOOL`
|
||||||
act = lo_ele->get_relative_name( )
|
act = lo_ele->get_relative_name( ) ).
|
||||||
exp = `ABAP_BOOL` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD test_substring_after.
|
METHOD test_substring_after.
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = ` string`
|
||||||
act = substring_after( val = 'this is a string' sub = 'a' )
|
act = substring_after( val = 'this is a string'
|
||||||
exp = ` string` ).
|
sub = 'a' ) ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD test_substring_before.
|
METHOD test_substring_before.
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `this is `
|
||||||
act = substring_before( val = 'this is a string' sub = 'a' )
|
act = substring_before( val = 'this is a string'
|
||||||
exp = `this is ` ).
|
sub = 'a' ) ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD test_string_shift.
|
METHOD test_string_shift.
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `string`
|
||||||
act = shift_left( shift_right( val = ` string ` sub = ` ` ) )
|
act = shift_left( shift_right( val = ` string `
|
||||||
exp = `string` ).
|
sub = ` ` ) ) ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -197,9 +195,11 @@ CLASS ltcl_unit_test_abap_api IMPLEMENTATION.
|
||||||
with = 'ABC'
|
with = 'ABC'
|
||||||
occ = 0 ) ##NEEDED.
|
occ = 0 ) ##NEEDED.
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `one ABC three`
|
||||||
act = replace( val = `one two three` sub = `two` with = 'ABC' occ = 0 )
|
act = replace( val = `one two three`
|
||||||
exp = `one ABC three` ).
|
sub = `two`
|
||||||
|
with = 'ABC'
|
||||||
|
occ = 0 ) ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -221,9 +221,7 @@ CLASS ltcl_unit_test_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lv_xsdbool) = xsdbool( 1 = 1 ).
|
DATA(lv_xsdbool) = xsdbool( 1 = 1 ).
|
||||||
IF lv_xsdbool = abap_false.
|
IF lv_xsdbool = abap_false.
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_false( lv_xsdbool ).
|
||||||
act = lv_xsdbool
|
|
||||||
exp = abap_false ).
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
IF xsdbool( 1 = 1 ) = abap_false.
|
IF xsdbool( 1 = 1 ) = abap_false.
|
||||||
|
@ -236,9 +234,7 @@ CLASS ltcl_unit_test_abap_api IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lv_xsdbool) = check_input( xsdbool( 1 = 1 ) ).
|
DATA(lv_xsdbool) = check_input( xsdbool( 1 = 1 ) ).
|
||||||
IF lv_xsdbool = abap_false.
|
IF lv_xsdbool = abap_false.
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_false( lv_xsdbool ).
|
||||||
act = lv_xsdbool
|
|
||||||
exp = abap_false ).
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
IF check_input( abap_false ).
|
IF check_input( abap_false ).
|
||||||
|
@ -256,30 +252,21 @@ CLASS ltcl_unit_test_abap_api IMPLEMENTATION.
|
||||||
result = val.
|
result = val.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_unit_test IMPLEMENTATION.
|
|
||||||
|
|
||||||
|
CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
METHOD test_boolean_check.
|
METHOD test_boolean_check.
|
||||||
|
|
||||||
DATA(lv_bool) = xsdbool( 1 = 1 ).
|
DATA(lv_bool) = xsdbool( 1 = 1 ).
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_true( z2ui5_cl_util=>boolean_check_by_data( lv_bool ) ).
|
||||||
act = z2ui5_cl_util=>boolean_check_by_data( lv_bool )
|
|
||||||
exp = abap_true ).
|
|
||||||
|
|
||||||
lv_bool = xsdbool( 1 = 2 ).
|
lv_bool = xsdbool( 1 = 2 ).
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_true( z2ui5_cl_util=>boolean_check_by_data( lv_bool ) ).
|
||||||
act = z2ui5_cl_util=>boolean_check_by_data( lv_bool )
|
|
||||||
exp = abap_true ).
|
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_true( z2ui5_cl_util=>boolean_check_by_data( abap_true ) ).
|
||||||
act = z2ui5_cl_util=>boolean_check_by_data( abap_true )
|
|
||||||
exp = abap_true ).
|
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_true( z2ui5_cl_util=>boolean_check_by_data( abap_false ) ).
|
||||||
act = z2ui5_cl_util=>boolean_check_by_data( abap_false )
|
|
||||||
exp = abap_true ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -341,13 +328,9 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
DATA lr_data TYPE REF TO data.
|
DATA lr_data TYPE REF TO data.
|
||||||
GET REFERENCE OF lv_test INTO lr_data.
|
GET REFERENCE OF lv_test INTO lr_data.
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_true( z2ui5_cl_util=>rtti_check_ref_data( lr_data ) ).
|
||||||
act = z2ui5_cl_util=>rtti_check_ref_data( lr_data )
|
|
||||||
exp = abap_true ).
|
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_false( z2ui5_cl_util=>rtti_check_ref_data( lv_test ) ).
|
||||||
act = z2ui5_cl_util=>rtti_check_ref_data( lv_test )
|
|
||||||
exp = abap_false ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -362,17 +345,15 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
FIELD-SYMBOLS <result> TYPE data.
|
FIELD-SYMBOLS <result> TYPE data.
|
||||||
ASSIGN lr_test2->* TO <result>.
|
ASSIGN lr_test2->* TO <result>.
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = lv_test
|
||||||
act = <result>
|
act = <result> ).
|
||||||
exp = lv_test ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD test_boolean_abap_2_json.
|
METHOD test_boolean_abap_2_json.
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `{ABCD}`
|
||||||
act = z2ui5_cl_util=>boolean_abap_2_json( `{ABCD}` )
|
act = z2ui5_cl_util=>boolean_abap_2_json( `{ABCD}` ) ).
|
||||||
exp = `{ABCD}` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -380,8 +361,7 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lv_time) = z2ui5_cl_util=>time_get_timestampl( ).
|
DATA(lv_time) = z2ui5_cl_util=>time_get_timestampl( ).
|
||||||
|
|
||||||
DATA(lv_time2) = z2ui5_cl_util=>time_substract_seconds(
|
DATA(lv_time2) = z2ui5_cl_util=>time_substract_seconds( time = lv_time
|
||||||
time = lv_time
|
|
||||||
seconds = 60 * 60 * 4 ).
|
seconds = 60 * 60 * 4 ).
|
||||||
|
|
||||||
IF lv_time IS INITIAL OR lv_time2 IS INITIAL.
|
IF lv_time IS INITIAL OR lv_time2 IS INITIAL.
|
||||||
|
@ -411,33 +391,29 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD test_c_trim.
|
METHOD test_c_trim.
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `JsadfHHs`
|
||||||
act = z2ui5_cl_util=>c_trim( ` JsadfHHs ` )
|
act = z2ui5_cl_util=>c_trim( ` JsadfHHs ` ) ).
|
||||||
exp = `JsadfHHs` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD test_c_trim_lower.
|
METHOD test_c_trim_lower.
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `jsadfhhs`
|
||||||
act = z2ui5_cl_util=>c_trim_lower( ` JsadfHHs ` )
|
act = z2ui5_cl_util=>c_trim_lower( ` JsadfHHs ` ) ).
|
||||||
exp = `jsadfhhs` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD test_c_trim_upper.
|
METHOD test_c_trim_upper.
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `JSADFHHS`
|
||||||
act = z2ui5_cl_util=>c_trim_upper( ` JsadfHHs ` )
|
act = z2ui5_cl_util=>c_trim_upper( ` JsadfHHs ` ) ).
|
||||||
exp = `JSADFHHS` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD test_func_get_user_tech.
|
METHOD test_func_get_user_tech.
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = z2ui5_cl_util=>context_get_user_tech( )
|
||||||
act = sy-uname
|
act = sy-uname ).
|
||||||
exp = z2ui5_cl_util=>context_get_user_tech( ) ).
|
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_not_initial( z2ui5_cl_util=>context_get_user_tech( ) ).
|
cl_abap_unit_assert=>assert_not_initial( z2ui5_cl_util=>context_get_user_tech( ) ).
|
||||||
|
|
||||||
|
@ -453,7 +429,6 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD test_x_check_raise.
|
METHOD test_x_check_raise.
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
|
@ -470,7 +445,6 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD test_trans_json_any_2__w_struc.
|
METHOD test_trans_json_any_2__w_struc.
|
||||||
|
|
||||||
TYPES:
|
TYPES:
|
||||||
|
@ -479,23 +453,22 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
value TYPE string,
|
value TYPE string,
|
||||||
selected TYPE abap_bool,
|
selected TYPE abap_bool,
|
||||||
END OF ty_row.
|
END OF ty_row.
|
||||||
|
|
||||||
DATA(ls_row) = VALUE ty_row( title = `test` ).
|
DATA(ls_row) = VALUE ty_row( title = `test` ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `{"selected":false,"title":"test","value":""}`
|
||||||
act = z2ui5_cl_util=>json_stringify( ls_row )
|
act = z2ui5_cl_util=>json_stringify( ls_row ) ).
|
||||||
exp = `{"selected":false,"title":"test","value":""}` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD test_url_param_create_url.
|
METHOD test_url_param_create_url.
|
||||||
|
|
||||||
DATA(lt_param) = z2ui5_cl_util=>url_param_get_tab( `https://url.com/rvice_for_ui?sap-client=100&app_start=z2ui5_cl_app_hello_world` ).
|
DATA(lt_param) = z2ui5_cl_util=>url_param_get_tab(
|
||||||
|
`https://url.com/rvice_for_ui?sap-client=100&app_start=z2ui5_cl_app_hello_world` ).
|
||||||
DATA(lv_url) = z2ui5_cl_util=>url_param_create_url( lt_param ).
|
DATA(lv_url) = z2ui5_cl_util=>url_param_create_url( lt_param ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `sap-client=100&app_start=z2ui5_cl_app_hello_world`
|
||||||
act = lv_url
|
act = lv_url ).
|
||||||
exp = `sap-client=100&app_start=z2ui5_cl_app_hello_world` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -505,23 +478,21 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
val = `app_start`
|
val = `app_start`
|
||||||
url = `https://url.com/rvice_for_ui?sap-client=100&app_start=z2ui5_cl_app_hello_world` ).
|
url = `https://url.com/rvice_for_ui?sap-client=100&app_start=z2ui5_cl_app_hello_world` ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `z2ui5_cl_app_hello_world`
|
||||||
act = lv_param
|
act = lv_param ).
|
||||||
exp = `z2ui5_cl_app_hello_world` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD test_url_param_get_tab.
|
METHOD test_url_param_get_tab.
|
||||||
|
|
||||||
DATA(lt_param) = z2ui5_cl_util=>url_param_get_tab( `https://url.com/rvice_for_ui?sap-client=100&app_start=z2ui5_cl_app_hello_world` ).
|
DATA(lt_param) = z2ui5_cl_util=>url_param_get_tab(
|
||||||
|
`https://url.com/rvice_for_ui?sap-client=100&app_start=z2ui5_cl_app_hello_world` ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `100`
|
||||||
act = lt_param[ n = `sap-client` ]-v
|
act = lt_param[ n = `sap-client` ]-v ).
|
||||||
exp = `100` ).
|
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `z2ui5_cl_app_hello_world`
|
||||||
act = lt_param[ n = `app_start` ]-v
|
act = lt_param[ n = `app_start` ]-v ).
|
||||||
exp = `z2ui5_cl_app_hello_world` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -532,9 +503,8 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
value = `z2ui5_cl_app_hello_world2`
|
value = `z2ui5_cl_app_hello_world2`
|
||||||
url = `https://url.com/rvice_for_ui?sap-client=100&app_start=z2ui5_cl_app_hello_world` ).
|
url = `https://url.com/rvice_for_ui?sap-client=100&app_start=z2ui5_cl_app_hello_world` ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `sap-client=100&app_start=z2ui5_cl_app_hello_world2`
|
||||||
act = lv_param
|
act = lv_param ).
|
||||||
exp = `sap-client=100&app_start=z2ui5_cl_app_hello_world2` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -551,9 +521,8 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lv_xsdbool) = VALUE xsdboolean( ).
|
DATA(lv_xsdbool) = VALUE xsdboolean( ).
|
||||||
DATA(lv_name) = z2ui5_cl_util=>rtti_get_type_name( lv_xsdbool ).
|
DATA(lv_name) = z2ui5_cl_util=>rtti_get_type_name( lv_xsdbool ).
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `XSDBOOLEAN`
|
||||||
act = lv_name
|
act = lv_name ).
|
||||||
exp = `XSDBOOLEAN` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -563,16 +532,13 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lv_type_kind) = z2ui5_cl_util=>rtti_get_type_kind( lv_string ).
|
DATA(lv_type_kind) = z2ui5_cl_util=>rtti_get_type_kind( lv_string ).
|
||||||
DATA lr_string TYPE REF TO string.
|
DATA lr_string TYPE REF TO string.
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = cl_abap_typedescr=>typekind_string
|
||||||
act = lv_type_kind
|
act = lv_type_kind ).
|
||||||
exp = cl_abap_typedescr=>typekind_string ).
|
|
||||||
|
|
||||||
|
|
||||||
CREATE DATA lr_string.
|
CREATE DATA lr_string.
|
||||||
lv_type_kind = z2ui5_cl_util=>rtti_get_type_kind( lr_string ).
|
lv_type_kind = z2ui5_cl_util=>rtti_get_type_kind( lr_string ).
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = cl_abap_typedescr=>typekind_dref
|
||||||
act = lv_type_kind
|
act = lv_type_kind ).
|
||||||
exp = cl_abap_typedescr=>typekind_dref ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -580,15 +546,10 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lv_string) = VALUE string( ).
|
DATA(lv_string) = VALUE string( ).
|
||||||
DATA lr_string TYPE REF TO string.
|
DATA lr_string TYPE REF TO string.
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_false( z2ui5_cl_util=>rtti_check_type_kind_dref( lv_string ) ).
|
||||||
act = z2ui5_cl_util=>rtti_check_type_kind_dref( lv_string )
|
|
||||||
exp = abap_false ).
|
|
||||||
|
|
||||||
|
|
||||||
CREATE DATA lr_string.
|
CREATE DATA lr_string.
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_true( z2ui5_cl_util=>rtti_check_type_kind_dref( lr_string ) ).
|
||||||
act = z2ui5_cl_util=>rtti_check_type_kind_dref( lr_string )
|
|
||||||
exp = abap_true ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -605,15 +566,21 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
cl_abap_unit_assert=>fail( ).
|
cl_abap_unit_assert=>fail( ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
IF NOT line_exists( lt_attri[ name = `SS_TAB` type_kind = `v` ] ).
|
IF NOT line_exists( lt_attri[ name = `SS_TAB`
|
||||||
|
type_kind = `v` ] ).
|
||||||
cl_abap_unit_assert=>fail( ).
|
cl_abap_unit_assert=>fail( ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
IF NOT line_exists( lt_attri[ name = `SV_VAR` type_kind = `g` is_class = abap_true ] ).
|
IF NOT line_exists( lt_attri[ name = `SV_VAR`
|
||||||
|
type_kind = `g`
|
||||||
|
is_class = abap_true ] ).
|
||||||
cl_abap_unit_assert=>fail( ).
|
cl_abap_unit_assert=>fail( ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
IF NOT line_exists( lt_attri[ name = `SV_STATUS` type_kind = `g` is_class = abap_true is_constant = `X` ] ).
|
IF NOT line_exists( lt_attri[ name = `SV_STATUS`
|
||||||
|
type_kind = `g`
|
||||||
|
is_class = abap_true
|
||||||
|
is_constant = `X` ] ).
|
||||||
cl_abap_unit_assert=>fail( ).
|
cl_abap_unit_assert=>fail( ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
|
@ -680,11 +647,8 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
DATA(lv_xml) = z2ui5_cl_util=>xml_stringify( lo_obj ).
|
DATA(lv_xml) = z2ui5_cl_util=>xml_stringify( lo_obj ).
|
||||||
|
|
||||||
CLEAR lo_obj.
|
CLEAR lo_obj.
|
||||||
z2ui5_cl_util=>xml_parse(
|
z2ui5_cl_util=>xml_parse( EXPORTING xml = lv_xml
|
||||||
EXPORTING
|
IMPORTING any = lo_obj ).
|
||||||
xml = lv_xml
|
|
||||||
IMPORTING
|
|
||||||
any = lo_obj ).
|
|
||||||
|
|
||||||
IF lo_obj IS NOT BOUND.
|
IF lo_obj IS NOT BOUND.
|
||||||
cl_abap_unit_assert=>fail( ).
|
cl_abap_unit_assert=>fail( ).
|
||||||
|
@ -735,19 +699,14 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lv_xml) = z2ui5_cl_util=>xml_stringify( ls_row ).
|
DATA(lv_xml) = z2ui5_cl_util=>xml_stringify( ls_row ).
|
||||||
|
|
||||||
z2ui5_cl_util=>xml_parse(
|
z2ui5_cl_util=>xml_parse( EXPORTING xml = lv_xml
|
||||||
EXPORTING
|
IMPORTING any = ls_row2 ).
|
||||||
xml = lv_xml
|
|
||||||
IMPORTING
|
|
||||||
any = ls_row2 ).
|
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = ls_row2
|
||||||
act = ls_row
|
act = ls_row ).
|
||||||
exp = ls_row2 ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD test_c_trim_horizontal_tab.
|
METHOD test_c_trim_horizontal_tab.
|
||||||
|
|
||||||
IF z2ui5_cl_util=>c_trim( |{ cl_abap_char_utilities=>horizontal_tab }|
|
IF z2ui5_cl_util=>c_trim( |{ cl_abap_char_utilities=>horizontal_tab }|
|
||||||
|
@ -761,8 +720,7 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD test_get_token_t_by_r_t.
|
METHOD test_get_token_t_by_r_t.
|
||||||
|
|
||||||
DATA(lt_range) = VALUE z2ui5_cl_util=>ty_t_range(
|
DATA(lt_range) = VALUE z2ui5_cl_util=>ty_t_range( ( sign = 'I' option = 'EQ' low = `table` high = `` )
|
||||||
( sign = 'I' option = 'EQ' low = `table` high = `` )
|
|
||||||
).
|
).
|
||||||
|
|
||||||
DATA(lt_result) = z2ui5_cl_util=>filter_get_token_t_by_range_t( lt_range ).
|
DATA(lt_result) = z2ui5_cl_util=>filter_get_token_t_by_range_t( lt_range ).
|
||||||
|
@ -771,9 +729,8 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
( key = `=table` text = `=table` visible = 'X' selkz = '' editable = 'X' )
|
( key = `=table` text = `=table` visible = 'X' selkz = '' editable = 'X' )
|
||||||
).
|
).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = lt_exp
|
||||||
act = lt_result
|
act = lt_result
|
||||||
exp = lt_exp
|
|
||||||
).
|
).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
@ -798,8 +755,7 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
value2 TYPE string,
|
value2 TYPE string,
|
||||||
END OF ty_struc.
|
END OF ty_struc.
|
||||||
|
|
||||||
DATA
|
DATA BEGIN OF ms_struc2.
|
||||||
BEGIN OF ms_struc2.
|
|
||||||
INCLUDE TYPE ty_struc.
|
INCLUDE TYPE ty_struc.
|
||||||
INCLUDE TYPE ty_struc_incl.
|
INCLUDE TYPE ty_struc_incl.
|
||||||
DATA END OF ms_struc2.
|
DATA END OF ms_struc2.
|
||||||
|
@ -812,5 +768,4 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,8 +1,7 @@
|
||||||
CLASS z2ui5_cx_util_error DEFINITION
|
CLASS z2ui5_cx_util_error DEFINITION
|
||||||
PUBLIC
|
PUBLIC
|
||||||
INHERITING FROM cx_no_check
|
INHERITING FROM cx_no_check FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -11,26 +10,23 @@ CLASS z2ui5_cx_util_error DEFINITION
|
||||||
x_root TYPE REF TO cx_root,
|
x_root TYPE REF TO cx_root,
|
||||||
uuid TYPE string,
|
uuid TYPE string,
|
||||||
text TYPE string,
|
text TYPE string,
|
||||||
END OF ms_error .
|
END OF ms_error.
|
||||||
|
|
||||||
METHODS constructor
|
METHODS constructor
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!val TYPE any OPTIONAL
|
val TYPE any OPTIONAL
|
||||||
!previous TYPE REF TO cx_root OPTIONAL
|
!previous TYPE REF TO cx_root OPTIONAL
|
||||||
PREFERRED PARAMETER val.
|
PREFERRED PARAMETER val.
|
||||||
|
|
||||||
METHODS if_message~get_text
|
METHODS if_message~get_text REDEFINITION.
|
||||||
REDEFINITION.
|
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cx_util_error IMPLEMENTATION.
|
CLASS z2ui5_cx_util_error IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD constructor ##ADT_SUPPRESS_GENERATION.
|
METHOD constructor ##ADT_SUPPRESS_GENERATION.
|
||||||
|
|
||||||
super->constructor( previous = previous ).
|
super->constructor( previous = previous ).
|
||||||
|
@ -45,7 +41,6 @@ CLASS z2ui5_cx_util_error IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD if_message~get_text.
|
METHOD if_message~get_text.
|
||||||
|
|
||||||
IF ms_error-x_root IS NOT INITIAL.
|
IF ms_error-x_root IS NOT INITIAL.
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
CLASS ltcl_unit_test DEFINITION FINAL FOR TESTING
|
CLASS ltcl_unit_test DEFINITION FINAL
|
||||||
DURATION SHORT
|
FOR TESTING RISK LEVEL DANGEROUS DURATION SHORT.
|
||||||
RISK LEVEL DANGEROUS.
|
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS test_raise FOR TESTING RAISING cx_static_check.
|
METHODS test_raise FOR TESTING RAISING cx_static_check.
|
||||||
|
@ -8,21 +7,17 @@ ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS ltcl_unit_test IMPLEMENTATION.
|
CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD test_raise.
|
METHOD test_raise.
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
|
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING val = `this is an error text`.
|
||||||
val = `this is an error text`.
|
|
||||||
|
|
||||||
CATCH z2ui5_cx_util_error INTO DATA(lx).
|
CATCH z2ui5_cx_util_error INTO DATA(lx).
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `this is an error text`
|
||||||
act = lx->get_text( )
|
act = lx->get_text( ) ).
|
||||||
exp = `this is an error text` ).
|
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_core_srv_draft DEFINITION
|
CLASS z2ui5_cl_core_srv_draft DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -11,8 +10,8 @@ CLASS z2ui5_cl_core_srv_draft DEFINITION
|
||||||
|
|
||||||
METHODS create
|
METHODS create
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!draft TYPE z2ui5_if_types=>ty_s_draft
|
draft TYPE z2ui5_if_types=>ty_s_draft
|
||||||
!model_xml TYPE clike.
|
model_xml TYPE clike.
|
||||||
|
|
||||||
METHODS read_draft
|
METHODS read_draft
|
||||||
IMPORTING
|
IMPORTING
|
||||||
|
@ -33,7 +32,7 @@ CLASS z2ui5_cl_core_srv_draft DEFINITION
|
||||||
METHODS read
|
METHODS read
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!id TYPE clike
|
!id TYPE clike
|
||||||
!check_load_app TYPE abap_bool DEFAULT abap_true
|
check_load_app TYPE abap_bool DEFAULT abap_true
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE z2ui5_if_core_types=>ty_s_db.
|
VALUE(result) TYPE z2ui5_if_core_types=>ty_s_db.
|
||||||
|
|
||||||
|
@ -41,14 +40,10 @@ CLASS z2ui5_cl_core_srv_draft DEFINITION
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_core_srv_draft IMPLEMENTATION.
|
CLASS z2ui5_cl_core_srv_draft IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD cleanup.
|
METHOD cleanup.
|
||||||
|
|
||||||
DATA(lv_four_hours_ago) = z2ui5_cl_util=>time_substract_seconds(
|
DATA(lv_four_hours_ago) = z2ui5_cl_util=>time_substract_seconds( time = z2ui5_cl_util=>time_get_timestampl( )
|
||||||
time = z2ui5_cl_util=>time_get_timestampl( )
|
|
||||||
seconds = 60 * 60 * 4 ).
|
seconds = 60 * 60 * 4 ).
|
||||||
|
|
||||||
DELETE FROM z2ui5_t_01 WHERE timestampl < @lv_four_hours_ago.
|
DELETE FROM z2ui5_t_01 WHERE timestampl < @lv_four_hours_ago.
|
||||||
|
@ -56,13 +51,11 @@ CLASS z2ui5_cl_core_srv_draft IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD create.
|
METHOD create.
|
||||||
|
|
||||||
ASSERT draft-id IS NOT INITIAL.
|
ASSERT draft-id IS NOT INITIAL.
|
||||||
|
|
||||||
DATA(ls_db) = VALUE z2ui5_if_core_types=>ty_s_db(
|
DATA(ls_db) = VALUE z2ui5_if_core_types=>ty_s_db( id = draft-id
|
||||||
id = draft-id
|
|
||||||
id_prev = draft-id_prev
|
id_prev = draft-id_prev
|
||||||
id_prev_app = draft-id_prev_app
|
id_prev_app = draft-id_prev_app
|
||||||
id_prev_app_stack = draft-id_prev_app_stack
|
id_prev_app_stack = draft-id_prev_app_stack
|
||||||
|
@ -73,20 +66,17 @@ CLASS z2ui5_cl_core_srv_draft IMPLEMENTATION.
|
||||||
MODIFY z2ui5_t_01 FROM @ls_db.
|
MODIFY z2ui5_t_01 FROM @ls_db.
|
||||||
IF sy-subrc <> 0.
|
IF sy-subrc <> 0.
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING val = `CREATE_OF_DRAFT_ENTRY_ON_DATABASE_FAILED`.
|
||||||
val = `CREATE_OF_DRAFT_ENTRY_ON_DATABASE_FAILED`.
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
COMMIT WORK AND WAIT.
|
COMMIT WORK AND WAIT.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD read.
|
METHOD read.
|
||||||
|
|
||||||
IF check_load_app = abap_true.
|
IF check_load_app = abap_true.
|
||||||
|
|
||||||
SELECT SINGLE *
|
SELECT SINGLE * FROM z2ui5_t_01
|
||||||
FROM z2ui5_t_01
|
|
||||||
WHERE id = @id
|
WHERE id = @id
|
||||||
INTO @result ##SUBRC_OK.
|
INTO @result ##SUBRC_OK.
|
||||||
|
|
||||||
|
@ -101,38 +91,31 @@ CLASS z2ui5_cl_core_srv_draft IMPLEMENTATION.
|
||||||
|
|
||||||
IF sy-subrc <> 0.
|
IF sy-subrc <> 0.
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING val = `NO_DRAFT_ENTRY_OF_PREVIOUS_REQUEST_FOUND`.
|
||||||
val = `NO_DRAFT_ENTRY_OF_PREVIOUS_REQUEST_FOUND`.
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD read_draft.
|
METHOD read_draft.
|
||||||
|
|
||||||
result = read( id ).
|
result = read( id ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD read_info.
|
METHOD read_info.
|
||||||
|
|
||||||
DATA(ls_db) = read(
|
DATA(ls_db) = read( id = id
|
||||||
id = id
|
|
||||||
check_load_app = abap_false ).
|
check_load_app = abap_false ).
|
||||||
|
|
||||||
result = CORRESPONDING #( ls_db ).
|
result = CORRESPONDING #( ls_db ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD count_entries.
|
METHOD count_entries.
|
||||||
|
|
||||||
SELECT
|
SELECT COUNT( * )
|
||||||
COUNT( * )
|
|
||||||
FROM z2ui5_t_01
|
FROM z2ui5_t_01
|
||||||
INTO @result.
|
INTO @result.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
CLASS ltcl_test DEFINITION FINAL FOR TESTING
|
CLASS ltcl_test DEFINITION FINAL
|
||||||
DURATION LONG
|
FOR TESTING RISK LEVEL HARMLESS DURATION LONG.
|
||||||
RISK LEVEL HARMLESS.
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -8,12 +7,12 @@ CLASS ltcl_test DEFINITION FINAL FOR TESTING
|
||||||
METHODS test_create FOR TESTING.
|
METHODS test_create FOR TESTING.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS ltcl_test IMPLEMENTATION.
|
CLASS ltcl_test IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
@ -22,17 +21,14 @@ CLASS ltcl_test IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lo_draft) = NEW z2ui5_cl_core_srv_draft( ).
|
DATA(lo_draft) = NEW z2ui5_cl_core_srv_draft( ).
|
||||||
|
|
||||||
lo_draft->create(
|
lo_draft->create( draft = VALUE #( id = `TEST_ID` )
|
||||||
draft = VALUE #( id = `TEST_ID` )
|
|
||||||
model_xml = `my xml`
|
model_xml = `my xml`
|
||||||
).
|
).
|
||||||
|
|
||||||
DATA(ls_db) = lo_draft->read_draft( `TEST_ID` ).
|
DATA(ls_db) = lo_draft->read_draft( `TEST_ID` ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `my xml`
|
||||||
act = ls_db-data
|
act = ls_db-data ).
|
||||||
exp = `my xml` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
CLASS z2ui5_cl_core_action DEFINITION
|
CLASS z2ui5_cl_core_action DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
|
||||||
CREATE PUBLIC.
|
CREATE PUBLIC.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
@ -47,10 +46,7 @@ CLASS z2ui5_cl_core_action DEFINITION
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_core_action IMPLEMENTATION.
|
CLASS z2ui5_cl_core_action IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
|
|
||||||
mo_http_post = val.
|
mo_http_post = val.
|
||||||
|
@ -58,7 +54,6 @@ CLASS z2ui5_cl_core_action IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD factory_by_frontend.
|
METHOD factory_by_frontend.
|
||||||
|
|
||||||
result = NEW #( mo_http_post ).
|
result = NEW #( mo_http_post ).
|
||||||
|
@ -69,13 +64,11 @@ CLASS z2ui5_cl_core_action IMPLEMENTATION.
|
||||||
result->mo_app = z2ui5_cl_core_app=>db_load( mo_http_post->ms_request-s_front-id ).
|
result->mo_app = z2ui5_cl_core_app=>db_load( mo_http_post->ms_request-s_front-id ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
|
|
||||||
result->mo_app->ms_draft-id = z2ui5_cl_util=>uuid_get_c32( ).
|
result->mo_app->ms_draft-id = z2ui5_cl_util=>uuid_get_c32( ).
|
||||||
result->mo_app->ms_draft-id_prev = mo_http_post->ms_request-s_front-id.
|
result->mo_app->ms_draft-id_prev = mo_http_post->ms_request-s_front-id.
|
||||||
result->ms_actual-view = mo_http_post->ms_request-s_front-view.
|
result->ms_actual-view = mo_http_post->ms_request-s_front-view.
|
||||||
|
|
||||||
result->mo_app->model_json_parse(
|
result->mo_app->model_json_parse( iv_view = mo_http_post->ms_request-s_front-view
|
||||||
iv_view = mo_http_post->ms_request-s_front-view
|
|
||||||
io_model = mo_http_post->ms_request-o_model ).
|
io_model = mo_http_post->ms_request-o_model ).
|
||||||
|
|
||||||
result->ms_actual-event = mo_http_post->ms_request-s_front-event.
|
result->ms_actual-event = mo_http_post->ms_request-s_front-event.
|
||||||
|
@ -84,7 +77,6 @@ CLASS z2ui5_cl_core_action IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD factory_first_start.
|
METHOD factory_first_start.
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
|
@ -100,14 +92,12 @@ CLASS z2ui5_cl_core_action IMPLEMENTATION.
|
||||||
|
|
||||||
CATCH cx_root INTO DATA(x).
|
CATCH cx_root INTO DATA(x).
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING val = |App with name { mo_http_post->ms_request-s_control-app_start } not found...|
|
||||||
val = `App with name ` && mo_http_post->ms_request-s_control-app_start && ` not found...`
|
|
||||||
previous = x.
|
previous = x.
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD factory_stack_call.
|
METHOD factory_stack_call.
|
||||||
|
|
||||||
result = prepare_app_stack( ms_next-o_app_call ).
|
result = prepare_app_stack( ms_next-o_app_call ).
|
||||||
|
@ -115,12 +105,11 @@ CLASS z2ui5_cl_core_action IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD factory_stack_leave.
|
METHOD factory_stack_leave.
|
||||||
|
|
||||||
result = prepare_app_stack( ms_next-o_app_leave ).
|
result = prepare_app_stack( ms_next-o_app_leave ).
|
||||||
|
|
||||||
"check for new app?
|
" check for new app?
|
||||||
TRY.
|
TRY.
|
||||||
DATA(lo_draft) = NEW z2ui5_cl_core_srv_draft( ).
|
DATA(lo_draft) = NEW z2ui5_cl_core_srv_draft( ).
|
||||||
DATA(ls_draft) = lo_draft->read_info( ms_next-o_app_leave->id_draft ).
|
DATA(ls_draft) = lo_draft->read_info( ms_next-o_app_leave->id_draft ).
|
||||||
|
@ -129,7 +118,7 @@ CLASS z2ui5_cl_core_action IMPLEMENTATION.
|
||||||
RETURN.
|
RETURN.
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
|
|
||||||
"check for already existing app?
|
" check for already existing app?
|
||||||
IF mo_app->ms_draft-id_prev_app_stack IS NOT INITIAL.
|
IF mo_app->ms_draft-id_prev_app_stack IS NOT INITIAL.
|
||||||
ls_draft = lo_draft->read_info( mo_app->ms_draft-id_prev_app_stack ).
|
ls_draft = lo_draft->read_info( mo_app->ms_draft-id_prev_app_stack ).
|
||||||
result->mo_app->ms_draft-id_prev_app_stack = ls_draft-id_prev_app_stack.
|
result->mo_app->ms_draft-id_prev_app_stack = ls_draft-id_prev_app_stack.
|
||||||
|
@ -177,9 +166,9 @@ CLASS z2ui5_cl_core_action IMPLEMENTATION.
|
||||||
result->ms_next-s_set-s_popup-check_update_model = abap_false.
|
result->ms_next-s_set-s_popup-check_update_model = abap_false.
|
||||||
result->ms_next-s_set-s_popover-check_update_model = abap_false.
|
result->ms_next-s_set-s_popover-check_update_model = abap_false.
|
||||||
|
|
||||||
|
|
||||||
IF ms_next-s_set-s_follow_up_action IS NOT INITIAL.
|
IF ms_next-s_set-s_follow_up_action IS NOT INITIAL.
|
||||||
* .eB(['POPUP_CONFIRM'])
|
" .eB(['POPUP_CONFIRM'])
|
||||||
|
" TODO: variable is assigned but never used (ABAP cleaner)
|
||||||
SPLIT ms_next-s_set-s_follow_up_action-custom_js AT `.eB(['` INTO DATA(lv_dummy)
|
SPLIT ms_next-s_set-s_follow_up_action-custom_js AT `.eB(['` INTO DATA(lv_dummy)
|
||||||
result->ms_actual-event.
|
result->ms_actual-event.
|
||||||
SPLIT result->ms_actual-event AT `']` INTO result->ms_actual-event lv_dummy.
|
SPLIT result->ms_actual-event AT `']` INTO result->ms_actual-event lv_dummy.
|
||||||
|
@ -190,5 +179,4 @@ CLASS z2ui5_cl_core_action IMPLEMENTATION.
|
||||||
CLEAR result->ms_next-s_set-s_msg_toast.
|
CLEAR result->ms_next-s_set-s_msg_toast.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,21 +1,17 @@
|
||||||
CLASS ltcl_test DEFINITION FINAL FOR TESTING
|
CLASS ltcl_test DEFINITION FINAL
|
||||||
DURATION SHORT
|
FOR TESTING RISK LEVEL HARMLESS DURATION SHORT.
|
||||||
RISK LEVEL HARMLESS.
|
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS
|
METHODS first_test FOR TESTING RAISING cx_static_check.
|
||||||
first_test FOR TESTING RAISING cx_static_check.
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS z2ui5_cl_core_action DEFINITION LOCAL FRIENDS ltcl_test.
|
CLASS z2ui5_cl_core_action DEFINITION LOCAL FRIENDS ltcl_test.
|
||||||
|
|
||||||
CLASS ltcl_test IMPLEMENTATION.
|
CLASS ltcl_test IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD first_test.
|
METHOD first_test.
|
||||||
|
|
||||||
DATA(lo_http) = NEW z2ui5_cl_core_handler( `` ).
|
DATA(lo_http) = NEW z2ui5_cl_core_handler( `` ).
|
||||||
DATA(lo_action) = NEW z2ui5_cl_core_action( lo_http ) ##NEEDED.
|
DATA(lo_action) = NEW z2ui5_cl_core_action( lo_http ) ##NEEDED.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_core_app DEFINITION
|
CLASS z2ui5_cl_core_app DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -13,12 +12,12 @@ CLASS z2ui5_cl_core_app DEFINITION
|
||||||
|
|
||||||
METHODS model_json_stringify
|
METHODS model_json_stringify
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string .
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
METHODS model_json_parse
|
METHODS model_json_parse
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!iv_view TYPE clike
|
iv_view TYPE clike
|
||||||
!io_model TYPE REF TO z2ui5_if_ajson.
|
io_model TYPE REF TO z2ui5_if_ajson.
|
||||||
|
|
||||||
METHODS all_xml_stringify
|
METHODS all_xml_stringify
|
||||||
RETURNING
|
RETURNING
|
||||||
|
@ -46,31 +45,24 @@ CLASS z2ui5_cl_core_app DEFINITION
|
||||||
METHODS db_save.
|
METHODS db_save.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_core_app IMPLEMENTATION.
|
CLASS z2ui5_cl_core_app IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD all_xml_parse.
|
METHOD all_xml_parse.
|
||||||
|
|
||||||
z2ui5_cl_util=>xml_parse(
|
z2ui5_cl_util=>xml_parse( EXPORTING xml = xml
|
||||||
EXPORTING
|
IMPORTING any = result ).
|
||||||
xml = xml
|
|
||||||
IMPORTING
|
|
||||||
any = result ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD all_xml_stringify.
|
METHOD all_xml_stringify.
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
|
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri( attri = mt_attri
|
||||||
attri = mt_attri
|
|
||||||
app = mo_app ).
|
app = mo_app ).
|
||||||
lo_model->attri_before_save( ).
|
lo_model->attri_before_save( ).
|
||||||
result = z2ui5_cl_util=>xml_stringify( me ).
|
result = z2ui5_cl_util=>xml_stringify( me ).
|
||||||
|
@ -82,14 +74,12 @@ CLASS z2ui5_cl_core_app IMPLEMENTATION.
|
||||||
|
|
||||||
CLEAR mt_attri->*.
|
CLEAR mt_attri->*.
|
||||||
|
|
||||||
DATA(lo_dissolver) = NEW z2ui5_cl_core_srv_diss(
|
DATA(lo_dissolver) = NEW z2ui5_cl_core_srv_diss( attri = mt_attri
|
||||||
attri = mt_attri
|
|
||||||
app = mo_app ).
|
app = mo_app ).
|
||||||
|
|
||||||
lo_dissolver->main( ).
|
lo_dissolver->main( ).
|
||||||
lo_dissolver->main( ).
|
lo_dissolver->main( ).
|
||||||
lo_model = NEW z2ui5_cl_core_srv_attri(
|
lo_model = NEW z2ui5_cl_core_srv_attri( attri = mt_attri
|
||||||
attri = mt_attri
|
|
||||||
app = mo_app ).
|
app = mo_app ).
|
||||||
lo_model->attri_before_save( ).
|
lo_model->attri_before_save( ).
|
||||||
|
|
||||||
|
@ -99,36 +89,32 @@ CLASS z2ui5_cl_core_app IMPLEMENTATION.
|
||||||
|
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING
|
||||||
val = `<p>` && cx->get_text( ) && `<p>` && x2->get_text( ) && ` or <p> Please check if all generic data references are public attributes of your class`.
|
val = |<p>{ cx->get_text( ) }<p>{ x2->get_text( ) } or <p> Please check if all generic data references are public attributes of your class|.
|
||||||
|
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
|
|
||||||
CREATE DATA mt_attri.
|
CREATE DATA mt_attri.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD db_load.
|
METHOD db_load.
|
||||||
|
|
||||||
DATA(lo_db) = NEW z2ui5_cl_core_srv_draft( ).
|
DATA(lo_db) = NEW z2ui5_cl_core_srv_draft( ).
|
||||||
DATA(ls_db) = lo_db->read_draft( id ).
|
DATA(ls_db) = lo_db->read_draft( id ).
|
||||||
result = all_xml_parse( ls_db-data ).
|
result = all_xml_parse( ls_db-data ).
|
||||||
|
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri( attri = result->mt_attri
|
||||||
attri = result->mt_attri
|
|
||||||
app = result->mo_app ).
|
app = result->mo_app ).
|
||||||
|
|
||||||
lo_model->attri_after_load( ).
|
lo_model->attri_after_load( ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD db_load_by_app.
|
METHOD db_load_by_app.
|
||||||
|
|
||||||
DATA(lo_db) = NEW z2ui5_cl_core_srv_draft( ).
|
DATA(lo_db) = NEW z2ui5_cl_core_srv_draft( ).
|
||||||
|
@ -137,15 +123,13 @@ CLASS z2ui5_cl_core_app IMPLEMENTATION.
|
||||||
|
|
||||||
result->mo_app = app.
|
result->mo_app = app.
|
||||||
|
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri( attri = result->mt_attri
|
||||||
attri = result->mt_attri
|
|
||||||
app = result->mo_app ).
|
app = result->mo_app ).
|
||||||
|
|
||||||
lo_model->attri_refs_update( ).
|
lo_model->attri_refs_update( ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD db_save.
|
METHOD db_save.
|
||||||
|
|
||||||
IF mo_app IS BOUND.
|
IF mo_app IS BOUND.
|
||||||
|
@ -154,24 +138,20 @@ CLASS z2ui5_cl_core_app IMPLEMENTATION.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
DATA(lo_db) = NEW z2ui5_cl_core_srv_draft( ).
|
DATA(lo_db) = NEW z2ui5_cl_core_srv_draft( ).
|
||||||
lo_db->create(
|
lo_db->create( draft = ms_draft
|
||||||
draft = ms_draft
|
|
||||||
model_xml = all_xml_stringify( ) ).
|
model_xml = all_xml_stringify( ) ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD model_json_parse.
|
METHOD model_json_parse.
|
||||||
|
|
||||||
DATA(lo_json_mapper) = NEW z2ui5_cl_core_srv_json( ).
|
DATA(lo_json_mapper) = NEW z2ui5_cl_core_srv_json( ).
|
||||||
lo_json_mapper->model_front_to_back(
|
lo_json_mapper->model_front_to_back( view = iv_view
|
||||||
view = iv_view
|
|
||||||
t_attri = mt_attri
|
t_attri = mt_attri
|
||||||
model = io_model ).
|
model = io_model ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD model_json_stringify.
|
METHOD model_json_stringify.
|
||||||
|
|
||||||
DATA(lo_json_mapper) = NEW z2ui5_cl_core_srv_json( ).
|
DATA(lo_json_mapper) = NEW z2ui5_cl_core_srv_json( ).
|
||||||
|
|
|
@ -1,43 +1,41 @@
|
||||||
CLASS ltcl_test DEFINITION FINAL FOR TESTING
|
CLASS ltcl_test DEFINITION FINAL
|
||||||
DURATION SHORT
|
FOR TESTING RISK LEVEL HARMLESS DURATION SHORT.
|
||||||
RISK LEVEL HARMLESS.
|
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS
|
METHODS first_test FOR TESTING RAISING cx_static_check.
|
||||||
first_test FOR TESTING RAISING cx_static_check.
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS z2ui5_cl_core_app DEFINITION LOCAL FRIENDS ltcl_test.
|
CLASS z2ui5_cl_core_app DEFINITION LOCAL FRIENDS ltcl_test.
|
||||||
|
|
||||||
CLASS ltcl_test IMPLEMENTATION.
|
CLASS ltcl_test IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD first_test.
|
METHOD first_test.
|
||||||
|
|
||||||
DATA(lo_action) = NEW z2ui5_cl_core_app( ) ##NEEDED.
|
DATA(lo_action) = NEW z2ui5_cl_core_app( ) ##NEEDED.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_test_db DEFINITION FINAL FOR TESTING
|
|
||||||
DURATION LONG
|
CLASS ltcl_test_db DEFINITION FINAL
|
||||||
RISK LEVEL HARMLESS.
|
FOR TESTING RISK LEVEL HARMLESS DURATION LONG.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
DATA mv_value TYPE string.
|
DATA mv_value TYPE string.
|
||||||
|
|
||||||
INTERFACES z2ui5_if_app.
|
INTERFACES z2ui5_if_app.
|
||||||
|
|
||||||
METHODS constructor.
|
METHODS constructor.
|
||||||
|
|
||||||
METHODS test_db_save FOR TESTING.
|
METHODS test_db_save FOR TESTING.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS ltcl_test_db IMPLEMENTATION.
|
CLASS ltcl_test_db IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
@ -60,14 +58,12 @@ CLASS ltcl_test_db IMPLEMENTATION.
|
||||||
DATA(lo_app_db) = z2ui5_cl_core_app=>db_load( `TEST_ID` ).
|
DATA(lo_app_db) = z2ui5_cl_core_app=>db_load( `TEST_ID` ).
|
||||||
DATA(lo_app_user_db) = CAST ltcl_test_db( lo_app_db->mo_app ).
|
DATA(lo_app_user_db) = CAST ltcl_test_db( lo_app_db->mo_app ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = lo_app_user->mv_value
|
||||||
act = lo_app_user_db->mv_value
|
act = lo_app_user_db->mv_value ).
|
||||||
exp = lo_app_user->mv_value ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD z2ui5_if_app~main.
|
METHOD z2ui5_if_app~main.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
CLASS z2ui5_cl_core_client DEFINITION
|
CLASS z2ui5_cl_core_client DEFINITION
|
||||||
PUBLIC
|
PUBLIC
|
||||||
CREATE PUBLIC .
|
CREATE PUBLIC.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
INTERFACES z2ui5_if_client .
|
INTERFACES z2ui5_if_client.
|
||||||
|
|
||||||
DATA mo_action TYPE REF TO z2ui5_cl_core_action.
|
DATA mo_action TYPE REF TO z2ui5_cl_core_action.
|
||||||
|
|
||||||
|
@ -13,32 +13,27 @@ CLASS z2ui5_cl_core_client DEFINITION
|
||||||
!action TYPE REF TO z2ui5_cl_core_action.
|
!action TYPE REF TO z2ui5_cl_core_action.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
|
|
||||||
mo_action = action.
|
mo_action = action.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~follow_up_action.
|
METHOD z2ui5_if_client~follow_up_action.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_follow_up_action-custom_js = val.
|
mo_action->ms_next-s_set-s_follow_up_action-custom_js = val.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~get.
|
METHOD z2ui5_if_client~get.
|
||||||
|
|
||||||
result = VALUE #(
|
result = VALUE #( event = mo_action->ms_actual-event
|
||||||
event = mo_action->ms_actual-event
|
|
||||||
check_launchpad_active = mo_action->mo_http_post->ms_request-s_control-check_launchpad
|
check_launchpad_active = mo_action->mo_http_post->ms_request-s_control-check_launchpad
|
||||||
t_event_arg = mo_action->ms_actual-t_event_arg
|
t_event_arg = mo_action->ms_actual-t_event_arg
|
||||||
s_draft = CORRESPONDING #( mo_action->mo_app->ms_draft )
|
s_draft = CORRESPONDING #( mo_action->mo_app->ms_draft )
|
||||||
|
@ -56,8 +51,9 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
||||||
REFERENCE INTO DATA(lr_comp)
|
REFERENCE INTO DATA(lr_comp)
|
||||||
WHERE name = `1`.
|
WHERE name = `1`.
|
||||||
|
|
||||||
INSERT VALUE #(
|
INSERT VALUE #( n = shift_left( val = shift_right( val = lr_comp->path
|
||||||
n = shift_left( val = shift_right( val = lr_comp->path sub = `/` ) sub = `/` )
|
sub = `/` )
|
||||||
|
sub = `/` )
|
||||||
v = lr_comp->value ) INTO TABLE result-t_comp_params.
|
v = lr_comp->value ) INTO TABLE result-t_comp_params.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
CATCH cx_root.
|
CATCH cx_root.
|
||||||
|
@ -85,7 +81,6 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~message_box_display.
|
METHOD z2ui5_if_client~message_box_display.
|
||||||
|
|
||||||
IF z2ui5_cl_util=>rtti_check_clike( text ) = abap_false.
|
IF z2ui5_cl_util=>rtti_check_clike( text ) = abap_false.
|
||||||
|
@ -95,21 +90,24 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lv_type) = z2ui5_cl_util=>ui5_get_msg_type( lt_msg[ 1 ]-type ).
|
DATA(lv_type) = z2ui5_cl_util=>ui5_get_msg_type( lt_msg[ 1 ]-type ).
|
||||||
lv_type = to_lower( lv_type ).
|
lv_type = to_lower( lv_type ).
|
||||||
DATA(lv_title) = SWITCH #( lt_msg[ 1 ]-type WHEN 'E' THEN `Error`
|
DATA(lv_title) = SWITCH #( lt_msg[ 1 ]-type
|
||||||
WHEN 'S' THEN `Success` WHEN `W` THEN `Warning`
|
WHEN 'E' THEN `Error`
|
||||||
|
WHEN 'S' THEN `Success`
|
||||||
|
WHEN `W` THEN `Warning`
|
||||||
ELSE `Information` ).
|
ELSE `Information` ).
|
||||||
|
|
||||||
|
|
||||||
ELSEIF lines( lt_msg ) > 1.
|
ELSEIF lines( lt_msg ) > 1.
|
||||||
lv_text = | { lines( lt_msg ) } Messages found: |.
|
lv_text = | { lines( lt_msg ) } Messages found: |.
|
||||||
DATA(lv_details) = `<ul>`.
|
DATA(lv_details) = `<ul>`.
|
||||||
LOOP AT lt_msg REFERENCE INTO DATA(lr_msg).
|
LOOP AT lt_msg REFERENCE INTO DATA(lr_msg).
|
||||||
lv_details = lv_details && |<li>| && lr_msg->text && |</li>|.
|
lv_details = |{ lv_details }<li>{ lr_msg->text }</li>|.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
lv_details = lv_details && |</ul>|.
|
lv_details = |{ lv_details }</ul>|.
|
||||||
IF title IS INITIAL.
|
IF title IS INITIAL.
|
||||||
lv_title = SWITCH #( lt_msg[ 1 ]-type WHEN 'E' THEN `Error`
|
lv_title = SWITCH #( lt_msg[ 1 ]-type
|
||||||
WHEN 'S' THEN `Success` WHEN `W` THEN `Warning`
|
WHEN 'E' THEN `Error`
|
||||||
|
WHEN 'S' THEN `Success`
|
||||||
|
WHEN `W` THEN `Warning`
|
||||||
ELSE `Information` ).
|
ELSE `Information` ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
lv_type = z2ui5_cl_util=>ui5_get_msg_type( lt_msg[ 1 ]-type ).
|
lv_type = z2ui5_cl_util=>ui5_get_msg_type( lt_msg[ 1 ]-type ).
|
||||||
|
@ -134,8 +132,7 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
||||||
lv_type = 'show'.
|
lv_type = 'show'.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_msg_box = VALUE #(
|
mo_action->ms_next-s_set-s_msg_box = VALUE #( text = lv_text
|
||||||
text = lv_text
|
|
||||||
type = lv_type
|
type = lv_type
|
||||||
title = lv_title
|
title = lv_title
|
||||||
styleclass = styleclass
|
styleclass = styleclass
|
||||||
|
@ -151,11 +148,9 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~message_toast_display.
|
METHOD z2ui5_if_client~message_toast_display.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_msg_toast = VALUE #(
|
mo_action->ms_next-s_set-s_msg_toast = VALUE #( text = text
|
||||||
text = text
|
|
||||||
duration = duration
|
duration = duration
|
||||||
width = width
|
width = width
|
||||||
my = my
|
my = my
|
||||||
|
@ -173,7 +168,6 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~nav_app_call.
|
METHOD z2ui5_if_client~nav_app_call.
|
||||||
|
|
||||||
IF app IS NOT BOUND.
|
IF app IS NOT BOUND.
|
||||||
|
@ -188,7 +182,6 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
||||||
result = app->id_app.
|
result = app->id_app.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~nav_app_leave.
|
METHOD z2ui5_if_client~nav_app_leave.
|
||||||
|
|
||||||
IF app IS NOT SUPPLIED.
|
IF app IS NOT SUPPLIED.
|
||||||
|
@ -208,14 +201,12 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~nest2_view_destroy.
|
METHOD z2ui5_if_client~nest2_view_destroy.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_view_nest2-check_update_model = abap_true.
|
mo_action->ms_next-s_set-s_view_nest2-check_update_model = abap_true.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~nest2_view_display.
|
METHOD z2ui5_if_client~nest2_view_display.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_view_nest2-xml = val.
|
mo_action->ms_next-s_set-s_view_nest2-xml = val.
|
||||||
|
@ -225,21 +216,18 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~nest2_view_model_update.
|
METHOD z2ui5_if_client~nest2_view_model_update.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_view_nest2-check_update_model = abap_true.
|
mo_action->ms_next-s_set-s_view_nest2-check_update_model = abap_true.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~nest_view_destroy.
|
METHOD z2ui5_if_client~nest_view_destroy.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_view_nest-check_update_model = abap_true.
|
mo_action->ms_next-s_set-s_view_nest-check_update_model = abap_true.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~nest_view_display.
|
METHOD z2ui5_if_client~nest_view_display.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_view_nest-xml = val.
|
mo_action->ms_next-s_set-s_view_nest-xml = val.
|
||||||
|
@ -249,21 +237,18 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~nest_view_model_update.
|
METHOD z2ui5_if_client~nest_view_model_update.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_view_nest-check_update_model = abap_true.
|
mo_action->ms_next-s_set-s_view_nest-check_update_model = abap_true.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~popover_destroy.
|
METHOD z2ui5_if_client~popover_destroy.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_popover-check_destroy = abap_true.
|
mo_action->ms_next-s_set-s_popover-check_destroy = abap_true.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~popover_display.
|
METHOD z2ui5_if_client~popover_display.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_popover-check_destroy = abap_false.
|
mo_action->ms_next-s_set-s_popover-check_destroy = abap_false.
|
||||||
|
@ -272,21 +257,18 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~popover_model_update.
|
METHOD z2ui5_if_client~popover_model_update.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_popover-check_update_model = abap_true.
|
mo_action->ms_next-s_set-s_popover-check_update_model = abap_true.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~popup_destroy.
|
METHOD z2ui5_if_client~popup_destroy.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_popup = VALUE #( check_destroy = abap_true ).
|
mo_action->ms_next-s_set-s_popup = VALUE #( check_destroy = abap_true ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~popup_display.
|
METHOD z2ui5_if_client~popup_display.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_popup-check_destroy = abap_false.
|
mo_action->ms_next-s_set-s_popup-check_destroy = abap_false.
|
||||||
|
@ -294,43 +276,36 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~popup_model_update.
|
METHOD z2ui5_if_client~popup_model_update.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_popup-check_update_model = abap_true.
|
mo_action->ms_next-s_set-s_popup-check_update_model = abap_true.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~view_destroy.
|
METHOD z2ui5_if_client~view_destroy.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_view-check_destroy = abap_true.
|
mo_action->ms_next-s_set-s_view-check_destroy = abap_true.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~view_display.
|
METHOD z2ui5_if_client~view_display.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_view-xml = val.
|
mo_action->ms_next-s_set-s_view-xml = val.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~view_model_update.
|
METHOD z2ui5_if_client~view_model_update.
|
||||||
|
|
||||||
mo_action->ms_next-s_set-s_view-check_update_model = abap_true.
|
mo_action->ms_next-s_set-s_view-check_update_model = abap_true.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~_bind.
|
METHOD z2ui5_if_client~_bind.
|
||||||
|
|
||||||
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( mo_action->mo_app ).
|
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( mo_action->mo_app ).
|
||||||
result = lo_bind->main(
|
result = lo_bind->main( val = z2ui5_cl_util=>conv_get_as_data_ref( val )
|
||||||
val = z2ui5_cl_util=>conv_get_as_data_ref( val )
|
|
||||||
type = z2ui5_if_core_types=>cs_bind_type-one_way
|
type = z2ui5_if_core_types=>cs_bind_type-one_way
|
||||||
config = VALUE #(
|
config = VALUE #( path_only = path
|
||||||
path_only = path
|
|
||||||
custom_filter = custom_filter
|
custom_filter = custom_filter
|
||||||
custom_mapper = custom_mapper
|
custom_mapper = custom_mapper
|
||||||
tab = z2ui5_cl_util=>conv_get_as_data_ref( tab )
|
tab = z2ui5_cl_util=>conv_get_as_data_ref( tab )
|
||||||
|
@ -338,15 +313,12 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~_bind_edit.
|
METHOD z2ui5_if_client~_bind_edit.
|
||||||
|
|
||||||
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( mo_action->mo_app ).
|
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( mo_action->mo_app ).
|
||||||
result = lo_bind->main(
|
result = lo_bind->main( val = z2ui5_cl_util=>conv_get_as_data_ref( val )
|
||||||
val = z2ui5_cl_util=>conv_get_as_data_ref( val )
|
|
||||||
type = z2ui5_if_core_types=>cs_bind_type-two_way
|
type = z2ui5_if_core_types=>cs_bind_type-two_way
|
||||||
config = VALUE #(
|
config = VALUE #( path_only = path
|
||||||
path_only = path
|
|
||||||
custom_filter = custom_filter
|
custom_filter = custom_filter
|
||||||
custom_filter_back = custom_filter_back
|
custom_filter_back = custom_filter_back
|
||||||
custom_mapper = custom_mapper
|
custom_mapper = custom_mapper
|
||||||
|
@ -356,25 +328,20 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~_bind_local.
|
METHOD z2ui5_if_client~_bind_local.
|
||||||
|
|
||||||
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( mo_action->mo_app ).
|
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( mo_action->mo_app ).
|
||||||
result = lo_bind->main_local(
|
result = lo_bind->main_local( val = val
|
||||||
val = val
|
config = VALUE #( path_only = path
|
||||||
config = VALUE #(
|
|
||||||
path_only = path
|
|
||||||
custom_mapper = custom_mapper
|
custom_mapper = custom_mapper
|
||||||
custom_filter = custom_filter ) ).
|
custom_filter = custom_filter ) ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~_event.
|
METHOD z2ui5_if_client~_event.
|
||||||
|
|
||||||
DATA(lo_ui5) = NEW z2ui5_cl_core_srv_event( ).
|
DATA(lo_ui5) = NEW z2ui5_cl_core_srv_event( ).
|
||||||
result = lo_ui5->get_event(
|
result = lo_ui5->get_event( val = val
|
||||||
val = val
|
|
||||||
t_arg = t_arg
|
t_arg = t_arg
|
||||||
s_cnt = s_ctrl ).
|
s_cnt = s_ctrl ).
|
||||||
|
|
||||||
|
@ -385,24 +352,20 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~_event_client.
|
METHOD z2ui5_if_client~_event_client.
|
||||||
|
|
||||||
DATA(lo_ui5) = NEW z2ui5_cl_core_srv_event( ).
|
DATA(lo_ui5) = NEW z2ui5_cl_core_srv_event( ).
|
||||||
result = lo_ui5->get_event_client(
|
result = lo_ui5->get_event_client( val = val
|
||||||
val = val
|
|
||||||
t_arg = t_arg ).
|
t_arg = t_arg ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_client~set_session_stateful.
|
METHOD z2ui5_if_client~set_session_stateful.
|
||||||
|
|
||||||
DATA(lv_check_sticky) = CAST z2ui5_if_app( mo_action->mo_app->mo_app )->check_sticky.
|
DATA(lv_check_sticky) = CAST z2ui5_if_app( mo_action->mo_app->mo_app )->check_sticky.
|
||||||
IF lv_check_sticky = abap_true AND stateful = abap_true.
|
IF lv_check_sticky = abap_true AND stateful = abap_true.
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING val = `STATEFUL_ALREADY_ACTIVATED_ERROR`.
|
||||||
val = `STATEFUL_ALREADY_ACTIVATED_ERROR`.
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
IF stateful = abap_true.
|
IF stateful = abap_true.
|
||||||
mo_action->ms_next-s_set-s_stateful-active = 1.
|
mo_action->ms_next-s_set-s_stateful-active = 1.
|
||||||
|
@ -441,5 +404,4 @@ CLASS z2ui5_cl_core_client IMPLEMENTATION.
|
||||||
result = z2ui5_if_client~get_app( ls_get-s_draft-id_prev_app ).
|
result = z2ui5_if_client~get_app( ls_get-s_draft-id_prev_app ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
CLASS ltcl_test_client DEFINITION FINAL FOR TESTING
|
CLASS ltcl_test_client DEFINITION FINAL
|
||||||
DURATION LONG
|
FOR TESTING RISK LEVEL HARMLESS DURATION LONG.
|
||||||
RISK LEVEL HARMLESS.
|
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS first_test FOR TESTING RAISING cx_static_check.
|
METHODS first_test FOR TESTING RAISING cx_static_check.
|
||||||
|
@ -9,7 +8,6 @@ ENDCLASS.
|
||||||
CLASS z2ui5_cl_core_client DEFINITION LOCAL FRIENDS ltcl_test_client.
|
CLASS z2ui5_cl_core_client DEFINITION LOCAL FRIENDS ltcl_test_client.
|
||||||
|
|
||||||
CLASS ltcl_test_client IMPLEMENTATION.
|
CLASS ltcl_test_client IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD first_test.
|
METHOD first_test.
|
||||||
|
|
||||||
DATA(lo_http) = NEW z2ui5_cl_core_handler( `` ).
|
DATA(lo_http) = NEW z2ui5_cl_core_handler( `` ).
|
||||||
|
@ -17,5 +15,4 @@ CLASS ltcl_test_client IMPLEMENTATION.
|
||||||
DATA(lo_client) = NEW z2ui5_cl_core_client( lo_action ) ##NEEDED.
|
DATA(lo_client) = NEW z2ui5_cl_core_client( lo_action ) ##NEEDED.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_core_handler DEFINITION
|
CLASS z2ui5_cl_core_handler DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -33,10 +32,7 @@ CLASS z2ui5_cl_core_handler DEFINITION
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_core_handler IMPLEMENTATION.
|
CLASS z2ui5_cl_core_handler IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
|
|
||||||
mv_request_json = val.
|
mv_request_json = val.
|
||||||
|
@ -44,7 +40,6 @@ CLASS z2ui5_cl_core_handler IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD main.
|
METHOD main.
|
||||||
|
|
||||||
main_begin( ).
|
main_begin( ).
|
||||||
|
@ -54,14 +49,12 @@ CLASS z2ui5_cl_core_handler IMPLEMENTATION.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
ENDDO.
|
ENDDO.
|
||||||
|
|
||||||
result = VALUE #(
|
result = VALUE #( body = mv_response
|
||||||
body = mv_response
|
|
||||||
s_stateful = ms_response-s_front-params-s_stateful
|
s_stateful = ms_response-s_front-params-s_stateful
|
||||||
).
|
).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD main_begin.
|
METHOD main_begin.
|
||||||
TRY.
|
TRY.
|
||||||
|
|
||||||
|
@ -84,11 +77,9 @@ CLASS z2ui5_cl_core_handler IMPLEMENTATION.
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD main_end.
|
METHOD main_end.
|
||||||
|
|
||||||
ms_response = VALUE #(
|
ms_response = VALUE #( s_front-params = mo_action->ms_next-s_set
|
||||||
s_front-params = mo_action->ms_next-s_set
|
|
||||||
s_front-id = mo_action->mo_app->ms_draft-id
|
s_front-id = mo_action->mo_app->ms_draft-id
|
||||||
s_front-app = z2ui5_cl_util=>rtti_get_classname_by_ref( mo_action->mo_app->mo_app )
|
s_front-app = z2ui5_cl_util=>rtti_get_classname_by_ref( mo_action->mo_app->mo_app )
|
||||||
).
|
).
|
||||||
|
@ -104,8 +95,7 @@ CLASS z2ui5_cl_core_handler IMPLEMENTATION.
|
||||||
OR ms_response-s_front-params-s_popup-xml IS NOT INITIAL
|
OR ms_response-s_front-params-s_popup-xml IS NOT INITIAL
|
||||||
OR ms_response-s_front-params-s_popover-xml IS NOT INITIAL.
|
OR ms_response-s_front-params-s_popover-xml IS NOT INITIAL.
|
||||||
|
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri( attri = mo_action->mo_app->mt_attri
|
||||||
attri = mo_action->mo_app->mt_attri
|
|
||||||
app = mo_action->mo_app->mo_app ).
|
app = mo_action->mo_app->mo_app ).
|
||||||
lo_model->attri_refs_update( ).
|
lo_model->attri_refs_update( ).
|
||||||
ms_response-model = mo_action->mo_app->model_json_stringify( ).
|
ms_response-model = mo_action->mo_app->model_json_stringify( ).
|
||||||
|
@ -125,7 +115,6 @@ CLASS z2ui5_cl_core_handler IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD main_process.
|
METHOD main_process.
|
||||||
TRY.
|
TRY.
|
||||||
|
|
||||||
|
|
|
@ -1,17 +1,14 @@
|
||||||
|
|
||||||
CLASS ltcl_test_handler_post DEFINITION FINAL FOR TESTING
|
CLASS ltcl_test_handler_post DEFINITION FINAL
|
||||||
DURATION SHORT
|
FOR TESTING RISK LEVEL HARMLESS DURATION SHORT.
|
||||||
RISK LEVEL HARMLESS.
|
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS
|
METHODS load_startup_app FOR TESTING RAISING cx_static_check.
|
||||||
load_startup_app FOR TESTING RAISING cx_static_check.
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS z2ui5_cl_core_handler DEFINITION LOCAL FRIENDS ltcl_test_handler_post.
|
CLASS z2ui5_cl_core_handler DEFINITION LOCAL FRIENDS ltcl_test_handler_post.
|
||||||
|
|
||||||
CLASS ltcl_test_handler_post IMPLEMENTATION.
|
CLASS ltcl_test_handler_post IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD load_startup_app.
|
METHOD load_startup_app.
|
||||||
|
|
||||||
IF sy-sysid = 'ABC'.
|
IF sy-sysid = 'ABC'.
|
||||||
|
@ -24,16 +21,13 @@ CLASS ltcl_test_handler_post IMPLEMENTATION.
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_bound( lo_post->mo_action ).
|
cl_abap_unit_assert=>assert_bound( lo_post->mo_action ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `ORIGIN`
|
||||||
act = lo_post->ms_request-s_front-origin
|
act = lo_post->ms_request-s_front-origin ).
|
||||||
exp = `ORIGIN` ).
|
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `PATHNAME`
|
||||||
act = lo_post->ms_request-s_front-pathname
|
act = lo_post->ms_request-s_front-pathname ).
|
||||||
exp = `PATHNAME` ).
|
|
||||||
|
|
||||||
DATA(lo_startup) = CAST z2ui5_cl_app_startup( lo_post->mo_action->mo_app->mo_app ) ##NEEDED.
|
DATA(lo_startup) = CAST z2ui5_cl_app_startup( lo_post->mo_action->mo_app->mo_app ) ##NEEDED.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -41,7 +41,6 @@ ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_core_srv_attri IMPLEMENTATION.
|
CLASS z2ui5_cl_core_srv_attri IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD attri_after_load.
|
METHOD attri_after_load.
|
||||||
|
|
||||||
LOOP AT mt_attri->* REFERENCE INTO DATA(lr_attri).
|
LOOP AT mt_attri->* REFERENCE INTO DATA(lr_attri).
|
||||||
|
@ -104,8 +103,7 @@ CLASS z2ui5_cl_core_srv_attri IMPLEMENTATION.
|
||||||
RETURN.
|
RETURN.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
DATA(lo_dissolve) = NEW z2ui5_cl_core_srv_diss(
|
DATA(lo_dissolve) = NEW z2ui5_cl_core_srv_diss( attri = mt_attri
|
||||||
attri = mt_attri
|
|
||||||
app = mo_app ).
|
app = mo_app ).
|
||||||
|
|
||||||
DO 5 TIMES.
|
DO 5 TIMES.
|
||||||
|
@ -152,7 +150,6 @@ CLASS z2ui5_cl_core_srv_attri IMPLEMENTATION.
|
||||||
EXIT.
|
EXIT.
|
||||||
ENDDO.
|
ENDDO.
|
||||||
|
|
||||||
|
|
||||||
"""""
|
"""""
|
||||||
|
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
|
@ -167,8 +164,7 @@ CLASS z2ui5_cl_core_srv_attri IMPLEMENTATION.
|
||||||
|
|
||||||
IF sy-subrc <> 0.
|
IF sy-subrc <> 0.
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING val = `DEREF_FAILED_TARGET_INITIAL`.
|
||||||
val = `DEREF_FAILED_TARGET_INITIAL`.
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
GET REFERENCE OF <attri> INTO result.
|
GET REFERENCE OF <attri> INTO result.
|
||||||
|
@ -224,7 +220,5 @@ CLASS z2ui5_cl_core_srv_attri IMPLEMENTATION.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
|
|
||||||
CLASS ltcl_test_app2 DEFINITION FINAL FOR TESTING
|
CLASS ltcl_test_app2 DEFINITION FINAL
|
||||||
DURATION MEDIUM
|
FOR TESTING RISK LEVEL HARMLESS DURATION MEDIUM.
|
||||||
RISK LEVEL HARMLESS.
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -11,22 +10,20 @@ CLASS ltcl_test_app2 DEFINITION FINAL FOR TESTING
|
||||||
DATA mo_app TYPE REF TO ltcl_test_app2.
|
DATA mo_app TYPE REF TO ltcl_test_app2.
|
||||||
|
|
||||||
DATA xx TYPE string ##NEEDED.
|
DATA xx TYPE string ##NEEDED.
|
||||||
|
|
||||||
METHODS constructor.
|
METHODS constructor.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_test_app2 IMPLEMENTATION.
|
|
||||||
|
|
||||||
|
CLASS ltcl_test_app2 IMPLEMENTATION.
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
CLASS ltcl_test_search_attri DEFINITION FINAL
|
||||||
CLASS ltcl_test_search_attri DEFINITION FINAL FOR TESTING
|
FOR TESTING RISK LEVEL HARMLESS DURATION SHORT.
|
||||||
DURATION SHORT
|
|
||||||
RISK LEVEL HARMLESS.
|
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS first_test FOR TESTING RAISING cx_static_check.
|
METHODS first_test FOR TESTING RAISING cx_static_check.
|
||||||
|
@ -38,20 +35,18 @@ ENDCLASS.
|
||||||
CLASS z2ui5_cl_core_srv_attri DEFINITION LOCAL FRIENDS ltcl_test_search_attri.
|
CLASS z2ui5_cl_core_srv_attri DEFINITION LOCAL FRIENDS ltcl_test_search_attri.
|
||||||
|
|
||||||
CLASS ltcl_test_search_attri IMPLEMENTATION.
|
CLASS ltcl_test_search_attri IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD first_test.
|
METHOD first_test.
|
||||||
|
|
||||||
DATA(lo_app_client) = NEW ltcl_test_app2( ).
|
DATA(lo_app_client) = NEW ltcl_test_app2( ).
|
||||||
DATA lr_value TYPE REF TO data.
|
DATA lr_value TYPE REF TO data.
|
||||||
GET REFERENCE OF lo_app_client->mv_value INTO lr_value.
|
GET REFERENCE OF lo_app_client->mv_value INTO lr_value.
|
||||||
|
|
||||||
DATA(lt_attri) = VALUE z2ui5_if_core_types=>ty_t_attri( (
|
DATA(lt_attri) = VALUE z2ui5_if_core_types=>ty_t_attri( ( r_ref = lr_value
|
||||||
r_ref = lr_value
|
o_typedescr = cl_abap_datadescr=>describe_by_data_ref(
|
||||||
o_typedescr = cl_abap_datadescr=>describe_by_data_ref( lr_value )
|
lr_value )
|
||||||
) ).
|
) ).
|
||||||
|
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri( attri = REF #( lt_attri )
|
||||||
attri = REF #( lt_attri )
|
|
||||||
app = lo_app_client ).
|
app = lo_app_client ).
|
||||||
|
|
||||||
DATA(lr_attri) = lo_model->attri_search_a_dissolve( REF #( lo_app_client->mv_value ) ).
|
DATA(lr_attri) = lo_model->attri_search_a_dissolve( REF #( lo_app_client->mv_value ) ).
|
||||||
|
@ -68,13 +63,12 @@ CLASS ltcl_test_search_attri IMPLEMENTATION.
|
||||||
DATA lr_value TYPE REF TO data.
|
DATA lr_value TYPE REF TO data.
|
||||||
GET REFERENCE OF lo_app_client->mv_value INTO lr_value.
|
GET REFERENCE OF lo_app_client->mv_value INTO lr_value.
|
||||||
|
|
||||||
DATA(lt_attri) = VALUE z2ui5_if_core_types=>ty_t_attri( (
|
DATA(lt_attri) = VALUE z2ui5_if_core_types=>ty_t_attri( ( r_ref = REF #( lo_app_client->mv_value )
|
||||||
r_ref = REF #( lo_app_client->mv_value )
|
o_typedescr = cl_abap_datadescr=>describe_by_data_ref(
|
||||||
o_typedescr = cl_abap_datadescr=>describe_by_data_ref( lr_value )
|
lr_value )
|
||||||
) ).
|
) ).
|
||||||
|
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri( attri = REF #( lt_attri )
|
||||||
attri = REF #( lt_attri )
|
|
||||||
app = lo_app_client ).
|
app = lo_app_client ).
|
||||||
|
|
||||||
DATA(lr_attri) = lo_model->attri_search_a_dissolve( REF #( lo_app_client->mv_value ) ).
|
DATA(lr_attri) = lo_model->attri_search_a_dissolve( REF #( lo_app_client->mv_value ) ).
|
||||||
|
@ -93,8 +87,7 @@ CLASS ltcl_test_search_attri IMPLEMENTATION.
|
||||||
|
|
||||||
lo_app_client->mo_app = NEW #( ).
|
lo_app_client->mo_app = NEW #( ).
|
||||||
|
|
||||||
DATA(lt_attri) = VALUE z2ui5_if_core_types=>ty_t_attri(
|
DATA(lt_attri) = VALUE z2ui5_if_core_types=>ty_t_attri( ( name = `1` r_ref = REF #( lo_app_client->mr_value ) )
|
||||||
( name = `1` r_ref = REF #( lo_app_client->mr_value ) )
|
|
||||||
( name = `4` r_ref = REF #( lo_app_client->mr_value2 ) )
|
( name = `4` r_ref = REF #( lo_app_client->mr_value2 ) )
|
||||||
( name = `2` r_ref = REF #( lo_app_client->mo_app ) )
|
( name = `2` r_ref = REF #( lo_app_client->mo_app ) )
|
||||||
( name = `3` r_ref = REF #( lo_app_client->mv_value ) ) ).
|
( name = `3` r_ref = REF #( lo_app_client->mv_value ) ) ).
|
||||||
|
@ -105,13 +98,11 @@ CLASS ltcl_test_search_attri IMPLEMENTATION.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS ltcl_test_app_sub DEFINITION FINAL FOR TESTING
|
CLASS ltcl_test_app_sub DEFINITION FINAL
|
||||||
DURATION MEDIUM
|
FOR TESTING RISK LEVEL HARMLESS DURATION MEDIUM.
|
||||||
RISK LEVEL HARMLESS.
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -122,17 +113,16 @@ CLASS ltcl_test_app_sub DEFINITION FINAL FOR TESTING
|
||||||
METHODS constructor.
|
METHODS constructor.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_test_app_sub IMPLEMENTATION.
|
|
||||||
|
|
||||||
|
CLASS ltcl_test_app_sub IMPLEMENTATION.
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_test_app3 DEFINITION FINAL FOR TESTING
|
|
||||||
DURATION MEDIUM
|
CLASS ltcl_test_app3 DEFINITION FINAL
|
||||||
RISK LEVEL HARMLESS.
|
FOR TESTING RISK LEVEL HARMLESS DURATION MEDIUM.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -144,17 +134,16 @@ CLASS ltcl_test_app3 DEFINITION FINAL FOR TESTING
|
||||||
METHODS constructor.
|
METHODS constructor.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_test_app3 IMPLEMENTATION.
|
|
||||||
|
|
||||||
|
CLASS ltcl_test_app3 IMPLEMENTATION.
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
mo_app = NEW #( ).
|
mo_app = NEW #( ).
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_test_get_attri DEFINITION FINAL FOR TESTING
|
|
||||||
DURATION SHORT
|
CLASS ltcl_test_get_attri DEFINITION FINAL
|
||||||
RISK LEVEL HARMLESS.
|
FOR TESTING RISK LEVEL HARMLESS DURATION SHORT.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS first_test FOR TESTING RAISING cx_static_check.
|
METHODS first_test FOR TESTING RAISING cx_static_check.
|
||||||
|
@ -164,18 +153,18 @@ CLASS ltcl_test_get_attri DEFINITION FINAL FOR TESTING
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_test_get_attri IMPLEMENTATION.
|
|
||||||
|
|
||||||
|
CLASS ltcl_test_get_attri IMPLEMENTATION.
|
||||||
METHOD first_test.
|
METHOD first_test.
|
||||||
|
|
||||||
DATA(lo_app_client) = NEW ltcl_test_app3( ).
|
DATA(lo_app_client) = NEW ltcl_test_app3( ).
|
||||||
|
" TODO: variable is assigned but never used (ABAP cleaner)
|
||||||
DATA lr_value TYPE REF TO data.
|
DATA lr_value TYPE REF TO data.
|
||||||
GET REFERENCE OF lo_app_client->mv_value INTO lr_value.
|
GET REFERENCE OF lo_app_client->mv_value INTO lr_value.
|
||||||
|
|
||||||
DATA(lt_attri) = VALUE z2ui5_if_core_types=>ty_t_attri( ).
|
DATA(lt_attri) = VALUE z2ui5_if_core_types=>ty_t_attri( ).
|
||||||
|
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri( attri = REF #( lt_attri )
|
||||||
attri = REF #( lt_attri )
|
|
||||||
app = lo_app_client ).
|
app = lo_app_client ).
|
||||||
|
|
||||||
DATA(lr_attri) = lo_model->attri_get_val_ref( `MV_VALUE` ).
|
DATA(lr_attri) = lo_model->attri_get_val_ref( `MV_VALUE` ).
|
||||||
|
@ -192,8 +181,7 @@ CLASS ltcl_test_get_attri IMPLEMENTATION.
|
||||||
CREATE DATA lo_app_client->mr_value.
|
CREATE DATA lo_app_client->mr_value.
|
||||||
|
|
||||||
DATA(lt_attri) = VALUE z2ui5_if_core_types=>ty_t_attri( ).
|
DATA(lt_attri) = VALUE z2ui5_if_core_types=>ty_t_attri( ).
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri( attri = REF #( lt_attri )
|
||||||
attri = REF #( lt_attri )
|
|
||||||
app = lo_app_client ).
|
app = lo_app_client ).
|
||||||
|
|
||||||
DATA(lr_attri) = lo_model->attri_get_val_ref( `MR_VALUE->*` ).
|
DATA(lr_attri) = lo_model->attri_get_val_ref( `MR_VALUE->*` ).
|
||||||
|
@ -209,8 +197,7 @@ CLASS ltcl_test_get_attri IMPLEMENTATION.
|
||||||
DATA(lo_app_client) = NEW ltcl_test_app3( ).
|
DATA(lo_app_client) = NEW ltcl_test_app3( ).
|
||||||
|
|
||||||
DATA(lt_attri) = VALUE z2ui5_if_core_types=>ty_t_attri( ).
|
DATA(lt_attri) = VALUE z2ui5_if_core_types=>ty_t_attri( ).
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri( attri = REF #( lt_attri )
|
||||||
attri = REF #( lt_attri )
|
|
||||||
app = lo_app_client ).
|
app = lo_app_client ).
|
||||||
|
|
||||||
DATA(lr_attri) = lo_model->attri_get_val_ref( `MO_APP->MV_VALUE` ).
|
DATA(lr_attri) = lo_model->attri_get_val_ref( `MO_APP->MV_VALUE` ).
|
||||||
|
@ -227,8 +214,7 @@ CLASS ltcl_test_get_attri IMPLEMENTATION.
|
||||||
CREATE DATA lo_app_client->mo_app->mr_value.
|
CREATE DATA lo_app_client->mo_app->mr_value.
|
||||||
|
|
||||||
DATA(lt_attri) = VALUE z2ui5_if_core_types=>ty_t_attri( ).
|
DATA(lt_attri) = VALUE z2ui5_if_core_types=>ty_t_attri( ).
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri( attri = REF #( lt_attri )
|
||||||
attri = REF #( lt_attri )
|
|
||||||
app = lo_app_client ).
|
app = lo_app_client ).
|
||||||
|
|
||||||
DATA(lr_attri) = lo_model->attri_get_val_ref( `MO_APP->MR_VALUE->*` ).
|
DATA(lr_attri) = lo_model->attri_get_val_ref( `MO_APP->MR_VALUE->*` ).
|
||||||
|
@ -238,6 +224,4 @@ CLASS ltcl_test_get_attri IMPLEMENTATION.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,50 +1,49 @@
|
||||||
CLASS z2ui5_cl_core_srv_bind DEFINITION
|
CLASS z2ui5_cl_core_srv_bind DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
DATA mo_app TYPE REF TO z2ui5_cl_core_app .
|
DATA mo_app TYPE REF TO z2ui5_cl_core_app.
|
||||||
DATA mr_attri TYPE REF TO z2ui5_if_core_types=>ty_s_attri .
|
DATA mr_attri TYPE REF TO z2ui5_if_core_types=>ty_s_attri.
|
||||||
DATA ms_config TYPE z2ui5_if_core_types=>ty_s_bind_config .
|
DATA ms_config TYPE z2ui5_if_core_types=>ty_s_bind_config.
|
||||||
DATA mv_type TYPE string .
|
DATA mv_type TYPE string.
|
||||||
|
|
||||||
METHODS constructor
|
METHODS constructor
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!app TYPE REF TO z2ui5_cl_core_app .
|
app TYPE REF TO z2ui5_cl_core_app.
|
||||||
|
|
||||||
METHODS main_local
|
METHODS main_local
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!val TYPE data
|
val TYPE data
|
||||||
!config TYPE z2ui5_if_core_types=>ty_s_bind_config OPTIONAL
|
config TYPE z2ui5_if_core_types=>ty_s_bind_config OPTIONAL
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string .
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
METHODS main
|
METHODS main
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!val TYPE REF TO data
|
val TYPE REF TO data
|
||||||
!type TYPE string
|
!type TYPE string
|
||||||
!config TYPE z2ui5_if_core_types=>ty_s_bind_config OPTIONAL
|
config TYPE z2ui5_if_core_types=>ty_s_bind_config OPTIONAL
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string .
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
METHODS main_cell
|
METHODS main_cell
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!val TYPE data
|
val TYPE data
|
||||||
!type TYPE string
|
!type TYPE string
|
||||||
!config TYPE z2ui5_if_core_types=>ty_s_bind_config OPTIONAL
|
config TYPE z2ui5_if_core_types=>ty_s_bind_config OPTIONAL
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string .
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
METHODS clear
|
METHODS clear
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!val TYPE string.
|
val TYPE string.
|
||||||
|
|
||||||
METHODS bind_tab_cell
|
METHODS bind_tab_cell
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!iv_name TYPE string
|
iv_name TYPE string
|
||||||
!i_val TYPE data
|
i_val TYPE data
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
|
@ -62,10 +61,7 @@ CLASS z2ui5_cl_core_srv_bind DEFINITION
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_core_srv_bind IMPLEMENTATION.
|
CLASS z2ui5_cl_core_srv_bind IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD bind_tab_cell.
|
METHOD bind_tab_cell.
|
||||||
|
|
||||||
FIELD-SYMBOLS <ele> TYPE any.
|
FIELD-SYMBOLS <ele> TYPE any.
|
||||||
|
@ -73,6 +69,7 @@ CLASS z2ui5_cl_core_srv_bind IMPLEMENTATION.
|
||||||
DATA lr_ref_in TYPE REF TO data.
|
DATA lr_ref_in TYPE REF TO data.
|
||||||
|
|
||||||
FIELD-SYMBOLS <tab> TYPE STANDARD TABLE.
|
FIELD-SYMBOLS <tab> TYPE STANDARD TABLE.
|
||||||
|
|
||||||
ASSIGN ms_config-tab->* TO <tab>.
|
ASSIGN ms_config-tab->* TO <tab>.
|
||||||
ASSIGN <tab>[ ms_config-tab_index ] TO <row>.
|
ASSIGN <tab>[ ms_config-tab_index ] TO <row>.
|
||||||
|
|
||||||
|
@ -84,7 +81,7 @@ CLASS z2ui5_cl_core_srv_bind IMPLEMENTATION.
|
||||||
lr_ref_in = REF #( <ele> ).
|
lr_ref_in = REF #( <ele> ).
|
||||||
|
|
||||||
IF i_val = lr_ref_in.
|
IF i_val = lr_ref_in.
|
||||||
result = iv_name && '/' && shift_right( CONV string( ms_config-tab_index - 1 ) ) && '/' && <comp>-name.
|
result = |{ iv_name }/{ shift_right( CONV string( ms_config-tab_index - 1 ) ) }/{ <comp>-name }|.
|
||||||
RETURN.
|
RETURN.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
|
@ -96,13 +93,11 @@ CLASS z2ui5_cl_core_srv_bind IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD check_raise_existing.
|
METHOD check_raise_existing.
|
||||||
|
|
||||||
IF mr_attri->bind_type <> mv_type.
|
IF mr_attri->bind_type <> mv_type.
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING val = |<p>Binding Error - Two different binding types for same attribute used ({ mr_attri->name }).|.
|
||||||
val = `<p>Binding Error - Two different binding types for same attribute used (` && mr_attri->name && `).`.
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
IF mr_attri->custom_mapper IS BOUND.
|
IF mr_attri->custom_mapper IS BOUND.
|
||||||
|
@ -111,26 +106,22 @@ CLASS z2ui5_cl_core_srv_bind IMPLEMENTATION.
|
||||||
DATA(lv_name2) = z2ui5_cl_util=>rtti_get_classname_by_ref( ms_config-custom_mapper ).
|
DATA(lv_name2) = z2ui5_cl_util=>rtti_get_classname_by_ref( ms_config-custom_mapper ).
|
||||||
IF lv_name1 <> lv_name2.
|
IF lv_name1 <> lv_name2.
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING val = |<p>Binding Error - Two different mapper for same attribute used ({ mr_attri->name }).|.
|
||||||
val = `<p>Binding Error - Two different mapper for same attribute used (` && mr_attri->name && `).`.
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
IF mr_attri->custom_mapper_back IS BOUND AND mr_attri->custom_mapper_back <> ms_config-custom_mapper_back.
|
IF mr_attri->custom_mapper_back IS BOUND AND mr_attri->custom_mapper_back <> ms_config-custom_mapper_back.
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING val = |<p>Binding Error - Two different mapper back for same attribute used ({ mr_attri->name }).|.
|
||||||
val = `<p>Binding Error - Two different mapper back for same attribute used (` && mr_attri->name && `).`.
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
IF mr_attri->custom_filter IS BOUND AND mr_attri->custom_filter <> ms_config-custom_filter.
|
IF mr_attri->custom_filter IS BOUND AND mr_attri->custom_filter <> ms_config-custom_filter.
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING val = |<p>Binding Error - Two different filter for same attribute used ({ mr_attri->name }).|.
|
||||||
val = `<p>Binding Error - Two different filter for same attribute used (` && mr_attri->name && `).`.
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD check_raise_new.
|
METHOD check_raise_new.
|
||||||
|
|
||||||
IF mr_attri->custom_filter_back IS BOUND.
|
IF mr_attri->custom_filter_back IS BOUND.
|
||||||
|
@ -138,8 +129,7 @@ CLASS z2ui5_cl_core_srv_bind IMPLEMENTATION.
|
||||||
DATA(lo_dummy) = CAST if_serializable_object( mr_attri->custom_filter_back ) ##NEEDED.
|
DATA(lo_dummy) = CAST if_serializable_object( mr_attri->custom_filter_back ) ##NEEDED.
|
||||||
CATCH cx_root.
|
CATCH cx_root.
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING val = `<p>custom_filter_back used but it is not serializable, please use if_serializable_object`.
|
||||||
val = `<p>custom_filter_back used but it is not serializable, please use if_serializable_object`.
|
|
||||||
|
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
@ -157,11 +147,11 @@ CLASS z2ui5_cl_core_srv_bind IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD clear.
|
METHOD clear.
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
DATA(lv_path) = shift_right( val = val sub = `->*` ).
|
DATA(lv_path) = shift_right( val = val
|
||||||
|
sub = `->*` ).
|
||||||
mo_app->mt_attri->*[ name = lv_path ]-check_dissolved = abap_false.
|
mo_app->mt_attri->*[ name = lv_path ]-check_dissolved = abap_false.
|
||||||
mo_app->mt_attri->*[ name = val ]-check_dissolved = abap_false.
|
mo_app->mt_attri->*[ name = val ]-check_dissolved = abap_false.
|
||||||
mo_app->mt_attri->*[ name = lv_path ]-name_client = ``.
|
mo_app->mt_attri->*[ name = lv_path ]-name_client = ``.
|
||||||
|
@ -177,31 +167,33 @@ CLASS z2ui5_cl_core_srv_bind IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
|
|
||||||
mo_app = app.
|
mo_app = app.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD get_client_name.
|
METHOD get_client_name.
|
||||||
|
|
||||||
result = replace( val = mr_attri->name sub = `-` with = `/` occ = 0 ).
|
result = replace( val = mr_attri->name
|
||||||
result = replace( val = result sub = `>` with = `` occ = 0 ).
|
sub = `-`
|
||||||
|
with = `/`
|
||||||
|
occ = 0 ).
|
||||||
|
result = replace( val = result
|
||||||
|
sub = `>`
|
||||||
|
with = ``
|
||||||
|
occ = 0 ).
|
||||||
result = COND #( WHEN mv_type = z2ui5_if_core_types=>cs_bind_type-two_way
|
result = COND #( WHEN mv_type = z2ui5_if_core_types=>cs_bind_type-two_way
|
||||||
THEN `/` && z2ui5_if_core_types=>cs_ui5-two_way_model )
|
THEN |/{ z2ui5_if_core_types=>cs_ui5-two_way_model }| )
|
||||||
&& `/` && result.
|
&& |/{ result }|.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD main.
|
METHOD main.
|
||||||
|
|
||||||
IF z2ui5_cl_util=>check_bound_a_not_inital( config-tab ).
|
IF z2ui5_cl_util=>check_bound_a_not_inital( config-tab ).
|
||||||
|
|
||||||
result = main_cell(
|
result = main_cell( val = val
|
||||||
val = val
|
|
||||||
type = type
|
type = type
|
||||||
config = config ).
|
config = config ).
|
||||||
|
|
||||||
|
@ -211,8 +203,7 @@ CLASS z2ui5_cl_core_srv_bind IMPLEMENTATION.
|
||||||
ms_config = config.
|
ms_config = config.
|
||||||
mv_type = type.
|
mv_type = type.
|
||||||
|
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri( attri = mo_app->mt_attri
|
||||||
attri = mo_app->mt_attri
|
|
||||||
app = mo_app->mo_app ).
|
app = mo_app->mo_app ).
|
||||||
|
|
||||||
lo_model->attri_refs_update( ).
|
lo_model->attri_refs_update( ).
|
||||||
|
@ -227,44 +218,43 @@ CLASS z2ui5_cl_core_srv_bind IMPLEMENTATION.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
result = mr_attri->name_client.
|
result = mr_attri->name_client.
|
||||||
|
|
||||||
IF `/` && z2ui5_if_core_types=>cs_ui5-two_way_model = result.
|
IF |/{ z2ui5_if_core_types=>cs_ui5-two_way_model }| = result.
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING val = `<p>Name of variable not allowed - x is reserved word - use anoter name for your attribute`.
|
||||||
val = `<p>Name of variable not allowed - x is reserved word - use anoter name for your attribute`.
|
|
||||||
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
IF ms_config-path_only = abap_false.
|
IF ms_config-path_only = abap_false.
|
||||||
result = `{` && result && `}`.
|
result = |\{{ result }\}|.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD main_cell.
|
METHOD main_cell.
|
||||||
|
|
||||||
ms_config = config.
|
ms_config = config.
|
||||||
mv_type = type.
|
mv_type = type.
|
||||||
|
|
||||||
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( mo_app ).
|
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( mo_app ).
|
||||||
result = lo_bind->main( val = config-tab type = type config = VALUE #( path_only = abap_true ) ).
|
result = lo_bind->main( val = config-tab
|
||||||
|
type = type
|
||||||
|
config = VALUE #( path_only = abap_true ) ).
|
||||||
|
|
||||||
result = bind_tab_cell(
|
result = bind_tab_cell( iv_name = result
|
||||||
iv_name = result
|
|
||||||
i_val = val ).
|
i_val = val ).
|
||||||
|
|
||||||
IF ms_config-path_only = abap_false.
|
IF ms_config-path_only = abap_false.
|
||||||
result = `{` && result && `}`.
|
result = |\{{ result }\}|.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD main_local.
|
METHOD main_local.
|
||||||
TRY.
|
TRY.
|
||||||
|
|
||||||
DATA(lo_json) = CAST z2ui5_if_ajson( z2ui5_cl_ajson=>new( ) ).
|
DATA(lo_json) = CAST z2ui5_if_ajson( z2ui5_cl_ajson=>new( ) ).
|
||||||
lo_json->set( iv_path = `/` iv_val = val ).
|
lo_json->set( iv_path = `/`
|
||||||
|
iv_val = val ).
|
||||||
|
|
||||||
IF config-custom_mapper IS BOUND.
|
IF config-custom_mapper IS BOUND.
|
||||||
lo_json = lo_json->map( config-custom_mapper ).
|
lo_json = lo_json->map( config-custom_mapper ).
|
||||||
|
@ -288,7 +278,7 @@ CLASS z2ui5_cl_core_srv_bind IMPLEMENTATION.
|
||||||
result = |/{ lv_id }|.
|
result = |/{ lv_id }|.
|
||||||
|
|
||||||
IF config-path_only = abap_false.
|
IF config-path_only = abap_false.
|
||||||
result = `{` && result && `}`.
|
result = |\{{ result }\}|.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
CATCH cx_root INTO DATA(x).
|
CATCH cx_root INTO DATA(x).
|
||||||
|
@ -296,7 +286,6 @@ CLASS z2ui5_cl_core_srv_bind IMPLEMENTATION.
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD update_model_attri.
|
METHOD update_model_attri.
|
||||||
|
|
||||||
mr_attri->bind_type = mv_type.
|
mr_attri->bind_type = mv_type.
|
||||||
|
@ -305,9 +294,10 @@ CLASS z2ui5_cl_core_srv_bind IMPLEMENTATION.
|
||||||
mr_attri->custom_filter_back = ms_config-custom_filter_back.
|
mr_attri->custom_filter_back = ms_config-custom_filter_back.
|
||||||
mr_attri->custom_mapper = ms_config-custom_mapper.
|
mr_attri->custom_mapper = ms_config-custom_mapper.
|
||||||
mr_attri->custom_mapper_back = ms_config-custom_mapper_back.
|
mr_attri->custom_mapper_back = ms_config-custom_mapper_back.
|
||||||
mr_attri->view = COND #( WHEN ms_config-view IS INITIAL THEN z2ui5_if_client=>cs_view-main ELSE ms_config-view ).
|
mr_attri->view = COND #( WHEN ms_config-view IS INITIAL
|
||||||
|
THEN z2ui5_if_client=>cs_view-main
|
||||||
|
ELSE ms_config-view ).
|
||||||
mr_attri->name_client = get_client_name( ).
|
mr_attri->name_client = get_client_name( ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -2,9 +2,8 @@
|
||||||
CLASS ltcl_test_bind DEFINITION DEFERRED.
|
CLASS ltcl_test_bind DEFINITION DEFERRED.
|
||||||
CLASS z2ui5_cl_core_srv_bind DEFINITION LOCAL FRIENDS ltcl_test_bind.
|
CLASS z2ui5_cl_core_srv_bind DEFINITION LOCAL FRIENDS ltcl_test_bind.
|
||||||
|
|
||||||
CLASS ltcl_test_app DEFINITION FINAL FOR TESTING
|
CLASS ltcl_test_app DEFINITION FINAL
|
||||||
DURATION MEDIUM
|
FOR TESTING RISK LEVEL HARMLESS DURATION MEDIUM.
|
||||||
RISK LEVEL HARMLESS.
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -29,23 +28,25 @@ CLASS ltcl_test_app DEFINITION FINAL FOR TESTING
|
||||||
DATA mo_app TYPE REF TO ltcl_test_bind ##NEEDED.
|
DATA mo_app TYPE REF TO ltcl_test_bind ##NEEDED.
|
||||||
|
|
||||||
DATA xx TYPE string ##NEEDED.
|
DATA xx TYPE string ##NEEDED.
|
||||||
|
|
||||||
METHODS constructor.
|
METHODS constructor.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_test_app IMPLEMENTATION.
|
|
||||||
|
|
||||||
|
CLASS ltcl_test_app IMPLEMENTATION.
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_test_bind DEFINITION FINAL FOR TESTING
|
|
||||||
DURATION MEDIUM
|
CLASS ltcl_test_bind DEFINITION FINAL
|
||||||
RISK LEVEL HARMLESS.
|
FOR TESTING RISK LEVEL HARMLESS DURATION MEDIUM.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS test_one_way FOR TESTING RAISING cx_static_check.
|
METHODS test_one_way FOR TESTING RAISING cx_static_check.
|
||||||
METHODS test_one_way_w_x_error FOR TESTING RAISING cx_static_check.
|
METHODS test_one_way_w_x_error FOR TESTING RAISING cx_static_check.
|
||||||
|
@ -56,8 +57,8 @@ CLASS ltcl_test_bind DEFINITION FINAL FOR TESTING
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_test_bind IMPLEMENTATION.
|
|
||||||
|
|
||||||
|
CLASS ltcl_test_bind IMPLEMENTATION.
|
||||||
METHOD test_one_way_w_x_error.
|
METHOD test_one_way_w_x_error.
|
||||||
|
|
||||||
DATA(lo_app_client) = NEW ltcl_test_app( ).
|
DATA(lo_app_client) = NEW ltcl_test_app( ).
|
||||||
|
@ -67,8 +68,7 @@ CLASS ltcl_test_bind IMPLEMENTATION.
|
||||||
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
lo_bind->main(
|
lo_bind->main( val = REF #( lo_app_client->xx )
|
||||||
val = REF #( lo_app_client->xx )
|
|
||||||
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>abort( ).
|
cl_abap_unit_assert=>abort( ).
|
||||||
|
@ -86,13 +86,11 @@ CLASS ltcl_test_bind IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
||||||
|
|
||||||
DATA(lv_bind) = lo_bind->main(
|
DATA(lv_bind) = lo_bind->main( val = REF #( lo_app_client->mv_value )
|
||||||
val = REF #( lo_app_client->mv_value )
|
|
||||||
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `{/MV_VALUE}`
|
||||||
act = lv_bind
|
act = lv_bind ).
|
||||||
exp = `{/MV_VALUE}` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -104,13 +102,11 @@ CLASS ltcl_test_bind IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
||||||
|
|
||||||
lo_bind->main(
|
lo_bind->main( val = REF #( lo_app_client->mv_value )
|
||||||
val = REF #( lo_app_client->mv_value )
|
|
||||||
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
lo_bind->main(
|
lo_bind->main( val = REF #( lo_app_client->mv_value )
|
||||||
val = REF #( lo_app_client->mv_value )
|
|
||||||
type = z2ui5_if_core_types=>cs_bind_type-two_way ).
|
type = z2ui5_if_core_types=>cs_bind_type-two_way ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>abort( ).
|
cl_abap_unit_assert=>abort( ).
|
||||||
|
@ -120,7 +116,6 @@ CLASS ltcl_test_bind IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD test_two_way.
|
METHOD test_two_way.
|
||||||
|
|
||||||
* IF sy-sysid = 'ABC'.
|
* IF sy-sysid = 'ABC'.
|
||||||
|
@ -133,17 +128,14 @@ CLASS ltcl_test_bind IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
||||||
|
|
||||||
DATA(lv_bind) = lo_bind->main(
|
DATA(lv_bind) = lo_bind->main( val = REF #( lo_app_client->mv_value )
|
||||||
val = REF #( lo_app_client->mv_value )
|
|
||||||
type = z2ui5_if_core_types=>cs_bind_type-two_way ).
|
type = z2ui5_if_core_types=>cs_bind_type-two_way ).
|
||||||
|
|
||||||
DATA(lv_bind2) = lo_bind->main(
|
DATA(lv_bind2) = lo_bind->main( val = REF #( lo_app_client->mv_value )
|
||||||
val = REF #( lo_app_client->mv_value )
|
|
||||||
type = z2ui5_if_core_types=>cs_bind_type-two_way ).
|
type = z2ui5_if_core_types=>cs_bind_type-two_way ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = lv_bind2
|
||||||
act = lv_bind
|
act = lv_bind ).
|
||||||
exp = lv_bind2 ).
|
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_not_initial( lv_bind ).
|
cl_abap_unit_assert=>assert_not_initial( lv_bind ).
|
||||||
|
|
||||||
|
@ -175,20 +167,17 @@ CLASS ltcl_test_bind IMPLEMENTATION.
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_not_initial( lv_bind ).
|
cl_abap_unit_assert=>assert_not_initial( lv_bind ).
|
||||||
|
|
||||||
DATA(lv_bind2) = lo_bind->main(
|
DATA(lv_bind2) = lo_bind->main( val = REF #( lo_app_client->mv_value )
|
||||||
val = REF #( lo_app_client->mv_value )
|
|
||||||
type = z2ui5_if_core_types=>cs_bind_type-two_way ).
|
type = z2ui5_if_core_types=>cs_bind_type-two_way ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_not_initial( lv_bind2 ).
|
cl_abap_unit_assert=>assert_not_initial( lv_bind2 ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS ltcl_test_main_structure DEFINITION FINAL FOR TESTING
|
CLASS ltcl_test_main_structure DEFINITION FINAL
|
||||||
DURATION MEDIUM
|
FOR TESTING RISK LEVEL HARMLESS DURATION MEDIUM.
|
||||||
RISK LEVEL HARMLESS.
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -215,11 +204,10 @@ CLASS ltcl_test_main_structure DEFINITION FINAL FOR TESTING
|
||||||
METHODS test_one_way_lev3 FOR TESTING RAISING cx_static_check.
|
METHODS test_one_way_lev3 FOR TESTING RAISING cx_static_check.
|
||||||
METHODS test_one_way_lev4_long_name FOR TESTING RAISING cx_static_check.
|
METHODS test_one_way_lev4_long_name FOR TESTING RAISING cx_static_check.
|
||||||
|
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_test_main_structure IMPLEMENTATION.
|
|
||||||
|
|
||||||
|
CLASS ltcl_test_main_structure IMPLEMENTATION.
|
||||||
METHOD test_one_way_lev1.
|
METHOD test_one_way_lev1.
|
||||||
|
|
||||||
DATA(lo_test_app) = NEW ltcl_test_main_structure( ).
|
DATA(lo_test_app) = NEW ltcl_test_main_structure( ).
|
||||||
|
@ -227,22 +215,18 @@ CLASS ltcl_test_main_structure IMPLEMENTATION.
|
||||||
lo_app->mo_app = lo_test_app.
|
lo_app->mo_app = lo_test_app.
|
||||||
|
|
||||||
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
||||||
DATA(lv_result) = lo_bind->main(
|
DATA(lv_result) = lo_bind->main( val = REF #( lo_test_app->ms_struc-input )
|
||||||
val = REF #( lo_test_app->ms_struc-input )
|
|
||||||
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `{/MS_STRUC/INPUT}`
|
||||||
act = lv_result
|
act = lv_result ).
|
||||||
exp = `{/MS_STRUC/INPUT}` ).
|
|
||||||
|
|
||||||
lv_result = lo_bind->main(
|
lv_result = lo_bind->main( val = REF #( lo_test_app->ms_struc-input )
|
||||||
val = REF #( lo_test_app->ms_struc-input )
|
|
||||||
config = VALUE #( path_only = abap_true )
|
config = VALUE #( path_only = abap_true )
|
||||||
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `/MS_STRUC/INPUT`
|
||||||
act = lv_result
|
act = lv_result ).
|
||||||
exp = `/MS_STRUC/INPUT` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -253,13 +237,11 @@ CLASS ltcl_test_main_structure IMPLEMENTATION.
|
||||||
lo_app->mo_app = lo_test_app.
|
lo_app->mo_app = lo_test_app.
|
||||||
|
|
||||||
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
||||||
DATA(lv_result) = lo_bind->main(
|
DATA(lv_result) = lo_bind->main( val = REF #( lo_test_app->ms_struc-s_02-input )
|
||||||
val = REF #( lo_test_app->ms_struc-s_02-input )
|
|
||||||
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `{/MS_STRUC/S_02/INPUT}`
|
||||||
act = lv_result
|
act = lv_result ).
|
||||||
exp = `{/MS_STRUC/S_02/INPUT}` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -270,13 +252,11 @@ CLASS ltcl_test_main_structure IMPLEMENTATION.
|
||||||
lo_app->mo_app = lo_test_app.
|
lo_app->mo_app = lo_test_app.
|
||||||
|
|
||||||
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
||||||
DATA(lv_result) = lo_bind->main(
|
DATA(lv_result) = lo_bind->main( val = REF #( lo_test_app->ms_struc-s_02-s_03-input )
|
||||||
val = REF #( lo_test_app->ms_struc-s_02-s_03-input )
|
|
||||||
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `{/MS_STRUC/S_02/S_03/INPUT}`
|
||||||
act = lv_result
|
act = lv_result ).
|
||||||
exp = `{/MS_STRUC/S_02/S_03/INPUT}` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -287,22 +267,18 @@ CLASS ltcl_test_main_structure IMPLEMENTATION.
|
||||||
lo_app->mo_app = lo_test_app.
|
lo_app->mo_app = lo_test_app.
|
||||||
|
|
||||||
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
||||||
DATA(lv_result) = lo_bind->main(
|
DATA(lv_result) = lo_bind->main( val = REF #( lo_test_app->ms_struc-s_02-s_03-s_04-input )
|
||||||
val = REF #( lo_test_app->ms_struc-s_02-s_03-s_04-input )
|
|
||||||
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `{/MS_STRUC/S_02/S_03/S_04/INPUT}`
|
||||||
act = lv_result
|
act = lv_result ).
|
||||||
exp = `{/MS_STRUC/S_02/S_03/S_04/INPUT}` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS ltcl_test_main_object DEFINITION FINAL FOR TESTING
|
CLASS ltcl_test_main_object DEFINITION FINAL
|
||||||
DURATION MEDIUM
|
FOR TESTING RISK LEVEL HARMLESS DURATION MEDIUM.
|
||||||
RISK LEVEL HARMLESS.
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -330,11 +306,10 @@ CLASS ltcl_test_main_object DEFINITION FINAL FOR TESTING
|
||||||
METHODS test_one_way_value FOR TESTING RAISING cx_static_check.
|
METHODS test_one_way_value FOR TESTING RAISING cx_static_check.
|
||||||
METHODS test_one_way_struc FOR TESTING RAISING cx_static_check.
|
METHODS test_one_way_struc FOR TESTING RAISING cx_static_check.
|
||||||
|
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_test_main_object IMPLEMENTATION.
|
|
||||||
|
|
||||||
|
CLASS ltcl_test_main_object IMPLEMENTATION.
|
||||||
METHOD test_one_way_value.
|
METHOD test_one_way_value.
|
||||||
|
|
||||||
DATA(lo_test_app) = NEW ltcl_test_main_object( ).
|
DATA(lo_test_app) = NEW ltcl_test_main_object( ).
|
||||||
|
@ -344,13 +319,11 @@ CLASS ltcl_test_main_object IMPLEMENTATION.
|
||||||
lo_app->mo_app = lo_test_app.
|
lo_app->mo_app = lo_test_app.
|
||||||
|
|
||||||
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
||||||
DATA(lv_result) = lo_bind->main(
|
DATA(lv_result) = lo_bind->main( val = REF #( lo_test_app->mo_obj->mv_value )
|
||||||
val = REF #( lo_test_app->mo_obj->mv_value )
|
|
||||||
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `{/MO_OBJ/MV_VALUE}`
|
||||||
act = lv_result
|
act = lv_result ).
|
||||||
exp = `{/MO_OBJ/MV_VALUE}` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -362,14 +335,11 @@ CLASS ltcl_test_main_object IMPLEMENTATION.
|
||||||
lo_app->mo_app = lo_test_app.
|
lo_app->mo_app = lo_test_app.
|
||||||
|
|
||||||
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
DATA(lo_bind) = NEW z2ui5_cl_core_srv_bind( lo_app ).
|
||||||
DATA(lv_result) = lo_bind->main(
|
DATA(lv_result) = lo_bind->main( val = REF #( lo_test_app->mo_obj->ms_struc-input )
|
||||||
val = REF #( lo_test_app->mo_obj->ms_struc-input )
|
|
||||||
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
type = z2ui5_if_core_types=>cs_bind_type-one_way ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `{/MO_OBJ/MS_STRUC/INPUT}`
|
||||||
act = lv_result
|
act = lv_result ).
|
||||||
exp = `{/MO_OBJ/MS_STRUC/INPUT}` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,16 +1,16 @@
|
||||||
CLASS z2ui5_cl_core_srv_diss DEFINITION
|
CLASS z2ui5_cl_core_srv_diss DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
METHODS constructor
|
METHODS constructor
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!attri TYPE REF TO z2ui5_if_core_types=>ty_t_attri
|
attri TYPE REF TO z2ui5_if_core_types=>ty_t_attri
|
||||||
!app TYPE REF TO object.
|
app TYPE REF TO object.
|
||||||
|
|
||||||
|
METHODS main.
|
||||||
|
|
||||||
METHODS main .
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
DATA mt_attri TYPE REF TO z2ui5_if_core_types=>ty_t_attri.
|
DATA mt_attri TYPE REF TO z2ui5_if_core_types=>ty_t_attri.
|
||||||
|
@ -32,12 +32,14 @@ CLASS z2ui5_cl_core_srv_diss DEFINITION
|
||||||
VALUE(result) TYPE z2ui5_if_core_types=>ty_t_attri.
|
VALUE(result) TYPE z2ui5_if_core_types=>ty_t_attri.
|
||||||
|
|
||||||
METHODS diss_oref
|
METHODS diss_oref
|
||||||
IMPORTING ir_attri TYPE REF TO z2ui5_if_core_types=>ty_s_attri
|
IMPORTING
|
||||||
RETURNING VALUE(result) TYPE z2ui5_if_core_types=>ty_t_attri.
|
ir_attri TYPE REF TO z2ui5_if_core_types=>ty_s_attri
|
||||||
|
RETURNING
|
||||||
|
VALUE(result) TYPE z2ui5_if_core_types=>ty_t_attri.
|
||||||
|
|
||||||
METHODS create_new_entry
|
METHODS create_new_entry
|
||||||
IMPORTING
|
IMPORTING
|
||||||
name TYPE string
|
!name TYPE string
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE z2ui5_if_core_types=>ty_s_attri.
|
VALUE(result) TYPE z2ui5_if_core_types=>ty_s_attri.
|
||||||
|
|
||||||
|
@ -45,10 +47,7 @@ CLASS z2ui5_cl_core_srv_diss DEFINITION
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_core_srv_diss IMPLEMENTATION.
|
CLASS z2ui5_cl_core_srv_diss IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
|
|
||||||
mt_attri = attri.
|
mt_attri = attri.
|
||||||
|
@ -56,20 +55,17 @@ CLASS z2ui5_cl_core_srv_diss IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD create_new_entry.
|
METHOD create_new_entry.
|
||||||
|
|
||||||
result = VALUE z2ui5_if_core_types=>ty_s_attri( ).
|
result = VALUE z2ui5_if_core_types=>ty_s_attri( ).
|
||||||
result-name = name.
|
result-name = name.
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri( attri = mt_attri
|
||||||
attri = mt_attri
|
|
||||||
app = mo_app ).
|
app = mo_app ).
|
||||||
result-r_ref = lo_model->attri_get_val_ref( name ).
|
result-r_ref = lo_model->attri_get_val_ref( name ).
|
||||||
result-o_typedescr = cl_abap_datadescr=>describe_by_data_ref( result-r_ref ).
|
result-o_typedescr = cl_abap_datadescr=>describe_by_data_ref( result-r_ref ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD diss_dref.
|
METHOD diss_dref.
|
||||||
|
|
||||||
IF z2ui5_cl_util=>check_unassign_inital( ir_attri->r_ref ).
|
IF z2ui5_cl_util=>check_unassign_inital( ir_attri->r_ref ).
|
||||||
|
@ -92,9 +88,8 @@ CLASS z2ui5_cl_core_srv_diss IMPLEMENTATION.
|
||||||
|
|
||||||
WHEN OTHERS.
|
WHEN OTHERS.
|
||||||
|
|
||||||
ls_attri2-name = ir_attri->name && `->*`.
|
ls_attri2-name = |{ ir_attri->name }->*|.
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_attri( attri = mt_attri
|
||||||
attri = mt_attri
|
|
||||||
app = mo_app ).
|
app = mo_app ).
|
||||||
ls_attri2-r_ref = lo_model->attri_get_val_ref( ls_attri2-name ).
|
ls_attri2-r_ref = lo_model->attri_get_val_ref( ls_attri2-name ).
|
||||||
INSERT ls_attri2 INTO TABLE result.
|
INSERT ls_attri2 INTO TABLE result.
|
||||||
|
@ -103,7 +98,6 @@ CLASS z2ui5_cl_core_srv_diss IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD diss_oref.
|
METHOD diss_oref.
|
||||||
|
|
||||||
IF z2ui5_cl_util=>check_unassign_inital( ir_attri->r_ref ).
|
IF z2ui5_cl_util=>check_unassign_inital( ir_attri->r_ref ).
|
||||||
|
@ -118,7 +112,7 @@ CLASS z2ui5_cl_core_srv_diss IMPLEMENTATION.
|
||||||
AND is_interface = abap_false
|
AND is_interface = abap_false
|
||||||
AND is_constant = abap_false.
|
AND is_constant = abap_false.
|
||||||
TRY.
|
TRY.
|
||||||
DATA(lv_name) = COND #( WHEN ir_attri->name IS NOT INITIAL THEN ir_attri->name && `->` ) && lr_attri->name.
|
DATA(lv_name) = COND #( WHEN ir_attri->name IS NOT INITIAL THEN |{ ir_attri->name }->| ) && lr_attri->name.
|
||||||
DATA(ls_new) = create_new_entry( lv_name ).
|
DATA(ls_new) = create_new_entry( lv_name ).
|
||||||
INSERT ls_new INTO TABLE result.
|
INSERT ls_new INTO TABLE result.
|
||||||
|
|
||||||
|
@ -128,14 +122,13 @@ CLASS z2ui5_cl_core_srv_diss IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD diss_struc.
|
METHOD diss_struc.
|
||||||
|
|
||||||
IF ir_attri->o_typedescr->kind = cl_abap_typedescr=>kind_ref.
|
IF ir_attri->o_typedescr->kind = cl_abap_typedescr=>kind_ref.
|
||||||
DATA(lv_name) = ir_attri->name && `->`.
|
DATA(lv_name) = |{ ir_attri->name }->|.
|
||||||
DATA(lr_ref) = z2ui5_cl_util=>unassign_data( ir_attri->r_ref ).
|
DATA(lr_ref) = z2ui5_cl_util=>unassign_data( ir_attri->r_ref ).
|
||||||
ELSE.
|
ELSE.
|
||||||
lv_name = ir_attri->name && `-`.
|
lv_name = |{ ir_attri->name }-|.
|
||||||
lr_ref = ir_attri->r_ref.
|
lr_ref = ir_attri->r_ref.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
|
@ -148,7 +141,6 @@ CLASS z2ui5_cl_core_srv_diss IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD main.
|
METHOD main.
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
|
@ -170,7 +162,6 @@ CLASS z2ui5_cl_core_srv_diss IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD main_init.
|
METHOD main_init.
|
||||||
|
|
||||||
IF mt_attri->* IS NOT INITIAL.
|
IF mt_attri->* IS NOT INITIAL.
|
||||||
|
@ -188,7 +179,6 @@ CLASS z2ui5_cl_core_srv_diss IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD main_run.
|
METHOD main_run.
|
||||||
|
|
||||||
DATA(lt_attri_new) = VALUE z2ui5_if_core_types=>ty_t_attri( ).
|
DATA(lt_attri_new) = VALUE z2ui5_if_core_types=>ty_t_attri( ).
|
||||||
|
|
|
@ -1,9 +1,8 @@
|
||||||
CLASS ltcl_test_dissolve DEFINITION DEFERRED.
|
CLASS ltcl_test_dissolve DEFINITION DEFERRED.
|
||||||
CLASS z2ui5_cl_core_srv_diss DEFINITION LOCAL FRIENDS ltcl_test_dissolve.
|
CLASS z2ui5_cl_core_srv_diss DEFINITION LOCAL FRIENDS ltcl_test_dissolve.
|
||||||
|
|
||||||
CLASS ltcl_test_dissolve DEFINITION FINAL FOR TESTING
|
CLASS ltcl_test_dissolve DEFINITION FINAL
|
||||||
DURATION SHORT
|
FOR TESTING RISK LEVEL HARMLESS DURATION SHORT.
|
||||||
RISK LEVEL HARMLESS.
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -48,16 +47,14 @@ CLASS ltcl_test_dissolve DEFINITION FINAL FOR TESTING
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS ltcl_test_dissolve IMPLEMENTATION.
|
CLASS ltcl_test_dissolve IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD test_ref.
|
METHOD test_ref.
|
||||||
|
|
||||||
DATA(lo_app) = NEW ltcl_test_dissolve( ).
|
DATA(lo_app) = NEW ltcl_test_dissolve( ).
|
||||||
|
|
||||||
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss( attri = REF #( lt_attri )
|
||||||
attri = REF #( lt_attri )
|
|
||||||
app = lo_app ).
|
app = lo_app ).
|
||||||
|
|
||||||
lo_model->main( ).
|
lo_model->main( ).
|
||||||
|
@ -76,8 +73,7 @@ CLASS ltcl_test_dissolve IMPLEMENTATION.
|
||||||
DATA(lo_app) = NEW ltcl_test_dissolve( ).
|
DATA(lo_app) = NEW ltcl_test_dissolve( ).
|
||||||
|
|
||||||
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss( attri = REF #( lt_attri )
|
||||||
attri = REF #( lt_attri )
|
|
||||||
app = lo_app ).
|
app = lo_app ).
|
||||||
|
|
||||||
lo_model->main( ).
|
lo_model->main( ).
|
||||||
|
@ -98,8 +94,7 @@ CLASS ltcl_test_dissolve IMPLEMENTATION.
|
||||||
CREATE DATA lo_app->mr_value TYPE string.
|
CREATE DATA lo_app->mr_value TYPE string.
|
||||||
|
|
||||||
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss( attri = REF #( lt_attri )
|
||||||
attri = REF #( lt_attri )
|
|
||||||
app = lo_app ).
|
app = lo_app ).
|
||||||
|
|
||||||
lo_model->main( ).
|
lo_model->main( ).
|
||||||
|
@ -120,8 +115,7 @@ CLASS ltcl_test_dissolve IMPLEMENTATION.
|
||||||
CREATE DATA lo_app->mo_app->mr_value TYPE string.
|
CREATE DATA lo_app->mo_app->mr_value TYPE string.
|
||||||
|
|
||||||
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss( attri = REF #( lt_attri )
|
||||||
attri = REF #( lt_attri )
|
|
||||||
app = lo_app2 ).
|
app = lo_app2 ).
|
||||||
|
|
||||||
lo_model->main( ).
|
lo_model->main( ).
|
||||||
|
@ -139,8 +133,7 @@ CLASS ltcl_test_dissolve IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lo_app) = NEW ltcl_test_dissolve( ).
|
DATA(lo_app) = NEW ltcl_test_dissolve( ).
|
||||||
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss( attri = REF #( lt_attri )
|
||||||
attri = REF #( lt_attri )
|
|
||||||
app = lo_app ).
|
app = lo_app ).
|
||||||
|
|
||||||
lo_model->main( ).
|
lo_model->main( ).
|
||||||
|
@ -165,8 +158,7 @@ CLASS ltcl_test_dissolve IMPLEMENTATION.
|
||||||
CREATE DATA lo_app->mr_struc.
|
CREATE DATA lo_app->mr_struc.
|
||||||
|
|
||||||
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss( attri = REF #( lt_attri )
|
||||||
attri = REF #( lt_attri )
|
|
||||||
app = lo_app ).
|
app = lo_app ).
|
||||||
|
|
||||||
lo_model->main( ).
|
lo_model->main( ).
|
||||||
|
@ -189,8 +181,7 @@ CLASS ltcl_test_dissolve IMPLEMENTATION.
|
||||||
CREATE DATA lo_app2->mr_value TYPE string.
|
CREATE DATA lo_app2->mr_value TYPE string.
|
||||||
|
|
||||||
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss( attri = REF #( lt_attri )
|
||||||
attri = REF #( lt_attri )
|
|
||||||
app = lo_app ).
|
app = lo_app ).
|
||||||
|
|
||||||
lo_model->main( ).
|
lo_model->main( ).
|
||||||
|
@ -211,8 +202,7 @@ CLASS ltcl_test_dissolve IMPLEMENTATION.
|
||||||
CREATE DATA lo_app->mo_app->mr_struc.
|
CREATE DATA lo_app->mo_app->mr_struc.
|
||||||
|
|
||||||
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss( attri = REF #( lt_attri )
|
||||||
attri = REF #( lt_attri )
|
|
||||||
app = lo_app ).
|
app = lo_app ).
|
||||||
|
|
||||||
lo_model->main( ).
|
lo_model->main( ).
|
||||||
|
@ -226,7 +216,6 @@ CLASS ltcl_test_dissolve IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD test_struc_dref.
|
METHOD test_struc_dref.
|
||||||
|
|
||||||
DATA(lo_app) = NEW ltcl_test_dissolve( ).
|
DATA(lo_app) = NEW ltcl_test_dissolve( ).
|
||||||
|
@ -234,8 +223,7 @@ CLASS ltcl_test_dissolve IMPLEMENTATION.
|
||||||
CREATE DATA lo_app->mo_app->ms_struc2-r_ref TYPE string.
|
CREATE DATA lo_app->mo_app->ms_struc2-r_ref TYPE string.
|
||||||
|
|
||||||
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
DATA lt_attri TYPE z2ui5_if_core_types=>ty_t_attri.
|
||||||
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss(
|
DATA(lo_model) = NEW z2ui5_cl_core_srv_diss( attri = REF #( lt_attri )
|
||||||
attri = REF #( lt_attri )
|
|
||||||
app = lo_app ).
|
app = lo_app ).
|
||||||
|
|
||||||
lo_model->main( ).
|
lo_model->main( ).
|
||||||
|
@ -247,5 +235,4 @@ CLASS ltcl_test_dissolve IMPLEMENTATION.
|
||||||
cl_abap_unit_assert=>assert_not_initial( VALUE #( lt_attri[ name = `MO_APP->MS_STRUC2-R_REF->*` ] OPTIONAL ) ).
|
cl_abap_unit_assert=>assert_not_initial( VALUE #( lt_attri[ name = `MO_APP->MS_STRUC2-R_REF->*` ] OPTIONAL ) ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,23 +1,22 @@
|
||||||
CLASS z2ui5_cl_core_srv_event DEFINITION
|
CLASS z2ui5_cl_core_srv_event DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
METHODS get_event
|
METHODS get_event
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!val TYPE clike OPTIONAL
|
val TYPE clike OPTIONAL
|
||||||
!t_arg TYPE string_table OPTIONAL
|
t_arg TYPE string_table OPTIONAL
|
||||||
!s_cnt TYPE z2ui5_if_types=>ty_s_event_control OPTIONAL
|
s_cnt TYPE z2ui5_if_types=>ty_s_event_control OPTIONAL
|
||||||
PREFERRED PARAMETER val
|
PREFERRED PARAMETER val
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
METHODS get_event_client
|
METHODS get_event_client
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!val TYPE clike
|
val TYPE clike
|
||||||
!t_arg TYPE string_table OPTIONAL
|
t_arg TYPE string_table OPTIONAL
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
|
@ -34,20 +33,18 @@ ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_core_srv_event IMPLEMENTATION.
|
CLASS z2ui5_cl_core_srv_event IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD get_event.
|
METHOD get_event.
|
||||||
|
|
||||||
result = |{ z2ui5_if_core_types=>cs_ui5-event_backend_function }(['{ val }'|.
|
result = |{ z2ui5_if_core_types=>cs_ui5-event_backend_function }(['{ val }'|.
|
||||||
|
|
||||||
IF s_cnt-check_allow_multi_req = abap_true.
|
IF s_cnt-check_allow_multi_req = abap_true.
|
||||||
result = result && `,false,true`.
|
result = |{ result },false,true|.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
result = result && `]` && get_t_arg( t_arg ).
|
result = |{ result }]{ get_t_arg( t_arg ) }|.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD get_event_client.
|
METHOD get_event_client.
|
||||||
|
|
||||||
result = |{ z2ui5_if_core_types=>cs_ui5-event_frontend_function }('{ val }'|.
|
result = |{ z2ui5_if_core_types=>cs_ui5-event_frontend_function }('{ val }'|.
|
||||||
|
@ -55,7 +52,6 @@ CLASS z2ui5_cl_core_srv_event IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD get_t_arg.
|
METHOD get_t_arg.
|
||||||
|
|
||||||
IF val IS NOT INITIAL.
|
IF val IS NOT INITIAL.
|
||||||
|
@ -66,14 +62,14 @@ CLASS z2ui5_cl_core_srv_event IMPLEMENTATION.
|
||||||
CONTINUE.
|
CONTINUE.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
IF lv_new(1) <> `$` AND lv_new(1) <> `{`.
|
IF lv_new(1) <> `$` AND lv_new(1) <> `{`.
|
||||||
lv_new = `'` && lv_new && `'`.
|
lv_new = |'{ lv_new }'|.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
result = result && `, ` && lv_new.
|
result = |{ result }, { lv_new }|.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
result = result && `)`.
|
result = |{ result })|.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,25 +1,24 @@
|
||||||
CLASS ltcl_test DEFINITION FINAL FOR TESTING
|
CLASS ltcl_test DEFINITION FINAL
|
||||||
DURATION LONG
|
FOR TESTING RISK LEVEL HARMLESS DURATION LONG.
|
||||||
RISK LEVEL HARMLESS.
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
METHODS event FOR TESTING.
|
METHODS event FOR TESTING.
|
||||||
METHODS event_backend FOR TESTING.
|
METHODS event_backend FOR TESTING.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS ltcl_test IMPLEMENTATION.
|
CLASS ltcl_test IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD event.
|
METHOD event.
|
||||||
|
|
||||||
DATA(lo_event) = NEW z2ui5_cl_core_srv_event( ).
|
DATA(lo_event) = NEW z2ui5_cl_core_srv_event( ).
|
||||||
DATA(lv_event) = lo_event->get_event( `POST` ).
|
DATA(lv_event) = lo_event->get_event( `POST` ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `.eB(['POST'])`
|
||||||
act = lv_event
|
act = lv_event ).
|
||||||
exp = `.eB(['POST'])` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
@ -28,9 +27,8 @@ CLASS ltcl_test IMPLEMENTATION.
|
||||||
DATA(lo_event) = NEW z2ui5_cl_core_srv_event( ).
|
DATA(lo_event) = NEW z2ui5_cl_core_srv_event( ).
|
||||||
DATA(lv_event) = lo_event->get_event_client( z2ui5_if_client=>cs_event-popover_close ).
|
DATA(lv_event) = lo_event->get_event_client( z2ui5_if_client=>cs_event-popover_close ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `.eF('POPOVER_CLOSE')`
|
||||||
act = lv_event
|
act = lv_event ).
|
||||||
exp = `.eF('POPOVER_CLOSE')` ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,45 +1,42 @@
|
||||||
CLASS z2ui5_cl_core_srv_json DEFINITION
|
CLASS z2ui5_cl_core_srv_json DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
INTERFACES z2ui5_if_ajson_filter .
|
INTERFACES z2ui5_if_ajson_filter.
|
||||||
|
|
||||||
METHODS request_json_to_abap
|
METHODS request_json_to_abap
|
||||||
IMPORTING
|
IMPORTING
|
||||||
val TYPE string
|
val TYPE string
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE z2ui5_if_core_types=>ty_s_request .
|
VALUE(result) TYPE z2ui5_if_core_types=>ty_s_request.
|
||||||
|
|
||||||
METHODS response_abap_to_json
|
METHODS response_abap_to_json
|
||||||
IMPORTING
|
IMPORTING
|
||||||
val TYPE z2ui5_if_core_types=>ty_s_response
|
val TYPE z2ui5_if_core_types=>ty_s_response
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string .
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
METHODS model_front_to_back
|
METHODS model_front_to_back
|
||||||
IMPORTING
|
IMPORTING
|
||||||
view TYPE string
|
view TYPE string
|
||||||
t_attri TYPE REF TO z2ui5_if_core_types=>ty_t_attri
|
t_attri TYPE REF TO z2ui5_if_core_types=>ty_t_attri
|
||||||
model TYPE REF TO z2ui5_if_ajson .
|
model TYPE REF TO z2ui5_if_ajson.
|
||||||
|
|
||||||
METHODS model_back_to_front
|
METHODS model_back_to_front
|
||||||
IMPORTING
|
IMPORTING
|
||||||
t_attri TYPE REF TO z2ui5_if_core_types=>ty_t_attri
|
t_attri TYPE REF TO z2ui5_if_core_types=>ty_t_attri
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string .
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_core_srv_json IMPLEMENTATION.
|
CLASS z2ui5_cl_core_srv_json IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD model_front_to_back.
|
METHOD model_front_to_back.
|
||||||
|
|
||||||
IF line_exists( t_attri->*[ view = view ] ).
|
IF line_exists( t_attri->*[ view = view ] ).
|
||||||
|
@ -71,19 +68,15 @@ CLASS z2ui5_cl_core_srv_json IMPLEMENTATION.
|
||||||
CONTINUE.
|
CONTINUE.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
lo_val_front->to_abap(
|
lo_val_front->to_abap( IMPORTING ev_container = <val> ).
|
||||||
IMPORTING
|
|
||||||
ev_container = <val> ).
|
|
||||||
|
|
||||||
CATCH cx_root INTO DATA(x).
|
CATCH cx_root INTO DATA(x).
|
||||||
z2ui5_cl_util=>x_raise( |JSON_PARSING_ERROR: { x->get_text( ) } | ).
|
z2ui5_cl_util=>x_raise( |JSON_PARSING_ERROR: { x->get_text( ) } | ).
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD model_back_to_front.
|
METHOD model_back_to_front.
|
||||||
TRY.
|
TRY.
|
||||||
|
|
||||||
|
@ -91,9 +84,11 @@ CLASS z2ui5_cl_core_srv_json IMPLEMENTATION.
|
||||||
LOOP AT t_attri->* REFERENCE INTO DATA(lr_attri) WHERE bind_type <> ``.
|
LOOP AT t_attri->* REFERENCE INTO DATA(lr_attri) WHERE bind_type <> ``.
|
||||||
|
|
||||||
IF lr_attri->custom_mapper IS BOUND.
|
IF lr_attri->custom_mapper IS BOUND.
|
||||||
DATA(ajson) = CAST z2ui5_if_ajson( z2ui5_cl_ajson=>create_empty( ii_custom_mapping = lr_attri->custom_mapper ) ).
|
DATA(ajson) = CAST z2ui5_if_ajson( z2ui5_cl_ajson=>create_empty(
|
||||||
|
ii_custom_mapping = lr_attri->custom_mapper ) ).
|
||||||
ELSE.
|
ELSE.
|
||||||
ajson = CAST z2ui5_if_ajson( z2ui5_cl_ajson=>create_empty( ii_custom_mapping = z2ui5_cl_ajson_mapping=>create_upper_case( ) ) ).
|
ajson = CAST z2ui5_if_ajson( z2ui5_cl_ajson=>create_empty(
|
||||||
|
ii_custom_mapping = z2ui5_cl_ajson_mapping=>create_upper_case( ) ) ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
CASE lr_attri->bind_type.
|
CASE lr_attri->bind_type.
|
||||||
|
@ -105,10 +100,14 @@ CLASS z2ui5_cl_core_srv_json IMPLEMENTATION.
|
||||||
CONTINUE.
|
CONTINUE.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
* ASSERT sy-subrc = 0.
|
* ASSERT sy-subrc = 0.
|
||||||
ajson->set( iv_ignore_empty = abap_false iv_path = `/` iv_val = <attribute> ).
|
ajson->set( iv_ignore_empty = abap_false
|
||||||
|
iv_path = `/`
|
||||||
|
iv_val = <attribute> ).
|
||||||
|
|
||||||
WHEN z2ui5_if_core_types=>cs_bind_type-one_time.
|
WHEN z2ui5_if_core_types=>cs_bind_type-one_time.
|
||||||
ajson->set( iv_ignore_empty = abap_false iv_path = `/` iv_val = lr_attri->json_bind_local ).
|
ajson->set( iv_ignore_empty = abap_false
|
||||||
|
iv_path = `/`
|
||||||
|
iv_val = lr_attri->json_bind_local ).
|
||||||
|
|
||||||
WHEN OTHERS.
|
WHEN OTHERS.
|
||||||
ASSERT `` = `ERROR_UNKNOWN_BIND_MODE`.
|
ASSERT `` = `ERROR_UNKNOWN_BIND_MODE`.
|
||||||
|
@ -118,7 +117,8 @@ CLASS z2ui5_cl_core_srv_json IMPLEMENTATION.
|
||||||
ajson = ajson->filter( lr_attri->custom_filter ).
|
ajson = ajson->filter( lr_attri->custom_filter ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ajson_result->set( iv_path = lr_attri->name_client iv_val = ajson ).
|
ajson_result->set( iv_path = lr_attri->name_client
|
||||||
|
iv_val = ajson ).
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
result = ajson_result->stringify( ).
|
result = ajson_result->stringify( ).
|
||||||
|
@ -129,25 +129,22 @@ CLASS z2ui5_cl_core_srv_json IMPLEMENTATION.
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD request_json_to_abap.
|
METHOD request_json_to_abap.
|
||||||
TRY.
|
TRY.
|
||||||
|
|
||||||
DATA(lo_ajson) = CAST z2ui5_if_ajson( z2ui5_cl_ajson=>parse( val ) ).
|
DATA(lo_ajson) = CAST z2ui5_if_ajson( z2ui5_cl_ajson=>parse( val ) ).
|
||||||
|
|
||||||
DATA(lv_model_edit_name) = `/` && z2ui5_if_core_types=>cs_ui5-two_way_model.
|
DATA(lv_model_edit_name) = |/{ z2ui5_if_core_types=>cs_ui5-two_way_model }|.
|
||||||
|
|
||||||
result-o_model = z2ui5_cl_ajson=>create_empty( ).
|
result-o_model = z2ui5_cl_ajson=>create_empty( ).
|
||||||
DATA(lo_model) = lo_ajson->slice( lv_model_edit_name ).
|
DATA(lo_model) = lo_ajson->slice( lv_model_edit_name ).
|
||||||
result-o_model->set( iv_path = lv_model_edit_name iv_val = lo_model ).
|
result-o_model->set( iv_path = lv_model_edit_name
|
||||||
|
iv_val = lo_model ).
|
||||||
lo_ajson->delete( lv_model_edit_name ).
|
lo_ajson->delete( lv_model_edit_name ).
|
||||||
|
|
||||||
lo_ajson = lo_ajson->slice( `/S_FRONT` ).
|
lo_ajson = lo_ajson->slice( `/S_FRONT` ).
|
||||||
lo_ajson->to_abap(
|
lo_ajson->to_abap( EXPORTING iv_corresponding = abap_true
|
||||||
EXPORTING
|
IMPORTING ev_container = result-s_front ).
|
||||||
iv_corresponding = abap_true
|
|
||||||
IMPORTING
|
|
||||||
ev_container = result-s_front ).
|
|
||||||
|
|
||||||
result-s_front-o_comp_data = lo_ajson->slice( `/CONFIG/ComponentData` ).
|
result-s_front-o_comp_data = lo_ajson->slice( `/CONFIG/ComponentData` ).
|
||||||
|
|
||||||
|
@ -175,37 +172,36 @@ CLASS z2ui5_cl_core_srv_json IMPLEMENTATION.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
result-s_control-app_start = z2ui5_cl_util=>c_trim_upper(
|
result-s_control-app_start = z2ui5_cl_util=>c_trim_upper(
|
||||||
z2ui5_cl_util=>url_param_get( val = `app_start` url = result-s_front-search ) ).
|
z2ui5_cl_util=>url_param_get( val = `app_start`
|
||||||
|
url = result-s_front-search ) ).
|
||||||
|
|
||||||
CATCH cx_root INTO DATA(x).
|
CATCH cx_root INTO DATA(x).
|
||||||
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
RAISE EXCEPTION TYPE z2ui5_cx_util_error
|
||||||
EXPORTING
|
EXPORTING val = x.
|
||||||
val = x.
|
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD response_abap_to_json.
|
METHOD response_abap_to_json.
|
||||||
TRY.
|
TRY.
|
||||||
|
|
||||||
DATA(ajson_result) = CAST z2ui5_if_ajson( z2ui5_cl_ajson=>create_empty(
|
DATA(ajson_result) = CAST z2ui5_if_ajson( z2ui5_cl_ajson=>create_empty(
|
||||||
ii_custom_mapping = z2ui5_cl_ajson_mapping=>create_upper_case( ) ) ).
|
ii_custom_mapping = z2ui5_cl_ajson_mapping=>create_upper_case( ) ) ).
|
||||||
|
|
||||||
ajson_result->set( iv_path = `/` iv_val = val-s_front ).
|
ajson_result->set( iv_path = `/`
|
||||||
|
iv_val = val-s_front ).
|
||||||
ajson_result = ajson_result->filter( NEW z2ui5_cl_core_srv_json( ) ).
|
ajson_result = ajson_result->filter( NEW z2ui5_cl_core_srv_json( ) ).
|
||||||
DATA(lv_frontend) = ajson_result->stringify( ).
|
DATA(lv_frontend) = ajson_result->stringify( ).
|
||||||
|
|
||||||
result = `{` &&
|
result = |\{| &&
|
||||||
|"S_FRONT":{ lv_frontend },| &&
|
|"S_FRONT":{ lv_frontend },| &&
|
||||||
|"MODEL":{ val-model }| &&
|
|"MODEL":{ val-model }| &&
|
||||||
`}`.
|
|\}|.
|
||||||
|
|
||||||
CATCH cx_root INTO DATA(x).
|
CATCH cx_root INTO DATA(x).
|
||||||
ASSERT x IS NOT BOUND.
|
ASSERT x IS NOT BOUND.
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_ajson_filter~keep_node.
|
METHOD z2ui5_if_ajson_filter~keep_node.
|
||||||
|
|
||||||
rv_keep = abap_true.
|
rv_keep = abap_true.
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
CLASS ltcl_test DEFINITION FINAL FOR TESTING
|
CLASS ltcl_test DEFINITION FINAL
|
||||||
DURATION SHORT
|
FOR TESTING RISK LEVEL HARMLESS DURATION SHORT.
|
||||||
RISK LEVEL HARMLESS.
|
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS request_json_to_abap FOR TESTING RAISING cx_static_check.
|
METHODS request_json_to_abap FOR TESTING RAISING cx_static_check.
|
||||||
|
@ -9,39 +8,32 @@ ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS ltcl_test IMPLEMENTATION.
|
CLASS ltcl_test IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD request_json_to_abap.
|
METHOD request_json_to_abap.
|
||||||
|
|
||||||
DATA(lv_payload) = `{"XX":{"NAME":"test"},"S_FRONT":{"ID":"ID_NR","EDIT":{"NAME":"test"},"ORIGIN":"ORIGIN","PATHNAME":"PATHNAME","SEARCH":"SEARCH"` &&
|
DATA(lv_payload) = |\{"XX":\{"NAME":"test"\},"S_FRONT":\{"ID":"ID_NR","EDIT":\{"NAME":"test"\},"ORIGIN":"ORIGIN","PATHNAME":"PATHNAME","SEARCH":"SEARCH"| &&
|
||||||
`,"VIEW":"MAIN","EVENT":"BUTTON_POST","T_EVENT_ARG":[]}}`.
|
|,"VIEW":"MAIN","EVENT":"BUTTON_POST","T_EVENT_ARG":[]\}\}|.
|
||||||
|
|
||||||
DATA(lo_mapper) = NEW z2ui5_cl_core_srv_json( ).
|
DATA(lo_mapper) = NEW z2ui5_cl_core_srv_json( ).
|
||||||
DATA(ls_result) = lo_mapper->request_json_to_abap( lv_payload ).
|
DATA(ls_result) = lo_mapper->request_json_to_abap( lv_payload ).
|
||||||
|
|
||||||
DATA(ls_exp) = VALUE z2ui5_if_core_types=>ty_s_request(
|
DATA(ls_exp) = VALUE z2ui5_if_core_types=>ty_s_request( s_front = VALUE #( id = `ID_NR`
|
||||||
s_front = VALUE #(
|
|
||||||
id = `ID_NR`
|
|
||||||
view = `MAIN`
|
view = `MAIN`
|
||||||
origin = `ORIGIN`
|
origin = `ORIGIN`
|
||||||
pathname = `PATHNAME`
|
pathname = `PATHNAME`
|
||||||
search = `SEARCH`
|
search = `SEARCH`
|
||||||
event = `BUTTON_POST` ) ).
|
event = `BUTTON_POST` ) ).
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = ls_exp-s_front
|
||||||
act = ls_result-s_front
|
act = ls_result-s_front ).
|
||||||
exp = ls_exp-s_front ).
|
|
||||||
|
|
||||||
DATA(lt_tree) = VALUE z2ui5_if_ajson_types=>ty_nodes_ts( ).
|
DATA(lt_tree) = VALUE z2ui5_if_ajson_types=>ty_nodes_ts( ).
|
||||||
lt_tree = ls_result-o_model->mt_json_tree.
|
lt_tree = ls_result-o_model->mt_json_tree.
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = `test`
|
||||||
act = lt_tree[ name = `NAME` ]-value
|
act = lt_tree[ name = `NAME` ]-value ).
|
||||||
exp = `test` ).
|
|
||||||
|
|
||||||
cl_abap_unit_assert=>assert_equals(
|
cl_abap_unit_assert=>assert_equals( exp = 3
|
||||||
act = lines( lt_tree )
|
act = lines( lt_tree ) ).
|
||||||
exp = 3 ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
CLASS z2ui5_cl_core_srv_util DEFINITION
|
CLASS z2ui5_cl_core_srv_util DEFINITION
|
||||||
PUBLIC
|
PUBLIC
|
||||||
INHERITING FROM z2ui5_cl_util
|
INHERITING FROM z2ui5_cl_util
|
||||||
CREATE PUBLIC .
|
CREATE PUBLIC.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -19,37 +19,33 @@ CLASS z2ui5_cl_core_srv_util DEFINITION
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_core_srv_util IMPLEMENTATION.
|
CLASS z2ui5_cl_core_srv_util IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD app_get_url.
|
METHOD app_get_url.
|
||||||
|
|
||||||
IF classname IS INITIAL.
|
IF classname IS INITIAL.
|
||||||
classname = rtti_get_classname_by_ref( client->get_app( ) ).
|
classname = rtti_get_classname_by_ref( client->get_app( ) ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
DATA(lv_url) = client->get( )-s_config-origin && client->get( )-s_config-pathname && `?`.
|
DATA(lv_url) = |{ client->get( )-s_config-origin }{ client->get( )-s_config-pathname }?|.
|
||||||
DATA(lt_param) = url_param_get_tab( client->get( )-s_config-search ).
|
DATA(lt_param) = url_param_get_tab( client->get( )-s_config-search ).
|
||||||
DELETE lt_param WHERE n = `app_start`.
|
DELETE lt_param WHERE n = `app_start`.
|
||||||
INSERT VALUE #( n = `app_start` v = to_lower( classname ) ) INTO TABLE lt_param.
|
INSERT VALUE #( n = `app_start`
|
||||||
|
v = to_lower( classname ) ) INTO TABLE lt_param.
|
||||||
|
|
||||||
result = lv_url && url_param_create_url( lt_param ) && client->get( )-s_config-hash.
|
result = lv_url && url_param_create_url( lt_param ) && client->get( )-s_config-hash.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD app_get_url_source_code.
|
METHOD app_get_url_source_code.
|
||||||
|
|
||||||
DATA(ls_config) = client->get( )-s_config.
|
DATA(ls_config) = client->get( )-s_config.
|
||||||
result = ls_config-origin && `/sap/bc/adt/oo/classes/`
|
result = |{ ls_config-origin }/sap/bc/adt/oo/classes/|
|
||||||
&& rtti_get_classname_by_ref( client->get_app( ) ) && `/source/main`.
|
&& |{ rtti_get_classname_by_ref( client->get_app( ) ) }/source/main|.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_app_app_xml DEFINITION
|
CLASS z2ui5_cl_app_app_xml DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -10,24 +9,23 @@ CLASS z2ui5_cl_app_app_xml DEFINITION
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_app_app_xml IMPLEMENTATION.
|
CLASS z2ui5_cl_app_app_xml IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD get.
|
METHOD get.
|
||||||
|
|
||||||
result = `<mvc:View controllerName="z2ui5.controller.App"` &&
|
result = |<mvc:View controllerName="z2ui5.controller.App"| &&
|
||||||
` xmlns:html="http://www.w3.org/1999/xhtml"` &&
|
| xmlns:html="http://www.w3.org/1999/xhtml"| &&
|
||||||
` xmlns:mvc="sap.ui.core.mvc" displayBlock="true"` &&
|
| xmlns:mvc="sap.ui.core.mvc" displayBlock="true"| &&
|
||||||
` xmlns="sap.m">` &&
|
| xmlns="sap.m">| &&
|
||||||
` <App id="app">` &&
|
| <App id="app">| &&
|
||||||
` </App>` &&
|
| </App>| &&
|
||||||
`</mvc:View>` &&
|
|</mvc:View>| &&
|
||||||
`` &&
|
|| &&
|
||||||
``.
|
||.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_app_component_js DEFINITION
|
CLASS z2ui5_cl_app_component_js DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -10,77 +9,76 @@ CLASS z2ui5_cl_app_component_js DEFINITION
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_app_component_js IMPLEMENTATION.
|
CLASS z2ui5_cl_app_component_js IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD get.
|
METHOD get.
|
||||||
|
|
||||||
result = `sap.ui.define(["sap/ui/core/UIComponent", "z2ui5/model/models",` && |\n| &&
|
result = |sap.ui.define(["sap/ui/core/UIComponent", "z2ui5/model/models",| && |\n| &&
|
||||||
` "z2ui5/cc/DebugTool","z2ui5/cc/Server", "sap/base/Log","sap/ui/VersionInfo"` && |\n| &&
|
| "z2ui5/cc/DebugTool","z2ui5/cc/Server", "sap/base/Log","sap/ui/VersionInfo"| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` ], function (UIComponent, models, DebugTool, Server, Log, VersionInfo) {` && |\n| &&
|
| ], function (UIComponent, models, DebugTool, Server, Log, VersionInfo) \{| && |\n| &&
|
||||||
` return UIComponent.extend("z2ui5.Component", {` && |\n| &&
|
| return UIComponent.extend("z2ui5.Component", \{| && |\n| &&
|
||||||
` metadata: {` && |\n| &&
|
| metadata: \{| && |\n| &&
|
||||||
` manifest: "json"` && |\n| &&
|
| manifest: "json"| && |\n| &&
|
||||||
` },` && |\n| &&
|
| \},| && |\n| &&
|
||||||
` init: async function () {` && |\n| &&
|
| init: async function () \{| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` UIComponent.prototype.init.apply(this, arguments);` && |\n| &&
|
| UIComponent.prototype.init.apply(this, arguments);| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` this.getRouter().initialize();` && |\n| &&
|
| this.getRouter().initialize();| && |\n| &&
|
||||||
` z2ui5.oRouter = this.getRouter();` && |\n| &&
|
| z2ui5.oRouter = this.getRouter();| && |\n| &&
|
||||||
` this.setModel(models.createDeviceModel(), "device");` && |\n| &&
|
| this.setModel(models.createDeviceModel(), "device");| && |\n| &&
|
||||||
` this._oLogger = Log.getLogger("abap2UI5");` && |\n| &&
|
| this._oLogger = Log.getLogger("abap2UI5");| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` z2ui5.oConfig = {};` && |\n| &&
|
| z2ui5.oConfig = \{\};| && |\n| &&
|
||||||
` z2ui5.oConfig.ComponentData = this.getComponentData();` && |\n| &&
|
| z2ui5.oConfig.ComponentData = this.getComponentData();| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` try {` && |\n| &&
|
| try \{| && |\n| &&
|
||||||
` z2ui5.oLaunchpadService = await this.getService("ShellUIService");` && |\n| &&
|
| z2ui5.oLaunchpadService = await this.getService("ShellUIService");| && |\n| &&
|
||||||
` } catch (e) {}` && |\n| &&
|
| \} catch (e) \{\}| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` let oVersionInfo = await VersionInfo.load();` && |\n| &&
|
| let oVersionInfo = await VersionInfo.load();| && |\n| &&
|
||||||
` z2ui5.oConfig.UI5VersionInfo = {` && |\n| &&
|
| z2ui5.oConfig.UI5VersionInfo = \{| && |\n| &&
|
||||||
` version : oVersionInfo.version,` && |\n| &&
|
| version : oVersionInfo.version,| && |\n| &&
|
||||||
` buildTimestamp : oVersionInfo.buildTimestamp,` && |\n| &&
|
| buildTimestamp : oVersionInfo.buildTimestamp,| && |\n| &&
|
||||||
` gav : oVersionInfo.gav,` && |\n| &&
|
| gav : oVersionInfo.gav,| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` if (/iPad|iPhone/.test(navigator.platform)) {` && |\n| &&
|
| if (/iPad\|iPhone/.test(navigator.platform)) \{| && |\n| &&
|
||||||
` window.addEventListener("__pagehide", this.__pagehide.bind(this));` && |\n| &&
|
| window.addEventListener("__pagehide", this.__pagehide.bind(this));| && |\n| &&
|
||||||
` } else {` && |\n| &&
|
| \} else \{| && |\n| &&
|
||||||
` window.addEventListener("__beforeunload", this.__beforeunload.bind(this));` && |\n| &&
|
| window.addEventListener("__beforeunload", this.__beforeunload.bind(this));| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` document.addEventListener("keydown", function (zEvent) {` && |\n| &&
|
| document.addEventListener("keydown", function (zEvent) \{| && |\n| &&
|
||||||
` if (zEvent?.key === "F12") {` && |\n| &&
|
| if (zEvent?.key === "F12") \{| && |\n| &&
|
||||||
` new z2ui5.cc.DebugTool().show();` && |\n| &&
|
| new z2ui5.cc.DebugTool().show();| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` });` && |\n| &&
|
| \});| && |\n| &&
|
||||||
` },` && |\n| &&
|
| \},| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` __beforeunload: function () {` && |\n| &&
|
| __beforeunload: function () \{| && |\n| &&
|
||||||
` window.removeEventListener("__beforeunload", this.__beforeunload.bind(this));` && |\n| &&
|
| window.removeEventListener("__beforeunload", this.__beforeunload.bind(this));| && |\n| &&
|
||||||
` this.destroy();` && |\n| &&
|
| this.destroy();| && |\n| &&
|
||||||
` },` && |\n| &&
|
| \},| && |\n| &&
|
||||||
` __pagehide: function () {` && |\n| &&
|
| __pagehide: function () \{| && |\n| &&
|
||||||
` window.removeEventListener("__pagehide", this.__pagehide.bind(this));` && |\n| &&
|
| window.removeEventListener("__pagehide", this.__pagehide.bind(this));| && |\n| &&
|
||||||
` this.destroy();` && |\n| &&
|
| this.destroy();| && |\n| &&
|
||||||
` },` && |\n| &&
|
| \},| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` exit: function () {` && |\n| &&
|
| exit: function () \{| && |\n| &&
|
||||||
` Server.endSession();` && |\n| &&
|
| Server.endSession();| && |\n| &&
|
||||||
` if (UIComponent.prototype.exit)` && |\n| &&
|
| if (UIComponent.prototype.exit)| && |\n| &&
|
||||||
` UIComponent.prototype.exit.apply(this, arguments);` && |\n| &&
|
| UIComponent.prototype.exit.apply(this, arguments);| && |\n| &&
|
||||||
` },` && |\n| &&
|
| \},| && |\n| &&
|
||||||
` });` && |\n| &&
|
| \});| && |\n| &&
|
||||||
`});` && |\n| &&
|
|\});| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
``.
|
||.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_app_debugtool_js DEFINITION
|
CLASS z2ui5_cl_app_debugtool_js DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -10,159 +9,158 @@ CLASS z2ui5_cl_app_debugtool_js DEFINITION
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_app_debugtool_js IMPLEMENTATION.
|
CLASS z2ui5_cl_app_debugtool_js IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD get.
|
METHOD get.
|
||||||
|
|
||||||
result = `sap.ui.define(["sap/ui/core/Control", "sap/ui/core/Fragment", "sap/ui/model/json/JSONModel"], (Control, Fragment, JSONModel) => {` && |\n| &&
|
result = |sap.ui.define(["sap/ui/core/Control", "sap/ui/core/Fragment", "sap/ui/model/json/JSONModel"], (Control, Fragment, JSONModel) => \{| && |\n| &&
|
||||||
` "use strict";` && |\n| &&
|
| "use strict";| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` return Control.extend("z2ui5.cc.DebugTool", {` && |\n| &&
|
| return Control.extend("z2ui5.cc.DebugTool", \{| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` //printer XML` && |\n| &&
|
| //printer XML| && |\n| &&
|
||||||
` prettifyXml: function (sourceXml) {` && |\n| &&
|
| prettifyXml: function (sourceXml) \{| && |\n| &&
|
||||||
` const xmlDoc = new DOMParser().parseFromString(sourceXml, 'application/xml');` && |\n| &&
|
| const xmlDoc = new DOMParser().parseFromString(sourceXml, 'application/xml');| && |\n| &&
|
||||||
` var sParse = ``<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform">` && |\n| &&
|
| var sParse = `<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform">| && |\n| &&
|
||||||
` <xsl:strip-space elements="*" />` && |\n| &&
|
| <xsl:strip-space elements="*" />| && |\n| &&
|
||||||
` <xsl:template match="para[content-style][not(text())]">` && |\n| &&
|
| <xsl:template match="para[content-style][not(text())]">| && |\n| &&
|
||||||
` <xsl:value-of select="normalize-space(.)" />` && |\n| &&
|
| <xsl:value-of select="normalize-space(.)" />| && |\n| &&
|
||||||
` </xsl:template>` && |\n| &&
|
| </xsl:template>| && |\n| &&
|
||||||
` <xsl:template match="node()|@*">` && |\n| &&
|
| <xsl:template match="node()\|@*">| && |\n| &&
|
||||||
` <xsl:copy>` && |\n| &&
|
| <xsl:copy>| && |\n| &&
|
||||||
` <xsl:apply-templates select="node()|@*" />` && |\n| &&
|
| <xsl:apply-templates select="node()\|@*" />| && |\n| &&
|
||||||
` </xsl:copy>` && |\n| &&
|
| </xsl:copy>| && |\n| &&
|
||||||
` </xsl:template>` && |\n| &&
|
| </xsl:template>| && |\n| &&
|
||||||
` <xsl:output indent="yes" />` && |\n| &&
|
| <xsl:output indent="yes" />| && |\n| &&
|
||||||
` </xsl:stylesheet>``;` && |\n| &&
|
| </xsl:stylesheet>`;| && |\n| &&
|
||||||
` sParse = sParse.replace(/>/g, unescape("%3E")).replace(/</g, unescape("%3C"));` && |\n| &&
|
| sParse = sParse.replace(/>/g, unescape("%3E")).replace(/</g, unescape("%3C"));| && |\n| &&
|
||||||
` const xsltDoc = new DOMParser().parseFromString(sParse, 'application/xml');` && |\n| &&
|
| const xsltDoc = new DOMParser().parseFromString(sParse, 'application/xml');| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` const xsltProcessor = new XSLTProcessor();` && |\n| &&
|
| const xsltProcessor = new XSLTProcessor();| && |\n| &&
|
||||||
` xsltProcessor.importStylesheet(xsltDoc);` && |\n| &&
|
| xsltProcessor.importStylesheet(xsltDoc);| && |\n| &&
|
||||||
` const resultDoc = xsltProcessor.transformToDocument(xmlDoc);` && |\n| &&
|
| const resultDoc = xsltProcessor.transformToDocument(xmlDoc);| && |\n| &&
|
||||||
` const resultXml = new XMLSerializer().serializeToString(resultDoc);` && |\n| &&
|
| const resultXml = new XMLSerializer().serializeToString(resultDoc);| && |\n| &&
|
||||||
` return resultXml.replace(/>/g, ">").replace(/</g, "<");` && |\n| &&
|
| return resultXml.replace(/>/g, ">").replace(/</g, "<");| && |\n| &&
|
||||||
` }, onItemSelect: function (oEvent) {` && |\n| &&
|
| \}, onItemSelect: function (oEvent) \{| && |\n| &&
|
||||||
` const selItem = oEvent.getSource().getSelectedKey();` && |\n| &&
|
| const selItem = oEvent.getSource().getSelectedKey();| && |\n| &&
|
||||||
` const oView = z2ui5?.oView;` && |\n| &&
|
| const oView = z2ui5?.oView;| && |\n| &&
|
||||||
` const oResponse = z2ui5?.oResponse;` && |\n| &&
|
| const oResponse = z2ui5?.oResponse;| && |\n| &&
|
||||||
` const displayEditor = this.displayEditor.bind(this);` && |\n| &&
|
| const displayEditor = this.displayEditor.bind(this);| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` switch (selItem) {` && |\n| &&
|
| switch (selItem) \{| && |\n| &&
|
||||||
` case 'CONFIG':` && |\n| &&
|
| case 'CONFIG':| && |\n| &&
|
||||||
` displayEditor(oEvent, JSON.stringify(z2ui5.oConfig, null, 3), 'json');` && |\n| &&
|
| displayEditor(oEvent, JSON.stringify(z2ui5.oConfig, null, 3), 'json');| && |\n| &&
|
||||||
` break;` && |\n| &&
|
| break;| && |\n| &&
|
||||||
` case 'MODEL':` && |\n| &&
|
| case 'MODEL':| && |\n| &&
|
||||||
` displayEditor(oEvent, JSON.stringify(oView?.getModel()?.getData(), null, 3), 'json');` && |\n| &&
|
| displayEditor(oEvent, JSON.stringify(oView?.getModel()?.getData(), null, 3), 'json');| && |\n| &&
|
||||||
` break;` && |\n| &&
|
| break;| && |\n| &&
|
||||||
` case 'VIEW':` && |\n| &&
|
| case 'VIEW':| && |\n| &&
|
||||||
` const viewContent = oView?.mProperties?.viewContent || z2ui5.responseData.S_FRONT.PARAMS.S_VIEW.XML;` && |\n| &&
|
| const viewContent = oView?.mProperties?.viewContent \|\| z2ui5.responseData.S_FRONT.PARAMS.S_VIEW.XML;| && |\n| &&
|
||||||
` displayEditor(oEvent, this.prettifyXml(viewContent), 'xml', this.prettifyXml(oView?._xContent.outerHTML));` && |\n| &&
|
| displayEditor(oEvent, this.prettifyXml(viewContent), 'xml', this.prettifyXml(oView?._xContent.outerHTML));| && |\n| &&
|
||||||
` break;` && |\n| &&
|
| break;| && |\n| &&
|
||||||
` case 'PLAIN':` && |\n| &&
|
| case 'PLAIN':| && |\n| &&
|
||||||
` displayEditor(oEvent, JSON.stringify(z2ui5.responseData, null, 3), 'json');` && |\n| &&
|
| displayEditor(oEvent, JSON.stringify(z2ui5.responseData, null, 3), 'json');| && |\n| &&
|
||||||
` break;` && |\n| &&
|
| break;| && |\n| &&
|
||||||
` case 'REQUEST':` && |\n| &&
|
| case 'REQUEST':| && |\n| &&
|
||||||
` displayEditor(oEvent, JSON.stringify(z2ui5.oBody, null, 3), 'json');` && |\n| &&
|
| displayEditor(oEvent, JSON.stringify(z2ui5.oBody, null, 3), 'json');| && |\n| &&
|
||||||
` break;` && |\n| &&
|
| break;| && |\n| &&
|
||||||
` case 'POPUP':` && |\n| &&
|
| case 'POPUP':| && |\n| &&
|
||||||
` displayEditor(oEvent, this.prettifyXml(oResponse?.PARAMS?.S_POPUP?.XML), 'xml');` && |\n| &&
|
| displayEditor(oEvent, this.prettifyXml(oResponse?.PARAMS?.S_POPUP?.XML), 'xml');| && |\n| &&
|
||||||
` break;` && |\n| &&
|
| break;| && |\n| &&
|
||||||
` case 'POPUP_MODEL':` && |\n| &&
|
| case 'POPUP_MODEL':| && |\n| &&
|
||||||
` displayEditor(oEvent, JSON.stringify(z2ui5.oViewPopup.getModel().getData(), null, 3), 'json');` && |\n| &&
|
| displayEditor(oEvent, JSON.stringify(z2ui5.oViewPopup.getModel().getData(), null, 3), 'json');| && |\n| &&
|
||||||
` break;` && |\n| &&
|
| break;| && |\n| &&
|
||||||
` case 'POPOVER':` && |\n| &&
|
| case 'POPOVER':| && |\n| &&
|
||||||
` displayEditor(oEvent, oResponse?.PARAMS?.S_POPOVER?.XML, 'xml');` && |\n| &&
|
| displayEditor(oEvent, oResponse?.PARAMS?.S_POPOVER?.XML, 'xml');| && |\n| &&
|
||||||
` break;` && |\n| &&
|
| break;| && |\n| &&
|
||||||
` case 'POPOVER_MODEL':` && |\n| &&
|
| case 'POPOVER_MODEL':| && |\n| &&
|
||||||
` displayEditor(oEvent, JSON.stringify(z2ui5?.oViewPopover?.getModel()?.getData(), null, 3), 'json');` && |\n| &&
|
| displayEditor(oEvent, JSON.stringify(z2ui5?.oViewPopover?.getModel()?.getData(), null, 3), 'json');| && |\n| &&
|
||||||
` break;` && |\n| &&
|
| break;| && |\n| &&
|
||||||
` case 'NEST1':` && |\n| &&
|
| case 'NEST1':| && |\n| &&
|
||||||
` displayEditor(oEvent, this.prettifyXml(z2ui5?.oViewNest?.mProperties?.viewContent), 'xml', this.prettifyXml(z2ui5?.oViewNest?._xContent.outerHTML));` && |\n| &&
|
| displayEditor(oEvent, this.prettifyXml(z2ui5?.oViewNest?.mProperties?.viewContent), 'xml', this.prettifyXml(z2ui5?.oViewNest?._xContent.outerHTML));| && |\n| &&
|
||||||
` break;` && |\n| &&
|
| break;| && |\n| &&
|
||||||
` case 'NEST1_MODEL':` && |\n| &&
|
| case 'NEST1_MODEL':| && |\n| &&
|
||||||
` displayEditor(oEvent, JSON.stringify(z2ui5?.oViewNest?.getModel()?.getData(), null, 3), 'json');` && |\n| &&
|
| displayEditor(oEvent, JSON.stringify(z2ui5?.oViewNest?.getModel()?.getData(), null, 3), 'json');| && |\n| &&
|
||||||
` break;` && |\n| &&
|
| break;| && |\n| &&
|
||||||
` case 'NEST2':` && |\n| &&
|
| case 'NEST2':| && |\n| &&
|
||||||
` displayEditor(oEvent, this.prettifyXml(z2ui5?.oViewNest2?.mProperties?.viewContent), 'xml', this.prettifyXml(z2ui5?.oViewNest2?._xContent.outerHTML));` && |\n| &&
|
| displayEditor(oEvent, this.prettifyXml(z2ui5?.oViewNest2?.mProperties?.viewContent), 'xml', this.prettifyXml(z2ui5?.oViewNest2?._xContent.outerHTML));| && |\n| &&
|
||||||
` break;` && |\n| &&
|
| break;| && |\n| &&
|
||||||
` case 'NEST2_MODEL':` && |\n| &&
|
| case 'NEST2_MODEL':| && |\n| &&
|
||||||
` displayEditor(oEvent, JSON.stringify(z2ui5?.oViewNest2?.getModel()?.getData(), null, 3), 'json');` && |\n| &&
|
| displayEditor(oEvent, JSON.stringify(z2ui5?.oViewNest2?.getModel()?.getData(), null, 3), 'json');| && |\n| &&
|
||||||
` break;` && |\n| &&
|
| break;| && |\n| &&
|
||||||
` case 'SOURCE':` && |\n| &&
|
| case 'SOURCE':| && |\n| &&
|
||||||
` const parent = oEvent.getSource().getParent();` && |\n| &&
|
| const parent = oEvent.getSource().getParent();| && |\n| &&
|
||||||
` const contentControl = parent.getContent()[2].getItems()[0];` && |\n| &&
|
| const contentControl = parent.getContent()[2].getItems()[0];| && |\n| &&
|
||||||
` const url = ``${window.location.origin}/sap/bc/adt/oo/classes/${z2ui5.responseData.S_FRONT.APP}/source/main``;` && |\n| &&
|
| const url = `$\{window.location.origin\}/sap/bc/adt/oo/classes/$\{z2ui5.responseData.S_FRONT.APP\}/source/main`;| && |\n| &&
|
||||||
` const content = atob('PGlmcmFtZSBpZD0idGVzdCIgc3JjPSInICsgdXJsICsgJyIgaGVpZ2h0PSI4MDBweCIgd2lkdGg9IjEyMDBweCIgLz4=').replace("' + url + '", url);` && |\n| &&
|
| const content = atob('PGlmcmFtZSBpZD0idGVzdCIgc3JjPSInICsgdXJsICsgJyIgaGVpZ2h0PSI4MDBweCIgd2lkdGg9IjEyMDBweCIgLz4=').replace("' + url + '", url);| && |\n| &&
|
||||||
` contentControl.setProperty("content", content);` && |\n| &&
|
| contentControl.setProperty("content", content);| && |\n| &&
|
||||||
` const modelData = oEvent.getSource().getModel().oData;` && |\n| &&
|
| const modelData = oEvent.getSource().getModel().oData;| && |\n| &&
|
||||||
` modelData.editor_visible = false;` && |\n| &&
|
| modelData.editor_visible = false;| && |\n| &&
|
||||||
` modelData.source_visible = true;` && |\n| &&
|
| modelData.source_visible = true;| && |\n| &&
|
||||||
` oEvent.getSource().getModel().refresh();` && |\n| &&
|
| oEvent.getSource().getModel().refresh();| && |\n| &&
|
||||||
` break;` && |\n| &&
|
| break;| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` },` && |\n| &&
|
| \},| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` displayEditor: function (oEvent, content, type, xcontent = "") {` && |\n| &&
|
| displayEditor: function (oEvent, content, type, xcontent = "") \{| && |\n| &&
|
||||||
` const modelData = oEvent.getSource().getModel().oData;` && |\n| &&
|
| const modelData = oEvent.getSource().getModel().oData;| && |\n| &&
|
||||||
` modelData.editor_visible = true;` && |\n| &&
|
| modelData.editor_visible = true;| && |\n| &&
|
||||||
` modelData.source_visible = false;` && |\n| &&
|
| modelData.source_visible = false;| && |\n| &&
|
||||||
` modelData.isTemplating = content.includes("xmlns:template");` && |\n| &&
|
| modelData.isTemplating = content.includes("xmlns:template");| && |\n| &&
|
||||||
` modelData.value = content;` && |\n| &&
|
| modelData.value = content;| && |\n| &&
|
||||||
` modelData.previousValue = content;` && |\n| &&
|
| modelData.previousValue = content;| && |\n| &&
|
||||||
` modelData.xContent = xcontent;` && |\n| &&
|
| modelData.xContent = xcontent;| && |\n| &&
|
||||||
` modelData.type = type;` && |\n| &&
|
| modelData.type = type;| && |\n| &&
|
||||||
` oEvent.getSource().getModel().refresh();` && |\n| &&
|
| oEvent.getSource().getModel().refresh();| && |\n| &&
|
||||||
` },` && |\n| &&
|
| \},| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` onTemplatingPress: function (oEvent) {` && |\n| &&
|
| onTemplatingPress: function (oEvent) \{| && |\n| &&
|
||||||
` const modelData = oEvent.getSource().getModel().oData;` && |\n| &&
|
| const modelData = oEvent.getSource().getModel().oData;| && |\n| &&
|
||||||
` modelData.value = oEvent.getSource().getPressed() ? modelData.xContent : modelData.previousValue;` && |\n| &&
|
| modelData.value = oEvent.getSource().getPressed() ? modelData.xContent : modelData.previousValue;| && |\n| &&
|
||||||
` oEvent.getSource().getModel().refresh();` && |\n| &&
|
| oEvent.getSource().getModel().refresh();| && |\n| &&
|
||||||
` },` && |\n| &&
|
| \},| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` onClose: function () {` && |\n| &&
|
| onClose: function () \{| && |\n| &&
|
||||||
` this.oDialog.close();` && |\n| &&
|
| this.oDialog.close();| && |\n| &&
|
||||||
` },` && |\n| &&
|
| \},| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` async show() {` && |\n| &&
|
| async show() \{| && |\n| &&
|
||||||
` if (!this.oDialog) {` && |\n| &&
|
| if (!this.oDialog) \{| && |\n| &&
|
||||||
` this.oDialog = await Fragment.load({` && |\n| &&
|
| this.oDialog = await Fragment.load(\{| && |\n| &&
|
||||||
` name: "z2ui5.cc.DebugTool",` && |\n| &&
|
| name: "z2ui5.cc.DebugTool",| && |\n| &&
|
||||||
` controller: this,` && |\n| &&
|
| controller: this,| && |\n| &&
|
||||||
` });` && |\n| &&
|
| \});| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` const value = JSON.stringify(z2ui5.responseData, null, 3);` && |\n| &&
|
| const value = JSON.stringify(z2ui5.responseData, null, 3);| && |\n| &&
|
||||||
` const oData = {` && |\n| &&
|
| const oData = \{| && |\n| &&
|
||||||
` type: 'json',` && |\n| &&
|
| type: 'json',| && |\n| &&
|
||||||
` source_visible: false,` && |\n| &&
|
| source_visible: false,| && |\n| &&
|
||||||
` editor_visible: true,` && |\n| &&
|
| editor_visible: true,| && |\n| &&
|
||||||
` value: value,` && |\n| &&
|
| value: value,| && |\n| &&
|
||||||
` xContent: '',` && |\n| &&
|
| xContent: '',| && |\n| &&
|
||||||
` previousValue: value,` && |\n| &&
|
| previousValue: value,| && |\n| &&
|
||||||
` isTemplating: false,` && |\n| &&
|
| isTemplating: false,| && |\n| &&
|
||||||
` templatingSource: false,` && |\n| &&
|
| templatingSource: false,| && |\n| &&
|
||||||
` activeNest1: z2ui5?.oViewNest?.mProperties?.viewContent !== undefined,` && |\n| &&
|
| activeNest1: z2ui5?.oViewNest?.mProperties?.viewContent !== undefined,| && |\n| &&
|
||||||
` activeNest2: z2ui5?.oViewNest2?.mProperties?.viewContent !== undefined,` && |\n| &&
|
| activeNest2: z2ui5?.oViewNest2?.mProperties?.viewContent !== undefined,| && |\n| &&
|
||||||
` activePopup: z2ui5?.oResponse?.PARAMS?.S_POPUP?.XML !== undefined,` && |\n| &&
|
| activePopup: z2ui5?.oResponse?.PARAMS?.S_POPUP?.XML !== undefined,| && |\n| &&
|
||||||
` activePopover: z2ui5?.oResponse?.PARAMS?.S_POPOVER?.XML !== undefined,` && |\n| &&
|
| activePopover: z2ui5?.oResponse?.PARAMS?.S_POPOVER?.XML !== undefined,| && |\n| &&
|
||||||
` };` && |\n| &&
|
| \};| && |\n| &&
|
||||||
` const oModel = new JSONModel(oData);` && |\n| &&
|
| const oModel = new JSONModel(oData);| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` this.oDialog.addStyleClass('dbg-ltr');` && |\n| &&
|
| this.oDialog.addStyleClass('dbg-ltr');| && |\n| &&
|
||||||
` this.oDialog.setModel(oModel);` && |\n| &&
|
| this.oDialog.setModel(oModel);| && |\n| &&
|
||||||
` this.oDialog.open();` && |\n| &&
|
| this.oDialog.open();| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` });` && |\n| &&
|
| \});| && |\n| &&
|
||||||
`});` && |\n| &&
|
|\});| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
``.
|
||.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_app_debugtool_xml DEFINITION
|
CLASS z2ui5_cl_app_debugtool_xml DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -10,121 +9,120 @@ CLASS z2ui5_cl_app_debugtool_xml DEFINITION
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_app_debugtool_xml IMPLEMENTATION.
|
CLASS z2ui5_cl_app_debugtool_xml IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD get.
|
METHOD get.
|
||||||
|
|
||||||
result = `<core:FragmentDefinition` &&
|
result = |<core:FragmentDefinition| &&
|
||||||
` xmlns="sap.m"` &&
|
| xmlns="sap.m"| &&
|
||||||
` xmlns:mvc="sap.ui.core.mvc"` &&
|
| xmlns:mvc="sap.ui.core.mvc"| &&
|
||||||
` xmlns:core="sap.ui.core"` &&
|
| xmlns:core="sap.ui.core"| &&
|
||||||
` xmlns:html="http://www.w3.org/1999/xhtml"` &&
|
| xmlns:html="http://www.w3.org/1999/xhtml"| &&
|
||||||
` xmlns:ce="sap.ui.codeeditor"` &&
|
| xmlns:ce="sap.ui.codeeditor"| &&
|
||||||
`>` &&
|
|>| &&
|
||||||
` <Dialog` &&
|
| <Dialog| &&
|
||||||
` title="abap2UI5 - DebugTool"` &&
|
| title="abap2UI5 - DebugTool"| &&
|
||||||
` stretch="true"` &&
|
| stretch="true"| &&
|
||||||
` >` &&
|
| >| &&
|
||||||
` <IconTabHeader` &&
|
| <IconTabHeader| &&
|
||||||
` selectedKey="PLAIN"` &&
|
| selectedKey="PLAIN"| &&
|
||||||
` select="onItemSelect"` &&
|
| select="onItemSelect"| &&
|
||||||
` >` &&
|
| >| &&
|
||||||
` <items>` &&
|
| <items>| &&
|
||||||
` <IconTabFilter` &&
|
| <IconTabFilter| &&
|
||||||
` text="Config"` &&
|
| text="Config"| &&
|
||||||
` key="CONFIG"` &&
|
| key="CONFIG"| &&
|
||||||
` enabled="true"` &&
|
| enabled="true"| &&
|
||||||
` />` &&
|
| />| &&
|
||||||
` <IconTabFilter` &&
|
| <IconTabFilter| &&
|
||||||
` text="Previous Request"` &&
|
| text="Previous Request"| &&
|
||||||
` key="REQUEST"` &&
|
| key="REQUEST"| &&
|
||||||
` enabled="true"` &&
|
| enabled="true"| &&
|
||||||
` />` &&
|
| />| &&
|
||||||
` <IconTabFilter` &&
|
| <IconTabFilter| &&
|
||||||
` text="Response"` &&
|
| text="Response"| &&
|
||||||
` key="PLAIN"` &&
|
| key="PLAIN"| &&
|
||||||
` />` &&
|
| />| &&
|
||||||
` <IconTabFilter` &&
|
| <IconTabFilter| &&
|
||||||
` text="Source Code"` &&
|
| text="Source Code"| &&
|
||||||
` key="SOURCE"` &&
|
| key="SOURCE"| &&
|
||||||
` />` &&
|
| />| &&
|
||||||
` <IconTabFilter` &&
|
| <IconTabFilter| &&
|
||||||
` text="View"` &&
|
| text="View"| &&
|
||||||
` key="VIEW"` &&
|
| key="VIEW"| &&
|
||||||
` />` &&
|
| />| &&
|
||||||
` <IconTabFilter` &&
|
| <IconTabFilter| &&
|
||||||
` text="View Model"` &&
|
| text="View Model"| &&
|
||||||
` key="MODEL"` &&
|
| key="MODEL"| &&
|
||||||
` />` &&
|
| />| &&
|
||||||
` <IconTabFilter` &&
|
| <IconTabFilter| &&
|
||||||
` text="Popup"` &&
|
| text="Popup"| &&
|
||||||
` key="POPUP"` &&
|
| key="POPUP"| &&
|
||||||
` enabled="{/activePopup}"` &&
|
| enabled="\{/activePopup\}"| &&
|
||||||
` />` &&
|
| />| &&
|
||||||
` <IconTabFilter` &&
|
| <IconTabFilter| &&
|
||||||
` text="Popup Model"` &&
|
| text="Popup Model"| &&
|
||||||
` key="POPUP_MODEL"` &&
|
| key="POPUP_MODEL"| &&
|
||||||
` enabled="{/activePopup}"` &&
|
| enabled="\{/activePopup\}"| &&
|
||||||
` />` &&
|
| />| &&
|
||||||
` <IconTabFilter` &&
|
| <IconTabFilter| &&
|
||||||
` text="Popover"` &&
|
| text="Popover"| &&
|
||||||
` key="POPOVER"` &&
|
| key="POPOVER"| &&
|
||||||
` enabled="{/activePopover}"` &&
|
| enabled="\{/activePopover\}"| &&
|
||||||
` />` &&
|
| />| &&
|
||||||
` <IconTabFilter` &&
|
| <IconTabFilter| &&
|
||||||
` text="Popover Model"` &&
|
| text="Popover Model"| &&
|
||||||
` key="POPOVER_MODEL"` &&
|
| key="POPOVER_MODEL"| &&
|
||||||
` enabled="{/activePopover}"` &&
|
| enabled="\{/activePopover\}"| &&
|
||||||
` />` &&
|
| />| &&
|
||||||
` <IconTabFilter` &&
|
| <IconTabFilter| &&
|
||||||
` text="Nest1"` &&
|
| text="Nest1"| &&
|
||||||
` key="NEST1"` &&
|
| key="NEST1"| &&
|
||||||
` enabled="{/activeNest1}"` &&
|
| enabled="\{/activeNest1\}"| &&
|
||||||
` />` &&
|
| />| &&
|
||||||
` <IconTabFilter` &&
|
| <IconTabFilter| &&
|
||||||
` text="Nest1 Model"` &&
|
| text="Nest1 Model"| &&
|
||||||
` key="NEST1_MODEL"` &&
|
| key="NEST1_MODEL"| &&
|
||||||
` enabled="{/activeNest1}"` &&
|
| enabled="\{/activeNest1\}"| &&
|
||||||
` />` &&
|
| />| &&
|
||||||
` <IconTabFilter` &&
|
| <IconTabFilter| &&
|
||||||
` text="Nest2"` &&
|
| text="Nest2"| &&
|
||||||
` key="NEST2"` &&
|
| key="NEST2"| &&
|
||||||
` enabled="{/activeNest2}"` &&
|
| enabled="\{/activeNest2\}"| &&
|
||||||
` />` &&
|
| />| &&
|
||||||
` <IconTabFilter` &&
|
| <IconTabFilter| &&
|
||||||
` text="Nest2 Model"` &&
|
| text="Nest2 Model"| &&
|
||||||
` key="NEST2_MODEL"` &&
|
| key="NEST2_MODEL"| &&
|
||||||
` enabled="{/activeNest2}"` &&
|
| enabled="\{/activeNest2\}"| &&
|
||||||
` />` &&
|
| />| &&
|
||||||
` </items>` &&
|
| </items>| &&
|
||||||
` </IconTabHeader>` &&
|
| </IconTabHeader>| &&
|
||||||
` <VBox>` &&
|
| <VBox>| &&
|
||||||
` <ToggleButton text="Source XML after Templating" visible="{/isTemplating}" pressed="{/templatingSource}" press="onTemplatingPress" />` &&
|
| <ToggleButton text="Source XML after Templating" visible="\{/isTemplating\}" pressed="\{/templatingSource\}" press="onTemplatingPress" />| &&
|
||||||
` <ce:CodeEditor` &&
|
| <ce:CodeEditor| &&
|
||||||
` type="{/type}"` &&
|
| type="\{/type\}"| &&
|
||||||
` value="{/value}"` &&
|
| value="\{/value\}"| &&
|
||||||
` height="2000px"` &&
|
| height="2000px"| &&
|
||||||
` width="10000px"` &&
|
| width="10000px"| &&
|
||||||
` visible="{/editor_visible}"` &&
|
| visible="\{/editor_visible\}"| &&
|
||||||
` /></VBox>` &&
|
| /></VBox>| &&
|
||||||
` <VBox visible="{/source_visible}">` &&
|
| <VBox visible="\{/source_visible\}">| &&
|
||||||
` <core:HTML/>` &&
|
| <core:HTML/>| &&
|
||||||
` </VBox>` &&
|
| </VBox>| &&
|
||||||
` <endButton>` &&
|
| <endButton>| &&
|
||||||
` <Button` &&
|
| <Button| &&
|
||||||
` text="Close"` &&
|
| text="Close"| &&
|
||||||
` press="onClose"` &&
|
| press="onClose"| &&
|
||||||
` />` &&
|
| />| &&
|
||||||
` </endButton>` &&
|
| </endButton>| &&
|
||||||
` </Dialog>` &&
|
| </Dialog>| &&
|
||||||
`</core:FragmentDefinition>` &&
|
|</core:FragmentDefinition>| &&
|
||||||
`` &&
|
|| &&
|
||||||
``.
|
||.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_app_index_html DEFINITION
|
CLASS z2ui5_cl_app_index_html DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -10,51 +9,50 @@ CLASS z2ui5_cl_app_index_html DEFINITION
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_app_index_html IMPLEMENTATION.
|
CLASS z2ui5_cl_app_index_html IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD get.
|
METHOD get.
|
||||||
|
|
||||||
result = `<!DOCTYPE html>` &&
|
result = |<!DOCTYPE html>| &&
|
||||||
`<html lang="en">` &&
|
|<html lang="en">| &&
|
||||||
`<head>` &&
|
|<head>| &&
|
||||||
` <meta charset="UTF-8">` &&
|
| <meta charset="UTF-8">| &&
|
||||||
` <meta name="viewport" content="width=device-width, initial-scale=1.0">` &&
|
| <meta name="viewport" content="width=device-width, initial-scale=1.0">| &&
|
||||||
` <meta http-equiv="X-UA-Compatible" content="IE=edge">` &&
|
| <meta http-equiv="X-UA-Compatible" content="IE=edge">| &&
|
||||||
` <title></title>` &&
|
| <title></title>| &&
|
||||||
` <style>` &&
|
| <style>| &&
|
||||||
` html, body, body > div, #container, #container-uiarea {` &&
|
| html, body, body > div, #container, #container-uiarea \{| &&
|
||||||
` height: 100%;` &&
|
| height: 100%;| &&
|
||||||
` }` &&
|
| \}| &&
|
||||||
` </style>` &&
|
| </style>| &&
|
||||||
` <script` &&
|
| <script| &&
|
||||||
` id="sap-ui-bootstrap"` &&
|
| id="sap-ui-bootstrap"| &&
|
||||||
` src="https://openui5.hana.ondemand.com/resources/sap-ui-core.js"` &&
|
| src="https://openui5.hana.ondemand.com/resources/sap-ui-core.js"| &&
|
||||||
` data-sap-ui-theme="sap_horizon"` &&
|
| data-sap-ui-theme="sap_horizon"| &&
|
||||||
` data-sap-ui-resourceroots='{` &&
|
| data-sap-ui-resourceroots='\{| &&
|
||||||
` "z2ui5": "./"` &&
|
| "z2ui5": "./"| &&
|
||||||
` }'` &&
|
| \}'| &&
|
||||||
` data-sap-ui-oninit="module:sap/ui/core/ComponentSupport"` &&
|
| data-sap-ui-oninit="module:sap/ui/core/ComponentSupport"| &&
|
||||||
` data-sap-ui-compatVersion="edge"` &&
|
| data-sap-ui-compatVersion="edge"| &&
|
||||||
` data-sap-ui-async="true"` &&
|
| data-sap-ui-async="true"| &&
|
||||||
` data-sap-ui-frameOptions="trusted"` &&
|
| data-sap-ui-frameOptions="trusted"| &&
|
||||||
` ></script>` &&
|
| ></script>| &&
|
||||||
`</head>` &&
|
|</head>| &&
|
||||||
`<body class="sapUiBody sapUiSizeCompact" id="content">` &&
|
|<body class="sapUiBody sapUiSizeCompact" id="content">| &&
|
||||||
` <div` &&
|
| <div| &&
|
||||||
` data-sap-ui-component` &&
|
| data-sap-ui-component| &&
|
||||||
` data-name="z2ui5"` &&
|
| data-name="z2ui5"| &&
|
||||||
` data-id="container"` &&
|
| data-id="container"| &&
|
||||||
` data-settings='{"id" : "z2ui5"}'` &&
|
| data-settings='\{"id" : "z2ui5"\}'| &&
|
||||||
` data-handle-validation="true"` &&
|
| data-handle-validation="true"| &&
|
||||||
` ></div>` &&
|
| ></div>| &&
|
||||||
`</body>` &&
|
|</body>| &&
|
||||||
`</html>` &&
|
|</html>| &&
|
||||||
``.
|
||.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_app_manifest_json DEFINITION
|
CLASS z2ui5_cl_app_manifest_json DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -10,160 +9,159 @@ CLASS z2ui5_cl_app_manifest_json DEFINITION
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_app_manifest_json IMPLEMENTATION.
|
CLASS z2ui5_cl_app_manifest_json IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD get.
|
METHOD get.
|
||||||
|
|
||||||
result = `{` &&
|
result = |\{| &&
|
||||||
` "_version": "1.65.0",` &&
|
| "_version": "1.65.0",| &&
|
||||||
` "sap.app": {` &&
|
| "sap.app": \{| &&
|
||||||
` "id": "z2ui5",` &&
|
| "id": "z2ui5",| &&
|
||||||
` "type": "application",` &&
|
| "type": "application",| &&
|
||||||
` "applicationVersion": {` &&
|
| "applicationVersion": \{| &&
|
||||||
` "version": "0.0.1"` &&
|
| "version": "0.0.1"| &&
|
||||||
` },` &&
|
| \},| &&
|
||||||
` "title": "{{appTitle}}",` &&
|
| "title": "\{\{appTitle\}\}",| &&
|
||||||
` "description": "{{appDescription}}",` &&
|
| "description": "\{\{appDescription\}\}",| &&
|
||||||
` "resources": "resources.json",` &&
|
| "resources": "resources.json",| &&
|
||||||
` "sourceTemplate": {` &&
|
| "sourceTemplate": \{| &&
|
||||||
` "id": "@sap/generator-fiori:basic",` &&
|
| "id": "@sap/generator-fiori:basic",| &&
|
||||||
` "version": "1.15.0",` &&
|
| "version": "1.15.0",| &&
|
||||||
` "toolsId": "3a966e20-9635-4c28-8861-d1b66f79f1de"` &&
|
| "toolsId": "3a966e20-9635-4c28-8861-d1b66f79f1de"| &&
|
||||||
` },` &&
|
| \},| &&
|
||||||
` "dataSources": {` &&
|
| "dataSources": \{| &&
|
||||||
` "mainService": {` &&
|
| "mainService": \{| &&
|
||||||
` "uri": "/sap/bc/z2ui5",` &&
|
| "uri": "/sap/bc/z2ui5",| &&
|
||||||
` "type": "OData",` &&
|
| "type": "OData",| &&
|
||||||
` "settings": {` &&
|
| "settings": \{| &&
|
||||||
` "annotations": [],` &&
|
| "annotations": [],| &&
|
||||||
` "localUri": "localService/metadata.xml",` &&
|
| "localUri": "localService/metadata.xml",| &&
|
||||||
` "odataVersion": "2.0"` &&
|
| "odataVersion": "2.0"| &&
|
||||||
` }` &&
|
| \}| &&
|
||||||
` }` &&
|
| \}| &&
|
||||||
` },` &&
|
| \},| &&
|
||||||
` "crossNavigation": {` &&
|
| "crossNavigation": \{| &&
|
||||||
` "inbounds": {` &&
|
| "inbounds": \{| &&
|
||||||
` "z2ui5-display": {` &&
|
| "z2ui5-display": \{| &&
|
||||||
` "semanticObject": "z2ui5",` &&
|
| "semanticObject": "z2ui5",| &&
|
||||||
` "action": "display",` &&
|
| "action": "display",| &&
|
||||||
` "title": "{{flpTitle}}",` &&
|
| "title": "\{\{flpTitle\}\}",| &&
|
||||||
` "signature": {` &&
|
| "signature": \{| &&
|
||||||
` "parameters": {},` &&
|
| "parameters": \{\},| &&
|
||||||
` "additionalParameters": "allowed"` &&
|
| "additionalParameters": "allowed"| &&
|
||||||
` }` &&
|
| \}| &&
|
||||||
` }` &&
|
| \}| &&
|
||||||
` }` &&
|
| \}| &&
|
||||||
` }` &&
|
| \}| &&
|
||||||
` },` &&
|
| \},| &&
|
||||||
` "sap.ui": {` &&
|
| "sap.ui": \{| &&
|
||||||
` "technology": "UI5",` &&
|
| "technology": "UI5",| &&
|
||||||
` "icons": {` &&
|
| "icons": \{| &&
|
||||||
` "icon": "",` &&
|
| "icon": "",| &&
|
||||||
` "favIcon": "",` &&
|
| "favIcon": "",| &&
|
||||||
` "phone": "",` &&
|
| "phone": "",| &&
|
||||||
` "phone@2": "",` &&
|
| "phone@2": "",| &&
|
||||||
` "tablet": "",` &&
|
| "tablet": "",| &&
|
||||||
` "tablet@2": ""` &&
|
| "tablet@2": ""| &&
|
||||||
` },` &&
|
| \},| &&
|
||||||
` "deviceTypes": {` &&
|
| "deviceTypes": \{| &&
|
||||||
` "desktop": true,` &&
|
| "desktop": true,| &&
|
||||||
` "tablet": true,` &&
|
| "tablet": true,| &&
|
||||||
` "phone": true` &&
|
| "phone": true| &&
|
||||||
` }` &&
|
| \}| &&
|
||||||
` },` &&
|
| \},| &&
|
||||||
` "sap.ui5": {` &&
|
| "sap.ui5": \{| &&
|
||||||
` "flexEnabled": true,` &&
|
| "flexEnabled": true,| &&
|
||||||
` "dependencies": {` &&
|
| "dependencies": \{| &&
|
||||||
` "minUI5Version": "1.128.1",` &&
|
| "minUI5Version": "1.128.1",| &&
|
||||||
` "libs": {` &&
|
| "libs": \{| &&
|
||||||
` "sap.m": {},` &&
|
| "sap.m": \{\},| &&
|
||||||
` "sap.ui.core": {}` &&
|
| "sap.ui.core": \{\}| &&
|
||||||
` }` &&
|
| \}| &&
|
||||||
` },` &&
|
| \},| &&
|
||||||
` "contentDensities": {` &&
|
| "contentDensities": \{| &&
|
||||||
` "compact": true,` &&
|
| "compact": true,| &&
|
||||||
` "cozy": true` &&
|
| "cozy": true| &&
|
||||||
` },` &&
|
| \},| &&
|
||||||
` "services": {` &&
|
| "services": \{| &&
|
||||||
` "ShellUIService": {` &&
|
| "ShellUIService": \{| &&
|
||||||
` "factoryName": "sap.ushell.ui5service.ShellUIService"` &&
|
| "factoryName": "sap.ushell.ui5service.ShellUIService"| &&
|
||||||
` }` &&
|
| \}| &&
|
||||||
` },` &&
|
| \},| &&
|
||||||
` "models": {` &&
|
| "models": \{| &&
|
||||||
` "": {` &&
|
| "": \{| &&
|
||||||
` "dataSource": "mainService",` &&
|
| "dataSource": "mainService",| &&
|
||||||
` "preload": true,` &&
|
| "preload": true,| &&
|
||||||
` "settings": {}` &&
|
| "settings": \{\}| &&
|
||||||
` }` &&
|
| \}| &&
|
||||||
` },` &&
|
| \},| &&
|
||||||
` "resources": {` &&
|
| "resources": \{| &&
|
||||||
` "css": [` &&
|
| "css": [| &&
|
||||||
` {` &&
|
| \{| &&
|
||||||
` "uri": "css/style.css"` &&
|
| "uri": "css/style.css"| &&
|
||||||
` }` &&
|
| \}| &&
|
||||||
` ]` &&
|
| ]| &&
|
||||||
` },` &&
|
| \},| &&
|
||||||
` "routing": {` &&
|
| "routing": \{| &&
|
||||||
` "config": {` &&
|
| "config": \{| &&
|
||||||
` "routerClass": "sap.m.routing.Router",` &&
|
| "routerClass": "sap.m.routing.Router",| &&
|
||||||
` "viewType": "XML",` &&
|
| "viewType": "XML",| &&
|
||||||
` "async": true,` &&
|
| "async": true,| &&
|
||||||
` "viewPath": "z2ui5.view",` &&
|
| "viewPath": "z2ui5.view",| &&
|
||||||
` "controlAggregation": "pages",` &&
|
| "controlAggregation": "pages",| &&
|
||||||
` "controlId": "app",` &&
|
| "controlId": "app",| &&
|
||||||
` "clearControlAggregation": false` &&
|
| "clearControlAggregation": false| &&
|
||||||
` },` &&
|
| \},| &&
|
||||||
` "routes": [` &&
|
| "routes": [| &&
|
||||||
` {` &&
|
| \{| &&
|
||||||
` "name": "RouteView1",` &&
|
| "name": "RouteView1",| &&
|
||||||
` "pattern": ":?query:",` &&
|
| "pattern": ":?query:",| &&
|
||||||
` "target": [` &&
|
| "target": [| &&
|
||||||
` "TargetView1"` &&
|
| "TargetView1"| &&
|
||||||
` ]` &&
|
| ]| &&
|
||||||
` },` &&
|
| \},| &&
|
||||||
` {` &&
|
| \{| &&
|
||||||
` "name": "RouteView2",` &&
|
| "name": "RouteView2",| &&
|
||||||
` "pattern": ":?query:",` &&
|
| "pattern": ":?query:",| &&
|
||||||
` "target": [` &&
|
| "target": [| &&
|
||||||
` "TargetView2"` &&
|
| "TargetView2"| &&
|
||||||
` ]` &&
|
| ]| &&
|
||||||
` }` &&
|
| \}| &&
|
||||||
` ],` &&
|
| ],| &&
|
||||||
` "targets": {` &&
|
| "targets": \{| &&
|
||||||
` "TargetView1": {` &&
|
| "TargetView1": \{| &&
|
||||||
` "viewType": "XML",` &&
|
| "viewType": "XML",| &&
|
||||||
` "transition": "flip",` &&
|
| "transition": "flip",| &&
|
||||||
` "clearControlAggregation": false,` &&
|
| "clearControlAggregation": false,| &&
|
||||||
` "viewId": "View1",` &&
|
| "viewId": "View1",| &&
|
||||||
` "viewName": "View1"` &&
|
| "viewName": "View1"| &&
|
||||||
` },` &&
|
| \},| &&
|
||||||
` "TargetView2": {` &&
|
| "TargetView2": \{| &&
|
||||||
` "viewType": "XML",` &&
|
| "viewType": "XML",| &&
|
||||||
` "transition": "flip",` &&
|
| "transition": "flip",| &&
|
||||||
` "clearControlAggregation": false,` &&
|
| "clearControlAggregation": false,| &&
|
||||||
` "viewId": "View2",` &&
|
| "viewId": "View2",| &&
|
||||||
` "viewName": "View2"` &&
|
| "viewName": "View2"| &&
|
||||||
` }` &&
|
| \}| &&
|
||||||
` }` &&
|
| \}| &&
|
||||||
` },` &&
|
| \},| &&
|
||||||
` "rootView": {` &&
|
| "rootView": \{| &&
|
||||||
` "viewName": "z2ui5.view.App",` &&
|
| "viewName": "z2ui5.view.App",| &&
|
||||||
` "type": "XML",` &&
|
| "type": "XML",| &&
|
||||||
` "async": true,` &&
|
| "async": true,| &&
|
||||||
` "id": "App"` &&
|
| "id": "App"| &&
|
||||||
` }` &&
|
| \}| &&
|
||||||
` },` &&
|
| \},| &&
|
||||||
` "sap.cloud": {` &&
|
| "sap.cloud": \{| &&
|
||||||
` "public": true,` &&
|
| "public": true,| &&
|
||||||
` "service": "z2ui5"` &&
|
| "service": "z2ui5"| &&
|
||||||
` }` &&
|
| \}| &&
|
||||||
`}` &&
|
|\}| &&
|
||||||
``.
|
||.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_app_models_js DEFINITION
|
CLASS z2ui5_cl_app_models_js DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -10,35 +9,34 @@ CLASS z2ui5_cl_app_models_js DEFINITION
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_app_models_js IMPLEMENTATION.
|
CLASS z2ui5_cl_app_models_js IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD get.
|
METHOD get.
|
||||||
|
|
||||||
result = `sap.ui.define([` && |\n| &&
|
result = |sap.ui.define([| && |\n| &&
|
||||||
` "sap/ui/model/json/JSONModel",` && |\n| &&
|
| "sap/ui/model/json/JSONModel",| && |\n| &&
|
||||||
` "sap/ui/Device"` && |\n| &&
|
| "sap/ui/Device"| && |\n| &&
|
||||||
`],` && |\n| &&
|
|],| && |\n| &&
|
||||||
`function (JSONModel, Device) {` && |\n| &&
|
|function (JSONModel, Device) \{| && |\n| &&
|
||||||
` "use strict";` && |\n| &&
|
| "use strict";| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` return {` && |\n| &&
|
| return \{| && |\n| &&
|
||||||
` /**` && |\n| &&
|
| /**| && |\n| &&
|
||||||
` * Provides runtime info for the device the UI5 app is running on as JSONModel` && |\n| &&
|
| * Provides runtime info for the device the UI5 app is running on as JSONModel| && |\n| &&
|
||||||
` */` && |\n| &&
|
| */| && |\n| &&
|
||||||
` createDeviceModel: function () {` && |\n| &&
|
| createDeviceModel: function () \{| && |\n| &&
|
||||||
` var oModel = new JSONModel(Device);` && |\n| &&
|
| var oModel = new JSONModel(Device);| && |\n| &&
|
||||||
` oModel.setDefaultBindingMode("OneWay");` && |\n| &&
|
| oModel.setDefaultBindingMode("OneWay");| && |\n| &&
|
||||||
` return oModel;` && |\n| &&
|
| return oModel;| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` };` && |\n| &&
|
| \};| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
`});` && |\n| &&
|
|\});| && |\n| &&
|
||||||
``.
|
||.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_app_server_js DEFINITION
|
CLASS z2ui5_cl_app_server_js DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -10,163 +9,162 @@ CLASS z2ui5_cl_app_server_js DEFINITION
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_app_server_js IMPLEMENTATION.
|
CLASS z2ui5_cl_app_server_js IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD get.
|
METHOD get.
|
||||||
|
|
||||||
result = `sap.ui.define(["sap/ui/core/BusyIndicator", "sap/m/MessageBox"` && |\n| &&
|
result = |sap.ui.define(["sap/ui/core/BusyIndicator", "sap/m/MessageBox"| && |\n| &&
|
||||||
`],` && |\n| &&
|
|],| && |\n| &&
|
||||||
` function (BusyIndicator, MessageBox) {` && |\n| &&
|
| function (BusyIndicator, MessageBox) \{| && |\n| &&
|
||||||
` "use strict";` && |\n| &&
|
| "use strict";| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` return {` && |\n| &&
|
| return \{| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` endSession: function () {` && |\n| &&
|
| endSession: function () \{| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` if (z2ui5.contextId) {` && |\n| &&
|
| if (z2ui5.contextId) \{| && |\n| &&
|
||||||
` fetch(z2ui5.oConfig.pathname, {` && |\n| &&
|
| fetch(z2ui5.oConfig.pathname, \{| && |\n| &&
|
||||||
` method: 'HEAD',` && |\n| &&
|
| method: 'HEAD',| && |\n| &&
|
||||||
` keepalive: true,` && |\n| &&
|
| keepalive: true,| && |\n| &&
|
||||||
` headers: {` && |\n| &&
|
| headers: \{| && |\n| &&
|
||||||
` 'sap-terminate': 'session',` && |\n| &&
|
| 'sap-terminate': 'session',| && |\n| &&
|
||||||
` 'sap-contextid': z2ui5.contextId,` && |\n| &&
|
| 'sap-contextid': z2ui5.contextId,| && |\n| &&
|
||||||
` 'sap-contextid-accept': 'header'` && |\n| &&
|
| 'sap-contextid-accept': 'header'| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` });` && |\n| &&
|
| \});| && |\n| &&
|
||||||
` delete z2ui5.contextId;` && |\n| &&
|
| delete z2ui5.contextId;| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` },` && |\n| &&
|
| \},| && |\n| &&
|
||||||
` Roundtrip() {` && |\n| &&
|
| Roundtrip() \{| && |\n| &&
|
||||||
` z2ui5.checkTimerActive = false;` && |\n| &&
|
| z2ui5.checkTimerActive = false;| && |\n| &&
|
||||||
` z2ui5.checkNestAfter = false;` && |\n| &&
|
| z2ui5.checkNestAfter = false;| && |\n| &&
|
||||||
` z2ui5.checkNestAfter2 = false;` && |\n| &&
|
| z2ui5.checkNestAfter2 = false;| && |\n| &&
|
||||||
` let event = (args) => {` && |\n| &&
|
| let event = (args) => \{| && |\n| &&
|
||||||
` if (args != undefined) {` && |\n| &&
|
| if (args != undefined) \{| && |\n| &&
|
||||||
` return args[0][0];` && |\n| &&
|
| return args[0][0];| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` };` && |\n| &&
|
| \};| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` z2ui5.oBody ??= {};` && |\n| &&
|
| z2ui5.oBody ??= \{\};| && |\n| &&
|
||||||
` z2ui5.oBody.S_FRONT = {` && |\n| &&
|
| z2ui5.oBody.S_FRONT = \{| && |\n| &&
|
||||||
` ID: z2ui5?.oBody?.ID,` && |\n| &&
|
| ID: z2ui5?.oBody?.ID,| && |\n| &&
|
||||||
` CONFIG: z2ui5.oConfig,` && |\n| &&
|
| CONFIG: z2ui5.oConfig,| && |\n| &&
|
||||||
` XX: z2ui5?.oBody?.XX,` && |\n| &&
|
| XX: z2ui5?.oBody?.XX,| && |\n| &&
|
||||||
` ORIGIN: window.location.origin,` && |\n| &&
|
| ORIGIN: window.location.origin,| && |\n| &&
|
||||||
` PATHNAME: window.location.pathname,` && |\n| &&
|
| PATHNAME: window.location.pathname,| && |\n| &&
|
||||||
` SEARCH: (z2ui5.search) ? z2ui5.search : window.location.search,` && |\n| &&
|
| SEARCH: (z2ui5.search) ? z2ui5.search : window.location.search,| && |\n| &&
|
||||||
` VIEW: z2ui5.oBody?.VIEWNAME,` && |\n| &&
|
| VIEW: z2ui5.oBody?.VIEWNAME,| && |\n| &&
|
||||||
` EVENT: event(z2ui5.oBody?.ARGUMENTS),` && |\n| &&
|
| EVENT: event(z2ui5.oBody?.ARGUMENTS),| && |\n| &&
|
||||||
` HASH: window.location.hash,` && |\n| &&
|
| HASH: window.location.hash,| && |\n| &&
|
||||||
` };` && |\n| &&
|
| \};| && |\n| &&
|
||||||
` if (z2ui5.oBody?.ARGUMENTS != undefined) {` && |\n| &&
|
| if (z2ui5.oBody?.ARGUMENTS != undefined) \{| && |\n| &&
|
||||||
` if (z2ui5.oBody?.ARGUMENTS.length > 0) {` && |\n| &&
|
| if (z2ui5.oBody?.ARGUMENTS.length > 0) \{| && |\n| &&
|
||||||
` z2ui5.oBody?.ARGUMENTS.shift();` && |\n| &&
|
| z2ui5.oBody?.ARGUMENTS.shift();| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` z2ui5.oBody.S_FRONT.T_EVENT_ARG = z2ui5.oBody?.ARGUMENTS;` && |\n| &&
|
| z2ui5.oBody.S_FRONT.T_EVENT_ARG = z2ui5.oBody?.ARGUMENTS;| && |\n| &&
|
||||||
` delete z2ui5.oBody.ID;` && |\n| &&
|
| delete z2ui5.oBody.ID;| && |\n| &&
|
||||||
` delete z2ui5.oBody?.VIEWNAME;` && |\n| &&
|
| delete z2ui5.oBody?.VIEWNAME;| && |\n| &&
|
||||||
` delete z2ui5.oBody?.S_FRONT.XX;` && |\n| &&
|
| delete z2ui5.oBody?.S_FRONT.XX;| && |\n| &&
|
||||||
` delete z2ui5.oBody?.ARGUMENTS;` && |\n| &&
|
| delete z2ui5.oBody?.ARGUMENTS;| && |\n| &&
|
||||||
` if (!z2ui5.oBody.S_FRONT.T_EVENT_ARG) {` && |\n| &&
|
| if (!z2ui5.oBody.S_FRONT.T_EVENT_ARG) \{| && |\n| &&
|
||||||
` delete z2ui5.oBody.S_FRONT.T_EVENT_ARG;` && |\n| &&
|
| delete z2ui5.oBody.S_FRONT.T_EVENT_ARG;| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` if (z2ui5.oBody.S_FRONT.T_EVENT_ARG) {` && |\n| &&
|
| if (z2ui5.oBody.S_FRONT.T_EVENT_ARG) \{| && |\n| &&
|
||||||
` if (z2ui5.oBody.S_FRONT.T_EVENT_ARG.length == 0) {` && |\n| &&
|
| if (z2ui5.oBody.S_FRONT.T_EVENT_ARG.length == 0) \{| && |\n| &&
|
||||||
` delete z2ui5.oBody.S_FRONT.T_EVENT_ARG;` && |\n| &&
|
| delete z2ui5.oBody.S_FRONT.T_EVENT_ARG;| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` if (z2ui5.oBody.S_FRONT.T_STARTUP_PARAMETERS == undefined) {` && |\n| &&
|
| if (z2ui5.oBody.S_FRONT.T_STARTUP_PARAMETERS == undefined) \{| && |\n| &&
|
||||||
` delete z2ui5.oBody.S_FRONT.T_STARTUP_PARAMETERS;` && |\n| &&
|
| delete z2ui5.oBody.S_FRONT.T_STARTUP_PARAMETERS;| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` if (z2ui5.oBody.S_FRONT.SEARCH == '') {` && |\n| &&
|
| if (z2ui5.oBody.S_FRONT.SEARCH == '') \{| && |\n| &&
|
||||||
` delete z2ui5.oBody.S_FRONT.SEARCH;` && |\n| &&
|
| delete z2ui5.oBody.S_FRONT.SEARCH;| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` if (!z2ui5.oBody.XX) {` && |\n| &&
|
| if (!z2ui5.oBody.XX) \{| && |\n| &&
|
||||||
` delete z2ui5.oBody.XX;` && |\n| &&
|
| delete z2ui5.oBody.XX;| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` this.readHttp();` && |\n| &&
|
| this.readHttp();| && |\n| &&
|
||||||
` },` && |\n| &&
|
| \},| && |\n| &&
|
||||||
`` && |\n| &&
|
|| && |\n| &&
|
||||||
` async readHttp() {` && |\n| &&
|
| async readHttp() \{| && |\n| &&
|
||||||
` const response = await fetch(z2ui5.oConfig.pathname, {` && |\n| &&
|
| const response = await fetch(z2ui5.oConfig.pathname, \{| && |\n| &&
|
||||||
` method: 'POST',` && |\n| &&
|
| method: 'POST',| && |\n| &&
|
||||||
` headers: {` && |\n| &&
|
| headers: \{| && |\n| &&
|
||||||
` 'Content-Type': 'application/json',` && |\n| &&
|
| 'Content-Type': 'application/json',| && |\n| &&
|
||||||
` 'sap-contextid-accept': 'header',` && |\n| &&
|
| 'sap-contextid-accept': 'header',| && |\n| &&
|
||||||
` 'sap-contextid': z2ui5.contextId` && |\n| &&
|
| 'sap-contextid': z2ui5.contextId| && |\n| &&
|
||||||
` },` && |\n| &&
|
| \},| && |\n| &&
|
||||||
` body: JSON.stringify(z2ui5.oBody)` && |\n| &&
|
| body: JSON.stringify(z2ui5.oBody)| && |\n| &&
|
||||||
` });` && |\n| &&
|
| \});| && |\n| &&
|
||||||
` z2ui5.contextId = response.headers.get("sap-contextid");` && |\n| &&
|
| z2ui5.contextId = response.headers.get("sap-contextid");| && |\n| &&
|
||||||
` if (!response.ok) {` && |\n| &&
|
| if (!response.ok) \{| && |\n| &&
|
||||||
` const responseText = await response.text();` && |\n| &&
|
| const responseText = await response.text();| && |\n| &&
|
||||||
` this.responseError(responseText);` && |\n| &&
|
| this.responseError(responseText);| && |\n| &&
|
||||||
` } else {` && |\n| &&
|
| \} else \{| && |\n| &&
|
||||||
` const responseData = await response.json();` && |\n| &&
|
| const responseData = await response.json();| && |\n| &&
|
||||||
` z2ui5.responseData = responseData;` && |\n| &&
|
| z2ui5.responseData = responseData;| && |\n| &&
|
||||||
` this.responseSuccess({` && |\n| &&
|
| this.responseSuccess(\{| && |\n| &&
|
||||||
` ID: responseData.S_FRONT.ID,` && |\n| &&
|
| ID: responseData.S_FRONT.ID,| && |\n| &&
|
||||||
` PARAMS: responseData.S_FRONT.PARAMS,` && |\n| &&
|
| PARAMS: responseData.S_FRONT.PARAMS,| && |\n| &&
|
||||||
` OVIEWMODEL: responseData.MODEL,` && |\n| &&
|
| OVIEWMODEL: responseData.MODEL,| && |\n| &&
|
||||||
` });` && |\n| &&
|
| \});| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` },` && |\n| &&
|
| \},| && |\n| &&
|
||||||
` async responseSuccess(response) {` && |\n| &&
|
| async responseSuccess(response) \{| && |\n| &&
|
||||||
` try {` && |\n| &&
|
| try \{| && |\n| &&
|
||||||
` z2ui5.oResponse = response;` && |\n| &&
|
| z2ui5.oResponse = response;| && |\n| &&
|
||||||
` if (z2ui5.oResponse.PARAMS?.S_VIEW?.CHECK_DESTROY) {` && |\n| &&
|
| if (z2ui5.oResponse.PARAMS?.S_VIEW?.CHECK_DESTROY) \{| && |\n| &&
|
||||||
` z2ui5.oController.ViewDestroy();` && |\n| &&
|
| z2ui5.oController.ViewDestroy();| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` ; if (z2ui5.oResponse.PARAMS?.S_FOLLOW_UP_ACTION?.CUSTOM_JS) {` && |\n| &&
|
| ; if (z2ui5.oResponse.PARAMS?.S_FOLLOW_UP_ACTION?.CUSTOM_JS) \{| && |\n| &&
|
||||||
` setTimeout(() => {` && |\n| &&
|
| setTimeout(() => \{| && |\n| &&
|
||||||
` let mParams = z2ui5.oResponse?.PARAMS.S_FOLLOW_UP_ACTION.CUSTOM_JS.split("'");` && |\n| &&
|
| let mParams = z2ui5.oResponse?.PARAMS.S_FOLLOW_UP_ACTION.CUSTOM_JS.split("'");| && |\n| &&
|
||||||
` let mParamsEF = mParams.filter((val, index) => index % 2)` && |\n| &&
|
| let mParamsEF = mParams.filter((val, index) => index % 2)| && |\n| &&
|
||||||
` if (mParamsEF.length) {` && |\n| &&
|
| if (mParamsEF.length) \{| && |\n| &&
|
||||||
` z2ui5.oController.eF.apply(undefined, mParamsEF);` && |\n| &&
|
| z2ui5.oController.eF.apply(undefined, mParamsEF);| && |\n| &&
|
||||||
` } else {` && |\n| &&
|
| \} else \{| && |\n| &&
|
||||||
` Function("return " + mParams[0])();` && |\n| &&
|
| Function("return " + mParams[0])();| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` }, 100);` && |\n| &&
|
| \}, 100);| && |\n| &&
|
||||||
` };` && |\n| &&
|
| \};| && |\n| &&
|
||||||
` z2ui5.oController.showMessage('S_MSG_TOAST', z2ui5.oResponse.PARAMS);` && |\n| &&
|
| z2ui5.oController.showMessage('S_MSG_TOAST', z2ui5.oResponse.PARAMS);| && |\n| &&
|
||||||
` z2ui5.oController.showMessage('S_MSG_BOX', z2ui5.oResponse.PARAMS);` && |\n| &&
|
| z2ui5.oController.showMessage('S_MSG_BOX', z2ui5.oResponse.PARAMS);| && |\n| &&
|
||||||
` if (z2ui5.oResponse.PARAMS?.S_VIEW?.XML) {` && |\n| &&
|
| if (z2ui5.oResponse.PARAMS?.S_VIEW?.XML) \{| && |\n| &&
|
||||||
` if (z2ui5.oResponse.PARAMS?.S_VIEW?.XML !== '') {` && |\n| &&
|
| if (z2ui5.oResponse.PARAMS?.S_VIEW?.XML !== '') \{| && |\n| &&
|
||||||
` z2ui5.oController.ViewDestroy();` && |\n| &&
|
| z2ui5.oController.ViewDestroy();| && |\n| &&
|
||||||
` await z2ui5.oController.displayView(z2ui5.oResponse.PARAMS.S_VIEW.XML, z2ui5.oResponse.OVIEWMODEL);` && |\n| &&
|
| await z2ui5.oController.displayView(z2ui5.oResponse.PARAMS.S_VIEW.XML, z2ui5.oResponse.OVIEWMODEL);| && |\n| &&
|
||||||
` return;` && |\n| &&
|
| return;| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` z2ui5.oController.updateModelIfRequired('S_VIEW', z2ui5.oView);` && |\n| &&
|
| z2ui5.oController.updateModelIfRequired('S_VIEW', z2ui5.oView);| && |\n| &&
|
||||||
` z2ui5.oController.updateModelIfRequired('S_VIEW_NEST', z2ui5.oViewNest);` && |\n| &&
|
| z2ui5.oController.updateModelIfRequired('S_VIEW_NEST', z2ui5.oViewNest);| && |\n| &&
|
||||||
` z2ui5.oController.updateModelIfRequired('S_VIEW_NEST2', z2ui5.oViewNest2);` && |\n| &&
|
| z2ui5.oController.updateModelIfRequired('S_VIEW_NEST2', z2ui5.oViewNest2);| && |\n| &&
|
||||||
` z2ui5.oController.updateModelIfRequired('S_POPUP', z2ui5.oViewPopup);` && |\n| &&
|
| z2ui5.oController.updateModelIfRequired('S_POPUP', z2ui5.oViewPopup);| && |\n| &&
|
||||||
` z2ui5.oController.updateModelIfRequired('S_POPOVER', z2ui5.oViewPopover);` && |\n| &&
|
| z2ui5.oController.updateModelIfRequired('S_POPOVER', z2ui5.oViewPopover);| && |\n| &&
|
||||||
` z2ui5.oController.onAfterRendering();` && |\n| &&
|
| z2ui5.oController.onAfterRendering();| && |\n| &&
|
||||||
` } catch (e) {` && |\n| &&
|
| \} catch (e) \{| && |\n| &&
|
||||||
` BusyIndicator.hide();` && |\n| &&
|
| BusyIndicator.hide();| && |\n| &&
|
||||||
` if (e.message.includes("openui5")) {` && |\n| &&
|
| if (e.message.includes("openui5")) \{| && |\n| &&
|
||||||
` if (e.message.includes("script load error")) {` && |\n| &&
|
| if (e.message.includes("script load error")) \{| && |\n| &&
|
||||||
` z2ui5.oController.checkSDKcompatibility(e)` && |\n| &&
|
| z2ui5.oController.checkSDKcompatibility(e)| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` } else {` && |\n| &&
|
| \} else \{| && |\n| &&
|
||||||
` MessageBox.error(e.toLocaleString());` && |\n| &&
|
| MessageBox.error(e.toLocaleString());| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` }` && |\n| &&
|
| \}| && |\n| &&
|
||||||
` },` && |\n| &&
|
| \},| && |\n| &&
|
||||||
` responseError(response) {` && |\n| &&
|
| responseError(response) \{| && |\n| &&
|
||||||
` document.write(response);` && |\n| &&
|
| document.write(response);| && |\n| &&
|
||||||
` },` && |\n| &&
|
| \},| && |\n| &&
|
||||||
` };` && |\n| &&
|
| \};| && |\n| &&
|
||||||
` });` && |\n| &&
|
| \});| && |\n| &&
|
||||||
``.
|
||.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_app_style_css DEFINITION
|
CLASS z2ui5_cl_app_style_css DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -10,17 +9,16 @@ CLASS z2ui5_cl_app_style_css DEFINITION
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_app_style_css IMPLEMENTATION.
|
CLASS z2ui5_cl_app_style_css IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD get.
|
METHOD get.
|
||||||
|
|
||||||
result = `/* Enter your custom styles here */` &&
|
result = |/* Enter your custom styles here */| &&
|
||||||
``.
|
||.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_app_view1_xml DEFINITION
|
CLASS z2ui5_cl_app_view1_xml DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -10,21 +9,20 @@ CLASS z2ui5_cl_app_view1_xml DEFINITION
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_app_view1_xml IMPLEMENTATION.
|
CLASS z2ui5_cl_app_view1_xml IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD get.
|
METHOD get.
|
||||||
|
|
||||||
result = `<mvc:View controllerName="z2ui5.controller.View1"` &&
|
result = |<mvc:View controllerName="z2ui5.controller.View1"| &&
|
||||||
` xmlns:mvc="sap.ui.core.mvc" displayBlock="true"` &&
|
| xmlns:mvc="sap.ui.core.mvc" displayBlock="true"| &&
|
||||||
` xmlns="sap.m">` &&
|
| xmlns="sap.m">| &&
|
||||||
`</mvc:View>` &&
|
|</mvc:View>| &&
|
||||||
`` &&
|
|| &&
|
||||||
``.
|
||.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_pop_error DEFINITION
|
CLASS z2ui5_cl_pop_error DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -17,15 +16,14 @@ CLASS z2ui5_cl_pop_error DEFINITION
|
||||||
DATA client TYPE REF TO z2ui5_if_client.
|
DATA client TYPE REF TO z2ui5_if_client.
|
||||||
DATA error TYPE REF TO cx_root.
|
DATA error TYPE REF TO cx_root.
|
||||||
DATA check_initialized TYPE abap_bool.
|
DATA check_initialized TYPE abap_bool.
|
||||||
|
|
||||||
METHODS view_display.
|
METHODS view_display.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_pop_error IMPLEMENTATION.
|
CLASS z2ui5_cl_pop_error IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD factory.
|
METHOD factory.
|
||||||
|
|
||||||
r_result = NEW #( ).
|
r_result = NEW #( ).
|
||||||
|
@ -33,19 +31,16 @@ CLASS z2ui5_cl_pop_error IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD view_display.
|
METHOD view_display.
|
||||||
|
|
||||||
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog(
|
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog( title = `Error View`
|
||||||
title = `Error View`
|
|
||||||
afterclose = client->_event( 'BUTTON_CONFIRM' )
|
afterclose = client->_event( 'BUTTON_CONFIRM' )
|
||||||
)->content(
|
)->content(
|
||||||
)->vbox( 'sapUiMediumMargin'
|
)->vbox( 'sapUiMediumMargin'
|
||||||
)->text( error->get_text( )
|
)->text( error->get_text( )
|
||||||
)->get_parent( )->get_parent(
|
)->get_parent( )->get_parent(
|
||||||
)->buttons(
|
)->buttons(
|
||||||
)->button(
|
)->button( text = `OK`
|
||||||
text = `OK`
|
|
||||||
press = client->_event( 'BUTTON_CONFIRM' )
|
press = client->_event( 'BUTTON_CONFIRM' )
|
||||||
type = 'Emphasized' ).
|
type = 'Emphasized' ).
|
||||||
|
|
||||||
|
@ -53,7 +48,6 @@ CLASS z2ui5_cl_pop_error IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_app~main.
|
METHOD z2ui5_if_app~main.
|
||||||
|
|
||||||
me->client = client.
|
me->client = client.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_pop_file_dl DEFINITION
|
CLASS z2ui5_cl_pop_file_dl DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -37,15 +36,14 @@ CLASS z2ui5_cl_pop_file_dl DEFINITION
|
||||||
DATA button_text_confirm TYPE string.
|
DATA button_text_confirm TYPE string.
|
||||||
DATA button_text_cancel TYPE string.
|
DATA button_text_cancel TYPE string.
|
||||||
DATA check_initialized TYPE abap_bool.
|
DATA check_initialized TYPE abap_bool.
|
||||||
|
|
||||||
METHODS view_display.
|
METHODS view_display.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
CLASS z2ui5_cl_pop_file_dl IMPLEMENTATION.
|
||||||
CLASS Z2UI5_CL_POP_FILE_DL IMPLEMENTATION.
|
|
||||||
|
|
||||||
|
|
||||||
METHOD factory.
|
METHOD factory.
|
||||||
|
|
||||||
r_result = NEW #( ).
|
r_result = NEW #( ).
|
||||||
|
@ -60,18 +58,15 @@ CLASS Z2UI5_CL_POP_FILE_DL IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD result.
|
METHOD result.
|
||||||
|
|
||||||
result = check_confirmed.
|
result = check_confirmed.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD view_display.
|
METHOD view_display.
|
||||||
|
|
||||||
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog(
|
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog( title = title
|
||||||
title = title
|
|
||||||
icon = icon
|
icon = icon
|
||||||
afterclose = client->_event( 'BUTTON_CANCEL' )
|
afterclose = client->_event( 'BUTTON_CANCEL' )
|
||||||
)->content( ).
|
)->content( ).
|
||||||
|
@ -81,7 +76,8 @@ CLASS Z2UI5_CL_POP_FILE_DL IMPLEMENTATION.
|
||||||
DATA(lv_base64) = z2ui5_cl_util=>conv_encode_x_base64( lv_csv_x ).
|
DATA(lv_base64) = z2ui5_cl_util=>conv_encode_x_base64( lv_csv_x ).
|
||||||
popup->_generic( ns = `html`
|
popup->_generic( ns = `html`
|
||||||
name = `iframe`
|
name = `iframe`
|
||||||
t_prop = VALUE #( ( n = `src` v = mv_type && lv_base64 ) ( n = `hidden` v = `hidden` ) ) ).
|
t_prop = VALUE #( ( n = `src` v = mv_type && lv_base64 )
|
||||||
|
( n = `hidden` v = `hidden` ) ) ).
|
||||||
|
|
||||||
popup->_z2ui5( )->timer( client->_event( `CALLBACK_DOWNLOAD` ) ).
|
popup->_z2ui5( )->timer( client->_event( `CALLBACK_DOWNLOAD` ) ).
|
||||||
|
|
||||||
|
@ -99,11 +95,9 @@ CLASS Z2UI5_CL_POP_FILE_DL IMPLEMENTATION.
|
||||||
enabled = abap_false
|
enabled = abap_false
|
||||||
)->get_parent( )->get_parent(
|
)->get_parent( )->get_parent(
|
||||||
)->buttons(
|
)->buttons(
|
||||||
)->button(
|
)->button( text = button_text_cancel
|
||||||
text = button_text_cancel
|
|
||||||
press = client->_event( 'BUTTON_CANCEL' )
|
press = client->_event( 'BUTTON_CANCEL' )
|
||||||
)->button(
|
)->button( text = `Download`
|
||||||
text = `Download`
|
|
||||||
press = client->_event( 'BUTTON_CONFIRM' )
|
press = client->_event( 'BUTTON_CONFIRM' )
|
||||||
type = 'Emphasized' ).
|
type = 'Emphasized' ).
|
||||||
|
|
||||||
|
@ -111,7 +105,6 @@ CLASS Z2UI5_CL_POP_FILE_DL IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_app~main.
|
METHOD z2ui5_if_app~main.
|
||||||
|
|
||||||
me->client = client.
|
me->client = client.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_pop_file_ul DEFINITION
|
CLASS z2ui5_cl_pop_file_ul DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -22,6 +21,7 @@ CLASS z2ui5_cl_pop_file_ul DEFINITION
|
||||||
value TYPE string,
|
value TYPE string,
|
||||||
check_confirmed TYPE abap_bool,
|
check_confirmed TYPE abap_bool,
|
||||||
END OF ty_s_result.
|
END OF ty_s_result.
|
||||||
|
|
||||||
DATA ms_result TYPE ty_s_result.
|
DATA ms_result TYPE ty_s_result.
|
||||||
DATA mv_path TYPE string.
|
DATA mv_path TYPE string.
|
||||||
DATA mv_value TYPE string.
|
DATA mv_value TYPE string.
|
||||||
|
@ -39,15 +39,14 @@ CLASS z2ui5_cl_pop_file_ul DEFINITION
|
||||||
DATA button_text_confirm TYPE string.
|
DATA button_text_confirm TYPE string.
|
||||||
DATA button_text_cancel TYPE string.
|
DATA button_text_cancel TYPE string.
|
||||||
DATA check_initialized TYPE abap_bool.
|
DATA check_initialized TYPE abap_bool.
|
||||||
|
|
||||||
METHODS view_display.
|
METHODS view_display.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_pop_file_ul IMPLEMENTATION.
|
CLASS z2ui5_cl_pop_file_ul IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD factory.
|
METHOD factory.
|
||||||
|
|
||||||
r_result = NEW #( ).
|
r_result = NEW #( ).
|
||||||
|
@ -60,35 +59,29 @@ CLASS z2ui5_cl_pop_file_ul IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD result.
|
METHOD result.
|
||||||
|
|
||||||
result = ms_result.
|
result = ms_result.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD view_display.
|
METHOD view_display.
|
||||||
|
|
||||||
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog(
|
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog( title = title
|
||||||
title = title
|
|
||||||
icon = icon
|
icon = icon
|
||||||
afterclose = client->_event( 'BUTTON_CANCEL' )
|
afterclose = client->_event( 'BUTTON_CANCEL' )
|
||||||
)->content(
|
)->content(
|
||||||
)->vbox( 'sapUiMediumMargin'
|
)->vbox( 'sapUiMediumMargin'
|
||||||
)->label( question_text
|
)->label( question_text
|
||||||
)->_z2ui5( )->file_uploader(
|
)->_z2ui5( )->file_uploader( value = client->_bind_edit( mv_value )
|
||||||
value = client->_bind_edit( mv_value )
|
|
||||||
path = client->_bind_edit( mv_path )
|
path = client->_bind_edit( mv_path )
|
||||||
placeholder = 'filepath here...'
|
placeholder = 'filepath here...'
|
||||||
upload = client->_event( 'UPLOAD' )
|
upload = client->_event( 'UPLOAD' )
|
||||||
)->get_parent( )->get_parent(
|
)->get_parent( )->get_parent(
|
||||||
)->buttons(
|
)->buttons(
|
||||||
)->button(
|
)->button( text = button_text_cancel
|
||||||
text = button_text_cancel
|
|
||||||
press = client->_event( 'BUTTON_CANCEL' )
|
press = client->_event( 'BUTTON_CANCEL' )
|
||||||
)->button(
|
)->button( text = button_text_confirm
|
||||||
text = button_text_confirm
|
|
||||||
press = client->_event( 'BUTTON_CONFIRM' )
|
press = client->_event( 'BUTTON_CONFIRM' )
|
||||||
enabled = client->_bind( check_confirm_enabled )
|
enabled = client->_bind( check_confirm_enabled )
|
||||||
type = 'Emphasized' ).
|
type = 'Emphasized' ).
|
||||||
|
@ -97,7 +90,6 @@ CLASS z2ui5_cl_pop_file_ul IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_app~main.
|
METHOD z2ui5_if_app~main.
|
||||||
|
|
||||||
me->client = client.
|
me->client = client.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_pop_get_range DEFINITION
|
CLASS z2ui5_cl_pop_get_range DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
INTERFACES z2ui5_if_app.
|
INTERFACES z2ui5_if_app.
|
||||||
|
@ -13,6 +12,7 @@ CLASS z2ui5_cl_pop_get_range DEFINITION
|
||||||
high TYPE string,
|
high TYPE string,
|
||||||
key TYPE string,
|
key TYPE string,
|
||||||
END OF ty_s_filter_pop.
|
END OF ty_s_filter_pop.
|
||||||
|
|
||||||
DATA mt_filter TYPE STANDARD TABLE OF ty_s_filter_pop WITH EMPTY KEY.
|
DATA mt_filter TYPE STANDARD TABLE OF ty_s_filter_pop WITH EMPTY KEY.
|
||||||
|
|
||||||
CLASS-METHODS factory
|
CLASS-METHODS factory
|
||||||
|
@ -26,6 +26,7 @@ CLASS z2ui5_cl_pop_get_range DEFINITION
|
||||||
t_range TYPE z2ui5_cl_util=>ty_t_range,
|
t_range TYPE z2ui5_cl_util=>ty_t_range,
|
||||||
check_confirmed TYPE abap_bool,
|
check_confirmed TYPE abap_bool,
|
||||||
END OF ty_s_result.
|
END OF ty_s_result.
|
||||||
|
|
||||||
DATA ms_result TYPE ty_s_result.
|
DATA ms_result TYPE ty_s_result.
|
||||||
|
|
||||||
METHODS result
|
METHODS result
|
||||||
|
@ -33,49 +34,42 @@ CLASS z2ui5_cl_pop_get_range DEFINITION
|
||||||
VALUE(result) TYPE ty_s_result.
|
VALUE(result) TYPE ty_s_result.
|
||||||
|
|
||||||
DATA mt_mapping TYPE z2ui5_if_types=>ty_t_name_value.
|
DATA mt_mapping TYPE z2ui5_if_types=>ty_t_name_value.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
DATA client TYPE REF TO z2ui5_if_client.
|
DATA client TYPE REF TO z2ui5_if_client.
|
||||||
DATA check_initialized TYPE abap_bool.
|
DATA check_initialized TYPE abap_bool.
|
||||||
|
|
||||||
METHODS view_display.
|
METHODS view_display.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
CLASS z2ui5_cl_pop_get_range IMPLEMENTATION.
|
||||||
CLASS Z2UI5_CL_POP_GET_RANGE IMPLEMENTATION.
|
|
||||||
|
|
||||||
|
|
||||||
METHOD factory.
|
METHOD factory.
|
||||||
|
|
||||||
r_result = NEW #( ).
|
r_result = NEW #( ).
|
||||||
|
|
||||||
z2ui5_cl_util=>itab_corresponding(
|
z2ui5_cl_util=>itab_corresponding( EXPORTING val = t_range
|
||||||
EXPORTING
|
CHANGING tab = r_result->ms_result-t_range
|
||||||
val = t_range
|
|
||||||
CHANGING
|
|
||||||
tab = r_result->ms_result-t_range
|
|
||||||
).
|
).
|
||||||
|
|
||||||
INSERT VALUE #( ) INTO TABLE r_result->ms_result-t_range.
|
INSERT VALUE #( ) INTO TABLE r_result->ms_result-t_range.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD result.
|
METHOD result.
|
||||||
|
|
||||||
result = ms_result.
|
result = ms_result.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD view_display.
|
METHOD view_display.
|
||||||
|
|
||||||
|
|
||||||
DATA(lo_popup) = z2ui5_cl_xml_view=>factory_popup( ).
|
DATA(lo_popup) = z2ui5_cl_xml_view=>factory_popup( ).
|
||||||
|
|
||||||
lo_popup = lo_popup->dialog(
|
lo_popup = lo_popup->dialog( afterclose = client->_event( 'BUTTON_CANCEL' )
|
||||||
afterclose = client->_event( 'BUTTON_CANCEL' )
|
|
||||||
contentheight = `50%`
|
contentheight = `50%`
|
||||||
contentwidth = `50%`
|
contentwidth = `50%`
|
||||||
title = 'Define Filter Conditons' ).
|
title = 'Define Filter Conditons' ).
|
||||||
|
@ -83,19 +77,16 @@ CLASS Z2UI5_CL_POP_GET_RANGE IMPLEMENTATION.
|
||||||
DATA(vbox) = lo_popup->vbox( height = `100%`
|
DATA(vbox) = lo_popup->vbox( height = `100%`
|
||||||
justifycontent = 'SpaceBetween' ).
|
justifycontent = 'SpaceBetween' ).
|
||||||
|
|
||||||
DATA(item) = vbox->list(
|
DATA(item) = vbox->list( nodata = `no conditions defined`
|
||||||
nodata = `no conditions defined`
|
|
||||||
items = client->_bind_edit( mt_filter )
|
items = client->_bind_edit( mt_filter )
|
||||||
selectionchange = client->_event( 'SELCHANGE' )
|
selectionchange = client->_event( 'SELCHANGE' )
|
||||||
)->custom_list_item( ).
|
)->custom_list_item( ).
|
||||||
|
|
||||||
DATA(grid) = item->grid( ).
|
DATA(grid) = item->grid( ).
|
||||||
|
|
||||||
grid->combobox(
|
grid->combobox( selectedkey = `{OPTION}`
|
||||||
selectedkey = `{OPTION}`
|
|
||||||
items = client->_bind( mt_mapping )
|
items = client->_bind( mt_mapping )
|
||||||
)->item(
|
)->item( key = '{N}'
|
||||||
key = '{N}'
|
|
||||||
text = '{N}'
|
text = '{N}'
|
||||||
)->get_parent(
|
)->get_parent(
|
||||||
)->input( value = `{LOW}`
|
)->input( value = `{LOW}`
|
||||||
|
@ -105,7 +96,8 @@ CLASS Z2UI5_CL_POP_GET_RANGE IMPLEMENTATION.
|
||||||
submit = client->_event( 'BUTTON_CONFIRM' )
|
submit = client->_event( 'BUTTON_CONFIRM' )
|
||||||
)->button( icon = 'sap-icon://decline'
|
)->button( icon = 'sap-icon://decline'
|
||||||
type = `Transparent`
|
type = `Transparent`
|
||||||
press = client->_event( val = `POPUP_DELETE` t_arg = VALUE #( ( `${KEY}` ) ) ) ).
|
press = client->_event( val = `POPUP_DELETE`
|
||||||
|
t_arg = VALUE #( ( `${KEY}` ) ) ) ).
|
||||||
|
|
||||||
lo_popup->buttons(
|
lo_popup->buttons(
|
||||||
)->button( text = `Delete All`
|
)->button( text = `Delete All`
|
||||||
|
@ -115,11 +107,9 @@ CLASS Z2UI5_CL_POP_GET_RANGE IMPLEMENTATION.
|
||||||
)->button( text = `Add Item`
|
)->button( text = `Add Item`
|
||||||
icon = `sap-icon://add`
|
icon = `sap-icon://add`
|
||||||
press = client->_event( val = `POPUP_ADD` )
|
press = client->_event( val = `POPUP_ADD` )
|
||||||
)->button(
|
)->button( text = 'Cancel'
|
||||||
text = 'Cancel'
|
|
||||||
press = client->_event( 'BUTTON_CANCEL' )
|
press = client->_event( 'BUTTON_CANCEL' )
|
||||||
)->button(
|
)->button( text = 'OK'
|
||||||
text = 'OK'
|
|
||||||
press = client->_event( 'BUTTON_CONFIRM' )
|
press = client->_event( 'BUTTON_CONFIRM' )
|
||||||
type = 'Emphasized' ).
|
type = 'Emphasized' ).
|
||||||
|
|
||||||
|
@ -127,7 +117,6 @@ CLASS Z2UI5_CL_POP_GET_RANGE IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_app~main.
|
METHOD z2ui5_if_app~main.
|
||||||
|
|
||||||
me->client = client.
|
me->client = client.
|
||||||
|
@ -139,8 +128,7 @@ CLASS Z2UI5_CL_POP_GET_RANGE IMPLEMENTATION.
|
||||||
|
|
||||||
CLEAR mt_filter.
|
CLEAR mt_filter.
|
||||||
LOOP AT ms_result-t_range REFERENCE INTO DATA(lr_product).
|
LOOP AT ms_result-t_range REFERENCE INTO DATA(lr_product).
|
||||||
INSERT VALUE #(
|
INSERT VALUE #( low = lr_product->low
|
||||||
low = lr_product->low
|
|
||||||
high = lr_product->high
|
high = lr_product->high
|
||||||
option = lr_product->option
|
option = lr_product->option
|
||||||
key = z2ui5_cl_util=>uuid_get_c32( )
|
key = z2ui5_cl_util=>uuid_get_c32( )
|
||||||
|
@ -160,8 +148,7 @@ CLASS Z2UI5_CL_POP_GET_RANGE IMPLEMENTATION.
|
||||||
IF lr_filter->low IS INITIAL AND lr_filter->high IS INITIAL.
|
IF lr_filter->low IS INITIAL AND lr_filter->high IS INITIAL.
|
||||||
CONTINUE.
|
CONTINUE.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
INSERT VALUE #(
|
INSERT VALUE #( sign = `I`
|
||||||
sign = `I`
|
|
||||||
option = lr_filter->option
|
option = lr_filter->option
|
||||||
low = lr_filter->low
|
low = lr_filter->low
|
||||||
high = lr_filter->high
|
high = lr_filter->high
|
||||||
|
|
|
@ -27,6 +27,7 @@ CLASS z2ui5_cl_pop_get_range_m DEFINITION
|
||||||
DATA client TYPE REF TO z2ui5_if_client.
|
DATA client TYPE REF TO z2ui5_if_client.
|
||||||
DATA check_initialized TYPE abap_bool.
|
DATA check_initialized TYPE abap_bool.
|
||||||
DATA mv_popup_name TYPE LINE OF string_table.
|
DATA mv_popup_name TYPE LINE OF string_table.
|
||||||
|
|
||||||
METHODS popup_display.
|
METHODS popup_display.
|
||||||
|
|
||||||
METHODS init.
|
METHODS init.
|
||||||
|
@ -35,9 +36,7 @@ CLASS z2ui5_cl_pop_get_range_m DEFINITION
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
CLASS z2ui5_cl_pop_get_range_m IMPLEMENTATION.
|
||||||
CLASS Z2UI5_CL_POP_GET_RANGE_M IMPLEMENTATION.
|
|
||||||
|
|
||||||
METHOD factory.
|
METHOD factory.
|
||||||
|
|
||||||
r_result = NEW #( ).
|
r_result = NEW #( ).
|
||||||
|
@ -45,14 +44,12 @@ CLASS Z2UI5_CL_POP_GET_RANGE_M IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD init.
|
METHOD init.
|
||||||
|
|
||||||
popup_display( ).
|
popup_display( ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD popup_display.
|
METHOD popup_display.
|
||||||
|
|
||||||
DATA(lo_popup) = z2ui5_cl_xml_view=>factory_popup( ).
|
DATA(lo_popup) = z2ui5_cl_xml_view=>factory_popup( ).
|
||||||
|
@ -74,7 +71,8 @@ CLASS Z2UI5_CL_POP_GET_RANGE_M IMPLEMENTATION.
|
||||||
|
|
||||||
grid->multi_input( tokens = `{T_TOKEN}`
|
grid->multi_input( tokens = `{T_TOKEN}`
|
||||||
enabled = abap_false
|
enabled = abap_false
|
||||||
valuehelprequest = client->_event( val = `LIST_OPEN` t_arg = VALUE #( ( `${NAME}` ) ) )
|
valuehelprequest = client->_event( val = `LIST_OPEN`
|
||||||
|
t_arg = VALUE #( ( `${NAME}` ) ) )
|
||||||
)->tokens(
|
)->tokens(
|
||||||
)->token( key = `{KEY}`
|
)->token( key = `{KEY}`
|
||||||
text = `{TEXT}`
|
text = `{TEXT}`
|
||||||
|
@ -83,11 +81,13 @@ CLASS Z2UI5_CL_POP_GET_RANGE_M IMPLEMENTATION.
|
||||||
editable = `{EDITABLE}` ).
|
editable = `{EDITABLE}` ).
|
||||||
|
|
||||||
grid->button( text = `Select`
|
grid->button( text = `Select`
|
||||||
press = client->_event( val = `LIST_OPEN` t_arg = VALUE #( ( `${NAME}` ) ) ) ).
|
press = client->_event( val = `LIST_OPEN`
|
||||||
|
t_arg = VALUE #( ( `${NAME}` ) ) ) ).
|
||||||
grid->button( icon = 'sap-icon://delete'
|
grid->button( icon = 'sap-icon://delete'
|
||||||
type = `Transparent`
|
type = `Transparent`
|
||||||
text = `Clear`
|
text = `Clear`
|
||||||
press = client->_event( val = `LIST_DELETE` t_arg = VALUE #( ( `${NAME}` ) ) ) ).
|
press = client->_event( val = `LIST_DELETE`
|
||||||
|
t_arg = VALUE #( ( `${NAME}` ) ) ) ).
|
||||||
|
|
||||||
lo_popup->buttons(
|
lo_popup->buttons(
|
||||||
)->button( text = `Clear All`
|
)->button( text = `Clear All`
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_pop_html DEFINITION
|
CLASS z2ui5_cl_pop_html DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -23,15 +22,14 @@ CLASS z2ui5_cl_pop_html DEFINITION
|
||||||
DATA html TYPE string.
|
DATA html TYPE string.
|
||||||
DATA button_text_confirm TYPE string.
|
DATA button_text_confirm TYPE string.
|
||||||
DATA check_initialized TYPE abap_bool.
|
DATA check_initialized TYPE abap_bool.
|
||||||
|
|
||||||
METHODS view_display.
|
METHODS view_display.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
CLASS z2ui5_cl_pop_html IMPLEMENTATION.
|
||||||
CLASS Z2UI5_CL_POP_HTML IMPLEMENTATION.
|
|
||||||
|
|
||||||
|
|
||||||
METHOD factory.
|
METHOD factory.
|
||||||
|
|
||||||
r_result = NEW #( ).
|
r_result = NEW #( ).
|
||||||
|
@ -42,11 +40,9 @@ CLASS Z2UI5_CL_POP_HTML IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD view_display.
|
METHOD view_display.
|
||||||
|
|
||||||
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog(
|
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog( title = title
|
||||||
title = title
|
|
||||||
icon = icon
|
icon = icon
|
||||||
afterclose = client->_event( 'BUTTON_CONFIRM' )
|
afterclose = client->_event( 'BUTTON_CONFIRM' )
|
||||||
)->content(
|
)->content(
|
||||||
|
@ -54,8 +50,7 @@ CLASS Z2UI5_CL_POP_HTML IMPLEMENTATION.
|
||||||
)->html( html
|
)->html( html
|
||||||
)->get_parent( )->get_parent( )->get_parent(
|
)->get_parent( )->get_parent( )->get_parent(
|
||||||
)->buttons(
|
)->buttons(
|
||||||
)->button(
|
)->button( text = button_text_confirm
|
||||||
text = button_text_confirm
|
|
||||||
press = client->_event( 'BUTTON_CONFIRM' )
|
press = client->_event( 'BUTTON_CONFIRM' )
|
||||||
type = 'Emphasized' ).
|
type = 'Emphasized' ).
|
||||||
|
|
||||||
|
@ -63,7 +58,6 @@ CLASS Z2UI5_CL_POP_HTML IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_app~main.
|
METHOD z2ui5_if_app~main.
|
||||||
|
|
||||||
me->client = client.
|
me->client = client.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_pop_input_val DEFINITION
|
CLASS z2ui5_cl_pop_input_val DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -9,9 +8,9 @@ CLASS z2ui5_cl_pop_input_val DEFINITION
|
||||||
|
|
||||||
CLASS-METHODS factory
|
CLASS-METHODS factory
|
||||||
IMPORTING
|
IMPORTING
|
||||||
text TYPE string DEFAULT `Enter New Value`
|
!text TYPE string DEFAULT `Enter New Value`
|
||||||
val TYPE string OPTIONAL
|
val TYPE string OPTIONAL
|
||||||
title TYPE string DEFAULT `Popup Input Value`
|
!title TYPE string DEFAULT `Popup Input Value`
|
||||||
button_text_confirm TYPE string DEFAULT `OK`
|
button_text_confirm TYPE string DEFAULT `OK`
|
||||||
button_text_cancel TYPE string DEFAULT `Cancel`
|
button_text_cancel TYPE string DEFAULT `Cancel`
|
||||||
PREFERRED PARAMETER val
|
PREFERRED PARAMETER val
|
||||||
|
@ -23,6 +22,7 @@ CLASS z2ui5_cl_pop_input_val DEFINITION
|
||||||
value TYPE string,
|
value TYPE string,
|
||||||
check_confirmed TYPE abap_bool,
|
check_confirmed TYPE abap_bool,
|
||||||
END OF ty_s_result.
|
END OF ty_s_result.
|
||||||
|
|
||||||
DATA ms_result TYPE ty_s_result.
|
DATA ms_result TYPE ty_s_result.
|
||||||
|
|
||||||
METHODS result
|
METHODS result
|
||||||
|
@ -38,15 +38,14 @@ CLASS z2ui5_cl_pop_input_val DEFINITION
|
||||||
DATA button_text_cancel TYPE string.
|
DATA button_text_cancel TYPE string.
|
||||||
DATA check_initialized TYPE abap_bool.
|
DATA check_initialized TYPE abap_bool.
|
||||||
DATA check_result_confirmed TYPE abap_bool.
|
DATA check_result_confirmed TYPE abap_bool.
|
||||||
|
|
||||||
METHODS view_display.
|
METHODS view_display.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
CLASS z2ui5_cl_pop_input_val IMPLEMENTATION.
|
||||||
CLASS Z2UI5_CL_POP_INPUT_VAL IMPLEMENTATION.
|
|
||||||
|
|
||||||
|
|
||||||
METHOD factory.
|
METHOD factory.
|
||||||
|
|
||||||
r_result = NEW #( ).
|
r_result = NEW #( ).
|
||||||
|
@ -59,33 +58,27 @@ CLASS Z2UI5_CL_POP_INPUT_VAL IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD result.
|
METHOD result.
|
||||||
|
|
||||||
result = ms_result.
|
result = ms_result.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD view_display.
|
METHOD view_display.
|
||||||
|
|
||||||
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog(
|
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog( title = title
|
||||||
title = title
|
|
||||||
icon = icon
|
icon = icon
|
||||||
afterclose = client->_event( 'BUTTON_CANCEL' )
|
afterclose = client->_event( 'BUTTON_CANCEL' )
|
||||||
)->content(
|
)->content(
|
||||||
)->vbox( 'sapUiMediumMargin'
|
)->vbox( 'sapUiMediumMargin'
|
||||||
)->label( question_text
|
)->label( question_text
|
||||||
)->input(
|
)->input( value = client->_bind_edit( ms_result-value )
|
||||||
value = client->_bind_edit( ms_result-value )
|
|
||||||
submit = client->_event( 'BUTTON_CONFIRM' )
|
submit = client->_event( 'BUTTON_CONFIRM' )
|
||||||
)->get_parent( )->get_parent(
|
)->get_parent( )->get_parent(
|
||||||
)->buttons(
|
)->buttons(
|
||||||
)->button(
|
)->button( text = button_text_cancel
|
||||||
text = button_text_cancel
|
|
||||||
press = client->_event( 'BUTTON_CANCEL' )
|
press = client->_event( 'BUTTON_CANCEL' )
|
||||||
)->button(
|
)->button( text = button_text_confirm
|
||||||
text = button_text_confirm
|
|
||||||
press = client->_event( 'BUTTON_CONFIRM' )
|
press = client->_event( 'BUTTON_CONFIRM' )
|
||||||
type = 'Emphasized' ).
|
type = 'Emphasized' ).
|
||||||
|
|
||||||
|
@ -93,7 +86,6 @@ CLASS Z2UI5_CL_POP_INPUT_VAL IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_app~main.
|
METHOD z2ui5_if_app~main.
|
||||||
|
|
||||||
me->client = client.
|
me->client = client.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_pop_itab_json_dl DEFINITION
|
CLASS z2ui5_cl_pop_itab_json_dl DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -38,10 +37,7 @@ CLASS z2ui5_cl_pop_itab_json_dl DEFINITION
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
CLASS z2ui5_cl_pop_itab_json_dl IMPLEMENTATION.
|
||||||
CLASS Z2UI5_CL_POP_ITAB_JSON_DL IMPLEMENTATION.
|
|
||||||
|
|
||||||
|
|
||||||
METHOD factory.
|
METHOD factory.
|
||||||
|
|
||||||
r_result = NEW #( ).
|
r_result = NEW #( ).
|
||||||
|
@ -55,14 +51,12 @@ CLASS Z2UI5_CL_POP_ITAB_JSON_DL IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD result.
|
METHOD result.
|
||||||
|
|
||||||
result = check_result_confirmed.
|
result = check_result_confirmed.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_app~main.
|
METHOD z2ui5_if_app~main.
|
||||||
DATA app TYPE REF TO object.
|
DATA app TYPE REF TO object.
|
||||||
|
|
||||||
|
@ -73,8 +67,8 @@ CLASS Z2UI5_CL_POP_ITAB_JSON_DL IMPLEMENTATION.
|
||||||
IF z2ui5_cl_util=>rtti_check_class_exists( `z2ui5_dbt_cl_app_03` ) = abap_false.
|
IF z2ui5_cl_util=>rtti_check_class_exists( `z2ui5_dbt_cl_app_03` ) = abap_false.
|
||||||
|
|
||||||
DATA(lv_link) = `https://github.com/oblomov-dev/a2UI5-db_table_loader`.
|
DATA(lv_link) = `https://github.com/oblomov-dev/a2UI5-db_table_loader`.
|
||||||
DATA(lv_text) = `<p>Please install the open-source project a2UI5-db_table_loader and try again: <a href="` &&
|
DATA(lv_text) = |<p>Please install the open-source project a2UI5-db_table_loader and try again: <a href="| &&
|
||||||
lv_link && `" style="color:blue; font-weight:600;" target="_blank">(link)</a></p>`.
|
|{ lv_link }" style="color:blue; font-weight:600;" target="_blank">(link)</a></p>|.
|
||||||
|
|
||||||
DATA(lx) = NEW z2ui5_cx_util_error( val = lv_text ).
|
DATA(lx) = NEW z2ui5_cx_util_error( val = lv_text ).
|
||||||
client->nav_app_leave( z2ui5_cl_pop_error=>factory( lx ) ).
|
client->nav_app_leave( z2ui5_cl_pop_error=>factory( lx ) ).
|
||||||
|
@ -83,10 +77,8 @@ CLASS Z2UI5_CL_POP_ITAB_JSON_DL IMPLEMENTATION.
|
||||||
|
|
||||||
DATA(lv_classname) = `Z2UI5_DBT_CL_APP_03`.
|
DATA(lv_classname) = `Z2UI5_DBT_CL_APP_03`.
|
||||||
CALL METHOD (lv_classname)=>('FACTORY_POPUP_BY_ITAB')
|
CALL METHOD (lv_classname)=>('FACTORY_POPUP_BY_ITAB')
|
||||||
EXPORTING
|
EXPORTING itab = mr_itab
|
||||||
itab = mr_itab
|
RECEIVING result = app.
|
||||||
RECEIVING
|
|
||||||
result = app.
|
|
||||||
|
|
||||||
client->nav_app_leave( CAST #( app ) ).
|
client->nav_app_leave( CAST #( app ) ).
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_pop_js_loader DEFINITION
|
CLASS z2ui5_cl_pop_js_loader DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -32,17 +31,13 @@ CLASS z2ui5_cl_pop_js_loader DEFINITION
|
||||||
DATA user_command TYPE string.
|
DATA user_command TYPE string.
|
||||||
DATA check_open_ui5 TYPE abap_bool.
|
DATA check_open_ui5 TYPE abap_bool.
|
||||||
|
|
||||||
|
|
||||||
METHODS view_display.
|
METHODS view_display.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_pop_js_loader IMPLEMENTATION.
|
CLASS z2ui5_cl_pop_js_loader IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD factory.
|
METHOD factory.
|
||||||
|
|
||||||
r_result = NEW #( ).
|
r_result = NEW #( ).
|
||||||
|
@ -51,34 +46,30 @@ CLASS z2ui5_cl_pop_js_loader IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD factory_check_open_ui5.
|
METHOD factory_check_open_ui5.
|
||||||
r_result = NEW #( ).
|
r_result = NEW #( ).
|
||||||
r_result->check_open_ui5 = abap_true.
|
r_result->check_open_ui5 = abap_true.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD result.
|
METHOD result.
|
||||||
|
|
||||||
result3 = user_command.
|
result3 = user_command.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD view_display.
|
METHOD view_display.
|
||||||
|
|
||||||
|
|
||||||
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog( `Setup UI...`
|
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog( `Setup UI...`
|
||||||
)->content( ).
|
)->content( ).
|
||||||
|
|
||||||
IF js IS NOT INITIAL.
|
IF js IS NOT INITIAL.
|
||||||
popup->_z2ui5( )->timer( client->_event( 'TIMER_FINISHED' )
|
popup->_z2ui5( )->timer( client->_event( 'TIMER_FINISHED' )
|
||||||
)->_generic( ns = `html` name = `script` )->_cc_plain_xml( js ).
|
)->_generic( ns = `html`
|
||||||
|
name = `script` )->_cc_plain_xml( js ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
IF check_open_ui5 = abap_true.
|
IF check_open_ui5 = abap_true.
|
||||||
popup->_z2ui5( )->info_frontend(
|
popup->_z2ui5( )->info_frontend( finished = client->_event( `INFO_FINISHED` )
|
||||||
finished = client->_event( `INFO_FINISHED` )
|
|
||||||
ui5_gav = client->_bind_edit( ui5_gav ) ).
|
ui5_gav = client->_bind_edit( ui5_gav ) ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
|
@ -86,7 +77,6 @@ CLASS z2ui5_cl_pop_js_loader IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_app~main.
|
METHOD z2ui5_if_app~main.
|
||||||
|
|
||||||
me->client = client.
|
me->client = client.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_pop_messages DEFINITION
|
CLASS z2ui5_cl_pop_messages DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -22,6 +21,7 @@ CLASS z2ui5_cl_pop_messages DEFINITION
|
||||||
group TYPE string,
|
group TYPE string,
|
||||||
END OF ty_s_msg.
|
END OF ty_s_msg.
|
||||||
TYPES ty_t_msg TYPE STANDARD TABLE OF ty_s_msg.
|
TYPES ty_t_msg TYPE STANDARD TABLE OF ty_s_msg.
|
||||||
|
|
||||||
DATA mt_msg TYPE ty_t_msg.
|
DATA mt_msg TYPE ty_t_msg.
|
||||||
|
|
||||||
CLASS-METHODS factory
|
CLASS-METHODS factory
|
||||||
|
@ -37,14 +37,12 @@ CLASS z2ui5_cl_pop_messages DEFINITION
|
||||||
DATA check_initialized TYPE abap_bool.
|
DATA check_initialized TYPE abap_bool.
|
||||||
|
|
||||||
METHODS view_display.
|
METHODS view_display.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_pop_messages IMPLEMENTATION.
|
CLASS z2ui5_cl_pop_messages IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD factory.
|
METHOD factory.
|
||||||
|
|
||||||
r_result = NEW #( ).
|
r_result = NEW #( ).
|
||||||
|
@ -57,7 +55,7 @@ CLASS z2ui5_cl_pop_messages IMPLEMENTATION.
|
||||||
ls_row-title = lr_row->text.
|
ls_row-title = lr_row->text.
|
||||||
* lr_row->title = `title`.
|
* lr_row->title = `title`.
|
||||||
* lr_row->message = `message`.
|
* lr_row->message = `message`.
|
||||||
ls_row-subtitle = lr_row->id && ` ` && lr_row->no.
|
ls_row-subtitle = |{ lr_row->id } { lr_row->no }|.
|
||||||
* lr_row->group = `001`.
|
* lr_row->group = `001`.
|
||||||
|
|
||||||
INSERT ls_row INTO TABLE r_result->mt_msg.
|
INSERT ls_row INTO TABLE r_result->mt_msg.
|
||||||
|
@ -67,23 +65,19 @@ CLASS z2ui5_cl_pop_messages IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD view_display.
|
METHOD view_display.
|
||||||
|
|
||||||
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( ).
|
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( ).
|
||||||
popup = popup->dialog(
|
popup = popup->dialog( title = `Messages`
|
||||||
title = `Messages`
|
|
||||||
contentheight = '50%'
|
contentheight = '50%'
|
||||||
contentwidth = '50%'
|
contentwidth = '50%'
|
||||||
verticalScrolling = abap_false
|
verticalScrolling = abap_false
|
||||||
afterclose = client->_event( 'BUTTON_CONTINUE' )
|
afterclose = client->_event( 'BUTTON_CONTINUE' )
|
||||||
).
|
).
|
||||||
|
|
||||||
popup->message_view(
|
popup->message_view( items = client->_bind( mt_msg )
|
||||||
items = client->_bind( mt_msg )
|
|
||||||
* groupitems = abap_true
|
* groupitems = abap_true
|
||||||
)->message_item(
|
)->message_item( type = `{TYPE}`
|
||||||
type = `{TYPE}`
|
|
||||||
title = `{TITLE}`
|
title = `{TITLE}`
|
||||||
subtitle = `{SUBTITLE}`
|
subtitle = `{SUBTITLE}`
|
||||||
* description = `{MESSAGE}`
|
* description = `{MESSAGE}`
|
||||||
|
@ -91,18 +85,14 @@ CLASS z2ui5_cl_pop_messages IMPLEMENTATION.
|
||||||
).
|
).
|
||||||
|
|
||||||
popup->buttons(
|
popup->buttons(
|
||||||
)->button(
|
)->button( text = 'continue'
|
||||||
text = 'continue'
|
|
||||||
press = client->_event( 'BUTTON_CONTINUE' )
|
press = client->_event( 'BUTTON_CONTINUE' )
|
||||||
type = 'Emphasized' ).
|
type = 'Emphasized' ).
|
||||||
|
|
||||||
|
|
||||||
client->popup_display( popup->stringify( ) ).
|
client->popup_display( popup->stringify( ) ).
|
||||||
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_app~main.
|
METHOD z2ui5_if_app~main.
|
||||||
|
|
||||||
me->client = client.
|
me->client = client.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_pop_pdf DEFINITION
|
CLASS z2ui5_cl_pop_pdf DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -21,6 +20,7 @@ CLASS z2ui5_cl_pop_pdf DEFINITION
|
||||||
text TYPE string,
|
text TYPE string,
|
||||||
check_confirmed TYPE abap_bool,
|
check_confirmed TYPE abap_bool,
|
||||||
END OF ty_s_result.
|
END OF ty_s_result.
|
||||||
|
|
||||||
DATA ms_result TYPE ty_s_result.
|
DATA ms_result TYPE ty_s_result.
|
||||||
|
|
||||||
DATA mv_pdf TYPE string.
|
DATA mv_pdf TYPE string.
|
||||||
|
@ -38,15 +38,14 @@ CLASS z2ui5_cl_pop_pdf DEFINITION
|
||||||
DATA button_text_cancel TYPE string.
|
DATA button_text_cancel TYPE string.
|
||||||
DATA check_initialized TYPE abap_bool.
|
DATA check_initialized TYPE abap_bool.
|
||||||
DATA check_result_confirmed TYPE abap_bool.
|
DATA check_result_confirmed TYPE abap_bool.
|
||||||
|
|
||||||
METHODS view_display.
|
METHODS view_display.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_pop_pdf IMPLEMENTATION.
|
CLASS z2ui5_cl_pop_pdf IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD factory.
|
METHOD factory.
|
||||||
|
|
||||||
r_result = NEW #( ).
|
r_result = NEW #( ).
|
||||||
|
@ -57,39 +56,32 @@ CLASS z2ui5_cl_pop_pdf IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD result.
|
METHOD result.
|
||||||
|
|
||||||
result = ms_result.
|
result = ms_result.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD view_display.
|
METHOD view_display.
|
||||||
|
|
||||||
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog(
|
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog( title = title
|
||||||
title = title
|
|
||||||
icon = icon
|
icon = icon
|
||||||
stretch = abap_true
|
stretch = abap_true
|
||||||
afterclose = client->_event( 'BUTTON_CANCEL' )
|
afterclose = client->_event( 'BUTTON_CANCEL' )
|
||||||
)->content(
|
)->content(
|
||||||
)->vbox( 'sapUiMediumMargin'
|
)->vbox( 'sapUiMediumMargin'
|
||||||
)->label( question_text
|
)->label( question_text
|
||||||
)->_generic(
|
)->_generic( ns = `html`
|
||||||
ns = `html`
|
|
||||||
name = `iframe`
|
name = `iframe`
|
||||||
t_prop = VALUE #(
|
t_prop = VALUE #( ( n = `src` v = mv_pdf )
|
||||||
( n = `src` v = mv_pdf )
|
|
||||||
( n = `height` v = `800px` )
|
( n = `height` v = `800px` )
|
||||||
( n = `width` v = `99%` )
|
( n = `width` v = `99%` )
|
||||||
)
|
)
|
||||||
)->get_parent( )->get_parent( )->get_parent(
|
)->get_parent( )->get_parent( )->get_parent(
|
||||||
)->buttons(
|
)->buttons(
|
||||||
)->button(
|
)->button( text = button_text_cancel
|
||||||
text = button_text_cancel
|
|
||||||
press = client->_event( 'BUTTON_CANCEL' )
|
press = client->_event( 'BUTTON_CANCEL' )
|
||||||
)->button(
|
)->button( text = button_text_confirm
|
||||||
text = button_text_confirm
|
|
||||||
press = client->_event( 'BUTTON_CONFIRM' )
|
press = client->_event( 'BUTTON_CONFIRM' )
|
||||||
type = 'Emphasized' ).
|
type = 'Emphasized' ).
|
||||||
|
|
||||||
|
@ -97,7 +89,6 @@ CLASS z2ui5_cl_pop_pdf IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_app~main.
|
METHOD z2ui5_if_app~main.
|
||||||
|
|
||||||
me->client = client.
|
me->client = client.
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
CLASS z2ui5_cl_pop_table DEFINITION
|
CLASS z2ui5_cl_pop_table DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
|
||||||
CREATE PROTECTED.
|
CREATE PROTECTED.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
@ -18,6 +17,7 @@ CLASS z2ui5_cl_pop_table DEFINITION
|
||||||
row TYPE REF TO data,
|
row TYPE REF TO data,
|
||||||
check_confirmed TYPE abap_bool,
|
check_confirmed TYPE abap_bool,
|
||||||
END OF ty_s_result.
|
END OF ty_s_result.
|
||||||
|
|
||||||
DATA ms_result TYPE ty_s_result.
|
DATA ms_result TYPE ty_s_result.
|
||||||
|
|
||||||
METHODS result
|
METHODS result
|
||||||
|
@ -30,6 +30,7 @@ CLASS z2ui5_cl_pop_table DEFINITION
|
||||||
DATA check_initialized TYPE abap_bool.
|
DATA check_initialized TYPE abap_bool.
|
||||||
DATA title TYPE string VALUE 'Table View'.
|
DATA title TYPE string VALUE 'Table View'.
|
||||||
DATA client TYPE REF TO z2ui5_if_client.
|
DATA client TYPE REF TO z2ui5_if_client.
|
||||||
|
|
||||||
METHODS on_event.
|
METHODS on_event.
|
||||||
METHODS display.
|
METHODS display.
|
||||||
METHODS on_event_confirm.
|
METHODS on_event_confirm.
|
||||||
|
@ -38,24 +39,20 @@ CLASS z2ui5_cl_pop_table DEFINITION
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_pop_table IMPLEMENTATION.
|
CLASS z2ui5_cl_pop_table IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD display.
|
METHOD display.
|
||||||
|
|
||||||
FIELD-SYMBOLS <tab_out> TYPE STANDARD TABLE.
|
FIELD-SYMBOLS <tab_out> TYPE STANDARD TABLE.
|
||||||
|
|
||||||
ASSIGN mr_tab->* TO <tab_out>.
|
ASSIGN mr_tab->* TO <tab_out>.
|
||||||
|
|
||||||
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog(
|
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog( afterclose = client->_event( 'BUTTON_CONFIRM' )
|
||||||
afterclose = client->_event( 'BUTTON_CONFIRM' )
|
|
||||||
stretch = abap_true
|
stretch = abap_true
|
||||||
title = title
|
title = title
|
||||||
* icon = 'sap-icon://edit'
|
* icon = 'sap-icon://edit'
|
||||||
)->content( ).
|
)->content( ).
|
||||||
|
|
||||||
DATA(tab) = popup->table(
|
DATA(tab) = popup->table( client->_bind( <tab_out> ) ).
|
||||||
client->_bind( <tab_out> ) ).
|
|
||||||
|
|
||||||
DATA(lt_comp) = z2ui5_cl_util=>rtti_get_t_attri_by_any( <tab_out> ).
|
DATA(lt_comp) = z2ui5_cl_util=>rtti_get_t_attri_by_any( <tab_out> ).
|
||||||
|
|
||||||
|
@ -63,7 +60,7 @@ CLASS z2ui5_cl_pop_table IMPLEMENTATION.
|
||||||
DATA(cells) = list->cells( ).
|
DATA(cells) = list->cells( ).
|
||||||
|
|
||||||
LOOP AT lt_comp INTO DATA(ls_comp).
|
LOOP AT lt_comp INTO DATA(ls_comp).
|
||||||
cells->text( `{` && ls_comp-name && `}` ).
|
cells->text( |\{{ ls_comp-name }\}| ).
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
DATA(columns) = tab->columns( ).
|
DATA(columns) = tab->columns( ).
|
||||||
|
@ -73,8 +70,7 @@ CLASS z2ui5_cl_pop_table IMPLEMENTATION.
|
||||||
|
|
||||||
popup->get_parent(
|
popup->get_parent(
|
||||||
)->buttons(
|
)->buttons(
|
||||||
)->button(
|
)->button( text = 'OK'
|
||||||
text = 'OK'
|
|
||||||
press = client->_event( 'BUTTON_CONFIRM' )
|
press = client->_event( 'BUTTON_CONFIRM' )
|
||||||
type = 'Emphasized' ).
|
type = 'Emphasized' ).
|
||||||
|
|
||||||
|
@ -82,7 +78,6 @@ CLASS z2ui5_cl_pop_table IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD factory.
|
METHOD factory.
|
||||||
FIELD-SYMBOLS <tab> TYPE any.
|
FIELD-SYMBOLS <tab> TYPE any.
|
||||||
|
|
||||||
|
@ -98,7 +93,6 @@ CLASS z2ui5_cl_pop_table IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD on_event.
|
METHOD on_event.
|
||||||
|
|
||||||
CASE client->get( )-event.
|
CASE client->get( )-event.
|
||||||
|
@ -111,12 +105,10 @@ CLASS z2ui5_cl_pop_table IMPLEMENTATION.
|
||||||
client->popup_destroy( ).
|
client->popup_destroy( ).
|
||||||
client->nav_app_leave( client->get_app( client->get( )-s_draft-id_prev_app_stack ) ).
|
client->nav_app_leave( client->get_app( client->get( )-s_draft-id_prev_app_stack ) ).
|
||||||
|
|
||||||
|
|
||||||
ENDCASE.
|
ENDCASE.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD on_event_confirm.
|
METHOD on_event_confirm.
|
||||||
|
|
||||||
client->popup_destroy( ).
|
client->popup_destroy( ).
|
||||||
|
@ -124,7 +116,6 @@ CLASS z2ui5_cl_pop_table IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD result.
|
METHOD result.
|
||||||
|
|
||||||
result = ms_result.
|
result = ms_result.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_pop_textedit DEFINITION
|
CLASS z2ui5_cl_pop_textedit DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
INTERFACES z2ui5_if_app.
|
INTERFACES z2ui5_if_app.
|
||||||
|
@ -21,11 +20,13 @@ CLASS z2ui5_cl_pop_textedit DEFINITION
|
||||||
DATA mv_title TYPE string.
|
DATA mv_title TYPE string.
|
||||||
DATA mv_check_editable TYPE abap_bool.
|
DATA mv_check_editable TYPE abap_bool.
|
||||||
DATA check_initialized TYPE abap_bool.
|
DATA check_initialized TYPE abap_bool.
|
||||||
|
|
||||||
TYPES:
|
TYPES:
|
||||||
BEGIN OF ty_s_result,
|
BEGIN OF ty_s_result,
|
||||||
text TYPE string,
|
text TYPE string,
|
||||||
check_confirmed TYPE abap_bool,
|
check_confirmed TYPE abap_bool,
|
||||||
END OF ty_s_result.
|
END OF ty_s_result.
|
||||||
|
|
||||||
DATA ms_result TYPE ty_s_result.
|
DATA ms_result TYPE ty_s_result.
|
||||||
|
|
||||||
METHODS display.
|
METHODS display.
|
||||||
|
@ -35,13 +36,12 @@ CLASS z2ui5_cl_pop_textedit DEFINITION
|
||||||
VALUE(result) TYPE ty_s_result.
|
VALUE(result) TYPE ty_s_result.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_pop_textedit IMPLEMENTATION.
|
CLASS z2ui5_cl_pop_textedit IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD factory.
|
METHOD factory.
|
||||||
|
|
||||||
r_result = NEW #( ).
|
r_result = NEW #( ).
|
||||||
|
@ -54,8 +54,7 @@ CLASS z2ui5_cl_pop_textedit IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD display.
|
METHOD display.
|
||||||
|
|
||||||
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog(
|
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog( afterclose = client->_event( 'BUTTON_TEXTAREA_CANCEL' )
|
||||||
afterclose = client->_event( 'BUTTON_TEXTAREA_CANCEL' )
|
|
||||||
stretch = mv_stretch_active
|
stretch = mv_stretch_active
|
||||||
title = mv_title
|
title = mv_title
|
||||||
icon = 'sap-icon://edit'
|
icon = 'sap-icon://edit'
|
||||||
|
@ -65,11 +64,9 @@ CLASS z2ui5_cl_pop_textedit IMPLEMENTATION.
|
||||||
value = client->_bind_edit( ms_result-text )
|
value = client->_bind_edit( ms_result-text )
|
||||||
)->get_parent(
|
)->get_parent(
|
||||||
)->buttons(
|
)->buttons(
|
||||||
)->button(
|
)->button( text = 'Cancel'
|
||||||
text = 'Cancel'
|
|
||||||
press = client->_event( 'BUTTON_TEXTAREA_CANCEL' )
|
press = client->_event( 'BUTTON_TEXTAREA_CANCEL' )
|
||||||
)->button(
|
)->button( text = 'Confirm'
|
||||||
text = 'Confirm'
|
|
||||||
press = client->_event( 'BUTTON_TEXTAREA_CONFIRM' )
|
press = client->_event( 'BUTTON_TEXTAREA_CONFIRM' )
|
||||||
type = 'Emphasized' ).
|
type = 'Emphasized' ).
|
||||||
|
|
||||||
|
@ -77,7 +74,6 @@ CLASS z2ui5_cl_pop_textedit IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_app~main.
|
METHOD z2ui5_if_app~main.
|
||||||
|
|
||||||
me->client = client.
|
me->client = client.
|
||||||
|
@ -105,5 +101,4 @@ CLASS z2ui5_cl_pop_textedit IMPLEMENTATION.
|
||||||
METHOD result.
|
METHOD result.
|
||||||
result = ms_result.
|
result = ms_result.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_pop_to_confirm DEFINITION
|
CLASS z2ui5_cl_pop_to_confirm DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -41,22 +40,20 @@ CLASS z2ui5_cl_pop_to_confirm DEFINITION
|
||||||
DATA check_result_confirmed TYPE abap_bool.
|
DATA check_result_confirmed TYPE abap_bool.
|
||||||
DATA event_confirm TYPE string.
|
DATA event_confirm TYPE string.
|
||||||
DATA event_canceled TYPE string.
|
DATA event_canceled TYPE string.
|
||||||
|
|
||||||
METHODS view_display.
|
METHODS view_display.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_pop_to_confirm IMPLEMENTATION.
|
CLASS z2ui5_cl_pop_to_confirm IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD result.
|
METHOD result.
|
||||||
|
|
||||||
result = check_result_confirmed.
|
result = check_result_confirmed.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD factory.
|
METHOD factory.
|
||||||
|
|
||||||
r_result = NEW #( ).
|
r_result = NEW #( ).
|
||||||
|
@ -69,14 +66,11 @@ CLASS z2ui5_cl_pop_to_confirm IMPLEMENTATION.
|
||||||
r_result->event_confirm = i_event_confirm.
|
r_result->event_confirm = i_event_confirm.
|
||||||
r_result->event_canceled = i_event_cancel.
|
r_result->event_canceled = i_event_cancel.
|
||||||
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD view_display.
|
METHOD view_display.
|
||||||
|
|
||||||
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog(
|
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog( title = title
|
||||||
title = title
|
|
||||||
icon = icon
|
icon = icon
|
||||||
afterclose = client->_event( 'BUTTON_CANCEL' )
|
afterclose = client->_event( 'BUTTON_CANCEL' )
|
||||||
)->content(
|
)->content(
|
||||||
|
@ -84,11 +78,9 @@ CLASS z2ui5_cl_pop_to_confirm IMPLEMENTATION.
|
||||||
)->text( question_text
|
)->text( question_text
|
||||||
)->get_parent( )->get_parent(
|
)->get_parent( )->get_parent(
|
||||||
)->buttons(
|
)->buttons(
|
||||||
)->button(
|
)->button( text = button_text_cancel
|
||||||
text = button_text_cancel
|
|
||||||
press = client->_event( 'BUTTON_CANCEL' )
|
press = client->_event( 'BUTTON_CANCEL' )
|
||||||
)->button(
|
)->button( text = button_text_confirm
|
||||||
text = button_text_confirm
|
|
||||||
press = client->_event( 'BUTTON_CONFIRM' )
|
press = client->_event( 'BUTTON_CONFIRM' )
|
||||||
type = 'Emphasized' ).
|
type = 'Emphasized' ).
|
||||||
|
|
||||||
|
@ -96,7 +88,6 @@ CLASS z2ui5_cl_pop_to_confirm IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_app~main.
|
METHOD z2ui5_if_app~main.
|
||||||
|
|
||||||
me->client = client.
|
me->client = client.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
CLASS z2ui5_cl_pop_to_inform DEFINITION
|
CLASS z2ui5_cl_pop_to_inform DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PUBLIC.
|
||||||
CREATE PUBLIC .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -23,14 +22,14 @@ CLASS z2ui5_cl_pop_to_inform DEFINITION
|
||||||
DATA question_text TYPE string.
|
DATA question_text TYPE string.
|
||||||
DATA button_text_confirm TYPE string.
|
DATA button_text_confirm TYPE string.
|
||||||
DATA check_initialized TYPE abap_bool.
|
DATA check_initialized TYPE abap_bool.
|
||||||
|
|
||||||
METHODS view_display.
|
METHODS view_display.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_pop_to_inform IMPLEMENTATION.
|
CLASS z2ui5_cl_pop_to_inform IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD factory.
|
METHOD factory.
|
||||||
|
|
||||||
r_result = NEW #( ).
|
r_result = NEW #( ).
|
||||||
|
@ -41,11 +40,9 @@ CLASS z2ui5_cl_pop_to_inform IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD view_display.
|
METHOD view_display.
|
||||||
|
|
||||||
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog(
|
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( )->dialog( title = title
|
||||||
title = title
|
|
||||||
icon = icon
|
icon = icon
|
||||||
afterclose = client->_event( 'BUTTON_CONFIRM' )
|
afterclose = client->_event( 'BUTTON_CONFIRM' )
|
||||||
)->content(
|
)->content(
|
||||||
|
@ -53,8 +50,7 @@ CLASS z2ui5_cl_pop_to_inform IMPLEMENTATION.
|
||||||
)->text( question_text
|
)->text( question_text
|
||||||
)->get_parent( )->get_parent(
|
)->get_parent( )->get_parent(
|
||||||
)->buttons(
|
)->buttons(
|
||||||
)->button(
|
)->button( text = button_text_confirm
|
||||||
text = button_text_confirm
|
|
||||||
press = client->_event( 'BUTTON_CONFIRM' )
|
press = client->_event( 'BUTTON_CONFIRM' )
|
||||||
type = 'Emphasized' ).
|
type = 'Emphasized' ).
|
||||||
|
|
||||||
|
@ -62,7 +58,6 @@ CLASS z2ui5_cl_pop_to_inform IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_app~main.
|
METHOD z2ui5_if_app~main.
|
||||||
|
|
||||||
me->client = client.
|
me->client = client.
|
||||||
|
|
|
@ -1,69 +1,67 @@
|
||||||
CLASS z2ui5_cl_pop_to_select DEFINITION
|
CLASS z2ui5_cl_pop_to_select DEFINITION
|
||||||
PUBLIC
|
PUBLIC FINAL
|
||||||
FINAL
|
CREATE PROTECTED.
|
||||||
CREATE PROTECTED .
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
INTERFACES z2ui5_if_app .
|
INTERFACES z2ui5_if_app.
|
||||||
|
|
||||||
TYPES:
|
TYPES:
|
||||||
BEGIN OF ty_s_result,
|
BEGIN OF ty_s_result,
|
||||||
row TYPE REF TO data,
|
row TYPE REF TO data,
|
||||||
table TYPE REF TO data,
|
table TYPE REF TO data,
|
||||||
check_confirmed TYPE abap_bool,
|
check_confirmed TYPE abap_bool,
|
||||||
END OF ty_s_result .
|
END OF ty_s_result.
|
||||||
|
|
||||||
DATA ms_result TYPE ty_s_result .
|
DATA ms_result TYPE ty_s_result.
|
||||||
DATA mr_tab TYPE REF TO data .
|
DATA mr_tab TYPE REF TO data.
|
||||||
DATA mr_tab_popup TYPE REF TO data ##NEEDED.
|
DATA mr_tab_popup TYPE REF TO data ##NEEDED.
|
||||||
DATA mr_tab_popup_backup TYPE REF TO data ##NEEDED.
|
DATA mr_tab_popup_backup TYPE REF TO data ##NEEDED.
|
||||||
|
|
||||||
CLASS-METHODS factory
|
CLASS-METHODS factory
|
||||||
IMPORTING
|
IMPORTING
|
||||||
!i_tab TYPE STANDARD TABLE
|
i_tab TYPE STANDARD TABLE
|
||||||
!i_title TYPE clike OPTIONAL
|
i_title TYPE clike OPTIONAL
|
||||||
!i_sort_field TYPE clike OPTIONAL
|
i_sort_field TYPE clike OPTIONAL
|
||||||
!i_descending TYPE abap_bool OPTIONAL
|
i_descending TYPE abap_bool OPTIONAL
|
||||||
!i_contentwidth TYPE clike OPTIONAL
|
i_contentwidth TYPE clike OPTIONAL
|
||||||
!i_contentheight TYPE clike OPTIONAL
|
i_contentheight TYPE clike OPTIONAL
|
||||||
!i_growingthreshold TYPE clike OPTIONAL
|
i_growingthreshold TYPE clike OPTIONAL
|
||||||
!i_multiselect TYPE abap_bool OPTIONAL
|
i_multiselect TYPE abap_bool OPTIONAL
|
||||||
i_event_canceled TYPE string OPTIONAL
|
i_event_canceled TYPE string OPTIONAL
|
||||||
i_event_confirmed TYPE string OPTIONAL
|
i_event_confirmed TYPE string OPTIONAL
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(r_result) TYPE REF TO z2ui5_cl_pop_to_select .
|
VALUE(r_result) TYPE REF TO z2ui5_cl_pop_to_select.
|
||||||
|
|
||||||
METHODS result
|
METHODS result
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE ty_s_result.
|
VALUE(result) TYPE ty_s_result.
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
|
|
||||||
DATA check_initialized TYPE abap_bool .
|
DATA check_initialized TYPE abap_bool.
|
||||||
DATA check_table_line TYPE abap_bool .
|
DATA check_table_line TYPE abap_bool.
|
||||||
DATA client TYPE REF TO z2ui5_if_client .
|
DATA client TYPE REF TO z2ui5_if_client.
|
||||||
DATA title TYPE string .
|
DATA title TYPE string.
|
||||||
DATA sort_field TYPE string .
|
DATA sort_field TYPE string.
|
||||||
DATA content_width TYPE string .
|
DATA content_width TYPE string.
|
||||||
DATA content_height TYPE string .
|
DATA content_height TYPE string.
|
||||||
DATA growing_threshold TYPE string .
|
DATA growing_threshold TYPE string.
|
||||||
DATA descending TYPE abap_bool .
|
DATA descending TYPE abap_bool.
|
||||||
DATA multiselect TYPE abap_bool.
|
DATA multiselect TYPE abap_bool.
|
||||||
DATA event_confirmed TYPE string.
|
DATA event_confirmed TYPE string.
|
||||||
DATA event_canceled TYPE string.
|
DATA event_canceled TYPE string.
|
||||||
|
|
||||||
METHODS on_event .
|
METHODS on_event.
|
||||||
METHODS display .
|
METHODS display.
|
||||||
METHODS set_output_table .
|
METHODS set_output_table.
|
||||||
METHODS on_event_confirm .
|
METHODS on_event_confirm.
|
||||||
METHODS on_event_search .
|
METHODS on_event_search.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS z2ui5_cl_pop_to_select IMPLEMENTATION.
|
CLASS z2ui5_cl_pop_to_select IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD factory.
|
METHOD factory.
|
||||||
|
|
||||||
r_result = NEW #( ).
|
r_result = NEW #( ).
|
||||||
|
@ -89,22 +87,26 @@ CLASS z2ui5_cl_pop_to_select IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD display.
|
METHOD display.
|
||||||
|
|
||||||
FIELD-SYMBOLS <tab_out> TYPE STANDARD TABLE.
|
FIELD-SYMBOLS <tab_out> TYPE STANDARD TABLE.
|
||||||
|
|
||||||
ASSIGN mr_tab_popup->* TO <tab_out>.
|
ASSIGN mr_tab_popup->* TO <tab_out>.
|
||||||
|
|
||||||
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( ).
|
DATA(popup) = z2ui5_cl_xml_view=>factory_popup( ).
|
||||||
DATA(tab) = popup->table_select_dialog(
|
DATA(tab) = popup->table_select_dialog(
|
||||||
items = `{path:'`
|
items = |\{path:'|
|
||||||
&& client->_bind_edit( val = <tab_out> path = abap_true )
|
&& client->_bind_edit( val = <tab_out>
|
||||||
&& `', sorter : { path : '` && to_upper( sort_field ) && `', descending : `
|
path = abap_true )
|
||||||
|
&& |', sorter : \{ path : '{ to_upper( sort_field ) }', descending : |
|
||||||
&& z2ui5_cl_util=>boolean_abap_2_json( me->descending )
|
&& z2ui5_cl_util=>boolean_abap_2_json( me->descending )
|
||||||
&& ` } }`
|
&& | \} \}|
|
||||||
cancel = client->_event( 'CANCEL' )
|
cancel = client->_event( 'CANCEL' )
|
||||||
search = client->_event( val = 'SEARCH' t_arg = VALUE #( ( `${$parameters>/value}` ) ( `${$parameters>/clearButtonPressed}` ) ) )
|
search = client->_event(
|
||||||
confirm = client->_event( val = 'CONFIRM' t_arg = VALUE #( ( `${$parameters>/selectedContexts[0]/sPath}` ) ) )
|
val = 'SEARCH'
|
||||||
|
t_arg = VALUE #( ( `${$parameters>/value}` ) ( `${$parameters>/clearButtonPressed}` ) ) )
|
||||||
|
confirm = client->_event( val = 'CONFIRM'
|
||||||
|
t_arg = VALUE #( ( `${$parameters>/selectedContexts[0]/sPath}` ) ) )
|
||||||
growing = abap_true
|
growing = abap_true
|
||||||
contentwidth = content_width
|
contentwidth = content_width
|
||||||
contentheight = content_height
|
contentheight = content_height
|
||||||
|
@ -120,13 +122,15 @@ CLASS z2ui5_cl_pop_to_select IMPLEMENTATION.
|
||||||
DATA(cells) = list->cells( ).
|
DATA(cells) = list->cells( ).
|
||||||
|
|
||||||
LOOP AT lt_comp INTO DATA(ls_comp).
|
LOOP AT lt_comp INTO DATA(ls_comp).
|
||||||
cells->text( `{` && ls_comp-name && `}` ).
|
cells->text( |\{{ ls_comp-name }\}| ).
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
DATA(columns) = tab->columns( ).
|
DATA(columns) = tab->columns( ).
|
||||||
LOOP AT lt_comp INTO ls_comp.
|
LOOP AT lt_comp INTO ls_comp.
|
||||||
DATA(text) = COND #(
|
DATA(text) = COND #(
|
||||||
LET data_element_name = substring_after( val = CAST cl_abap_elemdescr( ls_comp-type )->absolute_name sub = '\TYPE=' )
|
LET data_element_name = substring_after(
|
||||||
|
val = CAST cl_abap_elemdescr( ls_comp-type )->absolute_name
|
||||||
|
sub = '\TYPE=' )
|
||||||
medium_label = z2ui5_cl_util=>rtti_get_data_element_texts( data_element_name )-medium IN
|
medium_label = z2ui5_cl_util=>rtti_get_data_element_texts( data_element_name )-medium IN
|
||||||
WHEN medium_label IS NOT INITIAL
|
WHEN medium_label IS NOT INITIAL
|
||||||
THEN medium_label
|
THEN medium_label
|
||||||
|
@ -138,7 +142,6 @@ CLASS z2ui5_cl_pop_to_select IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD z2ui5_if_app~main.
|
METHOD z2ui5_if_app~main.
|
||||||
|
|
||||||
me->client = client.
|
me->client = client.
|
||||||
|
@ -154,7 +157,6 @@ CLASS z2ui5_cl_pop_to_select IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD on_event.
|
METHOD on_event.
|
||||||
|
|
||||||
CASE client->get( )-event.
|
CASE client->get( )-event.
|
||||||
|
@ -163,7 +165,6 @@ CLASS z2ui5_cl_pop_to_select IMPLEMENTATION.
|
||||||
ms_result-check_confirmed = abap_true.
|
ms_result-check_confirmed = abap_true.
|
||||||
on_event_confirm( ).
|
on_event_confirm( ).
|
||||||
|
|
||||||
|
|
||||||
WHEN 'CANCEL'.
|
WHEN 'CANCEL'.
|
||||||
client->popup_destroy( ).
|
client->popup_destroy( ).
|
||||||
client->nav_app_leave( client->get_app( client->get( )-s_draft-id_prev_app_stack ) ).
|
client->nav_app_leave( client->get_app( client->get( )-s_draft-id_prev_app_stack ) ).
|
||||||
|
@ -176,14 +177,12 @@ CLASS z2ui5_cl_pop_to_select IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD result.
|
METHOD result.
|
||||||
|
|
||||||
result = ms_result.
|
result = ms_result.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD set_output_table.
|
METHOD set_output_table.
|
||||||
|
|
||||||
FIELD-SYMBOLS <row> TYPE any.
|
FIELD-SYMBOLS <row> TYPE any.
|
||||||
|
@ -193,6 +192,7 @@ CLASS z2ui5_cl_pop_to_select IMPLEMENTATION.
|
||||||
FIELD-SYMBOLS <tab_out2> TYPE STANDARD TABLE.
|
FIELD-SYMBOLS <tab_out2> TYPE STANDARD TABLE.
|
||||||
FIELD-SYMBOLS <field> TYPE any.
|
FIELD-SYMBOLS <field> TYPE any.
|
||||||
DATA lr_row TYPE REF TO data.
|
DATA lr_row TYPE REF TO data.
|
||||||
|
|
||||||
ASSIGN mr_tab->* TO <tab>.
|
ASSIGN mr_tab->* TO <tab>.
|
||||||
|
|
||||||
DATA(lo_type) = cl_abap_structdescr=>describe_by_data( <tab> ).
|
DATA(lo_type) = cl_abap_structdescr=>describe_by_data( <tab> ).
|
||||||
|
@ -203,12 +203,14 @@ CLASS z2ui5_cl_pop_to_select IMPLEMENTATION.
|
||||||
CATCH cx_root.
|
CATCH cx_root.
|
||||||
check_table_line = abap_true.
|
check_table_line = abap_true.
|
||||||
DATA(lo_elem) = CAST cl_abap_elemdescr( lo_table->get_table_line_type( ) ).
|
DATA(lo_elem) = CAST cl_abap_elemdescr( lo_table->get_table_line_type( ) ).
|
||||||
INSERT VALUE #( name = 'TAB_LINE' type = CAST #( lo_elem ) ) INTO TABLE lt_comp.
|
INSERT VALUE #( name = 'TAB_LINE'
|
||||||
|
type = CAST #( lo_elem ) ) INTO TABLE lt_comp.
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
|
|
||||||
IF NOT line_exists( lt_comp[ name = `ZZSELKZ` ] ).
|
IF NOT line_exists( lt_comp[ name = `ZZSELKZ` ] ).
|
||||||
DATA(lo_type_bool) = cl_abap_structdescr=>describe_by_name( 'ABAP_BOOL' ).
|
DATA(lo_type_bool) = cl_abap_structdescr=>describe_by_name( 'ABAP_BOOL' ).
|
||||||
INSERT VALUE #( name = `ZZSELKZ` type = CAST #( lo_type_bool ) ) INTO TABLE lt_comp.
|
INSERT VALUE #( name = `ZZSELKZ`
|
||||||
|
type = CAST #( lo_type_bool ) ) INTO TABLE lt_comp.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
DATA(lo_line_type) = cl_abap_structdescr=>create( lt_comp ).
|
DATA(lo_line_type) = cl_abap_structdescr=>create( lt_comp ).
|
||||||
|
@ -246,6 +248,7 @@ CLASS z2ui5_cl_pop_to_select IMPLEMENTATION.
|
||||||
FIELD-SYMBOLS <row_result> TYPE any.
|
FIELD-SYMBOLS <row_result> TYPE any.
|
||||||
FIELD-SYMBOLS <table_result> TYPE ANY TABLE.
|
FIELD-SYMBOLS <table_result> TYPE ANY TABLE.
|
||||||
FIELD-SYMBOLS <table_line_selected> TYPE any.
|
FIELD-SYMBOLS <table_line_selected> TYPE any.
|
||||||
|
|
||||||
ASSIGN mr_tab_popup->* TO <tab>.
|
ASSIGN mr_tab_popup->* TO <tab>.
|
||||||
ASSIGN ms_result-table->* TO <table_result>.
|
ASSIGN ms_result-table->* TO <table_result>.
|
||||||
|
|
||||||
|
@ -277,11 +280,11 @@ CLASS z2ui5_cl_pop_to_select IMPLEMENTATION.
|
||||||
|
|
||||||
client->popup_destroy( ).
|
client->popup_destroy( ).
|
||||||
client->nav_app_leave( client->get_app( client->get( )-s_draft-id_prev_app_stack ) ).
|
client->nav_app_leave( client->get_app( client->get( )-s_draft-id_prev_app_stack ) ).
|
||||||
client->follow_up_action( client->_event( val = event_confirmed r_data = <table_result> ) ).
|
client->follow_up_action( client->_event( val = event_confirmed
|
||||||
|
r_data = <table_result> ) ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD on_event_search.
|
METHOD on_event_search.
|
||||||
|
|
||||||
FIELD-SYMBOLS <tab_out> TYPE STANDARD TABLE.
|
FIELD-SYMBOLS <tab_out> TYPE STANDARD TABLE.
|
||||||
|
@ -302,7 +305,7 @@ CLASS z2ui5_cl_pop_to_select IMPLEMENTATION.
|
||||||
LOOP AT <tab_out> ASSIGNING <row2>.
|
LOOP AT <tab_out> ASSIGNING <row2>.
|
||||||
DATA(lv_check_continue) = abap_false.
|
DATA(lv_check_continue) = abap_false.
|
||||||
LOOP AT lt_comp INTO DATA(ls_comp).
|
LOOP AT lt_comp INTO DATA(ls_comp).
|
||||||
DATA(lv_assign) = '<ROW2>-' && ls_comp-name.
|
DATA(lv_assign) = |<ROW2>-{ ls_comp-name }|.
|
||||||
ASSIGN (lv_assign) TO <field2>.
|
ASSIGN (lv_assign) TO <field2>.
|
||||||
ASSERT sy-subrc = 0.
|
ASSERT sy-subrc = 0.
|
||||||
IF to_upper( <field2> ) CS to_upper( ls_arg ).
|
IF to_upper( <field2> ) CS to_upper( ls_arg ).
|
||||||
|
@ -318,5 +321,4 @@ CLASS z2ui5_cl_pop_to_select IMPLEMENTATION.
|
||||||
client->popup_model_update( ).
|
client->popup_model_update( ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
CLASS ltcl_app_startup_test DEFINITION FINAL FOR TESTING
|
CLASS ltcl_app_startup_test DEFINITION FINAL
|
||||||
DURATION SHORT
|
FOR TESTING RISK LEVEL DANGEROUS DURATION SHORT.
|
||||||
RISK LEVEL DANGEROUS.
|
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS first_test FOR TESTING RAISING cx_static_check.
|
METHODS first_test FOR TESTING RAISING cx_static_check.
|
||||||
|
@ -9,11 +8,9 @@ ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
CLASS ltcl_app_startup_test IMPLEMENTATION.
|
CLASS ltcl_app_startup_test IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD first_test.
|
METHOD first_test.
|
||||||
|
|
||||||
DATA(lo_app) = z2ui5_cl_app_startup=>factory( ) ##NEEDED.
|
DATA(lo_app) = z2ui5_cl_app_startup=>factory( ) ##NEEDED.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -1,14 +1,13 @@
|
||||||
CLASS ltcl_unit_test DEFINITION FINAL FOR TESTING
|
CLASS ltcl_unit_test DEFINITION FINAL
|
||||||
DURATION MEDIUM
|
FOR TESTING RISK LEVEL DANGEROUS DURATION MEDIUM.
|
||||||
RISK LEVEL DANGEROUS.
|
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS test_create FOR TESTING RAISING cx_static_check.
|
METHODS test_create FOR TESTING RAISING cx_static_check.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_unit_test IMPLEMENTATION.
|
|
||||||
|
|
||||||
|
CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
METHOD test_create.
|
METHOD test_create.
|
||||||
|
|
||||||
DATA(lo_view) = z2ui5_cl_xml_view=>factory( ).
|
DATA(lo_view) = z2ui5_cl_xml_view=>factory( ).
|
||||||
|
@ -19,5 +18,4 @@ CLASS ltcl_unit_test IMPLEMENTATION.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
|
@ -13,6 +13,6 @@ INTERFACE z2ui5_if_app PUBLIC.
|
||||||
|
|
||||||
METHODS main
|
METHODS main
|
||||||
IMPORTING
|
IMPORTING
|
||||||
client TYPE REF TO z2ui5_if_client.
|
!client TYPE REF TO z2ui5_if_client.
|
||||||
|
|
||||||
ENDINTERFACE.
|
ENDINTERFACE.
|
||||||
|
|
|
@ -41,7 +41,7 @@ INTERFACE z2ui5_if_client
|
||||||
METHODS nest_view_display
|
METHODS nest_view_display
|
||||||
IMPORTING
|
IMPORTING
|
||||||
val TYPE clike
|
val TYPE clike
|
||||||
id TYPE clike
|
!id TYPE clike
|
||||||
method_insert TYPE clike
|
method_insert TYPE clike
|
||||||
method_destroy TYPE clike OPTIONAL.
|
method_destroy TYPE clike OPTIONAL.
|
||||||
|
|
||||||
|
@ -51,7 +51,7 @@ INTERFACE z2ui5_if_client
|
||||||
METHODS nest2_view_display
|
METHODS nest2_view_display
|
||||||
IMPORTING
|
IMPORTING
|
||||||
val TYPE clike
|
val TYPE clike
|
||||||
id TYPE clike
|
!id TYPE clike
|
||||||
method_insert TYPE clike
|
method_insert TYPE clike
|
||||||
method_destroy TYPE clike OPTIONAL.
|
method_destroy TYPE clike OPTIONAL.
|
||||||
|
|
||||||
|
@ -70,7 +70,7 @@ INTERFACE z2ui5_if_client
|
||||||
|
|
||||||
METHODS popover_display
|
METHODS popover_display
|
||||||
IMPORTING
|
IMPORTING
|
||||||
xml TYPE clike
|
!xml TYPE clike
|
||||||
by_id TYPE clike.
|
by_id TYPE clike.
|
||||||
|
|
||||||
METHODS popover_destroy.
|
METHODS popover_destroy.
|
||||||
|
@ -87,7 +87,7 @@ INTERFACE z2ui5_if_client
|
||||||
|
|
||||||
METHODS get_app
|
METHODS get_app
|
||||||
IMPORTING
|
IMPORTING
|
||||||
id TYPE clike OPTIONAL
|
!id TYPE clike OPTIONAL
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE REF TO z2ui5_if_app.
|
VALUE(result) TYPE REF TO z2ui5_if_app.
|
||||||
|
|
||||||
|
@ -105,42 +105,42 @@ INTERFACE z2ui5_if_client
|
||||||
|
|
||||||
METHODS message_box_display
|
METHODS message_box_display
|
||||||
IMPORTING
|
IMPORTING
|
||||||
text TYPE any
|
!text TYPE any
|
||||||
type TYPE clike DEFAULT `information`
|
!type TYPE clike DEFAULT `information`
|
||||||
title TYPE clike OPTIONAL
|
!title TYPE clike OPTIONAL
|
||||||
styleclass TYPE clike OPTIONAL
|
styleclass TYPE clike OPTIONAL
|
||||||
onclose TYPE clike OPTIONAL
|
onclose TYPE clike OPTIONAL
|
||||||
actions TYPE string_table OPTIONAL
|
actions TYPE string_table OPTIONAL
|
||||||
emphasizedaction TYPE clike OPTIONAL
|
emphasizedaction TYPE clike OPTIONAL
|
||||||
initialfocus TYPE clike OPTIONAL
|
initialfocus TYPE clike OPTIONAL
|
||||||
textdirection TYPE clike OPTIONAL
|
textdirection TYPE clike OPTIONAL
|
||||||
icon TYPE clike OPTIONAL
|
!icon TYPE clike OPTIONAL
|
||||||
details TYPE clike OPTIONAL
|
details TYPE clike OPTIONAL
|
||||||
closeonnavigation TYPE abap_bool DEFAULT abap_true.
|
closeonnavigation TYPE abap_bool DEFAULT abap_true.
|
||||||
|
|
||||||
METHODS message_toast_display
|
METHODS message_toast_display
|
||||||
IMPORTING
|
IMPORTING
|
||||||
text TYPE clike
|
!text TYPE clike
|
||||||
duration TYPE clike OPTIONAL
|
!duration TYPE clike OPTIONAL
|
||||||
width TYPE clike OPTIONAL
|
!width TYPE clike OPTIONAL
|
||||||
my TYPE clike OPTIONAL
|
my TYPE clike OPTIONAL
|
||||||
at TYPE clike OPTIONAL
|
!at TYPE clike OPTIONAL
|
||||||
of TYPE clike OPTIONAL
|
!of TYPE clike OPTIONAL
|
||||||
offset TYPE clike OPTIONAL
|
!offset TYPE clike OPTIONAL
|
||||||
collision TYPE clike OPTIONAL
|
collision TYPE clike OPTIONAL
|
||||||
onclose TYPE clike DEFAULT ``
|
onclose TYPE clike DEFAULT ``
|
||||||
autoclose TYPE abap_bool DEFAULT abap_true
|
autoclose TYPE abap_bool DEFAULT abap_true
|
||||||
animationtimingfunction TYPE clike OPTIONAL
|
animationtimingfunction TYPE clike OPTIONAL
|
||||||
animationduration TYPE clike OPTIONAL
|
animationduration TYPE clike OPTIONAL
|
||||||
closeonbrowsernavigation TYPE abap_bool DEFAULT abap_true
|
closeonbrowsernavigation TYPE abap_bool DEFAULT abap_true
|
||||||
class TYPE clike OPTIONAL.
|
!class TYPE clike OPTIONAL.
|
||||||
|
|
||||||
METHODS _event
|
METHODS _event
|
||||||
IMPORTING
|
IMPORTING
|
||||||
val TYPE clike OPTIONAL
|
val TYPE clike OPTIONAL
|
||||||
t_arg TYPE string_table OPTIONAL
|
t_arg TYPE string_table OPTIONAL
|
||||||
s_ctrl TYPE z2ui5_if_types=>ty_s_event_control OPTIONAL
|
s_ctrl TYPE z2ui5_if_types=>ty_s_event_control OPTIONAL
|
||||||
r_data type data optional
|
r_data TYPE data OPTIONAL
|
||||||
PREFERRED PARAMETER val
|
PREFERRED PARAMETER val
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
@ -155,10 +155,10 @@ INTERFACE z2ui5_if_client
|
||||||
METHODS _bind
|
METHODS _bind
|
||||||
IMPORTING
|
IMPORTING
|
||||||
val TYPE data
|
val TYPE data
|
||||||
path TYPE abap_bool DEFAULT abap_false
|
!path TYPE abap_bool DEFAULT abap_false
|
||||||
custom_mapper TYPE REF TO z2ui5_if_ajson_mapping OPTIONAL
|
custom_mapper TYPE REF TO z2ui5_if_ajson_mapping OPTIONAL
|
||||||
custom_filter TYPE REF TO z2ui5_if_ajson_filter OPTIONAL
|
custom_filter TYPE REF TO z2ui5_if_ajson_filter OPTIONAL
|
||||||
tab TYPE data OPTIONAL
|
!tab TYPE data OPTIONAL
|
||||||
tab_index TYPE i OPTIONAL
|
tab_index TYPE i OPTIONAL
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
@ -166,13 +166,13 @@ INTERFACE z2ui5_if_client
|
||||||
METHODS _bind_edit
|
METHODS _bind_edit
|
||||||
IMPORTING
|
IMPORTING
|
||||||
val TYPE data
|
val TYPE data
|
||||||
path TYPE abap_bool DEFAULT abap_false
|
!path TYPE abap_bool DEFAULT abap_false
|
||||||
view TYPE string DEFAULT z2ui5_if_client=>cs_view-main
|
view TYPE string DEFAULT z2ui5_if_client=>cs_view-main
|
||||||
custom_mapper TYPE REF TO z2ui5_if_ajson_mapping OPTIONAL
|
custom_mapper TYPE REF TO z2ui5_if_ajson_mapping OPTIONAL
|
||||||
custom_mapper_back TYPE REF TO z2ui5_if_ajson_mapping OPTIONAL
|
custom_mapper_back TYPE REF TO z2ui5_if_ajson_mapping OPTIONAL
|
||||||
custom_filter TYPE REF TO z2ui5_if_ajson_filter OPTIONAL
|
custom_filter TYPE REF TO z2ui5_if_ajson_filter OPTIONAL
|
||||||
custom_filter_back TYPE REF TO z2ui5_if_ajson_filter OPTIONAL
|
custom_filter_back TYPE REF TO z2ui5_if_ajson_filter OPTIONAL
|
||||||
tab TYPE data OPTIONAL
|
!tab TYPE data OPTIONAL
|
||||||
tab_index TYPE i OPTIONAL
|
tab_index TYPE i OPTIONAL
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(result) TYPE string.
|
VALUE(result) TYPE string.
|
||||||
|
@ -180,7 +180,7 @@ INTERFACE z2ui5_if_client
|
||||||
METHODS _bind_local
|
METHODS _bind_local
|
||||||
IMPORTING
|
IMPORTING
|
||||||
val TYPE data
|
val TYPE data
|
||||||
path TYPE abap_bool DEFAULT abap_false
|
!path TYPE abap_bool DEFAULT abap_false
|
||||||
custom_mapper TYPE REF TO z2ui5_if_ajson_mapping OPTIONAL
|
custom_mapper TYPE REF TO z2ui5_if_ajson_mapping OPTIONAL
|
||||||
custom_filter TYPE REF TO z2ui5_if_ajson_filter OPTIONAL
|
custom_filter TYPE REF TO z2ui5_if_ajson_filter OPTIONAL
|
||||||
RETURNING
|
RETURNING
|
||||||
|
@ -192,18 +192,18 @@ INTERFACE z2ui5_if_client
|
||||||
|
|
||||||
METHODS check_on_init
|
METHODS check_on_init
|
||||||
RETURNING
|
RETURNING
|
||||||
value(result) TYPE abap_bool.
|
VALUE(result) TYPE abap_bool.
|
||||||
|
|
||||||
METHODS check_app_prev_stack
|
METHODS check_app_prev_stack
|
||||||
RETURNING
|
RETURNING
|
||||||
value(result) TYPE abap_bool.
|
VALUE(result) TYPE abap_bool.
|
||||||
|
|
||||||
METHODS check_on_navigated
|
METHODS check_on_navigated
|
||||||
RETURNING
|
RETURNING
|
||||||
value(result) TYPE abap_bool.
|
VALUE(result) TYPE abap_bool.
|
||||||
|
|
||||||
METHODS get_app_prev
|
METHODS get_app_prev
|
||||||
RETURNING
|
RETURNING
|
||||||
value(result) TYPE REF TO z2ui5_if_app.
|
VALUE(result) TYPE REF TO z2ui5_if_app.
|
||||||
|
|
||||||
ENDINTERFACE.
|
ENDINTERFACE.
|
||||||
|
|
|
@ -46,7 +46,7 @@ INTERFACE z2ui5_if_types
|
||||||
s_draft TYPE ty_s_draft,
|
s_draft TYPE ty_s_draft,
|
||||||
s_config TYPE ty_s_config,
|
s_config TYPE ty_s_config,
|
||||||
t_comp_params TYPE ty_t_name_value,
|
t_comp_params TYPE ty_t_name_value,
|
||||||
r_event_data type ref to data,
|
r_event_data TYPE REF TO data,
|
||||||
END OF ty_s_get.
|
END OF ty_s_get.
|
||||||
|
|
||||||
TYPES:
|
TYPES:
|
||||||
|
|
Loading…
Reference in New Issue
Block a user