* update naming

* cleanup

* cleanup

* cleanup
This commit is contained in:
oblomov-dev 2024-09-04 09:35:49 +02:00 committed by GitHub
parent 8fbefa0396
commit 3220f107e0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
11 changed files with 155 additions and 328 deletions

View File

@ -4,6 +4,20 @@ CLASS z2ui5_cl_abap_api DEFINITION
PUBLIC SECTION. PUBLIC SECTION.
* abap-api - Serving a Release & Version Independent ABAP Layer
* version: '0.0.1'.
* origin: https://github.com/oblomov-dev/abap-api
* author: https://github.com/oblomov-dev
* license: MIT.
TYPES:
BEGIN OF ty_s_fix_val,
low TYPE string,
high TYPE string,
descr TYPE string,
END OF ty_s_fix_val.
TYPES ty_t_fix_val TYPE STANDARD TABLE OF ty_s_fix_val WITH EMPTY KEY.
TYPES: TYPES:
BEGIN OF ty_s_dfies, BEGIN OF ty_s_dfies,
tabname TYPE c LENGTH 30, tabname TYPE c LENGTH 30,
@ -59,19 +73,19 @@ CLASS z2ui5_cl_abap_api DEFINITION
ty_t_dfies TYPE STANDARD TABLE OF ty_s_dfies WITH EMPTY KEY. ty_t_dfies TYPE STANDARD TABLE OF ty_s_dfies WITH EMPTY KEY.
TYPES: TYPES:
BEGIN OF ty_data_element_texts, BEGIN OF ty_s_data_element_text,
header TYPE string, header TYPE string,
short TYPE string, short TYPE string,
medium TYPE string, medium TYPE string,
long TYPE string, long TYPE string,
END OF ty_data_element_texts . END OF ty_s_data_element_text .
TYPES: TYPES:
BEGIN OF ts_class, BEGIN OF ty_s_class_descr,
classname TYPE string, classname TYPE string,
description TYPE string, description TYPE string,
END OF ts_class. END OF ty_s_class_descr.
TYPES tt_classes TYPE STANDARD TABLE OF ts_class WITH NON-UNIQUE DEFAULT KEY. TYPES tt_classes TYPE STANDARD TABLE OF ty_s_class_descr WITH NON-UNIQUE DEFAULT KEY.
CLASS-METHODS source_get_method CLASS-METHODS source_get_method
IMPORTING IMPORTING
@ -92,7 +106,7 @@ CLASS z2ui5_cl_abap_api DEFINITION
IMPORTING IMPORTING
!i_data_element_name TYPE string !i_data_element_name TYPE string
RETURNING RETURNING
VALUE(result) TYPE ty_data_element_texts. VALUE(result) TYPE ty_s_data_element_text.
CLASS-METHODS conv_decode_x_base64 CLASS-METHODS conv_decode_x_base64
IMPORTING IMPORTING
@ -124,11 +138,7 @@ CLASS z2ui5_cl_abap_api DEFINITION
RETURNING RETURNING
VALUE(result) TYPE tt_classes. VALUE(result) TYPE tt_classes.
CLASS-METHODS xco_get_class_description
IMPORTING
i_classname TYPE clike
RETURNING
VALUE(result) TYPE string.
CLASS-METHODS rtti_get_t_dfies_by_table_name CLASS-METHODS rtti_get_t_dfies_by_table_name
IMPORTING IMPORTING
@ -136,7 +146,21 @@ CLASS z2ui5_cl_abap_api DEFINITION
RETURNING RETURNING
VALUE(result) TYPE ty_t_dfies. VALUE(result) TYPE ty_t_dfies.
CLASS-METHODS rtti_get_t_fixvalues
IMPORTING
elemdescr TYPE REF TO cl_abap_elemdescr
langu TYPE clike
RETURNING
VALUE(result) TYPE ty_t_fix_val.
PROTECTED SECTION. PROTECTED SECTION.
CLASS-METHODS rtti_get_class_descr_on_cloud
IMPORTING
i_classname TYPE clike
RETURNING
VALUE(result) TYPE string.
CLASS-METHODS rtti_get_t_attri_on_prem CLASS-METHODS rtti_get_t_attri_on_prem
IMPORTING IMPORTING
tabname TYPE string tabname TYPE string
@ -149,8 +173,8 @@ CLASS z2ui5_cl_abap_api DEFINITION
RETURNING RETURNING
VALUE(result) TYPE ty_t_dfies ##NEEDED. VALUE(result) TYPE ty_t_dfies ##NEEDED.
PRIVATE SECTION. PRIVATE SECTION.
ENDCLASS. ENDCLASS.
@ -158,6 +182,43 @@ ENDCLASS.
CLASS z2ui5_cl_abap_api IMPLEMENTATION. CLASS z2ui5_cl_abap_api IMPLEMENTATION.
METHOD rtti_get_t_fixvalues.
TYPES:
BEGIN OF fixvalue,
low TYPE c LENGTH 10,
high TYPE c LENGTH 10,
option TYPE c LENGTH 2,
ddlanguage TYPE c LENGTH 1,
ddtext TYPE c LENGTH 60,
END OF fixvalue.
TYPES fixvalues TYPE STANDARD TABLE OF fixvalue WITH EMPTY KEY.
DATA lt_values TYPE fixvalues.
DATA(lv_langu) = ``.
lv_langu = langu.
CALL METHOD elemdescr->('GET_DDIC_FIXED_VALUES')
EXPORTING
p_langu = lv_langu
RECEIVING
p_fixed_values = lt_values
EXCEPTIONS
not_found = 1
no_ddic_type = 2
OTHERS = 3.
LOOP AT lt_values REFERENCE INTO DATA(lr_fix).
INSERT VALUE #( low = lr_fix->low
high = lr_fix->high
descr = lr_fix->ddtext )
INTO TABLE result.
ENDLOOP.
ENDMETHOD.
METHOD conv_decode_x_base64. METHOD conv_decode_x_base64.
TRY. TRY.
@ -401,7 +462,7 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
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 = xco_get_class_description( implementation_name ) ) ). description = rtti_get_class_descr_on_cloud( implementation_name ) ) ).
CATCH cx_root INTO DATA(lx). CATCH cx_root INTO DATA(lx).
@ -627,7 +688,7 @@ CLASS z2ui5_cl_abap_api IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
METHOD xco_get_class_description. METHOD rtti_get_class_descr_on_cloud.
DATA obj TYPE REF TO object. DATA obj TYPE REF TO object.
DATA content TYPE REF TO object. DATA content TYPE REF TO object.

