mirror of
https://github.com/abapGit/abapGit.git
synced 2025-04-30 20:03:20 +08:00
Less DDIC references (#3905)
* remove uses of CHAR30 * Update abaplint.json * add basic unit test for ZCL_ABAPGIT_MESSAGE_HELPER * replace uses of char50 * fix name * Update abaplint.json * use sy-uname instead of uname in ZCL_ABAPGIT_USER_MASTER_RECORD
This commit is contained in:
parent
7aa002728b
commit
015800b45b
|
@ -97,7 +97,7 @@
|
|||
"forbidden_void_type": {
|
||||
"check": ["^stringtab$", "^SYCHAR01$", "^char2$", "^char20$", "^int4$", "^SYREPID$",
|
||||
"^flag$", "^char12$", "^char10$", "^char70$", "^char4$", "^sydatum$", "^syuzeit$",
|
||||
"^syst_title$", "^sychar70$",
|
||||
"^syst_title$", "^sychar70$", "^char30$", "^char50$",
|
||||
"^numc2$", "^sap_bool$", "^SYCHAR10$", "^sylangu$"]
|
||||
},
|
||||
"forbidden_identifier": true,
|
||||
|
|
|
@ -17,7 +17,21 @@ ENDCLASS.
|
|||
|
||||
|
||||
|
||||
CLASS zcl_abapgit_object_iobj IMPLEMENTATION.
|
||||
CLASS ZCL_ABAPGIT_OBJECT_IOBJ IMPLEMENTATION.
|
||||
|
||||
|
||||
METHOD clear_field.
|
||||
|
||||
FIELD-SYMBOLS: <lg_field> TYPE data.
|
||||
|
||||
ASSIGN COMPONENT iv_fieldname
|
||||
OF STRUCTURE cg_metadata
|
||||
TO <lg_field>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
CLEAR: <lg_field>.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_object~changed_by.
|
||||
|
@ -244,12 +258,12 @@ CLASS zcl_abapgit_object_iobj IMPLEMENTATION.
|
|||
|
||||
METHOD zif_abapgit_object~exists.
|
||||
|
||||
DATA: lv_iobjnm TYPE char30.
|
||||
DATA: lv_iobjnm TYPE c LENGTH 30.
|
||||
|
||||
SELECT SINGLE iobjnm
|
||||
FROM ('RSDIOBJ')
|
||||
INTO lv_iobjnm
|
||||
WHERE iobjnm = ms_item-obj_name.
|
||||
FROM ('RSDIOBJ')
|
||||
INTO lv_iobjnm
|
||||
WHERE iobjnm = ms_item-obj_name.
|
||||
|
||||
rv_bool = boolc( sy-subrc = 0 ).
|
||||
|
||||
|
@ -439,19 +453,4 @@ CLASS zcl_abapgit_object_iobj IMPLEMENTATION.
|
|||
ig_data = <lt_xxlattributes> ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD clear_field.
|
||||
|
||||
FIELD-SYMBOLS: <lg_field> TYPE data.
|
||||
|
||||
ASSIGN COMPONENT iv_fieldname
|
||||
OF STRUCTURE cg_metadata
|
||||
TO <lg_field>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
CLEAR: <lg_field>.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
ENDCLASS.
|
||||
|
|
|
@ -12,9 +12,10 @@ CLASS zcl_abapgit_object_smtg DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
|
|||
RAISING
|
||||
zcx_abapgit_exception.
|
||||
|
||||
PROTECTED SECTION.
|
||||
PRIVATE SECTION.
|
||||
DATA:
|
||||
mv_template_id TYPE char30,
|
||||
mv_template_id TYPE c LENGTH 30,
|
||||
mo_structdescr TYPE REF TO cl_abap_structdescr.
|
||||
|
||||
METHODS:
|
||||
|
@ -38,12 +39,53 @@ CLASS zcl_abapgit_object_smtg DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
|
|||
ct_components TYPE abap_component_tab
|
||||
RAISING
|
||||
zcx_abapgit_exception.
|
||||
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
|
||||
CLASS zcl_abapgit_object_smtg IMPLEMENTATION.
|
||||
CLASS ZCL_ABAPGIT_OBJECT_SMTG IMPLEMENTATION.
|
||||
|
||||
|
||||
METHOD add_component.
|
||||
|
||||
DATA:
|
||||
ls_component LIKE LINE OF ct_components,
|
||||
lo_typedescr TYPE REF TO cl_abap_typedescr.
|
||||
|
||||
cl_abap_structdescr=>describe_by_name(
|
||||
EXPORTING
|
||||
p_name = iv_structure_name
|
||||
RECEIVING
|
||||
p_descr_ref = lo_typedescr
|
||||
EXCEPTIONS
|
||||
type_not_found = 1
|
||||
OTHERS = 2 ).
|
||||
|
||||
IF sy-subrc <> 0.
|
||||
zcx_abapgit_exception=>raise( |SMTG not supported| ).
|
||||
ENDIF.
|
||||
|
||||
ls_component-name = iv_fielname.
|
||||
ls_component-type ?= lo_typedescr.
|
||||
INSERT ls_component INTO TABLE ct_components.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD clear_field.
|
||||
|
||||
FIELD-SYMBOLS: <lg_field> TYPE data.
|
||||
|
||||
ASSIGN
|
||||
COMPONENT iv_fieldname
|
||||
OF STRUCTURE cg_header
|
||||
TO <lg_field>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
CLEAR: <lg_field>.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD constructor.
|
||||
|
||||
|
@ -57,6 +99,36 @@ CLASS zcl_abapgit_object_smtg IMPLEMENTATION.
|
|||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_structure.
|
||||
|
||||
DATA: lt_components TYPE abap_component_tab.
|
||||
|
||||
add_component(
|
||||
EXPORTING
|
||||
iv_fielname = `HEADER`
|
||||
iv_structure_name = `IF_SMTG_EMAIL_TEMPLATE=>TY_GS_TMPL_HDR`
|
||||
CHANGING
|
||||
ct_components = lt_components ).
|
||||
|
||||
add_component(
|
||||
EXPORTING
|
||||
iv_fielname = `HEADER_T`
|
||||
iv_structure_name = `IF_SMTG_EMAIL_TEMPLATE=>TY_GT_TMPL_HDR_T`
|
||||
CHANGING
|
||||
ct_components = lt_components ).
|
||||
|
||||
add_component(
|
||||
EXPORTING
|
||||
iv_fielname = `CONTENT`
|
||||
iv_structure_name = `IF_SMTG_EMAIL_TEMPLATE=>TY_GT_TMPL_CONT`
|
||||
CHANGING
|
||||
ct_components = lt_components ).
|
||||
|
||||
ro_structdescr = cl_abap_structdescr=>create( lt_components ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_object~changed_by.
|
||||
rv_user = c_user_unknown.
|
||||
ENDMETHOD.
|
||||
|
@ -316,76 +388,4 @@ CLASS zcl_abapgit_object_smtg IMPLEMENTATION.
|
|||
ENDTRY.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD clear_field.
|
||||
|
||||
FIELD-SYMBOLS: <lg_field> TYPE data.
|
||||
|
||||
ASSIGN
|
||||
COMPONENT iv_fieldname
|
||||
OF STRUCTURE cg_header
|
||||
TO <lg_field>.
|
||||
ASSERT sy-subrc = 0.
|
||||
|
||||
CLEAR: <lg_field>.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_structure.
|
||||
|
||||
DATA: lt_components TYPE abap_component_tab.
|
||||
|
||||
add_component(
|
||||
EXPORTING
|
||||
iv_fielname = `HEADER`
|
||||
iv_structure_name = `IF_SMTG_EMAIL_TEMPLATE=>TY_GS_TMPL_HDR`
|
||||
CHANGING
|
||||
ct_components = lt_components ).
|
||||
|
||||
add_component(
|
||||
EXPORTING
|
||||
iv_fielname = `HEADER_T`
|
||||
iv_structure_name = `IF_SMTG_EMAIL_TEMPLATE=>TY_GT_TMPL_HDR_T`
|
||||
CHANGING
|
||||
ct_components = lt_components ).
|
||||
|
||||
add_component(
|
||||
EXPORTING
|
||||
iv_fielname = `CONTENT`
|
||||
iv_structure_name = `IF_SMTG_EMAIL_TEMPLATE=>TY_GT_TMPL_CONT`
|
||||
CHANGING
|
||||
ct_components = lt_components ).
|
||||
|
||||
ro_structdescr = cl_abap_structdescr=>create( lt_components ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD add_component.
|
||||
|
||||
DATA:
|
||||
ls_component LIKE LINE OF ct_components,
|
||||
lo_typedescr TYPE REF TO cl_abap_typedescr.
|
||||
|
||||
cl_abap_structdescr=>describe_by_name(
|
||||
EXPORTING
|
||||
p_name = iv_structure_name
|
||||
RECEIVING
|
||||
p_descr_ref = lo_typedescr
|
||||
EXCEPTIONS
|
||||
type_not_found = 1
|
||||
OTHERS = 2 ).
|
||||
|
||||
IF sy-subrc <> 0.
|
||||
zcx_abapgit_exception=>raise( |SMTG not supported| ).
|
||||
ENDIF.
|
||||
|
||||
ls_component-name = iv_fielname.
|
||||
ls_component-type ?= lo_typedescr.
|
||||
INSERT ls_component INTO TABLE ct_components.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
ENDCLASS.
|
||||
|
|
|
@ -4,8 +4,8 @@ INTERFACE zif_abapgit_gui_asset_manager
|
|||
TYPES:
|
||||
BEGIN OF ty_web_asset,
|
||||
url TYPE w3url,
|
||||
type TYPE char50,
|
||||
subtype TYPE char50,
|
||||
type TYPE c LENGTH 50,
|
||||
subtype TYPE c LENGTH 50,
|
||||
content TYPE xstring,
|
||||
is_cacheable TYPE abap_bool,
|
||||
END OF ty_web_asset .
|
||||
|
|
|
@ -8,14 +8,14 @@ CLASS zcl_abapgit_user_master_record DEFINITION
|
|||
CLASS-METHODS:
|
||||
get_instance
|
||||
IMPORTING
|
||||
!iv_user TYPE uname
|
||||
!iv_user TYPE sy-uname
|
||||
RETURNING
|
||||
VALUE(ro_user) TYPE REF TO zcl_abapgit_user_master_record.
|
||||
|
||||
METHODS:
|
||||
constructor
|
||||
IMPORTING
|
||||
!iv_user TYPE uname,
|
||||
!iv_user TYPE sy-uname,
|
||||
|
||||
get_name
|
||||
RETURNING
|
||||
|
@ -29,7 +29,7 @@ CLASS zcl_abapgit_user_master_record DEFINITION
|
|||
PRIVATE SECTION.
|
||||
TYPES:
|
||||
BEGIN OF ty_user,
|
||||
user TYPE uname,
|
||||
user TYPE sy-uname,
|
||||
o_user TYPE REF TO zcl_abapgit_user_master_record,
|
||||
END OF ty_user.
|
||||
|
||||
|
|
|
@ -111,6 +111,8 @@ CLASS ZCL_ABAPGIT_MESSAGE_HELPER IMPLEMENTATION.
|
|||
|
||||
METHOD get_t100_longtext.
|
||||
|
||||
* method is called dynamically from ZCX_ABAPGIT_EXCEPTION
|
||||
|
||||
rv_longtext = itf_to_string( get_t100_longtext_itf( ) ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
|
|
@ -1,4 +1,34 @@
|
|||
CLASS ltcl_test DEFINITION
|
||||
CLASS ltcl_get_t100_longtext DEFINITION FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
|
||||
|
||||
PUBLIC SECTION.
|
||||
INTERFACES if_t100_message.
|
||||
METHODS test01 FOR TESTING.
|
||||
|
||||
ENDCLASS.
|
||||
|
||||
CLASS ltcl_get_t100_longtext IMPLEMENTATION.
|
||||
|
||||
METHOD test01.
|
||||
|
||||
DATA lo_cut TYPE REF TO zcl_abapgit_message_helper.
|
||||
DATA lv_result TYPE string.
|
||||
|
||||
if_t100_message~t100key-msgid = '00'.
|
||||
if_t100_message~t100key-msgno = '058'.
|
||||
if_t100_message~t100key-attr1 = 'ATTR'.
|
||||
|
||||
CREATE OBJECT lo_cut
|
||||
EXPORTING
|
||||
ii_t100_message = me.
|
||||
|
||||
lv_result = lo_cut->get_t100_longtext( ).
|
||||
cl_abap_unit_assert=>assert_not_initial( lv_result ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
ENDCLASS.
|
||||
|
||||
CLASS ltcl_set_msg_vars_for_clike DEFINITION
|
||||
FOR TESTING
|
||||
DURATION SHORT
|
||||
RISK LEVEL HARMLESS.
|
||||
|
@ -26,7 +56,7 @@ CLASS ltcl_test DEFINITION
|
|||
is_msg TYPE ty_msg.
|
||||
ENDCLASS.
|
||||
|
||||
CLASS ltcl_test IMPLEMENTATION.
|
||||
CLASS ltcl_set_msg_vars_for_clike IMPLEMENTATION.
|
||||
METHOD test_set_msg_b.
|
||||
CONSTANTS:
|
||||
lc_text_b TYPE string VALUE '0123456789012345678901234567890123456789012345678 0123456789',
|
||||
|
|
Loading…
Reference in New Issue
Block a user