View File

@ -1,97 +0,0 @@
*"* use this source file for the definition and implementation of
*"* local helper classes, interface definitions and type
*"* declarations
CLASS lcl_rfc_bapi DEFINITION CREATE PUBLIC.
PUBLIC SECTION.
CLASS-METHODS factory_rfc_destination
IMPORTING
destination TYPE clike
RETURNING
VALUE(r_result) TYPE REF TO lcl_rfc_bapi.
METHODS bapi_message_getdetail
IMPORTING
id TYPE clike
number TYPE clike
textformat TYPE clike DEFAULT ``
EXPORTING
message TYPE string
error TYPE string.
PROTECTED SECTION.
DATA mv_destination TYPE string.
PRIVATE SECTION.
ENDCLASS.
CLASS lcl_rfc_bapi IMPLEMENTATION.
METHOD factory_rfc_destination.
CREATE OBJECT r_result.
r_result->mv_destination = destination.
TRY.
* DATA(lo_rfc_dest) = cl_rfc_destination_provider=>create_by_cloud_destination(
* i_name = |FSD_RFC|
** i_service_instance_name = |CA_EXTERNAL_API_SIN|
* ).
*
* DATA(lv_rfc_dest) = lo_rfc_dest->get_destination_name( ).
CATCH cx_root.
ENDTRY.
ENDMETHOD.
METHOD bapi_message_getdetail.
DATA lv_id TYPE c LENGTH 20.
DATA lv_number TYPE n LENGTH 3.
DATA lv_textformat TYPE c LENGTH 3.
DATA lv_message TYPE c LENGTH 220.
lv_id = id.
lv_number = number.
lv_textformat = textformat.
* DATA(lo_rfc_dest) = cl_rfc_destination_provider=>create_by_cloud_destination(
* i_name = |FSD_RFC|
* i_service_instance_name = |CA_EXTERNAL_API_SIN| ).
*
* DATA(lv_rfc_dest) = lo_rfc_dest->get_destination_name( ).
TRY.
DATA(lv_fm_name) = `BAPI_MESSAGE_GETDETAIL`.
CALL FUNCTION lv_fm_name
DESTINATION mv_destination
EXPORTING
id = lv_id " Message class
number = lv_number " Message number
textformat = lv_textformat " Format of text to be displayed
IMPORTING
message = lv_message
EXCEPTIONS
error_message = 2
OTHERS = 1. " Message Short Text
IF sy-subrc <> 0.
error = abap_true.
RETURN.
ENDIF.
CATCH cx_root INTO DATA(x).
error = abap_true.
RETURN.
ENDTRY.
message = lv_message.
ENDMETHOD.
ENDCLASS.

View File

@ -71,32 +71,3 @@ CLASS ltcl_test IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
ENDCLASS. ENDCLASS.
CLASS ltcl_rfc_bapi_test DEFINITION FINAL FOR TESTING
DURATION SHORT
RISK LEVEL HARMLESS.
PRIVATE SECTION.
METHODS:
first_test FOR TESTING RAISING cx_static_check.
ENDCLASS.
CLASS ltcl_rfc_bapi_test IMPLEMENTATION.
METHOD first_test.
DATA(lo_rfc) = lcl_rfc_bapi=>factory_rfc_destination( `NONE` ).
* lo_rfc->bapi_message_getdetail(
* EXPORTING
* id = 'LTVF_EXEC'
* number = '014'
** textformat = ''
* IMPORTING
* message = DATA(lv_message)
* ).
ENDMETHOD.
ENDCLASS.

View File

@ -5,7 +5,7 @@
<VSEOCLASS> <VSEOCLASS>
<CLSNAME>Z2UI5_CL_ABAP_API</CLSNAME> <CLSNAME>Z2UI5_CL_ABAP_API</CLSNAME>
<LANGU>E</LANGU> <LANGU>E</LANGU>
<DESCRIPT>abap2UI5 - running everywhere snippets</DESCRIPT> <DESCRIPT>abap api</DESCRIPT>
<STATE>1</STATE> <STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL> <CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT> <FIXPT>X</FIXPT>

View File

@ -5,6 +5,12 @@ CLASS z2ui5_cl_util DEFINITION
PUBLIC SECTION. PUBLIC SECTION.
* abap-toolkit - Utility Functions for ABAP Cloud & Standard ABAP
* version: '0.0.1'.
* origin: https://github.com/oblomov-dev/abap-toolkit
* author: https://github.com/oblomov-dev
* license: MIT.
TYPES: TYPES:
BEGIN OF ty_s_token, BEGIN OF ty_s_token,
key TYPE string, key TYPE string,
@ -25,25 +31,20 @@ CLASS z2ui5_cl_util DEFINITION
TYPES ty_t_range TYPE STANDARD TABLE OF ty_s_range WITH EMPTY KEY. TYPES ty_t_range TYPE STANDARD TABLE OF ty_s_range WITH EMPTY KEY.
TYPES: TYPES:
BEGIN OF ty_s_sql_multi, BEGIN OF ty_S_sql,
name TYPE string, tabname TYPE string,
t_range TYPE ty_t_range, where TYPE string,
t_token TYPE ty_t_token, END OF ty_S_sql.
END OF ty_s_sql_multi.
TYPES ty_t_filter_multi TYPE STANDARD TABLE OF ty_s_sql_multi WITH EMPTY KEY.
TYPES: TYPES:
BEGIN OF ty_s_sql_result, BEGIN OF ty_s_filter_multi,
table TYPE string, name TYPE string,
END OF ty_s_sql_result. t_range TYPE ty_t_range,
t_token TYPE ty_t_token,
TYPES: s_sql TYPE ty_S_sql,
BEGIN OF ty_s_fix_val, sql_text TYPE string,
low TYPE string, END OF ty_s_filter_multi.
high TYPE string, TYPES ty_t_filter_multi TYPE STANDARD TABLE OF ty_s_filter_multi WITH EMPTY KEY.
descr TYPE string,
END OF ty_s_fix_val.
TYPES ty_t_fix_val TYPE STANDARD TABLE OF ty_s_fix_val WITH EMPTY KEY.
CLASS-METHODS rtti_get_t_attri_by_include CLASS-METHODS rtti_get_t_attri_by_include
IMPORTING IMPORTING
@ -56,7 +57,7 @@ CLASS z2ui5_cl_util DEFINITION
rollname TYPE clike rollname TYPE clike
langu TYPE clike DEFAULT sy-langu langu TYPE clike DEFAULT sy-langu
RETURNING RETURNING
VALUE(result) TYPE ty_t_fix_val ##NEEDED. VALUE(result) TYPE z2ui5_cl_abap_api=>ty_t_fix_val ##NEEDED.
CLASS-METHODS source_get_method2 CLASS-METHODS source_get_method2
IMPORTING IMPORTING
@ -125,11 +126,11 @@ CLASS z2ui5_cl_util DEFINITION
RETURNING RETURNING
VALUE(result) TYPE ty_t_filter_multi. VALUE(result) TYPE ty_t_filter_multi.
CLASS-METHODS sql_get_by_string CLASS-METHODS filter_get_sql_by_sql_string
IMPORTING IMPORTING
val TYPE clike val TYPE clike
RETURNING RETURNING
VALUE(result) TYPE ty_s_sql_result. VALUE(result) TYPE ty_s_sql.
CLASS-METHODS url_param_get CLASS-METHODS url_param_get
IMPORTING IMPORTING
@ -177,28 +178,28 @@ CLASS z2ui5_cl_util DEFINITION
CLASS-METHODS x_raise CLASS-METHODS x_raise
IMPORTING IMPORTING
!v TYPE clike DEFAULT `CX_SY_SUBRC` v TYPE clike DEFAULT `CX_SY_SUBRC`
PREFERRED PARAMETER v. PREFERRED PARAMETER v.
CLASS-METHODS user_get_tech CLASS-METHODS context_get_user_tech
RETURNING RETURNING
VALUE(result) TYPE string. VALUE(result) TYPE string.
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
@ -206,37 +207,37 @@ CLASS z2ui5_cl_util DEFINITION
CLASS-METHODS boolean_check_by_data CLASS-METHODS boolean_check_by_data
IMPORTING IMPORTING
!val TYPE any val TYPE any
RETURNING RETURNING
VALUE(result) TYPE abap_bool. VALUE(result) TYPE abap_bool.
CLASS-METHODS boolean_abap_2_json CLASS-METHODS boolean_abap_2_json
IMPORTING IMPORTING
!val TYPE any val TYPE any
RETURNING RETURNING
VALUE(result) TYPE string. VALUE(result) TYPE string.
CLASS-METHODS json_parse CLASS-METHODS json_parse
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
!val TYPE clike val TYPE clike
RETURNING RETURNING
VALUE(result) TYPE string. VALUE(result) TYPE string.
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.
CLASS-METHODS xml_srtti_parse CLASS-METHODS xml_srtti_parse
IMPORTING IMPORTING
!rtti_data TYPE clike rtti_data TYPE clike
RETURNING RETURNING
VALUE(result) TYPE REF TO data. VALUE(result) TYPE REF TO data.
@ -246,38 +247,38 @@ 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.
CLASS-METHODS c_trim CLASS-METHODS c_trim
IMPORTING IMPORTING
!val TYPE any val TYPE any
RETURNING RETURNING
VALUE(result) TYPE string. VALUE(result) TYPE string.
CLASS-METHODS c_trim_lower CLASS-METHODS c_trim_lower
IMPORTING IMPORTING
!val TYPE clike val TYPE clike
RETURNING RETURNING
VALUE(result) TYPE string. VALUE(result) TYPE string.
CLASS-METHODS url_param_get_tab CLASS-METHODS url_param_get_tab
IMPORTING IMPORTING
!i_val TYPE clike i_val TYPE clike
RETURNING RETURNING
VALUE(rt_params) TYPE z2ui5_if_types=>ty_t_name_value. VALUE(rt_params) TYPE z2ui5_if_types=>ty_t_name_value.
CLASS-METHODS rtti_get_t_attri_by_oref CLASS-METHODS rtti_get_t_attri_by_oref
IMPORTING IMPORTING
!val TYPE any val TYPE any
RETURNING RETURNING
VALUE(result) TYPE abap_attrdescr_tab. VALUE(result) TYPE abap_attrdescr_tab.
CLASS-METHODS rtti_get_t_attri_by_any CLASS-METHODS rtti_get_t_attri_by_any
IMPORTING IMPORTING
!val TYPE any val TYPE any
RETURNING RETURNING
VALUE(result) TYPE cl_abap_structdescr=>component_table. VALUE(result) TYPE cl_abap_structdescr=>component_table.
@ -289,7 +290,7 @@ CLASS z2ui5_cl_util DEFINITION
CLASS-METHODS rtti_get_type_name CLASS-METHODS rtti_get_type_name
IMPORTING IMPORTING
!val TYPE any val TYPE any
RETURNING RETURNING
VALUE(result) TYPE string. VALUE(result) TYPE string.
@ -305,19 +306,19 @@ CLASS z2ui5_cl_util DEFINITION
CLASS-METHODS rtti_check_type_kind_dref CLASS-METHODS rtti_check_type_kind_dref
IMPORTING IMPORTING
!val TYPE any val TYPE any
RETURNING RETURNING
VALUE(result) TYPE abap_bool. VALUE(result) TYPE abap_bool.
CLASS-METHODS rtti_get_type_kind CLASS-METHODS rtti_get_type_kind
IMPORTING IMPORTING
!val TYPE any val TYPE any
RETURNING RETURNING
VALUE(result) TYPE string. VALUE(result) TYPE string.
CLASS-METHODS rtti_check_ref_data CLASS-METHODS rtti_check_ref_data
IMPORTING IMPORTING
!val TYPE any val TYPE any
RETURNING RETURNING
VALUE(result) TYPE abap_bool. VALUE(result) TYPE abap_bool.
@ -385,55 +386,43 @@ 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 get_comps_by_data
IMPORTING
data TYPE REF TO data
RETURNING
VALUE(result) TYPE abap_component_tab ##NEEDED.
CLASS-METHODS get_comp_by_struc
IMPORTING
type TYPE REF TO cl_abap_datadescr
RETURNING
VALUE(result) TYPE abap_component_tab ##NEEDED.
CLASS-METHODS db_delete_by_handle CLASS-METHODS db_delete_by_handle
IMPORTING IMPORTING
!uname TYPE clike OPTIONAL uname TYPE clike OPTIONAL
!handle TYPE clike OPTIONAL handle TYPE clike OPTIONAL
!handle2 TYPE clike OPTIONAL handle2 TYPE clike OPTIONAL
!handle3 TYPE clike OPTIONAL handle3 TYPE clike OPTIONAL
!check_commit TYPE abap_bool DEFAULT abap_true. check_commit TYPE abap_bool DEFAULT abap_true.
CLASS-METHODS db_save CLASS-METHODS db_save
IMPORTING IMPORTING
!uname TYPE clike OPTIONAL uname TYPE clike OPTIONAL
!handle TYPE clike OPTIONAL handle TYPE clike OPTIONAL
!handle2 TYPE clike OPTIONAL handle2 TYPE clike OPTIONAL
!handle3 TYPE clike OPTIONAL handle3 TYPE clike OPTIONAL
!data TYPE any data TYPE any
!check_commit TYPE abap_bool DEFAULT abap_true check_commit TYPE abap_bool DEFAULT abap_true
RETURNING RETURNING
VALUE(result) TYPE string. VALUE(result) TYPE string.
CLASS-METHODS db_load_by_id CLASS-METHODS db_load_by_id
IMPORTING IMPORTING
!id TYPE clike OPTIONAL id TYPE clike OPTIONAL
EXPORTING EXPORTING
VALUE(result) TYPE any. VALUE(result) TYPE any.
CLASS-METHODS db_load_by_handle CLASS-METHODS db_load_by_handle
IMPORTING IMPORTING
!uname TYPE clike OPTIONAL uname TYPE clike OPTIONAL
!handle TYPE clike OPTIONAL handle TYPE clike OPTIONAL
!handle2 TYPE clike OPTIONAL handle2 TYPE clike OPTIONAL
!handle3 TYPE clike OPTIONAL handle3 TYPE clike OPTIONAL
EXPORTING EXPORTING
VALUE(result) TYPE any. VALUE(result) TYPE any.
@ -687,6 +676,7 @@ 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).
@ -1008,7 +998,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
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 ) ).
DATA(comps) = sdescr->get_components( ). DATA(comps) = sdescr->get_components( ).
LOOP AT comps REFERENCE INTO DATA(lr_comp). LOOP AT comps REFERENCE INTO DATA(lr_comp).
@ -1018,10 +1007,8 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
DATA(incl_comps) = rtti_get_t_attri_by_include( lr_comp->type ). DATA(incl_comps) = rtti_get_t_attri_by_include( lr_comp->type ).
LOOP AT incl_comps REFERENCE INTO DATA(lr_incl_comp). LOOP AT incl_comps REFERENCE INTO DATA(lr_incl_comp).
lr_incl_comp->name = lr_incl_comp->name. lr_incl_comp->name = lr_incl_comp->name.
APPEND lr_incl_comp->* TO result. APPEND lr_incl_comp->* TO result.
ENDLOOP. ENDLOOP.
ELSE. ELSE.
@ -1094,45 +1081,11 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
RETURN. RETURN.
ENDIF. ENDIF.
DATA(elemdescr) = CAST cl_abap_elemdescr( typedescr ) ##NEEDED. DATA(elemdescr) = CAST cl_abap_elemdescr( typedescr ).
result = rtti_get_t_fixvalues(
TYPES: elemdescr = elemdescr
BEGIN OF fixvalue, langu = langu ).
low TYPE c LENGTH 10,
high TYPE c LENGTH 10,
option TYPE c LENGTH 2,
ddlanguage TYPE c LENGTH 1,
ddtext TYPE c LENGTH 60,
END OF fixvalue.
TYPES fixvalues TYPE STANDARD TABLE OF fixvalue WITH EMPTY KEY.
DATA lt_values TYPE fixvalues.
CALL METHOD elemdescr->('GET_DDIC_FIXED_VALUES')
EXPORTING
p_langu = langu
RECEIVING
p_fixed_values = lt_values
EXCEPTIONS
not_found = 1
no_ddic_type = 2
OTHERS = 3.
* elemdescr->get_ddic_fixed_values( EXPORTING p_langu = langu
* RECEIVING p_fixed_values = DATA(lt_values)
* EXCEPTIONS not_found = 1
* no_ddic_type = 2
* OTHERS = 3 ).
LOOP AT lt_values REFERENCE INTO DATA(lr_fix).
INSERT VALUE #( low = lr_fix->low
high = lr_fix->high
descr = lr_fix->ddtext )
INTO TABLE result.
ENDLOOP.
CATCH cx_root. CATCH cx_root.
ENDTRY. ENDTRY.
@ -1204,7 +1157,7 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
METHOD sql_get_by_string. METHOD filter_get_sql_by_sql_string.
DATA(lv_sql) = CONV string( val ). DATA(lv_sql) = CONV string( val ).
REPLACE ALL OCCURRENCES OF ` ` IN lv_sql WITH ``. REPLACE ALL OCCURRENCES OF ` ` IN lv_sql WITH ``.
@ -1212,15 +1165,13 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
SPLIT lv_sql AT 'SELECTFROM' INTO DATA(lv_dummy) DATA(lv_tab). SPLIT lv_sql AT 'SELECTFROM' INTO DATA(lv_dummy) DATA(lv_tab).
SPLIT lv_tab AT `FIELDS` INTO lv_tab lv_dummy. SPLIT lv_tab AT `FIELDS` INTO lv_tab lv_dummy.
result-table = lv_tab. result-tabname = lv_tab.
ENDMETHOD. ENDMETHOD.
METHOD time_get_date_by_stampl. METHOD time_get_date_by_stampl.
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.
@ -1230,9 +1181,7 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
METHOD time_get_time_by_stampl. METHOD time_get_time_by_stampl.
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.
@ -1335,7 +1284,7 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
METHOD user_get_tech. METHOD context_get_user_tech.
result = sy-uname. result = sy-uname.
ENDMETHOD. ENDMETHOD.
@ -1449,63 +1398,6 @@ CLASS z2ui5_cl_util IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
METHOD get_comps_by_data.
* TRY.
* FIELD-SYMBOLS <any> type any.
* ASSign data->* to <any>.
* DATA(typedesc) = cl_abap_typedescr=>describe_by_data( data->* ).
*
* CASE typedesc->kind.
*
* WHEN cl_abap_typedescr=>kind_table.
*
* DATA(tabledesc) = CAST cl_abap_tabledescr( typedesc ).
* DATA(structdesc) = CAST cl_abap_structdescr( tabledesc->get_table_line_type( ) ).
*
* WHEN cl_abap_typedescr=>kind_struct.
*
* structdesc = CAST cl_abap_structdescr( typedesc ).
*
* WHEN OTHERS.
* ENDCASE.
*
* DATA(comp) = structdesc->get_components( ).
*
* LOOP AT comp INTO DATA(com).
*
* IF com-as_include = abap_true.
* APPEND LINES OF get_comp_by_struc( com-type ) TO result.
* ELSE.
* APPEND com TO result.
* ENDIF.
*
* ENDLOOP.
*
* CATCH cx_root.
* ENDTRY.
ENDMETHOD.
METHOD get_comp_by_struc.
* DATA struc TYPE REF TO cl_abap_structdescr.
* struc ?= type.
* DATA(comp) = struc->get_components( ).
* LOOP AT comp INTO DATA(com).
*
* IF com-as_include = abap_true.
* APPEND LINES OF get_comp_by_struc( com-type ) TO result.
* ELSE.
* APPEND com TO result.
* ENDIF.
*
* ENDLOOP.
ENDMETHOD.
METHOD rtti_get_t_attri_by_table_name. METHOD rtti_get_t_attri_by_table_name.
TRY. TRY.

View File

@ -390,7 +390,7 @@ CLASS ltcl_unit_test IMPLEMENTATION.
METHOD test_sql_get_by_string. METHOD test_sql_get_by_string.
DATA(lv_test) = ``. DATA(lv_test) = ``.
DATA(ls_sql) = z2ui5_cl_util=>sql_get_by_string( lv_test ) ##NEEDED. DATA(ls_sql) = z2ui5_cl_util=>filter_get_sql_by_sql_string( lv_test ) ##NEEDED.
ENDMETHOD. ENDMETHOD.
@ -541,9 +541,9 @@ CLASS ltcl_unit_test IMPLEMENTATION.
cl_abap_unit_assert=>assert_equals( cl_abap_unit_assert=>assert_equals(
act = sy-uname act = sy-uname
exp = z2ui5_cl_util=>user_get_tech( ) ). exp = z2ui5_cl_util=>context_get_user_tech( ) ).
cl_abap_unit_assert=>assert_not_initial( z2ui5_cl_util=>user_get_tech( ) ). cl_abap_unit_assert=>assert_not_initial( z2ui5_cl_util=>context_get_user_tech( ) ).
ENDMETHOD. ENDMETHOD.
@ -892,7 +892,7 @@ CLASS ltcl_unit_test IMPLEMENTATION.
DATA(lo_datadescr) = cl_abap_typedescr=>describe_by_data( ms_struc2 ). DATA(lo_datadescr) = cl_abap_typedescr=>describe_by_data( ms_struc2 ).
DATA(lt_attri) = z2ui5_cl_util=>rtti_get_t_attri_by_include( CAST #( lo_datadescr ) ). DATA(lt_attri) = z2ui5_cl_util=>rtti_get_t_attri_by_include( CAST #( lo_datadescr ) ).
IF lines( lt_attri ) <> 2. IF lines( lt_attri ) <> 6.
cl_abap_unit_assert=>fail( ). cl_abap_unit_assert=>fail( ).
ENDIF. ENDIF.

View File

@ -5,7 +5,7 @@
<VSEOCLASS> <VSEOCLASS>
<CLSNAME>Z2UI5_CL_UTIL</CLSNAME> <CLSNAME>Z2UI5_CL_UTIL</CLSNAME>
<LANGU>E</LANGU> <LANGU>E</LANGU>
<DESCRIPT>abap2UI5 - specfic functions</DESCRIPT> <DESCRIPT>abap toolkit</DESCRIPT>
<STATE>1</STATE> <STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL> <CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT> <FIXPT>X</FIXPT>

View File

@ -5,7 +5,7 @@
<VSEOCLASS> <VSEOCLASS>
<CLSNAME>Z2UI5_CX_UTIL_ERROR</CLSNAME> <CLSNAME>Z2UI5_CX_UTIL_ERROR</CLSNAME>
<LANGU>E</LANGU> <LANGU>E</LANGU>
<DESCRIPT>abap2UI5 - utility error</DESCRIPT> <DESCRIPT>abap toolkit exception</DESCRIPT>
<CATEGORY>40</CATEGORY> <CATEGORY>40</CATEGORY>
<STATE>1</STATE> <STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL> <CLSCCINCL>X</CLSCCINCL>

View File

@ -6,7 +6,7 @@
<TABNAME>Z2UI5_T_02</TABNAME> <TABNAME>Z2UI5_T_02</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE> <DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS> <TABCLASS>TRANSP</TABCLASS>
<DDTEXT>abap2UI5 - data storage</DDTEXT> <DDTEXT>abap toolkit - data storage</DDTEXT>
<MASTERLANG>E</MASTERLANG> <MASTERLANG>E</MASTERLANG>
<CONTFLAG>A</CONTFLAG> <CONTFLAG>A</CONTFLAG>
<EXCLASS>1</EXCLASS> <EXCLASS>1</EXCLASS>

View File

@ -66,7 +66,7 @@ CLASS z2ui5_cl_core_draft_srv IMPLEMENTATION.
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
uname = z2ui5_cl_util=>user_get_tech( ) uname = z2ui5_cl_util=>context_get_user_tech( )
timestampl = z2ui5_cl_util=>time_get_timestampl( ) timestampl = z2ui5_cl_util=>time_get_timestampl( )
data = model_xml ). data = model_xml ).

View File

@ -3,7 +3,7 @@
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0"> <asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values> <asx:values>
<DEVC> <DEVC>
<CTEXT>samples</CTEXT> <CTEXT>abap2UI5</CTEXT>
</DEVC> </DEVC>
</asx:values> </asx:values>
</asx:abap> </asx:abap>