Merge branch 'main' into mbtools/alav-ddic

This commit is contained in:
Christian Guenter 2025-04-25 14:35:38 +02:00
commit 0574ab4c02
67 changed files with 1597 additions and 915 deletions

105
deps/e070.tabl.xml vendored Normal file
View File

@ -0,0 +1,105 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>E070</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<DDTEXT>E070</DDTEXT>
<CONTFLAG>A</CONTFLAG>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD09L>
<TABNAME>ZE070</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>0</TABKAT>
<TABART>APPL0</TABART>
<BUFALLOW>N</BUFALLOW>
</DD09L>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TRKORR</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ROLLNAME>TRKORR</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<NOTNULL>X</NOTNULL>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>TRFUNCTION</FIELDNAME>
<ROLLNAME>TRFUNCTION</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<VALEXI>X</VALEXI>
<SHLPORIGIN>F</SHLPORIGIN>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>TRSTATUS</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>TARSYSTEM</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000020</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000010</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>KORRDEV</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>AS4USER</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000024</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000012</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>AS4DATE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>D</INTTYPE>
<INTLEN>000016</INTLEN>
<DATATYPE>DATS</DATATYPE>
<LENG>000008</LENG>
<MASK> DATS</MASK>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
<DD03P>
<FIELDNAME>AS4TIME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>T</INTTYPE>
<INTLEN>000012</INTLEN>
<DATATYPE>TIMS</DATATYPE>
<LENG>000006</LENG>
<MASK> TIMS</MASK>
<SHLPORIGIN>T</SHLPORIGIN>
</DD03P>
<DD03P>
<FIELDNAME>STRKORR</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

116
deps/e071.tabl.xml vendored Normal file
View File

@ -0,0 +1,116 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>E071</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<DDTEXT>E071</DDTEXT>
<CONTFLAG>A</CONTFLAG>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD09L>
<TABNAME>ZE071</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>0</TABKAT>
<TABART>APPL0</TABART>
<BUFALLOW>N</BUFALLOW>
</DD09L>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TRKORR</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ROLLNAME>TRKORR</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<NOTNULL>X</NOTNULL>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>AS4POS</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000012</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>NUMC</DATATYPE>
<LENG>000006</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>PGMID</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>OBJECT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>OBJ_NAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000240</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000120</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>OBJFUNC</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LOCKFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>GENNUM</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000006</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000003</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LANG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>LANG</DATATYPE>
<LENG>000001</LENG>
<MASK> LANG</MASK>
<LANGUFLAG>X</LANGUFLAG>
</DD03P>
<DD03P>
<FIELDNAME>ACTIVITY</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

158
deps/e071k.tabl.xml vendored Normal file
View File

@ -0,0 +1,158 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>E071K</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<DDTEXT>E071K</DDTEXT>
<CONTFLAG>A</CONTFLAG>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD09L>
<TABNAME>ZE071K</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>0</TABKAT>
<TABART>APPL0</TABART>
<BUFALLOW>N</BUFALLOW>
</DD09L>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TRKORR</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ROLLNAME>TRKORR</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<NOTNULL>X</NOTNULL>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>PGMID</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>OBJECT</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>OBJNAME</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>AS4POS</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>N</INTTYPE>
<INTLEN>000012</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>NUMC</DATATYPE>
<LENG>000006</LENG>
<MASK> NUMC</MASK>
</DD03P>
<DD03P>
<FIELDNAME>MASTERTYPE</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000008</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000004</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>MASTERNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000080</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000040</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>VIEWNAME</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000060</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>OBJFUNC</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>TABKEY</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000240</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000120</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>SORTFLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>FLAG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000001</LENG>
<MASK> CHAR</MASK>
</DD03P>
<DD03P>
<FIELDNAME>LANG</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<DATATYPE>LANG</DATATYPE>
<LENG>000001</LENG>
<MASK> LANG</MASK>
<LANGUFLAG>X</LANGUFLAG>
</DD03P>
<DD03P>
<FIELDNAME>ACTIVITY</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000040</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000020</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

54
deps/e07t.tabl.xml vendored Normal file
View File

@ -0,0 +1,54 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>E07T</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>TRANSP</TABCLASS>
<DDTEXT>E07T</DDTEXT>
<CONTFLAG>A</CONTFLAG>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD09L>
<TABNAME>ZE07T</TABNAME>
<AS4LOCAL>A</AS4LOCAL>
<TABKAT>0</TABKAT>
<TABART>APPL0</TABART>
<UEBERSETZ>N</UEBERSETZ>
<BUFALLOW>N</BUFALLOW>
</DD09L>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>TRKORR</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ROLLNAME>TRKORR</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<NOTNULL>X</NOTNULL>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>LANGU</FIELDNAME>
<KEYFLAG>X</KEYFLAG>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000002</INTLEN>
<NOTNULL>X</NOTNULL>
<DATATYPE>LANG</DATATYPE>
<LENG>000001</LENG>
<MASK> LANG</MASK>
<LANGUFLAG>X</LANGUFLAG>
</DD03P>
<DD03P>
<FIELDNAME>AS4TEXT</FIELDNAME>
<ADMINFIELD>0</ADMINFIELD>
<INTTYPE>C</INTTYPE>
<INTLEN>000120</INTLEN>
<DATATYPE>CHAR</DATATYPE>
<LENG>000060</LENG>
<MASK> CHAR</MASK>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -23,7 +23,7 @@
] ]
}, },
"devDependencies": { "devDependencies": {
"@abaplint/cli": "^2.113.109", "@abaplint/cli": "^2.113.110",
"@abaplint/database-sqlite": "^2.10.24", "@abaplint/database-sqlite": "^2.10.24",
"@abaplint/runtime": "^2.10.44", "@abaplint/runtime": "^2.10.44",
"express": "^4.21.2", "express": "^4.21.2",
@ -31,6 +31,6 @@
"globals": "^16.0.0", "globals": "^16.0.0",
"abapmerge": "^0.16.6", "abapmerge": "^0.16.6",
"c8": "^10.1.3", "c8": "^10.1.3",
"eslint": "^9.24.0" "eslint": "^9.25.1"
} }
} }

View File

@ -5,7 +5,7 @@
<VSEOCLASS> <VSEOCLASS>
<CLSNAME>ZCL_ABAPGIT_ENV_FACTORY</CLSNAME> <CLSNAME>ZCL_ABAPGIT_ENV_FACTORY</CLSNAME>
<LANGU>E</LANGU> <LANGU>E</LANGU>
<DESCRIPT>ZCL_ABAPGIT_ENV_FACTORY</DESCRIPT> <DESCRIPT>abapGit - Environment Factory</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>ZCL_ABAPGIT_ENV_INJECTOR</CLSNAME> <CLSNAME>ZCL_ABAPGIT_ENV_INJECTOR</CLSNAME>
<LANGU>E</LANGU> <LANGU>E</LANGU>
<DESCRIPT>ZCL_ABAPGIT_ENV_INJECTOR</DESCRIPT> <DESCRIPT>abapGit - Environment Injector</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 @@
<VSEOINTERF> <VSEOINTERF>
<CLSNAME>ZIF_ABAPGIT_USER_RECORD</CLSNAME> <CLSNAME>ZIF_ABAPGIT_USER_RECORD</CLSNAME>
<LANGU>E</LANGU> <LANGU>E</LANGU>
<DESCRIPT>ZIF_ABAPGIT_USER_RECORD</DESCRIPT> <DESCRIPT>abapGit - User Record</DESCRIPT>
<EXPOSURE>2</EXPOSURE> <EXPOSURE>2</EXPOSURE>
<STATE>1</STATE> <STATE>1</STATE>
<UNICODE>X</UNICODE> <UNICODE>X</UNICODE>

View File

@ -30,7 +30,7 @@ CLASS zcl_abapgit_object_common_aff DEFINITION
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
TYPES: BEGIN OF ty_extension_mapper_pair, TYPES: BEGIN OF ty_extension_mapper_pair,
@ -106,7 +106,7 @@ CLASS zcl_abapgit_object_common_aff IMPLEMENTATION.
ENDTRY. ENDTRY.
IF lv_is_supported IS INITIAL. IF lv_is_supported IS INITIAL.
zcx_abapgit_exception=>raise( |Object type { is_item-obj_type } is not supported by this system| ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDIF. ENDIF.
ENDMETHOD. ENDMETHOD.

View File

@ -6,13 +6,44 @@ CLASS zcl_abapgit_object_smbc DEFINITION
PUBLIC SECTION. PUBLIC SECTION.
METHODS zif_abapgit_object~changed_by REDEFINITION. METHODS zif_abapgit_object~changed_by REDEFINITION.
METHODS constructor
IMPORTING
is_item TYPE zif_abapgit_definitions=>ty_item
iv_language TYPE spras
io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING
zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
ENDCLASS. ENDCLASS.
CLASS ZCL_ABAPGIT_OBJECT_SMBC IMPLEMENTATION. CLASS zcl_abapgit_object_smbc IMPLEMENTATION.
METHOD constructor.
DATA: lo_handler TYPE REF TO object,
lo_db_api TYPE REF TO object,
lr_data TYPE REF TO data.
super->constructor(
is_item = is_item
iv_language = iv_language
io_files = io_files
io_i18n_params = io_i18n_params ).
TRY.
CREATE OBJECT lo_handler TYPE ('CL_SMBC_AFF_OBJECT_HANDLER').
CREATE OBJECT lo_db_api TYPE ('CL_MBC_BUSINESS_CONFIG_DB').
CREATE DATA lr_data TYPE ('SMBC_CONFIG').
CATCH cx_sy_create_object_error
cx_sy_create_data_error.
RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY.
ENDMETHOD.
METHOD zif_abapgit_object~changed_by. METHOD zif_abapgit_object~changed_by.
@ -24,15 +55,12 @@ CLASS ZCL_ABAPGIT_OBJECT_SMBC IMPLEMENTATION.
FIELD-SYMBOLS: <ls_smbc_config> TYPE any, FIELD-SYMBOLS: <ls_smbc_config> TYPE any,
<lv_smbc_changed_by> TYPE any. <lv_smbc_changed_by> TYPE any.
TRY.
CREATE OBJECT lo_handler TYPE ('CL_SMBC_AFF_OBJECT_HANDLER'). CREATE OBJECT lo_handler TYPE ('CL_SMBC_AFF_OBJECT_HANDLER').
CREATE OBJECT lo_db_api TYPE ('CL_MBC_BUSINESS_CONFIG_DB'). CREATE OBJECT lo_db_api TYPE ('CL_MBC_BUSINESS_CONFIG_DB').
CREATE DATA lr_data TYPE ('SMBC_CONFIG'). CREATE DATA lr_data TYPE ('SMBC_CONFIG').
ASSIGN lr_data->* TO <ls_smbc_config>. ASSIGN lr_data->* TO <ls_smbc_config>.
CATCH cx_sy_create_object_error
cx_sy_create_data_error.
zcx_abapgit_exception=>raise( 'SMBC not supported' ).
ENDTRY.
lv_technical_id = ms_item-obj_name. lv_technical_id = ms_item-obj_name.
CALL METHOD lo_db_api->('IF_MBC_BUSINESS_CONFIG_DB~READ') CALL METHOD lo_db_api->('IF_MBC_BUSINESS_CONFIG_DB~READ')
EXPORTING EXPORTING

View File

@ -8,13 +8,44 @@ CLASS zcl_abapgit_object_uiad DEFINITION
METHODS zif_abapgit_object~changed_by METHODS zif_abapgit_object~changed_by
REDEFINITION . REDEFINITION .
METHODS constructor
IMPORTING
is_item TYPE zif_abapgit_definitions=>ty_item
iv_language TYPE spras
io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING
zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
ENDCLASS. ENDCLASS.
CLASS ZCL_ABAPGIT_OBJECT_UIAD IMPLEMENTATION. CLASS zcl_abapgit_object_uiad IMPLEMENTATION.
METHOD constructor.
DATA: lo_db_api TYPE REF TO object,
lr_data TYPE REF TO data.
super->constructor(
is_item = is_item
iv_language = iv_language
io_files = io_files
io_i18n_params = io_i18n_params ).
TRY.
CALL METHOD ('CL_SUI_UIAD_DB_ACCESS')=>('GET_INSTANCE')
RECEIVING
ro_instance = lo_db_api.
CREATE DATA lr_data TYPE ('CL_BLUE_AFF_WB_ACCESS=>TY_METADATA').
CATCH cx_sy_dyn_call_error
cx_sy_create_data_error.
RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY.
ENDMETHOD.
METHOD zif_abapgit_object~changed_by. METHOD zif_abapgit_object~changed_by.
@ -27,16 +58,11 @@ CLASS ZCL_ABAPGIT_OBJECT_UIAD IMPLEMENTATION.
FIELD-SYMBOLS: <ls_metadata> TYPE any, FIELD-SYMBOLS: <ls_metadata> TYPE any,
<lv_changed_by> TYPE any. <lv_changed_by> TYPE any.
TRY.
CALL METHOD ('CL_SUI_UIAD_DB_ACCESS')=>('GET_INSTANCE') CALL METHOD ('CL_SUI_UIAD_DB_ACCESS')=>('GET_INSTANCE')
RECEIVING RECEIVING
ro_instance = lo_db_api. ro_instance = lo_db_api.
CREATE DATA lr_data TYPE ('CL_BLUE_AFF_WB_ACCESS=>TY_METADATA'). CREATE DATA lr_data TYPE ('CL_BLUE_AFF_WB_ACCESS=>TY_METADATA').
ASSIGN lr_data->* TO <ls_metadata>. ASSIGN lr_data->* TO <ls_metadata>.
CATCH cx_sy_create_object_error
cx_sy_create_data_error.
zcx_abapgit_exception=>raise( 'Object UIAD not supported' ).
ENDTRY.
TRY. TRY.
lv_object_key = ms_item-obj_name. lv_object_key = ms_item-obj_name.

View File

@ -8,13 +8,44 @@ CLASS zcl_abapgit_object_uipg DEFINITION
METHODS zif_abapgit_object~changed_by METHODS zif_abapgit_object~changed_by
REDEFINITION . REDEFINITION .
METHODS constructor
IMPORTING
is_item TYPE zif_abapgit_definitions=>ty_item
iv_language TYPE spras
io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING
zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
ENDCLASS. ENDCLASS.
CLASS ZCL_ABAPGIT_OBJECT_UIPG IMPLEMENTATION. CLASS zcl_abapgit_object_uipg IMPLEMENTATION.
METHOD constructor.
DATA: lo_db_api TYPE REF TO object,
lr_data TYPE REF TO data.
super->constructor(
is_item = is_item
iv_language = iv_language
io_files = io_files
io_i18n_params = io_i18n_params ).
TRY.
CALL METHOD ('/UI2/CL_UIPG_DB_ACCESS')=>('GET_INSTANCE')
RECEIVING
ro_instance = lo_db_api.
CREATE DATA lr_data TYPE ('CL_BLUE_AFF_WB_ACCESS=>TY_METADATA').
CATCH cx_sy_dyn_call_error
cx_sy_create_data_error.
RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY.
ENDMETHOD.
METHOD zif_abapgit_object~changed_by. METHOD zif_abapgit_object~changed_by.

View File

@ -8,13 +8,42 @@ CLASS zcl_abapgit_object_uist DEFINITION
METHODS zif_abapgit_object~changed_by METHODS zif_abapgit_object~changed_by
REDEFINITION . REDEFINITION .
METHODS constructor
IMPORTING
is_item TYPE zif_abapgit_definitions=>ty_item
iv_language TYPE spras
io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING
zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
ENDCLASS. ENDCLASS.
CLASS ZCL_ABAPGIT_OBJECT_UIST IMPLEMENTATION. CLASS zcl_abapgit_object_uist IMPLEMENTATION.
METHOD constructor.
DATA: lo_db_api TYPE REF TO object,
lr_data TYPE REF TO data.
super->constructor(
is_item = is_item
iv_language = iv_language
io_files = io_files
io_i18n_params = io_i18n_params ).
TRY.
CREATE OBJECT lo_db_api TYPE ('/UI2/CL_UIST_SVAL_SQL').
CREATE DATA lr_data TYPE ('CL_BLUE_AFF_WB_ACCESS=>TY_METADATA').
CATCH cx_sy_create_object_error
cx_sy_create_data_error.
RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY.
ENDMETHOD.
METHOD zif_abapgit_object~changed_by. METHOD zif_abapgit_object~changed_by.

View File

@ -10,8 +10,10 @@ CLASS zcl_abapgit_field_rules DEFINITION
CLASS-METHODS create CLASS-METHODS create
RETURNING RETURNING
VALUE(ro_result) TYPE REF TO zif_abapgit_field_rules. VALUE(ro_result) TYPE REF TO zif_abapgit_field_rules.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
TYPES: TYPES:
BEGIN OF ty_item, BEGIN OF ty_item,
tabname TYPE tabname, tabname TYPE tabname,
@ -26,8 +28,10 @@ CLASS zcl_abapgit_field_rules DEFINITION
IMPORTING IMPORTING
iv_rule TYPE zif_abapgit_field_rules=>ty_fill_rule iv_rule TYPE zif_abapgit_field_rules=>ty_fill_rule
iv_package TYPE devclass iv_package TYPE devclass
iv_abap_language_version TYPE uccheck OPTIONAL
CHANGING CHANGING
cv_value TYPE any. cv_value TYPE any.
ENDCLASS. ENDCLASS.
@ -56,6 +60,8 @@ CLASS zcl_abapgit_field_rules IMPLEMENTATION.
cv_value = sy-mandt. cv_value = sy-mandt.
WHEN zif_abapgit_field_rules=>c_fill_rule-package. WHEN zif_abapgit_field_rules=>c_fill_rule-package.
cv_value = iv_package. cv_value = iv_package.
WHEN zif_abapgit_field_rules=>c_fill_rule-abap_language_version.
cv_value = iv_abap_language_version.
ENDCASE. ENDCASE.
ENDMETHOD. ENDMETHOD.
@ -111,6 +117,7 @@ CLASS zcl_abapgit_field_rules IMPLEMENTATION.
EXPORTING EXPORTING
iv_rule = ls_item-fill_rule iv_rule = ls_item-fill_rule
iv_package = iv_package iv_package = iv_package
iv_abap_language_version = iv_abap_language_version
CHANGING CHANGING
cv_value = <lv_value> ). cv_value = <lv_value> ).
ENDIF. ENDIF.

View File

@ -4,6 +4,7 @@ CLASS ltcl_field_rules DEFINITION FOR TESTING RISK LEVEL HARMLESS
PRIVATE SECTION. PRIVATE SECTION.
CONSTANTS: CONSTANTS:
c_abap_cloud TYPE uccheck VALUE '5',
c_package TYPE devclass VALUE '$TMP', c_package TYPE devclass VALUE '$TMP',
c_table TYPE tabname VALUE 'ZTEST'. c_table TYPE tabname VALUE 'ZTEST'.
@ -15,6 +16,7 @@ CLASS ltcl_field_rules DEFINITION FOR TESTING RISK LEVEL HARMLESS
time TYPE t, time TYPE t,
ts TYPE timestamp, ts TYPE timestamp,
tl TYPE timestampl, tl TYPE timestampl,
alav TYPE uccheck,
END OF ty_test. END OF ty_test.
DATA mo_cut TYPE REF TO zcl_abapgit_field_rules. DATA mo_cut TYPE REF TO zcl_abapgit_field_rules.
@ -33,6 +35,7 @@ CLASS ltcl_field_rules DEFINITION FOR TESTING RISK LEVEL HARMLESS
fill5 FOR TESTING, fill5 FOR TESTING,
fill6 FOR TESTING, fill6 FOR TESTING,
fill7 FOR TESTING, fill7 FOR TESTING,
fill8 FOR TESTING,
get_rules get_rules
RETURNING RETURNING
VALUE(ri_rules) TYPE REF TO zif_abapgit_field_rules, VALUE(ri_rules) TYPE REF TO zif_abapgit_field_rules,
@ -57,6 +60,7 @@ CLASS ltcl_field_rules IMPLEMENTATION.
EXPORTING EXPORTING
iv_rule = iv_rule iv_rule = iv_rule
iv_package = c_package iv_package = c_package
iv_abap_language_version = c_abap_cloud
CHANGING CHANGING
cv_value = lv_act ). cv_value = lv_act ).
@ -116,6 +120,12 @@ CLASS ltcl_field_rules IMPLEMENTATION.
iv_exp = '' ). iv_exp = '' ).
ENDMETHOD. ENDMETHOD.
METHOD fill8.
fill_value(
iv_rule = zif_abapgit_field_rules=>c_fill_rule-abap_language_version
iv_exp = |{ c_abap_cloud }| ).
ENDMETHOD.
METHOD get_rules. METHOD get_rules.
ri_rules = zcl_abapgit_field_rules=>create( )->add( ri_rules = zcl_abapgit_field_rules=>create( )->add(
@ -137,7 +147,11 @@ CLASS ltcl_field_rules IMPLEMENTATION.
)->add( )->add(
iv_table = c_table iv_table = c_table
iv_field = 'TL' iv_field = 'TL'
iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-timestamp ). iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-timestamp
)->add(
iv_table = c_table
iv_field = 'ALAV'
iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-abap_language_version ).
ENDMETHOD. ENDMETHOD.
@ -159,6 +173,7 @@ CLASS ltcl_field_rules IMPLEMENTATION.
ls_act-user = 'FRANK'. ls_act-user = 'FRANK'.
ls_act-date = '20230101'. ls_act-date = '20230101'.
ls_act-time = '000001'. ls_act-time = '000001'.
ls_act-alav = '5'. " ABAP Cloud
INSERT ls_act INTO TABLE lt_act. INSERT ls_act INTO TABLE lt_act.
li_rules = get_rules( ). li_rules = get_rules( ).
@ -218,6 +233,7 @@ CLASS ltcl_field_rules IMPLEMENTATION.
EXPORTING EXPORTING
iv_table = c_table iv_table = c_table
iv_package = c_package iv_package = c_package
iv_abap_language_version = c_abap_cloud
CHANGING CHANGING
ct_data = lt_act ). ct_data = lt_act ).
@ -265,6 +281,9 @@ CLASS ltcl_field_rules IMPLEMENTATION.
cl_abap_unit_assert=>assert_equals( cl_abap_unit_assert=>assert_equals(
act = ls_act-time(4) act = ls_act-time(4)
exp = sy-uzeit(4) ). " avoid comparing seconds exp = sy-uzeit(4) ). " avoid comparing seconds
cl_abap_unit_assert=>assert_equals(
act = ls_act-alav
exp = c_abap_cloud ).
ENDMETHOD. ENDMETHOD.
ENDCLASS. ENDCLASS.

View File

@ -1,6 +1,7 @@
INTERFACE zif_abapgit_field_rules INTERFACE zif_abapgit_field_rules PUBLIC.
PUBLIC .
TYPES ty_fill_rule TYPE c LENGTH 2. TYPES ty_fill_rule TYPE c LENGTH 2.
CONSTANTS: CONSTANTS:
BEGIN OF c_fill_rule, BEGIN OF c_fill_rule,
date TYPE ty_fill_rule VALUE 'DT', date TYPE ty_fill_rule VALUE 'DT',
@ -9,6 +10,7 @@ INTERFACE zif_abapgit_field_rules
user TYPE ty_fill_rule VALUE 'UR', user TYPE ty_fill_rule VALUE 'UR',
client TYPE ty_fill_rule VALUE 'CT', client TYPE ty_fill_rule VALUE 'CT',
package TYPE ty_fill_rule VALUE 'PK', package TYPE ty_fill_rule VALUE 'PK',
abap_language_version TYPE ty_fill_rule VALUE 'AL',
END OF c_fill_rule. END OF c_fill_rule.
METHODS add METHODS add
@ -18,15 +20,19 @@ INTERFACE zif_abapgit_field_rules
iv_fill_rule TYPE ty_fill_rule iv_fill_rule TYPE ty_fill_rule
RETURNING RETURNING
VALUE(ro_self) TYPE REF TO zif_abapgit_field_rules. VALUE(ro_self) TYPE REF TO zif_abapgit_field_rules.
METHODS apply_clear_logic METHODS apply_clear_logic
IMPORTING IMPORTING
iv_table TYPE tabname iv_table TYPE tabname
CHANGING CHANGING
ct_data TYPE STANDARD TABLE. ct_data TYPE STANDARD TABLE.
METHODS apply_fill_logic METHODS apply_fill_logic
IMPORTING IMPORTING
iv_table TYPE tabname iv_table TYPE tabname
iv_package TYPE devclass iv_package TYPE devclass
iv_abap_language_version TYPE uccheck OPTIONAL
CHANGING CHANGING
ct_data TYPE STANDARD TABLE. ct_data TYPE STANDARD TABLE.
ENDINTERFACE. ENDINTERFACE.

View File

@ -15,7 +15,7 @@ CLASS zcl_abapgit_object_aifc DEFINITION
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
TYPES: TYPES:
@ -112,7 +112,6 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
METHOD authorization_check. METHOD authorization_check.
DATA: lx_dyn_call_error TYPE REF TO cx_sy_dyn_call_error.
DATA: lx_root TYPE REF TO cx_root. DATA: lx_root TYPE REF TO cx_root.
rv_success = abap_false. rv_success = abap_false.
@ -121,9 +120,6 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
RECEIVING RECEIVING
rv_success = rv_success. rv_success = rv_success.
CATCH cx_sy_dyn_call_error INTO lx_dyn_call_error.
zcx_abapgit_exception=>raise( iv_text = 'AIFC not supported'
ix_previous = lx_dyn_call_error ).
CATCH cx_root INTO lx_root. CATCH cx_root INTO lx_root.
zcx_abapgit_exception=>raise_with_text( lx_root ). zcx_abapgit_exception=>raise_with_text( lx_root ).
ENDTRY. ENDTRY.
@ -147,7 +143,6 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
METHOD compress_interface. METHOD compress_interface.
DATA: lx_dyn_call_error TYPE REF TO cx_sy_dyn_call_error.
DATA: lx_root TYPE REF TO cx_root. DATA: lx_root TYPE REF TO cx_root.
TRY. TRY.
@ -157,9 +152,6 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
RECEIVING RECEIVING
rv_success = rv_success. rv_success = rv_success.
CATCH cx_sy_dyn_call_error INTO lx_dyn_call_error.
zcx_abapgit_exception=>raise( iv_text = 'AIFC not supported'
ix_previous = lx_dyn_call_error ).
CATCH cx_root INTO lx_root. CATCH cx_root INTO lx_root.
zcx_abapgit_exception=>raise_with_text( lx_root ). zcx_abapgit_exception=>raise_with_text( lx_root ).
ENDTRY. ENDTRY.
@ -183,7 +175,7 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
rr_abapgit_aifc_util = mo_abapgit_util. rr_abapgit_aifc_util = mo_abapgit_util.
CATCH cx_sy_dyn_call_error INTO lx_exc_ref. CATCH cx_sy_dyn_call_error INTO lx_exc_ref.
zcx_abapgit_exception=>raise( 'AIFC not supported' ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.
@ -198,7 +190,6 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
FIELD-SYMBOLS <ls_table> TYPE any. FIELD-SYMBOLS <ls_table> TYPE any.
FIELD-SYMBOLS: <lv_value> TYPE any. FIELD-SYMBOLS: <lv_value> TYPE any.
DATA: lx_dyn_call_error TYPE REF TO cx_sy_dyn_call_error.
DATA: lx_root TYPE REF TO cx_root. DATA: lx_root TYPE REF TO cx_root.
lr_structdescr ?= cl_abap_typedescr=>describe_by_name( p_name = '/AIF/T_FINF' ). lr_structdescr ?= cl_abap_typedescr=>describe_by_name( p_name = '/AIF/T_FINF' ).
@ -241,9 +232,6 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
rv_success = rv_success. rv_success = rv_success.
ENDIF. ENDIF.
CATCH cx_sy_dyn_call_error INTO lx_dyn_call_error.
zcx_abapgit_exception=>raise( iv_text = 'AIFC not supported'
ix_previous = lx_dyn_call_error ).
CATCH cx_root INTO lx_root. CATCH cx_root INTO lx_root.
zcx_abapgit_exception=>raise_with_text( lx_root ). zcx_abapgit_exception=>raise_with_text( lx_root ).
ENDTRY. ENDTRY.
@ -251,7 +239,6 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
METHOD get_content_compress. METHOD get_content_compress.
DATA: lx_dyn_call_error TYPE REF TO cx_sy_dyn_call_error.
DATA: lx_root TYPE REF TO cx_root. DATA: lx_root TYPE REF TO cx_root.
DATA: lo_log TYPE REF TO object. DATA: lo_log TYPE REF TO object.
@ -267,9 +254,6 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
iv_package = iv_package iv_package = iv_package
iv_depl_id = ms_icd_data_key-depl_scenario. iv_depl_id = ms_icd_data_key-depl_scenario.
CATCH cx_sy_dyn_call_error INTO lx_dyn_call_error.
zcx_abapgit_exception=>raise( iv_text = 'AIFC not supported'
ix_previous = lx_dyn_call_error ).
CATCH cx_root INTO lx_root. CATCH cx_root INTO lx_root.
zcx_abapgit_exception=>raise_with_text( lx_root ). zcx_abapgit_exception=>raise_with_text( lx_root ).
ENDTRY. ENDTRY.
@ -277,7 +261,6 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
METHOD handle_table_data. METHOD handle_table_data.
DATA: lx_dyn_call_error TYPE REF TO cx_sy_dyn_call_error.
DATA: lx_root TYPE REF TO cx_root. DATA: lx_root TYPE REF TO cx_root.
TRY. TRY.
@ -286,9 +269,6 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
iv_tabname = iv_tabname iv_tabname = iv_tabname
it_data = it_data. it_data = it_data.
CATCH cx_sy_dyn_call_error INTO lx_dyn_call_error.
zcx_abapgit_exception=>raise( iv_text = 'AIFC not supported'
ix_previous = lx_dyn_call_error ).
CATCH cx_root INTO lx_root. CATCH cx_root INTO lx_root.
zcx_abapgit_exception=>raise_with_text( lx_root ). zcx_abapgit_exception=>raise_with_text( lx_root ).
ENDTRY. ENDTRY.
@ -296,7 +276,6 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
METHOD validate_interface. METHOD validate_interface.
DATA: lx_dyn_call_error TYPE REF TO cx_sy_dyn_call_error.
DATA: lx_root TYPE REF TO cx_root. DATA: lx_root TYPE REF TO cx_root.
rv_success = abap_false. rv_success = abap_false.
@ -307,9 +286,6 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
RECEIVING RECEIVING
rv_success = rv_success. rv_success = rv_success.
CATCH cx_sy_dyn_call_error INTO lx_dyn_call_error.
zcx_abapgit_exception=>raise( iv_text = 'AIFC not supported'
ix_previous = lx_dyn_call_error ).
CATCH cx_root INTO lx_root. CATCH cx_root INTO lx_root.
zcx_abapgit_exception=>raise_with_text( lx_root ). zcx_abapgit_exception=>raise_with_text( lx_root ).
ENDTRY. ENDTRY.
@ -317,25 +293,18 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
METHOD zif_abapgit_object~changed_by. METHOD zif_abapgit_object~changed_by.
DATA lx_dyn_call_error TYPE REF TO cx_sy_dyn_call_error.
DATA ls_icd_data_key TYPE ty_icd_data_key. DATA ls_icd_data_key TYPE ty_icd_data_key.
ls_icd_data_key-depl_scenario = ms_icd_data_key-depl_scenario. ls_icd_data_key-depl_scenario = ms_icd_data_key-depl_scenario.
ls_icd_data_key-ns = ms_icd_data_key-ns. ls_icd_data_key-ns = ms_icd_data_key-ns.
ls_icd_data_key-ifname = ms_icd_data_key-ifname. ls_icd_data_key-ifname = ms_icd_data_key-ifname.
ls_icd_data_key-ifver2 = ms_icd_data_key-ifver2. ls_icd_data_key-ifver2 = ms_icd_data_key-ifver2.
TRY.
CALL METHOD mo_abapgit_util->('/AIF/IF_ABAPGIT_AIFC_UTIL~CHANGED_BY') CALL METHOD mo_abapgit_util->('/AIF/IF_ABAPGIT_AIFC_UTIL~CHANGED_BY')
EXPORTING EXPORTING
is_key = ls_icd_data_key is_key = ls_icd_data_key
RECEIVING RECEIVING
rv_user = rv_user. rv_user = rv_user.
CATCH cx_sy_dyn_call_error INTO lx_dyn_call_error.
zcx_abapgit_exception=>raise( iv_text = 'AIFC not supported'
ix_previous = lx_dyn_call_error ).
ENDTRY.
ENDMETHOD. ENDMETHOD.
@ -458,8 +427,6 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
METHOD zif_abapgit_object~exists. METHOD zif_abapgit_object~exists.
DATA: lx_dyn_call_error TYPE REF TO cx_sy_dyn_call_error.
DATA ls_icd_data_key TYPE ty_icd_data_key. DATA ls_icd_data_key TYPE ty_icd_data_key.
ls_icd_data_key-depl_scenario = ms_icd_data_key-depl_scenario. ls_icd_data_key-depl_scenario = ms_icd_data_key-depl_scenario.
@ -469,17 +436,12 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
rv_bool = abap_false. rv_bool = abap_false.
TRY.
CALL METHOD mo_abapgit_util->('/AIF/IF_ABAPGIT_AIFC_UTIL~EXISTS') CALL METHOD mo_abapgit_util->('/AIF/IF_ABAPGIT_AIFC_UTIL~EXISTS')
EXPORTING EXPORTING
is_key = ls_icd_data_key is_key = ls_icd_data_key
RECEIVING RECEIVING
rv_bool = rv_bool. rv_bool = rv_bool.
CATCH cx_sy_dyn_call_error INTO lx_dyn_call_error.
zcx_abapgit_exception=>raise( iv_text = 'AIFC not supported'
ix_previous = lx_dyn_call_error ).
ENDTRY.
ENDMETHOD. ENDMETHOD.
@ -549,9 +511,7 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
METHOD zif_abapgit_object~serialize. METHOD zif_abapgit_object~serialize.
DATA: lx_root TYPE REF TO cx_root. DATA lx_root TYPE REF TO cx_root.
DATA: lx_dyn_call_error TYPE REF TO cx_sy_dyn_call_error.
DATA ls_icd_data_key TYPE ty_icd_data_key. DATA ls_icd_data_key TYPE ty_icd_data_key.
DATA lt_ifdata TYPE ty_table_data_t. DATA lt_ifdata TYPE ty_table_data_t.
@ -575,18 +535,12 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
ls_icd_data_key-ifname = ms_icd_data_key-ifname. ls_icd_data_key-ifname = ms_icd_data_key-ifname.
ls_icd_data_key-ifver2 = ms_icd_data_key-ifver2. ls_icd_data_key-ifver2 = ms_icd_data_key-ifver2.
TRY.
CALL METHOD mo_abapgit_util->('/AIF/IF_ABAPGIT_AIFC_UTIL~GET_IF_DATA') CALL METHOD mo_abapgit_util->('/AIF/IF_ABAPGIT_AIFC_UTIL~GET_IF_DATA')
EXPORTING EXPORTING
is_key = ls_icd_data_key is_key = ls_icd_data_key
RECEIVING RECEIVING
rt_ifdata = lt_ifdata. rt_ifdata = lt_ifdata.
CATCH cx_sy_dyn_call_error INTO lx_dyn_call_error.
zcx_abapgit_exception=>raise( iv_text = 'AIFC not supported'
ix_previous = lx_dyn_call_error ).
ENDTRY.
LOOP AT lt_ifdata REFERENCE INTO lr_ifdata. LOOP AT lt_ifdata REFERENCE INTO lr_ifdata.
UNASSIGN <lt_table>. UNASSIGN <lt_table>.
@ -610,7 +564,7 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
CATCH cx_root INTO lx_root. CATCH cx_root INTO lx_root.
zcx_abapgit_exception=>raise( iv_text = 'Serialize not possible' zcx_abapgit_exception=>raise( iv_text = 'Serialize not possible'
ix_previous = lx_dyn_call_error ). ix_previous = lx_root ).
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.
ENDCLASS. ENDCLASS.

View File

@ -10,7 +10,7 @@ CLASS zcl_abapgit_object_amsd DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
@ -106,7 +106,7 @@ CLASS zcl_abapgit_object_amsd IMPLEMENTATION.
CREATE OBJECT mi_persistence TYPE ('CL_AMDP_SCHEMA_OBJECT_PERSIST'). CREATE OBJECT mi_persistence TYPE ('CL_AMDP_SCHEMA_OBJECT_PERSIST').
CATCH cx_sy_create_error. CATCH cx_sy_create_error.
zcx_abapgit_exception=>raise( |AMSD not supported by your NW release| ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.

View File

@ -15,7 +15,7 @@ CLASS zcl_abapgit_object_apis DEFINITION
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
@ -42,7 +42,7 @@ CLASS zcl_abapgit_object_apis IMPLEMENTATION.
TRY. TRY.
CREATE DATA lr_data TYPE (c_model). CREATE DATA lr_data TYPE (c_model).
CATCH cx_sy_create_error. CATCH cx_sy_create_error.
zcx_abapgit_exception=>raise( |APIS not supported by your NW release| ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.

View File

@ -10,7 +10,7 @@ CLASS zcl_abapgit_object_bdef DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
@ -208,7 +208,7 @@ CLASS zcl_abapgit_object_bdef IMPLEMENTATION.
CREATE OBJECT mi_persistence TYPE ('CL_BDEF_OBJECT_PERSIST'). CREATE OBJECT mi_persistence TYPE ('CL_BDEF_OBJECT_PERSIST').
CATCH cx_sy_create_error. CATCH cx_sy_create_error.
zcx_abapgit_exception=>raise( |BDEF not supported by your NW release| ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.

View File

@ -9,7 +9,7 @@ CLASS zcl_abapgit_object_cmpt DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
INTERFACES zif_abapgit_object. INTERFACES zif_abapgit_object.
PROTECTED SECTION. PROTECTED SECTION.
@ -38,7 +38,7 @@ CLASS zcl_abapgit_object_cmpt IMPLEMENTATION.
r_ref_db_access = mo_cmp_db. r_ref_db_access = mo_cmp_db.
CATCH cx_root. CATCH cx_root.
zcx_abapgit_exception=>raise( 'CMPT not supported' ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
mv_name = ms_item-obj_name. mv_name = ms_item-obj_name.
@ -50,7 +50,6 @@ CLASS zcl_abapgit_object_cmpt IMPLEMENTATION.
DATA: lo_cmp_template TYPE REF TO object. DATA: lo_cmp_template TYPE REF TO object.
TRY.
CALL METHOD ('CL_CMP_TEMPLATE')=>('S_CREATE_FROM_DB') CALL METHOD ('CL_CMP_TEMPLATE')=>('S_CREATE_FROM_DB')
EXPORTING EXPORTING
i_name = mv_name i_name = mv_name
@ -62,10 +61,6 @@ CLASS zcl_abapgit_object_cmpt IMPLEMENTATION.
RECEIVING RECEIVING
r_user = rv_user. r_user = rv_user.
CATCH cx_root.
zcx_abapgit_exception=>raise( 'CMPT not supported' ).
ENDTRY.
ENDMETHOD. ENDMETHOD.
@ -73,7 +68,6 @@ CLASS zcl_abapgit_object_cmpt IMPLEMENTATION.
DATA: lv_deleted TYPE abap_bool. DATA: lv_deleted TYPE abap_bool.
TRY.
CALL METHOD mo_cmp_db->('IF_CMP_TEMPLATE_DB~DELETE_TEMPLATE') CALL METHOD mo_cmp_db->('IF_CMP_TEMPLATE_DB~DELETE_TEMPLATE')
EXPORTING EXPORTING
i_name = mv_name i_name = mv_name
@ -83,10 +77,6 @@ CLASS zcl_abapgit_object_cmpt IMPLEMENTATION.
RECEIVING RECEIVING
r_flg_deleted = lv_deleted. r_flg_deleted = lv_deleted.
CATCH cx_root.
zcx_abapgit_exception=>raise( 'CMPT not supported' ).
ENDTRY.
IF lv_deleted = abap_false. IF lv_deleted = abap_false.
zcx_abapgit_exception=>raise( |Error deleting CMPT { ms_item-obj_name }| ). zcx_abapgit_exception=>raise( |Error deleting CMPT { ms_item-obj_name }| ).
ENDIF. ENDIF.
@ -103,7 +93,6 @@ CLASS zcl_abapgit_object_cmpt IMPLEMENTATION.
<lg_header> TYPE any, <lg_header> TYPE any,
<lg_field> TYPE any. <lg_field> TYPE any.
TRY.
CREATE DATA lr_template TYPE ('IF_CMP_TEMPLATE_DB=>TYP_TEMPLATE'). CREATE DATA lr_template TYPE ('IF_CMP_TEMPLATE_DB=>TYP_TEMPLATE').
ASSIGN lr_template->* TO <lg_template>. ASSIGN lr_template->* TO <lg_template>.
@ -131,10 +120,6 @@ CLASS zcl_abapgit_object_cmpt IMPLEMENTATION.
i_flg_header = abap_true i_flg_header = abap_true
i_flg_lines = abap_true. i_flg_lines = abap_true.
CATCH cx_root.
zcx_abapgit_exception=>raise( 'CMPT not supported' ).
ENDTRY.
corr_insert( iv_package ). corr_insert( iv_package ).
ENDMETHOD. ENDMETHOD.
@ -142,7 +127,6 @@ CLASS zcl_abapgit_object_cmpt IMPLEMENTATION.
METHOD zif_abapgit_object~exists. METHOD zif_abapgit_object~exists.
TRY.
CALL METHOD ('CL_CMP_TEMPLATE')=>('S_TEMPLATE_EXISTS') CALL METHOD ('CL_CMP_TEMPLATE')=>('S_TEMPLATE_EXISTS')
EXPORTING EXPORTING
i_name = mv_name i_name = mv_name
@ -157,9 +141,6 @@ CLASS zcl_abapgit_object_cmpt IMPLEMENTATION.
RECEIVING RECEIVING
r_flg_exists = rv_bool. r_flg_exists = rv_bool.
ENDIF. ENDIF.
CATCH cx_root.
zcx_abapgit_exception=>raise( 'CMPT not supported' ).
ENDTRY.
ENDMETHOD. ENDMETHOD.
@ -218,7 +199,6 @@ CLASS zcl_abapgit_object_cmpt IMPLEMENTATION.
<lg_header> TYPE any, <lg_header> TYPE any,
<lg_field> TYPE any. <lg_field> TYPE any.
TRY.
CREATE DATA lr_template TYPE ('IF_CMP_TEMPLATE_DB=>TYP_TEMPLATE'). CREATE DATA lr_template TYPE ('IF_CMP_TEMPLATE_DB=>TYP_TEMPLATE').
ASSIGN lr_template->* TO <lg_template>. ASSIGN lr_template->* TO <lg_template>.
@ -256,9 +236,5 @@ CLASS zcl_abapgit_object_cmpt IMPLEMENTATION.
io_xml->add( iv_name = 'CMPT' io_xml->add( iv_name = 'CMPT'
ig_data = <lg_template> ). ig_data = <lg_template> ).
CATCH cx_root.
zcx_abapgit_exception=>raise( 'CMPT not supported' ).
ENDTRY.
ENDMETHOD. ENDMETHOD.
ENDCLASS. ENDCLASS.

View File

@ -2,18 +2,50 @@ CLASS zcl_abapgit_object_dcls DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
PUBLIC SECTION. PUBLIC SECTION.
INTERFACES zif_abapgit_object. INTERFACES zif_abapgit_object.
METHODS constructor
IMPORTING
is_item TYPE zif_abapgit_definitions=>ty_item
iv_language TYPE spras
io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING
zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
DATA: mo_dcl_handler TYPE REF TO object. " CL_ACM_DCL_HANDLER
METHODS clear_fields
CHANGING
!cg_data TYPE any
RAISING
zcx_abapgit_exception .
ENDCLASS. ENDCLASS.
CLASS zcl_abapgit_object_dcls IMPLEMENTATION. CLASS zcl_abapgit_object_dcls IMPLEMENTATION.
METHOD constructor.
super->constructor(
is_item = is_item
iv_language = iv_language
io_files = io_files
io_i18n_params = io_i18n_params ).
TRY.
CALL METHOD ('CL_ACM_DCL_HANDLER_FACTORY')=>('CREATE')
RECEIVING
ro_handler = mo_dcl_handler.
CATCH cx_root.
RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY.
ENDMETHOD.
METHOD zif_abapgit_object~changed_by. METHOD zif_abapgit_object~changed_by.
DATA: lr_data TYPE REF TO data, DATA: lr_data TYPE REF TO data,
lo_dcl TYPE REF TO object,
lx_error TYPE REF TO cx_root. lx_error TYPE REF TO cx_root.
FIELD-SYMBOLS: <lg_data> TYPE any, FIELD-SYMBOLS: <lg_data> TYPE any,
@ -23,15 +55,14 @@ CLASS zcl_abapgit_object_dcls IMPLEMENTATION.
ASSIGN lr_data->* TO <lg_data>. ASSIGN lr_data->* TO <lg_data>.
TRY. TRY.
CALL METHOD ('CL_ACM_DCL_HANDLER_FACTORY')=>('CREATE') CALL METHOD mo_dcl_handler->('READ')
RECEIVING
ro_handler = lo_dcl.
CALL METHOD lo_dcl->('READ')
EXPORTING EXPORTING
iv_dclname = ms_item-obj_name iv_dclname = ms_item-obj_name
IMPORTING IMPORTING
es_dclsrc = <lg_data>. es_dclsrc = <lg_data>.
CATCH cx_root INTO lx_error.
zcx_abapgit_exception=>raise_with_text( lx_error ).
ENDTRY.
ASSIGN COMPONENT 'AS4USER' OF STRUCTURE <lg_data> TO <lg_field>. ASSIGN COMPONENT 'AS4USER' OF STRUCTURE <lg_data> TO <lg_field>.
IF sy-subrc = 0. IF sy-subrc = 0.
@ -39,23 +70,16 @@ CLASS zcl_abapgit_object_dcls IMPLEMENTATION.
ELSE. ELSE.
rv_user = c_user_unknown. rv_user = c_user_unknown.
ENDIF. ENDIF.
CATCH cx_root INTO lx_error.
zcx_abapgit_exception=>raise_with_text( lx_error ).
ENDTRY.
ENDMETHOD. ENDMETHOD.
METHOD zif_abapgit_object~delete. METHOD zif_abapgit_object~delete.
DATA: lo_dcl TYPE REF TO object, DATA: lx_error TYPE REF TO cx_root.
lx_error TYPE REF TO cx_root.
TRY. TRY.
CALL METHOD ('CL_ACM_DCL_HANDLER_FACTORY')=>('CREATE') CALL METHOD mo_dcl_handler->('DELETE')
RECEIVING
ro_handler = lo_dcl.
CALL METHOD lo_dcl->('DELETE')
EXPORTING EXPORTING
iv_dclname = ms_item-obj_name. iv_dclname = ms_item-obj_name.
@ -71,7 +95,6 @@ CLASS zcl_abapgit_object_dcls IMPLEMENTATION.
METHOD zif_abapgit_object~deserialize. METHOD zif_abapgit_object~deserialize.
DATA: lr_data TYPE REF TO data, DATA: lr_data TYPE REF TO data,
lo_dcl TYPE REF TO object,
lx_error TYPE REF TO cx_root, lx_error TYPE REF TO cx_root,
lv_abap_language_version TYPE uccheck. lv_abap_language_version TYPE uccheck.
@ -98,15 +121,11 @@ CLASS zcl_abapgit_object_dcls IMPLEMENTATION.
set_abap_language_version( CHANGING cv_abap_language_version = lv_abap_language_version ). set_abap_language_version( CHANGING cv_abap_language_version = lv_abap_language_version ).
ENDIF. ENDIF.
TRY.
tadir_insert( iv_package ). tadir_insert( iv_package ).
CALL METHOD ('CL_ACM_DCL_HANDLER_FACTORY')=>('CREATE')
RECEIVING
ro_handler = lo_dcl.
TRY. TRY.
CALL METHOD lo_dcl->('SAVE') TRY.
CALL METHOD mo_dcl_handler->('SAVE')
EXPORTING EXPORTING
iv_dclname = ms_item-obj_name iv_dclname = ms_item-obj_name
iv_put_state = 'I' iv_put_state = 'I'
@ -115,7 +134,7 @@ CLASS zcl_abapgit_object_dcls IMPLEMENTATION.
iv_access_mode = 'INSERT' iv_access_mode = 'INSERT'
iv_abap_language_version = lv_abap_language_version. iv_abap_language_version = lv_abap_language_version.
CATCH cx_sy_dyn_call_param_not_found. CATCH cx_sy_dyn_call_param_not_found.
CALL METHOD lo_dcl->('SAVE') CALL METHOD mo_dcl_handler->('SAVE')
EXPORTING EXPORTING
iv_dclname = ms_item-obj_name iv_dclname = ms_item-obj_name
iv_put_state = 'I' iv_put_state = 'I'
@ -135,24 +154,12 @@ CLASS zcl_abapgit_object_dcls IMPLEMENTATION.
METHOD zif_abapgit_object~exists. METHOD zif_abapgit_object~exists.
DATA: lo_dcl TYPE REF TO object, CALL METHOD mo_dcl_handler->('CHECK_EXISTENCE')
lx_error TYPE REF TO cx_root.
TRY.
CALL METHOD ('CL_ACM_DCL_HANDLER_FACTORY')=>('CREATE')
RECEIVING
ro_handler = lo_dcl.
CALL METHOD lo_dcl->('CHECK_EXISTENCE')
EXPORTING EXPORTING
iv_objectname = ms_item-obj_name iv_objectname = ms_item-obj_name
RECEIVING RECEIVING
rv_exists = rv_bool. rv_exists = rv_bool.
CATCH cx_root INTO lx_error.
zcx_abapgit_exception=>raise_with_text( lx_error ).
ENDTRY.
ENDMETHOD. ENDMETHOD.
@ -207,7 +214,6 @@ CLASS zcl_abapgit_object_dcls IMPLEMENTATION.
METHOD zif_abapgit_object~serialize. METHOD zif_abapgit_object~serialize.
DATA: lr_data TYPE REF TO data, DATA: lr_data TYPE REF TO data,
lo_dcl TYPE REF TO object,
lx_error TYPE REF TO cx_root. lx_error TYPE REF TO cx_root.
FIELD-SYMBOLS: <lg_data> TYPE any, FIELD-SYMBOLS: <lg_data> TYPE any,
@ -218,44 +224,17 @@ CLASS zcl_abapgit_object_dcls IMPLEMENTATION.
ASSIGN lr_data->* TO <lg_data>. ASSIGN lr_data->* TO <lg_data>.
TRY. TRY.
CALL METHOD ('CL_ACM_DCL_HANDLER_FACTORY')=>('CREATE') CALL METHOD mo_dcl_handler->('READ')
RECEIVING
ro_handler = lo_dcl.
CALL METHOD lo_dcl->('READ')
EXPORTING EXPORTING
iv_dclname = ms_item-obj_name iv_dclname = ms_item-obj_name
IMPORTING IMPORTING
es_dclsrc = <lg_data>. es_dclsrc = <lg_data>.
ASSIGN COMPONENT 'AS4USER' OF STRUCTURE <lg_data> TO <lg_field>. CATCH cx_root INTO lx_error.
ASSERT sy-subrc = 0. zcx_abapgit_exception=>raise_with_text( lx_error ).
CLEAR <lg_field>. ENDTRY.
ASSIGN COMPONENT 'AS4DATE' OF STRUCTURE <lg_data> TO <lg_field>. clear_fields( CHANGING cg_data = <lg_data> ).
ASSERT sy-subrc = 0.
CLEAR <lg_field>.
ASSIGN COMPONENT 'AS4TIME' OF STRUCTURE <lg_data> TO <lg_field>.
ASSERT sy-subrc = 0.
CLEAR <lg_field>.
ASSIGN COMPONENT 'CREATED_BY' OF STRUCTURE <lg_data> TO <lg_field>.
ASSERT sy-subrc = 0.
CLEAR <lg_field>.
ASSIGN COMPONENT 'CREATED_DATE' OF STRUCTURE <lg_data> TO <lg_field>.
ASSERT sy-subrc = 0.
CLEAR <lg_field>.
ASSIGN COMPONENT 'AS4LOCAL' OF STRUCTURE <lg_data> TO <lg_field>.
ASSERT sy-subrc = 0.
CLEAR <lg_field>.
ASSIGN COMPONENT 'ABAP_LANGUAGE_VERSION' OF STRUCTURE <lg_data> TO <lg_field>.
IF sy-subrc = 0.
clear_abap_language_version( CHANGING cv_abap_language_version = <lg_field> ).
ENDIF.
ASSIGN COMPONENT 'SOURCE' OF STRUCTURE <lg_data> TO <lg_field>. ASSIGN COMPONENT 'SOURCE' OF STRUCTURE <lg_data> TO <lg_field>.
ASSERT sy-subrc = 0. ASSERT sy-subrc = 0.
@ -269,9 +248,31 @@ CLASS zcl_abapgit_object_dcls IMPLEMENTATION.
io_xml->add( iv_name = 'DCLS' io_xml->add( iv_name = 'DCLS'
ig_data = <lg_data> ). ig_data = <lg_data> ).
CATCH cx_root INTO lx_error. ENDMETHOD.
zcx_abapgit_exception=>raise_with_text( lx_error ).
ENDTRY.
METHOD clear_fields.
DATA:
BEGIN OF ls_fields_to_clear,
as4user TYPE c,
as4date TYPE d,
as4time TYPE t,
created_by TYPE c,
created_date TYPE d,
as4local TYPE c,
END OF ls_fields_to_clear.
FIELD-SYMBOLS:
<lg_abap_language_version> TYPE any.
MOVE-CORRESPONDING ls_fields_to_clear TO cg_data.
ASSIGN COMPONENT 'ABAP_LANGUAGE_VERSION' OF STRUCTURE cg_data TO <lg_abap_language_version>.
IF sy-subrc = 0.
clear_abap_language_version( CHANGING cv_abap_language_version = <lg_abap_language_version> ).
ENDIF.
ENDMETHOD. ENDMETHOD.
ENDCLASS. ENDCLASS.

View File

@ -10,7 +10,7 @@ CLASS zcl_abapgit_object_ddls DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
METHODS open_adt_stob METHODS open_adt_stob
@ -20,6 +20,7 @@ CLASS zcl_abapgit_object_ddls DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
zcx_abapgit_exception. zcx_abapgit_exception.
PRIVATE SECTION. PRIVATE SECTION.
DATA mo_ddl_handler TYPE REF TO object. " CL_DD_DDL_HANDLER
METHODS is_baseinfo_supported METHODS is_baseinfo_supported
RETURNING RETURNING
VALUE(rv_supported) TYPE abap_bool . VALUE(rv_supported) TYPE abap_bool .
@ -29,6 +30,12 @@ CLASS zcl_abapgit_object_ddls DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
METHODS format_source_before_serialize METHODS format_source_before_serialize
CHANGING CHANGING
cv_string TYPE string. cv_string TYPE string.
METHODS clear_fields
CHANGING
!cg_data TYPE any
RAISING
zcx_abapgit_exception .
ENDCLASS. ENDCLASS.
@ -38,8 +45,6 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
METHOD constructor. METHOD constructor.
DATA lo_ddl TYPE REF TO object.
super->constructor( super->constructor(
is_item = is_item is_item = is_item
iv_language = iv_language iv_language = iv_language
@ -49,9 +54,10 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
TRY. TRY.
CALL METHOD ('CL_DD_DDL_HANDLER_FACTORY')=>('CREATE') CALL METHOD ('CL_DD_DDL_HANDLER_FACTORY')=>('CREATE')
RECEIVING RECEIVING
handler = lo_ddl. handler = mo_ddl_handler.
CATCH cx_root. CATCH cx_root.
zcx_abapgit_exception=>raise( 'Object type DDLS is not supported by this system' ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.
@ -93,13 +99,12 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
METHOD is_baseinfo_supported. METHOD is_baseinfo_supported.
DATA: DATA:
lr_data_baseinfo TYPE REF TO data, lr_data_baseinfo TYPE REF TO data.
lx_error TYPE REF TO cx_root.
TRY. TRY.
CREATE DATA lr_data_baseinfo TYPE ('IF_DD_DDL_TYPES=>TY_S_BASEINFO_STRING_SAVE'). CREATE DATA lr_data_baseinfo TYPE ('IF_DD_DDL_TYPES=>TY_S_BASEINFO_STRING_SAVE').
rv_supported = abap_true. rv_supported = abap_true.
CATCH cx_root INTO lx_error. CATCH cx_root.
rv_supported = abap_false. rv_supported = abap_false.
ENDTRY. ENDTRY.
@ -108,9 +113,7 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
METHOD open_adt_stob. METHOD open_adt_stob.
DATA: lr_data TYPE REF TO data, DATA: lr_data TYPE REF TO data.
lo_ddl TYPE REF TO object,
lx_error TYPE REF TO cx_root.
FIELD-SYMBOLS: <lt_ddnames> TYPE STANDARD TABLE. FIELD-SYMBOLS: <lt_ddnames> TYPE STANDARD TABLE.
FIELD-SYMBOLS: <lt_entity_view> TYPE STANDARD TABLE. FIELD-SYMBOLS: <lt_entity_view> TYPE STANDARD TABLE.
@ -120,7 +123,6 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
FIELD-SYMBOLS: <lg_ddlname> TYPE any. FIELD-SYMBOLS: <lg_ddlname> TYPE any.
TRY.
CREATE DATA lr_data TYPE ('IF_DD_DDL_TYPES=>TY_T_DDOBJ'). CREATE DATA lr_data TYPE ('IF_DD_DDL_TYPES=>TY_T_DDOBJ').
ASSIGN lr_data->* TO <lt_ddnames>. ASSIGN lr_data->* TO <lt_ddnames>.
@ -138,11 +140,7 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
<lg_ddname> = iv_ddls_name. <lg_ddname> = iv_ddls_name.
INSERT <lg_ddnames> INTO TABLE <lt_ddnames>. INSERT <lg_ddnames> INTO TABLE <lt_ddnames>.
CALL METHOD ('CL_DD_DDL_HANDLER_FACTORY')=>('CREATE') CALL METHOD mo_ddl_handler->('IF_DD_DDL_HANDLER~GET_VIEWNAME_FROM_ENTITYNAME')
RECEIVING
handler = lo_ddl.
CALL METHOD lo_ddl->('IF_DD_DDL_HANDLER~GET_VIEWNAME_FROM_ENTITYNAME')
EXPORTING EXPORTING
ddnames = <lt_ddnames> ddnames = <lt_ddnames>
IMPORTING IMPORTING
@ -157,10 +155,6 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
ENDIF. ENDIF.
CATCH cx_root INTO lx_error.
zcx_abapgit_exception=>raise_with_text( lx_error ).
ENDTRY.
ENDMETHOD. ENDMETHOD.
@ -180,23 +174,17 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
METHOD zif_abapgit_object~changed_by. METHOD zif_abapgit_object~changed_by.
DATA: lo_ddl TYPE REF TO object, DATA: lr_data TYPE REF TO data,
lr_data TYPE REF TO data,
lx_error TYPE REF TO cx_root. lx_error TYPE REF TO cx_root.
FIELD-SYMBOLS: <lg_data> TYPE any, FIELD-SYMBOLS: <lg_data> TYPE any,
<lg_field> TYPE any. <lg_field> TYPE any.
TRY.
CREATE DATA lr_data TYPE ('DDDDLSRCV'). CREATE DATA lr_data TYPE ('DDDDLSRCV').
ASSIGN lr_data->* TO <lg_data>. ASSIGN lr_data->* TO <lg_data>.
CALL METHOD ('CL_DD_DDL_HANDLER_FACTORY')=>('CREATE') TRY.
RECEIVING CALL METHOD mo_ddl_handler->('IF_DD_DDL_HANDLER~READ')
handler = lo_ddl.
CALL METHOD lo_ddl->('IF_DD_DDL_HANDLER~READ')
EXPORTING EXPORTING
name = ms_item-obj_name name = ms_item-obj_name
get_state = 'A' get_state = 'A'
@ -270,7 +258,6 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
METHOD zif_abapgit_object~deserialize. METHOD zif_abapgit_object~deserialize.
DATA: DATA:
lo_ddl TYPE REF TO object,
lr_data TYPE REF TO data, lr_data TYPE REF TO data,
lr_data_baseinfo TYPE REF TO data, lr_data_baseinfo TYPE REF TO data,
lx_error TYPE REF TO cx_root. lx_error TYPE REF TO cx_root.
@ -283,10 +270,10 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
<lg_baseinfo_ddlname> TYPE any, <lg_baseinfo_ddlname> TYPE any,
<lg_abap_language_version> TYPE any. <lg_abap_language_version> TYPE any.
TRY.
CREATE DATA lr_data TYPE ('DDDDLSRCV'). CREATE DATA lr_data TYPE ('DDDDLSRCV').
ASSIGN lr_data->* TO <lg_data>. ASSIGN lr_data->* TO <lg_data>.
TRY.
io_xml->read( EXPORTING iv_name = 'DDLS' io_xml->read( EXPORTING iv_name = 'DDLS'
CHANGING cg_data = <lg_data> ). CHANGING cg_data = <lg_data> ).
@ -299,10 +286,6 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
set_abap_language_version( CHANGING cv_abap_language_version = <lg_abap_language_version> ). set_abap_language_version( CHANGING cv_abap_language_version = <lg_abap_language_version> ).
ENDIF. ENDIF.
CALL METHOD ('CL_DD_DDL_HANDLER_FACTORY')=>('CREATE')
RECEIVING
handler = lo_ddl.
IF is_baseinfo_supported( ) = abap_true. IF is_baseinfo_supported( ) = abap_true.
CREATE DATA lr_data_baseinfo TYPE ('IF_DD_DDL_TYPES=>TY_S_BASEINFO_STRING_SAVE'). CREATE DATA lr_data_baseinfo TYPE ('IF_DD_DDL_TYPES=>TY_S_BASEINFO_STRING_SAVE').
ASSIGN lr_data_baseinfo->* TO <lg_data_baseinfo>. ASSIGN lr_data_baseinfo->* TO <lg_data_baseinfo>.
@ -317,7 +300,7 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
<lg_baseinfo_ddlname> = ms_item-obj_name. <lg_baseinfo_ddlname> = ms_item-obj_name.
TRY. TRY.
CALL METHOD lo_ddl->('IF_DD_DDL_HANDLER~SAVE') CALL METHOD mo_ddl_handler->('IF_DD_DDL_HANDLER~SAVE')
EXPORTING EXPORTING
name = ms_item-obj_name name = ms_item-obj_name
put_state = 'N' put_state = 'N'
@ -325,7 +308,7 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
baseinfo_string = <lg_data_baseinfo> baseinfo_string = <lg_data_baseinfo>
save_language_version = abap_true. save_language_version = abap_true.
CATCH cx_sy_dyn_call_param_not_found. CATCH cx_sy_dyn_call_param_not_found.
CALL METHOD lo_ddl->('IF_DD_DDL_HANDLER~SAVE') CALL METHOD mo_ddl_handler->('IF_DD_DDL_HANDLER~SAVE')
EXPORTING EXPORTING
name = ms_item-obj_name name = ms_item-obj_name
put_state = 'N' put_state = 'N'
@ -333,14 +316,14 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
baseinfo_string = <lg_data_baseinfo>. baseinfo_string = <lg_data_baseinfo>.
ENDTRY. ENDTRY.
ELSE. ELSE.
CALL METHOD lo_ddl->('IF_DD_DDL_HANDLER~SAVE') CALL METHOD mo_ddl_handler->('IF_DD_DDL_HANDLER~SAVE')
EXPORTING EXPORTING
name = ms_item-obj_name name = ms_item-obj_name
put_state = 'N' put_state = 'N'
ddddlsrcv_wa = <lg_data>. ddddlsrcv_wa = <lg_data>.
ENDIF. ENDIF.
CALL METHOD lo_ddl->('IF_DD_DDL_HANDLER~WRITE_TADIR') CALL METHOD mo_ddl_handler->('IF_DD_DDL_HANDLER~WRITE_TADIR')
EXPORTING EXPORTING
objectname = ms_item-obj_name objectname = ms_item-obj_name
devclass = iv_package devclass = iv_package
@ -349,16 +332,14 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
corr_insert( iv_package ). corr_insert( iv_package ).
CATCH cx_root INTO lx_error. CATCH cx_root INTO lx_error.
IF lo_ddl IS NOT INITIAL.
" Attempt clean-up but catch error if it doesn't work " Attempt clean-up but catch error if it doesn't work
TRY. TRY.
CALL METHOD lo_ddl->('IF_DD_DDL_HANDLER~DELETE') CALL METHOD mo_ddl_handler->('IF_DD_DDL_HANDLER~DELETE')
EXPORTING EXPORTING
name = ms_item-obj_name name = ms_item-obj_name
prid = 0. prid = 0.
CATCH cx_root ##NO_HANDLER. CATCH cx_root ##NO_HANDLER.
ENDTRY. ENDTRY.
ENDIF.
zcx_abapgit_exception=>raise_with_text( lx_error ). zcx_abapgit_exception=>raise_with_text( lx_error ).
ENDTRY. ENDTRY.
@ -370,15 +351,10 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
METHOD zif_abapgit_object~exists. METHOD zif_abapgit_object~exists.
DATA: lv_state TYPE objstate, DATA: lv_state TYPE objstate.
lo_ddl TYPE REF TO object.
TRY. TRY.
CALL METHOD ('CL_DD_DDL_HANDLER_FACTORY')=>('CREATE') CALL METHOD mo_ddl_handler->('IF_DD_DDL_HANDLER~READ')
RECEIVING
handler = lo_ddl.
CALL METHOD lo_ddl->('IF_DD_DDL_HANDLER~READ')
EXPORTING EXPORTING
name = ms_item-obj_name name = ms_item-obj_name
IMPORTING IMPORTING
@ -457,36 +433,28 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
METHOD zif_abapgit_object~serialize. METHOD zif_abapgit_object~serialize.
DATA: lo_ddl TYPE REF TO object, DATA: lr_data TYPE REF TO data,
lr_data TYPE REF TO data,
lr_data_baseinfo TYPE REF TO data, lr_data_baseinfo TYPE REF TO data,
lt_clr_comps TYPE STANDARD TABLE OF fieldname WITH DEFAULT KEY,
lx_error TYPE REF TO cx_root. lx_error TYPE REF TO cx_root.
FIELD-SYMBOLS: <lg_data> TYPE any, FIELD-SYMBOLS: <lg_data> TYPE any,
<lg_field> TYPE any, <lg_field> TYPE any,
<lv_comp> LIKE LINE OF lt_clr_comps,
<lt_data_baseinfo> TYPE ANY TABLE, <lt_data_baseinfo> TYPE ANY TABLE,
<lg_data_baseinfo> TYPE any, <lg_data_baseinfo> TYPE any,
<lg_ddlname> TYPE any, <lg_ddlname> TYPE any,
<lg_as4local> TYPE any, <lg_as4local> TYPE any.
<lg_abap_language_version> TYPE any.
TRY.
CREATE DATA lr_data TYPE ('DDDDLSRCV'). CREATE DATA lr_data TYPE ('DDDDLSRCV').
ASSIGN lr_data->* TO <lg_data>. ASSIGN lr_data->* TO <lg_data>.
CALL METHOD ('CL_DD_DDL_HANDLER_FACTORY')=>('CREATE') TRY.
RECEIVING
handler = lo_ddl.
IF is_baseinfo_supported( ) = abap_true. IF is_baseinfo_supported( ) = abap_true.
CREATE DATA lr_data_baseinfo TYPE ('IF_DD_DDL_TYPES=>TY_T_BASEINFO_STRING'). CREATE DATA lr_data_baseinfo TYPE ('IF_DD_DDL_TYPES=>TY_T_BASEINFO_STRING').
ASSIGN lr_data_baseinfo->* TO <lt_data_baseinfo>. ASSIGN lr_data_baseinfo->* TO <lt_data_baseinfo>.
ASSIGN lr_data_baseinfo->* TO <lg_data_baseinfo>.
CALL METHOD lo_ddl->('IF_DD_DDL_HANDLER~READ') CALL METHOD mo_ddl_handler->('IF_DD_DDL_HANDLER~READ')
EXPORTING EXPORTING
name = ms_item-obj_name name = ms_item-obj_name
get_state = 'A' get_state = 'A'
@ -511,7 +479,7 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
ENDIF. ENDIF.
ENDLOOP. ENDLOOP.
ELSE. ELSE.
CALL METHOD lo_ddl->('IF_DD_DDL_HANDLER~READ') CALL METHOD mo_ddl_handler->('IF_DD_DDL_HANDLER~READ')
EXPORTING EXPORTING
name = ms_item-obj_name name = ms_item-obj_name
get_state = 'A' get_state = 'A'
@ -523,24 +491,7 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
zcx_abapgit_exception=>raise_with_text( lx_error ). zcx_abapgit_exception=>raise_with_text( lx_error ).
ENDTRY. ENDTRY.
ASSIGN COMPONENT 'ABAP_LANGUAGE_VERSION' OF STRUCTURE <lg_data> TO <lg_abap_language_version>. clear_fields( CHANGING cg_data = <lg_data> ).
IF sy-subrc = 0.
<lg_abap_language_version> = get_abap_language_version( ).
ENDIF.
APPEND 'AS4USER' TO lt_clr_comps.
APPEND 'AS4DATE' TO lt_clr_comps.
APPEND 'AS4TIME' TO lt_clr_comps.
APPEND 'ACTFLAG' TO lt_clr_comps.
APPEND 'CHGFLAG' TO lt_clr_comps.
APPEND 'ABAP_LANGU_VERSION' TO lt_clr_comps.
LOOP AT lt_clr_comps ASSIGNING <lv_comp>.
ASSIGN COMPONENT <lv_comp> OF STRUCTURE <lg_data> TO <lg_field>.
IF sy-subrc = 0.
CLEAR <lg_field>.
ENDIF.
ENDLOOP.
ASSIGN COMPONENT 'SOURCE' OF STRUCTURE <lg_data> TO <lg_field>. ASSIGN COMPONENT 'SOURCE' OF STRUCTURE <lg_data> TO <lg_field>.
ASSERT sy-subrc = 0. ASSERT sy-subrc = 0.
@ -557,4 +508,30 @@ CLASS zcl_abapgit_object_ddls IMPLEMENTATION.
ig_data = <lg_data> ). ig_data = <lg_data> ).
ENDMETHOD. ENDMETHOD.
METHOD clear_fields.
DATA:
BEGIN OF ls_fields_to_clear,
as4user TYPE c,
as4date TYPE d,
as4time TYPE t,
actflag TYPE c,
chgflag TYPE c,
abap_langu_version TYPE c,
END OF ls_fields_to_clear.
FIELD-SYMBOLS:
<lg_abap_language_version> TYPE any.
MOVE-CORRESPONDING ls_fields_to_clear TO cg_data.
ASSIGN COMPONENT 'ABAP_LANGUAGE_VERSION' OF STRUCTURE cg_data TO <lg_abap_language_version>.
IF sy-subrc = 0.
<lg_abap_language_version> = get_abap_language_version( ).
ENDIF.
ENDMETHOD.
ENDCLASS. ENDCLASS.

View File

@ -2,145 +2,80 @@ CLASS zcl_abapgit_object_ddlx DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
PUBLIC SECTION. PUBLIC SECTION.
INTERFACES zif_abapgit_object. INTERFACES zif_abapgit_object.
METHODS constructor
IMPORTING
is_item TYPE zif_abapgit_definitions=>ty_item
iv_language TYPE spras
io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING
zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
DATA mi_persistence TYPE REF TO if_wb_object_persist. DATA mi_persistence TYPE REF TO if_wb_object_persist.
METHODS get_persistence DATA mi_data_model TYPE REF TO if_wb_object_data_model.
RETURNING DATA mv_object_key TYPE seu_objkey.
VALUE(ri_persistence) TYPE REF TO if_wb_object_persist
RAISING
zcx_abapgit_exception .
METHODS clear_fields METHODS clear_fields
CHANGING CHANGING
!cg_data TYPE any . !cg_data TYPE any
METHODS clear_field RAISING
IMPORTING zcx_abapgit_exception .
!iv_fieldname TYPE csequence
CHANGING
!cg_metadata TYPE any .
ENDCLASS. ENDCLASS.
CLASS zcl_abapgit_object_ddlx IMPLEMENTATION. CLASS zcl_abapgit_object_ddlx IMPLEMENTATION.
METHOD constructor.
METHOD clear_field. super->constructor(
is_item = is_item
iv_language = iv_language
io_files = io_files
io_i18n_params = io_i18n_params ).
FIELD-SYMBOLS: <lg_field> TYPE data. mv_object_key = ms_item-obj_name.
ASSIGN COMPONENT iv_fieldname
OF STRUCTURE cg_metadata
TO <lg_field>.
IF sy-subrc = 0.
CLEAR: <lg_field>.
ENDIF.
ENDMETHOD.
METHOD clear_fields.
FIELD-SYMBOLS: <lg_metadata> TYPE any.
ASSIGN COMPONENT 'METADATA'
OF STRUCTURE cg_data
TO <lg_metadata>.
ASSERT sy-subrc = 0.
clear_field( EXPORTING iv_fieldname = 'CHANGED_AT'
CHANGING cg_metadata = <lg_metadata> ).
clear_field( EXPORTING iv_fieldname = 'CHANGED_BY'
CHANGING cg_metadata = <lg_metadata> ).
clear_field( EXPORTING iv_fieldname = 'CREATED_AT'
CHANGING cg_metadata = <lg_metadata> ).
clear_field( EXPORTING iv_fieldname = 'CREATED_BY'
CHANGING cg_metadata = <lg_metadata> ).
clear_field( EXPORTING iv_fieldname = 'RESPONSIBLE'
CHANGING cg_metadata = <lg_metadata> ).
clear_field( EXPORTING iv_fieldname = 'PACKAGE_REF-NAME'
CHANGING cg_metadata = <lg_metadata> ).
clear_field( EXPORTING iv_fieldname = 'CONTAINER_REF-PACKAGE_NAME'
CHANGING cg_metadata = <lg_metadata> ).
clear_field( EXPORTING iv_fieldname = 'VERSION'
CHANGING cg_metadata = <lg_metadata> ).
clear_field( EXPORTING iv_fieldname = 'RESPONSIBLE'
CHANGING cg_metadata = <lg_metadata> ).
clear_field( EXPORTING iv_fieldname = 'MASTER_SYSTEM'
CHANGING cg_metadata = <lg_metadata> ).
clear_field( EXPORTING iv_fieldname = 'ABAP_LANGUAGE_VERSION'
CHANGING cg_metadata = <lg_metadata> ).
ENDMETHOD.
METHOD get_persistence.
DATA: lx_error TYPE REF TO cx_root.
TRY. TRY.
IF mi_persistence IS NOT BOUND.
CREATE OBJECT mi_persistence CREATE OBJECT mi_persistence
TYPE ('CL_DDLX_ADT_OBJECT_PERSIST'). TYPE ('CL_DDLX_ADT_OBJECT_PERSIST').
ENDIF. CREATE OBJECT mi_data_model
TYPE ('CL_DDLX_WB_OBJECT_DATA').
CATCH cx_root INTO lx_error. CATCH cx_sy_create_object_error.
zcx_abapgit_exception=>raise_with_text( lx_error ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
ri_persistence = mi_persistence.
ENDMETHOD. ENDMETHOD.
METHOD zif_abapgit_object~changed_by. METHOD zif_abapgit_object~changed_by.
DATA: DATA: lr_data TYPE REF TO data.
lv_object_key TYPE seu_objkey,
li_data_model TYPE REF TO if_wb_object_data_model,
li_persistence TYPE REF TO if_wb_object_persist,
lr_data TYPE REF TO data.
FIELD-SYMBOLS: FIELD-SYMBOLS:
<lg_data> TYPE any, <lg_data> TYPE any,
<lg_changed_by> TYPE data. <lg_changed_by> TYPE data.
lv_object_key = ms_item-obj_name.
TRY.
CREATE DATA lr_data CREATE DATA lr_data
TYPE ('CL_DDLX_WB_OBJECT_DATA=>TY_OBJECT_DATA'). TYPE ('CL_DDLX_WB_OBJECT_DATA=>TY_OBJECT_DATA').
ASSIGN lr_data->* TO <lg_data>. ASSIGN lr_data->* TO <lg_data>.
CREATE OBJECT li_data_model TRY.
TYPE ('CL_DDLX_WB_OBJECT_DATA'). mi_persistence->get(
li_persistence = get_persistence( ).
li_persistence->get(
EXPORTING EXPORTING
p_object_key = lv_object_key p_object_key = mv_object_key
p_version = swbm_version_active p_version = swbm_version_active
CHANGING CHANGING
p_object_data = li_data_model ). p_object_data = mi_data_model ).
CATCH cx_root. CATCH cx_swb_exception.
rv_user = c_user_unknown. rv_user = c_user_unknown.
RETURN. RETURN.
ENDTRY. ENDTRY.
li_data_model->get_data( IMPORTING p_data = <lg_data> ). mi_data_model->get_data( IMPORTING p_data = <lg_data> ).
ASSIGN COMPONENT 'METADATA-CHANGED_BY' OF STRUCTURE <lg_data> TO <lg_changed_by>. ASSIGN COMPONENT 'METADATA-CHANGED_BY' OF STRUCTURE <lg_data> TO <lg_changed_by>.
ASSERT sy-subrc = 0. ASSERT sy-subrc = 0.
@ -151,18 +86,13 @@ CLASS zcl_abapgit_object_ddlx IMPLEMENTATION.
METHOD zif_abapgit_object~delete. METHOD zif_abapgit_object~delete.
DATA: lv_object_key TYPE seu_objkey, DATA: lx_error TYPE REF TO cx_swb_exception.
lx_error TYPE REF TO cx_root.
lv_object_key = ms_item-obj_name.
TRY. TRY.
mi_persistence->delete( p_object_key = mv_object_key
get_persistence( )->delete( p_object_key = lv_object_key
p_version = swbm_version_active ). p_version = swbm_version_active ).
CATCH cx_root INTO lx_error. CATCH cx_swb_exception INTO lx_error.
zcx_abapgit_exception=>raise_with_text( lx_error ). zcx_abapgit_exception=>raise_with_text( lx_error ).
ENDTRY. ENDTRY.
@ -173,9 +103,8 @@ CLASS zcl_abapgit_object_ddlx IMPLEMENTATION.
METHOD zif_abapgit_object~deserialize. METHOD zif_abapgit_object~deserialize.
DATA: li_data_model TYPE REF TO if_wb_object_data_model, DATA: lr_data TYPE REF TO data,
lr_data TYPE REF TO data, lx_error TYPE REF TO cx_swb_exception.
lx_error TYPE REF TO cx_root.
FIELD-SYMBOLS: <lg_data> TYPE any, FIELD-SYMBOLS: <lg_data> TYPE any,
<lg_source> TYPE data, <lg_source> TYPE data,
@ -185,7 +114,6 @@ CLASS zcl_abapgit_object_ddlx IMPLEMENTATION.
<lg_changed_at> TYPE xsddatetime_z, <lg_changed_at> TYPE xsddatetime_z,
<lg_abap_language_version> TYPE data. <lg_abap_language_version> TYPE data.
TRY.
CREATE DATA lr_data CREATE DATA lr_data
TYPE ('CL_DDLX_WB_OBJECT_DATA=>TY_OBJECT_DATA'). TYPE ('CL_DDLX_WB_OBJECT_DATA=>TY_OBJECT_DATA').
ASSIGN lr_data->* TO <lg_data>. ASSIGN lr_data->* TO <lg_data>.
@ -211,9 +139,6 @@ CLASS zcl_abapgit_object_ddlx IMPLEMENTATION.
CATCH zcx_abapgit_exception ##NO_HANDLER. CATCH zcx_abapgit_exception ##NO_HANDLER.
ENDTRY. ENDTRY.
CREATE OBJECT li_data_model
TYPE ('CL_DDLX_WB_OBJECT_DATA').
ASSIGN COMPONENT 'METADATA-VERSION' OF STRUCTURE <lg_data> TO <lg_version>. ASSIGN COMPONENT 'METADATA-VERSION' OF STRUCTURE <lg_data> TO <lg_version>.
ASSERT sy-subrc = 0. ASSERT sy-subrc = 0.
@ -236,16 +161,16 @@ CLASS zcl_abapgit_object_ddlx IMPLEMENTATION.
GET TIME STAMP FIELD <lg_changed_at>. GET TIME STAMP FIELD <lg_changed_at>.
ENDIF. ENDIF.
li_data_model->set_data( <lg_data> ). mi_data_model->set_data( <lg_data> ).
get_persistence( )->save( li_data_model ). TRY.
mi_persistence->save( mi_data_model ).
tadir_insert( iv_package ). CATCH cx_swb_exception INTO lx_error.
CATCH cx_root INTO lx_error.
zcx_abapgit_exception=>raise_with_text( lx_error ). zcx_abapgit_exception=>raise_with_text( lx_error ).
ENDTRY. ENDTRY.
tadir_insert( iv_package ).
zcl_abapgit_objects_activation=>add_item( ms_item ). zcl_abapgit_objects_activation=>add_item( ms_item ).
ENDMETHOD. ENDMETHOD.
@ -253,14 +178,10 @@ CLASS zcl_abapgit_object_ddlx IMPLEMENTATION.
METHOD zif_abapgit_object~exists. METHOD zif_abapgit_object~exists.
DATA: lv_object_key TYPE seu_objkey.
lv_object_key = ms_item-obj_name.
rv_bool = abap_true. rv_bool = abap_true.
TRY. TRY.
get_persistence( )->get( p_object_key = lv_object_key mi_persistence->get( p_object_key = mv_object_key
p_version = swbm_version_active p_version = swbm_version_active
p_existence_check_only = abap_true ). p_existence_check_only = abap_true ).
@ -321,60 +242,50 @@ CLASS zcl_abapgit_object_ddlx IMPLEMENTATION.
METHOD zif_abapgit_object~serialize. METHOD zif_abapgit_object~serialize.
DATA: lv_object_key TYPE seu_objkey, DATA: lr_data TYPE REF TO data,
li_data_model TYPE REF TO if_wb_object_data_model, lx_error TYPE REF TO cx_swb_exception.
li_persistence TYPE REF TO if_wb_object_persist,
lr_data TYPE REF TO data,
lx_error TYPE REF TO cx_root.
FIELD-SYMBOLS: <lg_data> TYPE any, FIELD-SYMBOLS: <lg_data> TYPE any,
<lg_field> TYPE data. <lg_field> TYPE data.
lv_object_key = ms_item-obj_name.
TRY.
CREATE DATA lr_data CREATE DATA lr_data
TYPE ('CL_DDLX_WB_OBJECT_DATA=>TY_OBJECT_DATA'). TYPE ('CL_DDLX_WB_OBJECT_DATA=>TY_OBJECT_DATA').
ASSIGN lr_data->* TO <lg_data>. ASSIGN lr_data->* TO <lg_data>.
CREATE OBJECT li_data_model TRY.
TYPE ('CL_DDLX_WB_OBJECT_DATA').
li_persistence = get_persistence( ).
IF zcl_abapgit_factory=>get_environment( )->compare_with_inactive( ) = abap_true. IF zcl_abapgit_factory=>get_environment( )->compare_with_inactive( ) = abap_true.
"Retrieve inactive version "Retrieve inactive version
li_persistence->get( mi_persistence->get(
EXPORTING EXPORTING
p_object_key = lv_object_key p_object_key = mv_object_key
p_version = swbm_version_inactive p_version = swbm_version_inactive
CHANGING CHANGING
p_object_data = li_data_model ). p_object_data = mi_data_model ).
IF li_data_model->get_object_name( ) IS INITIAL. IF mi_data_model->get_object_name( ) IS INITIAL.
"Fallback: retrieve active version "Fallback: retrieve active version
li_persistence->get( mi_persistence->get(
EXPORTING EXPORTING
p_object_key = lv_object_key p_object_key = mv_object_key
p_version = swbm_version_active p_version = swbm_version_active
CHANGING CHANGING
p_object_data = li_data_model ). p_object_data = mi_data_model ).
ENDIF. ENDIF.
ELSE. ELSE.
"Retrieve active version "Retrieve active version
li_persistence->get( mi_persistence->get(
EXPORTING EXPORTING
p_object_key = lv_object_key p_object_key = mv_object_key
p_version = swbm_version_active p_version = swbm_version_active
CHANGING CHANGING
p_object_data = li_data_model ). p_object_data = mi_data_model ).
ENDIF. ENDIF.
li_data_model->get_data( IMPORTING p_data = <lg_data> ). CATCH cx_swb_exception INTO lx_error.
zcx_abapgit_exception=>raise_with_text( lx_error ).
ENDTRY.
ASSIGN COMPONENT 'METADATA-ABAP_LANGU_VERSION' OF STRUCTURE <lg_data> TO <lg_field>. mi_data_model->get_data( IMPORTING p_data = <lg_data> ).
IF sy-subrc = 0.
clear_abap_language_version( CHANGING cv_abap_language_version = <lg_field> ).
ENDIF.
clear_fields( CHANGING cg_data = <lg_data> ). clear_fields( CHANGING cg_data = <lg_data> ).
@ -390,9 +301,40 @@ CLASS zcl_abapgit_object_ddlx IMPLEMENTATION.
io_xml->add( iv_name = 'DDLX' io_xml->add( iv_name = 'DDLX'
ig_data = <lg_data> ). ig_data = <lg_data> ).
CATCH cx_root INTO lx_error. ENDMETHOD.
zcx_abapgit_exception=>raise_with_text( lx_error ).
ENDTRY.
METHOD clear_fields.
DATA:
BEGIN OF ls_fields_to_clear,
BEGIN OF metadata,
changed_at TYPE d,
changed_by TYPE c,
created_at TYPE d,
created_by TYPE c,
responsible TYPE c,
BEGIN OF package_ref,
name TYPE c,
END OF package_ref,
BEGIN OF container_ref,
name TYPE c,
END OF container_ref,
version TYPE c,
master_system TYPE c,
END OF metadata,
END OF ls_fields_to_clear.
FIELD-SYMBOLS:
<lg_abap_language_version> TYPE any.
MOVE-CORRESPONDING ls_fields_to_clear TO cg_data.
ASSIGN COMPONENT 'METADATA-ABAP_LANGUAGE_VERSION' OF STRUCTURE cg_data TO <lg_abap_language_version>.
IF sy-subrc = 0.
clear_abap_language_version( CHANGING cv_abap_language_version = <lg_abap_language_version> ).
ENDIF.
ENDMETHOD. ENDMETHOD.
ENDCLASS. ENDCLASS.

View File

@ -10,7 +10,7 @@ CLASS zcl_abapgit_object_drul DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
@ -130,7 +130,7 @@ CLASS zcl_abapgit_object_drul IMPLEMENTATION.
CREATE OBJECT mi_persistence TYPE ('CL_DRUL_WB_OBJECT_PERSIST'). CREATE OBJECT mi_persistence TYPE ('CL_DRUL_WB_OBJECT_PERSIST').
CATCH cx_sy_create_error. CATCH cx_sy_create_error.
zcx_abapgit_exception=>raise( |DRUL not supported by your NW release| ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.

View File

@ -10,7 +10,7 @@ CLASS zcl_abapgit_object_dtdc DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
@ -151,7 +151,7 @@ CLASS zcl_abapgit_object_dtdc IMPLEMENTATION.
CREATE OBJECT mi_persistence TYPE ('CL_DTDC_OBJECT_PERSIST'). CREATE OBJECT mi_persistence TYPE ('CL_DTDC_OBJECT_PERSIST').
CATCH cx_sy_create_error. CATCH cx_sy_create_error.
zcx_abapgit_exception=>raise( |DTDC not supported by your NW release| ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.

View File

@ -10,7 +10,7 @@ CLASS zcl_abapgit_object_ftgl DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
@ -60,7 +60,7 @@ CLASS zcl_abapgit_object_ftgl IMPLEMENTATION.
TRY. TRY.
CREATE DATA mr_toggle TYPE ('FTGL_S_WB_FEATURE_TOGGLE'). CREATE DATA mr_toggle TYPE ('FTGL_S_WB_FEATURE_TOGGLE').
CATCH cx_root. CATCH cx_root.
zcx_abapgit_exception=>raise( |FTGL not supported in your NW release| ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.

View File

@ -60,6 +60,13 @@ CLASS zcl_abapgit_object_g4ba IMPLEMENTATION.
iv_field = 'CHANGED_TS' iv_field = 'CHANGED_TS'
iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-timestamp ). iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-timestamp ).
IF ms_item-abap_language_version = zcl_abapgit_abap_language_vers=>c_no_abap_language_version.
ro_result->add(
iv_table = '/IWBEP/I_V4_MSGR'
iv_field = 'ABAP_LANGUAGE_VERSION'
iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-abap_language_version ).
ENDIF.
ENDMETHOD. ENDMETHOD.

View File

@ -60,6 +60,13 @@ CLASS zcl_abapgit_object_g4bs IMPLEMENTATION.
iv_field = 'CHANGED_TS' iv_field = 'CHANGED_TS'
iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-timestamp ). iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-timestamp ).
IF ms_item-abap_language_version = zcl_abapgit_abap_language_vers=>c_no_abap_language_version.
ro_result->add(
iv_table = '/IWBEP/I_V4_MSRV'
iv_field = 'ABAP_LANGUAGE_VERSION'
iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-abap_language_version ).
ENDIF.
ENDMETHOD. ENDMETHOD.

View File

@ -14,7 +14,7 @@ CLASS zcl_abapgit_object_http DEFINITION
io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
@ -66,7 +66,7 @@ CLASS zcl_abapgit_object_http IMPLEMENTATION.
TRY. TRY.
CREATE DATA lr_dummy TYPE ('UCONHTTPSERVHEAD'). CREATE DATA lr_dummy TYPE ('UCONHTTPSERVHEAD').
CATCH cx_root. CATCH cx_root.
zcx_abapgit_exception=>raise( 'HTTP not supported' ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.
@ -74,14 +74,10 @@ CLASS zcl_abapgit_object_http IMPLEMENTATION.
METHOD zif_abapgit_object~changed_by. METHOD zif_abapgit_object~changed_by.
TRY.
SELECT SINGLE changedby FROM ('UCONHTTPSERVHEAD') INTO rv_user WHERE id = ms_item-obj_name. SELECT SINGLE changedby FROM ('UCONHTTPSERVHEAD') INTO rv_user WHERE id = ms_item-obj_name.
IF sy-subrc <> 0. IF sy-subrc <> 0.
rv_user = c_user_unknown. rv_user = c_user_unknown.
ENDIF. ENDIF.
CATCH cx_root.
zcx_abapgit_exception=>raise( 'HTTP not supported' ).
ENDTRY.
ENDMETHOD. ENDMETHOD.
@ -91,14 +87,11 @@ CLASS zcl_abapgit_object_http IMPLEMENTATION.
DATA lv_name TYPE c LENGTH 30. DATA lv_name TYPE c LENGTH 30.
lv_name = ms_item-obj_name. lv_name = ms_item-obj_name.
TRY.
CALL METHOD ('CL_UCON_API_FACTORY')=>('DELETE_HTTP_SERVICE') CALL METHOD ('CL_UCON_API_FACTORY')=>('DELETE_HTTP_SERVICE')
EXPORTING EXPORTING
name = lv_name name = lv_name
devclass = iv_package. devclass = iv_package.
CATCH cx_root.
zcx_abapgit_exception=>raise( 'HTTP not supported' ).
ENDTRY.
ENDMETHOD. ENDMETHOD.
@ -211,12 +204,8 @@ CLASS zcl_abapgit_object_http IMPLEMENTATION.
DATA lv_id TYPE c LENGTH 30. DATA lv_id TYPE c LENGTH 30.
TRY.
SELECT SINGLE id FROM ('UCONHTTPSERVHEAD') INTO lv_id WHERE id = ms_item-obj_name AND version = 'A'. SELECT SINGLE id FROM ('UCONHTTPSERVHEAD') INTO lv_id WHERE id = ms_item-obj_name AND version = 'A'.
rv_bool = boolc( sy-subrc = 0 ). rv_bool = boolc( sy-subrc = 0 ).
CATCH cx_root.
zcx_abapgit_exception=>raise( 'HTTP not supported' ).
ENDTRY.
ENDMETHOD. ENDMETHOD.

View File

@ -2,6 +2,14 @@ CLASS zcl_abapgit_object_iobj DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
PUBLIC SECTION. PUBLIC SECTION.
INTERFACES zif_abapgit_object. INTERFACES zif_abapgit_object.
METHODS constructor
IMPORTING
is_item TYPE zif_abapgit_definitions=>ty_item
iv_language TYPE spras
io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING
zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
METHODS: METHODS:
@ -17,6 +25,24 @@ ENDCLASS.
CLASS zcl_abapgit_object_iobj IMPLEMENTATION. CLASS zcl_abapgit_object_iobj IMPLEMENTATION.
METHOD constructor.
DATA lr_viobj TYPE REF TO data.
super->constructor(
is_item = is_item
iv_language = iv_language
io_files = io_files
io_i18n_params = io_i18n_params ).
TRY.
CREATE DATA lr_viobj TYPE ('RSD_S_VIOBJ').
CATCH cx_sy_create_data_error.
RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY.
ENDMETHOD.
METHOD clear_field. METHOD clear_field.
@ -43,12 +69,7 @@ CLASS zcl_abapgit_object_iobj IMPLEMENTATION.
lv_objna = ms_item-obj_name. lv_objna = ms_item-obj_name.
TRY.
CREATE DATA lr_viobj TYPE ('RSD_S_VIOBJ'). CREATE DATA lr_viobj TYPE ('RSD_S_VIOBJ').
CATCH cx_sy_create_data_error.
zcx_abapgit_exception=>raise( |IOBJ is not supported on this system| ).
ENDTRY.
ASSIGN lr_viobj->* TO <lg_viobj>. ASSIGN lr_viobj->* TO <lg_viobj>.
CALL FUNCTION 'RSD_IOBJ_GET' CALL FUNCTION 'RSD_IOBJ_GET'
@ -134,7 +155,6 @@ CLASS zcl_abapgit_object_iobj IMPLEMENTATION.
<lg_infoobject> TYPE data, <lg_infoobject> TYPE data,
<lt_infoobjects> TYPE STANDARD TABLE. <lt_infoobjects> TYPE STANDARD TABLE.
TRY.
CREATE DATA lr_details TYPE ('BAPI6108'). CREATE DATA lr_details TYPE ('BAPI6108').
CREATE DATA lr_compounds TYPE STANDARD TABLE OF ('BAPI6108CM'). CREATE DATA lr_compounds TYPE STANDARD TABLE OF ('BAPI6108CM').
CREATE DATA lr_attributes TYPE STANDARD TABLE OF ('BAPI6108AT'). CREATE DATA lr_attributes TYPE STANDARD TABLE OF ('BAPI6108AT').
@ -145,9 +165,6 @@ CLASS zcl_abapgit_object_iobj IMPLEMENTATION.
CREATE DATA lr_hanafieldsmapping TYPE STANDARD TABLE OF ('BAPI6108HANA_MAP'). CREATE DATA lr_hanafieldsmapping TYPE STANDARD TABLE OF ('BAPI6108HANA_MAP').
CREATE DATA lr_xxlattributes TYPE STANDARD TABLE OF ('BAPI6108ATXXL'). CREATE DATA lr_xxlattributes TYPE STANDARD TABLE OF ('BAPI6108ATXXL').
CREATE DATA lr_infoobj TYPE STANDARD TABLE OF ('BAPI6108'). CREATE DATA lr_infoobj TYPE STANDARD TABLE OF ('BAPI6108').
CATCH cx_sy_create_data_error.
zcx_abapgit_exception=>raise( |IOBJ is not supported on this system| ).
ENDTRY.
ASSIGN lr_details->* TO <lg_details>. ASSIGN lr_details->* TO <lg_details>.
ASSIGN lr_compounds->* TO <lt_compounds>. ASSIGN lr_compounds->* TO <lt_compounds>.
@ -335,11 +352,7 @@ CLASS zcl_abapgit_object_iobj IMPLEMENTATION.
lv_objna = ms_item-obj_name. lv_objna = ms_item-obj_name.
TRY.
CREATE DATA lr_viobj TYPE ('RSD_S_VIOBJ'). CREATE DATA lr_viobj TYPE ('RSD_S_VIOBJ').
CATCH cx_sy_create_data_error.
zcx_abapgit_exception=>raise( |IOBJ is not supported on this system| ).
ENDTRY.
ASSIGN lr_viobj->* TO <lg_viobj>. ASSIGN lr_viobj->* TO <lg_viobj>.
@ -414,7 +427,6 @@ CLASS zcl_abapgit_object_iobj IMPLEMENTATION.
<lt_hanafieldsmapping> TYPE STANDARD TABLE, <lt_hanafieldsmapping> TYPE STANDARD TABLE,
<lt_xxlattributes> TYPE STANDARD TABLE. <lt_xxlattributes> TYPE STANDARD TABLE.
TRY.
CREATE DATA lr_details TYPE ('BAPI6108'). CREATE DATA lr_details TYPE ('BAPI6108').
CREATE DATA lr_compounds TYPE STANDARD TABLE OF ('BAPI6108CM'). CREATE DATA lr_compounds TYPE STANDARD TABLE OF ('BAPI6108CM').
CREATE DATA lr_attributes TYPE STANDARD TABLE OF ('BAPI6108AT'). CREATE DATA lr_attributes TYPE STANDARD TABLE OF ('BAPI6108AT').
@ -424,9 +436,6 @@ CLASS zcl_abapgit_object_iobj IMPLEMENTATION.
CREATE DATA lr_elimination TYPE STANDARD TABLE OF ('BAPI6108IE'). CREATE DATA lr_elimination TYPE STANDARD TABLE OF ('BAPI6108IE').
CREATE DATA lr_hanafieldsmapping TYPE STANDARD TABLE OF ('BAPI6108HANA_MAP'). CREATE DATA lr_hanafieldsmapping TYPE STANDARD TABLE OF ('BAPI6108HANA_MAP').
CREATE DATA lr_xxlattributes TYPE STANDARD TABLE OF ('BAPI6108ATXXL'). CREATE DATA lr_xxlattributes TYPE STANDARD TABLE OF ('BAPI6108ATXXL').
CATCH cx_sy_create_data_error.
zcx_abapgit_exception=>raise( |IOBJ is not supported on this system| ).
ENDTRY.
ASSIGN lr_details->* TO <lg_details>. ASSIGN lr_details->* TO <lg_details>.
ASSIGN lr_compounds->* TO <lt_compounds>. ASSIGN lr_compounds->* TO <lt_compounds>.

View File

@ -42,6 +42,14 @@ CLASS zcl_abapgit_object_iwmo IMPLEMENTATION.
iv_table = '/IWBEP/I_MGW_OHD' iv_table = '/IWBEP/I_MGW_OHD'
iv_field = 'CHANGED_TIMESTMP' iv_field = 'CHANGED_TIMESTMP'
iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-timestamp ). iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-timestamp ).
IF ms_item-abap_language_version = zcl_abapgit_abap_language_vers=>c_no_abap_language_version.
ro_result->add(
iv_table = '/IWBEP/I_MGW_OHD'
iv_field = 'ABAP_LANGUAGE_VERSION'
iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-abap_language_version ).
ENDIF.
ENDMETHOD. ENDMETHOD.

View File

@ -42,6 +42,14 @@ CLASS zcl_abapgit_object_iwom IMPLEMENTATION.
iv_table = '/IWFND/I_MED_OHD' iv_table = '/IWFND/I_MED_OHD'
iv_field = 'CHANGED_TIMESTMP' iv_field = 'CHANGED_TIMESTMP'
iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-timestamp ). iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-timestamp ).
IF ms_item-abap_language_version = zcl_abapgit_abap_language_vers=>c_no_abap_language_version.
ro_result->add(
iv_table = '/IWFND/I_MED_OHD'
iv_field = 'ABAP_LANGUAGE_VERSION'
iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-abap_language_version ).
ENDIF.
ENDMETHOD. ENDMETHOD.

View File

@ -44,6 +44,13 @@ CLASS zcl_abapgit_object_iwsg IMPLEMENTATION.
iv_field = 'CHANGED_TIMESTMP' iv_field = 'CHANGED_TIMESTMP'
iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-timestamp ). iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-timestamp ).
IF ms_item-abap_language_version = zcl_abapgit_abap_language_vers=>c_no_abap_language_version.
ro_result->add(
iv_table = '/IWFND/I_MED_SRH'
iv_field = 'ABAP_LANGUAGE_VERSION'
iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-abap_language_version ).
ENDIF.
ENDMETHOD. ENDMETHOD.

View File

@ -42,6 +42,14 @@ CLASS zcl_abapgit_object_iwsv IMPLEMENTATION.
iv_table = '/IWBEP/I_MGW_SRH' iv_table = '/IWBEP/I_MGW_SRH'
iv_field = 'CHANGED_TIMESTMP' iv_field = 'CHANGED_TIMESTMP'
iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-timestamp ). iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-timestamp ).
IF ms_item-abap_language_version = zcl_abapgit_abap_language_vers=>c_no_abap_language_version.
ro_result->add(
iv_table = '/IWBEP/I_MGW_SRH'
iv_field = 'ABAP_LANGUAGE_VERSION'
iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-abap_language_version ).
ENDIF.
ENDMETHOD. ENDMETHOD.

View File

@ -42,6 +42,14 @@ CLASS zcl_abapgit_object_iwvb IMPLEMENTATION.
iv_table = '/IWBEP/I_MGW_VAH' iv_table = '/IWBEP/I_MGW_VAH'
iv_field = 'CHANGED_TIMESTMP' iv_field = 'CHANGED_TIMESTMP'
iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-timestamp ). iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-timestamp ).
IF ms_item-abap_language_version = zcl_abapgit_abap_language_vers=>c_no_abap_language_version.
ro_result->add(
iv_table = '/IWBEP/I_MGW_VAH'
iv_field = 'ABAP_LANGUAGE_VERSION'
iv_fill_rule = zif_abapgit_field_rules=>c_fill_rule-abap_language_version ).
ENDIF.
ENDMETHOD. ENDMETHOD.

View File

@ -2,6 +2,14 @@ CLASS zcl_abapgit_object_jobd DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
PUBLIC SECTION. PUBLIC SECTION.
INTERFACES zif_abapgit_object. INTERFACES zif_abapgit_object.
METHODS constructor
IMPORTING
is_item TYPE zif_abapgit_definitions=>ty_item
iv_language TYPE spras
io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING
zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
@ -13,6 +21,24 @@ ENDCLASS.
CLASS zcl_abapgit_object_jobd IMPLEMENTATION. CLASS zcl_abapgit_object_jobd IMPLEMENTATION.
METHOD constructor.
DATA: lr_job_definition TYPE REF TO data.
super->constructor(
is_item = is_item
iv_language = iv_language
io_files = io_files
io_i18n_params = io_i18n_params ).
TRY.
CREATE DATA lr_job_definition TYPE ('CL_JR_JOB_DEFINITION=>TY_JOB_DEFINITION').
CATCH cx_sy_ref_creation.
RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY.
ENDMETHOD.
METHOD zif_abapgit_object~changed_by. METHOD zif_abapgit_object~changed_by.
@ -121,17 +147,12 @@ CLASS zcl_abapgit_object_jobd IMPLEMENTATION.
lv_name = ms_item-obj_name. lv_name = ms_item-obj_name.
TRY.
CALL METHOD ('CL_JR_JD_MANAGER')=>('CHECK_JD_EXISTENCE') CALL METHOD ('CL_JR_JD_MANAGER')=>('CHECK_JD_EXISTENCE')
EXPORTING EXPORTING
im_jd_name = lv_name im_jd_name = lv_name
IMPORTING IMPORTING
ex_is_existing = rv_bool. ex_is_existing = rv_bool.
CATCH cx_root.
zcx_abapgit_exception=>raise( |JOBD not supported| ).
ENDTRY.
ENDMETHOD. ENDMETHOD.

View File

@ -7,6 +7,14 @@ CLASS zcl_abapgit_object_odso DEFINITION
PUBLIC SECTION. PUBLIC SECTION.
INTERFACES zif_abapgit_object . INTERFACES zif_abapgit_object .
METHODS constructor
IMPORTING
is_item TYPE zif_abapgit_definitions=>ty_item
iv_language TYPE spras
io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING
zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
@ -22,6 +30,24 @@ ENDCLASS.
CLASS zcl_abapgit_object_odso IMPLEMENTATION. CLASS zcl_abapgit_object_odso IMPLEMENTATION.
METHOD constructor.
DATA: lr_details TYPE REF TO data.
super->constructor(
is_item = is_item
iv_language = iv_language
io_files = io_files
io_i18n_params = io_i18n_params ).
TRY.
CREATE DATA lr_details TYPE ('BAPI6116').
CATCH cx_sy_create_data_error.
RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY.
ENDMETHOD.
METHOD clear_field. METHOD clear_field.
@ -46,11 +72,7 @@ CLASS zcl_abapgit_object_odso IMPLEMENTATION.
FIELD-SYMBOLS: <lg_details> TYPE any, FIELD-SYMBOLS: <lg_details> TYPE any,
<lg_tstpnm> TYPE any. <lg_tstpnm> TYPE any.
TRY.
CREATE DATA lr_details TYPE ('BAPI6116'). CREATE DATA lr_details TYPE ('BAPI6116').
CATCH cx_sy_create_data_error.
zcx_abapgit_exception=>raise( |ODSO is not supported on this system| ).
ENDTRY.
ASSIGN lr_details->* TO <lg_details>. ASSIGN lr_details->* TO <lg_details>.
@ -82,11 +104,7 @@ CLASS zcl_abapgit_object_odso IMPLEMENTATION.
lt_msg TYPE STANDARD TABLE OF bal_s_msg, lt_msg TYPE STANDARD TABLE OF bal_s_msg,
ls_msg TYPE bal_s_msg. ls_msg TYPE bal_s_msg.
TRY.
CREATE OBJECT lo_collection TYPE ('CL_RSD_ODSO_COLLECTION'). CREATE OBJECT lo_collection TYPE ('CL_RSD_ODSO_COLLECTION').
CATCH cx_sy_create_data_error.
zcx_abapgit_exception=>raise( |ODSO is not supported on this system| ).
ENDTRY.
lv_odsonam = ms_item-obj_name. lv_odsonam = ms_item-obj_name.
lv_objname = ms_item-obj_name. lv_objname = ms_item-obj_name.
@ -136,15 +154,11 @@ CLASS zcl_abapgit_object_odso IMPLEMENTATION.
<lt_indexes> TYPE STANDARD TABLE, <lt_indexes> TYPE STANDARD TABLE,
<lt_index_iobj> TYPE STANDARD TABLE. <lt_index_iobj> TYPE STANDARD TABLE.
TRY.
CREATE DATA lr_details TYPE ('BAPI6116'). CREATE DATA lr_details TYPE ('BAPI6116').
CREATE DATA lr_infoobjects TYPE STANDARD TABLE OF ('BAPI6116IO'). CREATE DATA lr_infoobjects TYPE STANDARD TABLE OF ('BAPI6116IO').
CREATE DATA lr_navigation TYPE STANDARD TABLE OF ('BAPI6116NA'). CREATE DATA lr_navigation TYPE STANDARD TABLE OF ('BAPI6116NA').
CREATE DATA lr_indexes TYPE STANDARD TABLE OF ('BAPI6116IN'). CREATE DATA lr_indexes TYPE STANDARD TABLE OF ('BAPI6116IN').
CREATE DATA lr_index_iobj TYPE STANDARD TABLE OF ('BAPI6116II'). CREATE DATA lr_index_iobj TYPE STANDARD TABLE OF ('BAPI6116II').
CATCH cx_sy_create_data_error.
zcx_abapgit_exception=>raise( |ODSO is not supported on this system| ).
ENDTRY.
ASSIGN lr_details->* TO <lg_details>. ASSIGN lr_details->* TO <lg_details>.
ASSIGN lr_infoobjects->* TO <lt_infoobjects>. ASSIGN lr_infoobjects->* TO <lt_infoobjects>.
@ -326,15 +340,11 @@ CLASS zcl_abapgit_object_odso IMPLEMENTATION.
<lt_indexes> TYPE STANDARD TABLE, <lt_indexes> TYPE STANDARD TABLE,
<lt_index_iobj> TYPE STANDARD TABLE. <lt_index_iobj> TYPE STANDARD TABLE.
TRY.
CREATE DATA lr_details TYPE ('BAPI6116'). CREATE DATA lr_details TYPE ('BAPI6116').
CREATE DATA lr_infoobjects TYPE STANDARD TABLE OF ('BAPI6116IO'). CREATE DATA lr_infoobjects TYPE STANDARD TABLE OF ('BAPI6116IO').
CREATE DATA lr_navigation TYPE STANDARD TABLE OF ('BAPI6116NA'). CREATE DATA lr_navigation TYPE STANDARD TABLE OF ('BAPI6116NA').
CREATE DATA lr_indexes TYPE STANDARD TABLE OF ('BAPI6116IN'). CREATE DATA lr_indexes TYPE STANDARD TABLE OF ('BAPI6116IN').
CREATE DATA lr_index_iobj TYPE STANDARD TABLE OF ('BAPI6116II'). CREATE DATA lr_index_iobj TYPE STANDARD TABLE OF ('BAPI6116II').
CATCH cx_sy_create_data_error.
zcx_abapgit_exception=>raise( |ODSO is not supported on this system| ).
ENDTRY.
ASSIGN lr_details->* TO <lg_details>. ASSIGN lr_details->* TO <lg_details>.
ASSIGN lr_infoobjects->* TO <lt_infoobjects>. ASSIGN lr_infoobjects->* TO <lt_infoobjects>.

View File

@ -5,6 +5,14 @@ CLASS zcl_abapgit_object_samc DEFINITION
CREATE PUBLIC . CREATE PUBLIC .
PUBLIC SECTION. PUBLIC SECTION.
METHODS constructor
IMPORTING
is_item TYPE zif_abapgit_definitions=>ty_item
iv_language TYPE spras
io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING
zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
METHODS get_data_class_name METHODS get_data_class_name
@ -20,6 +28,18 @@ ENDCLASS.
CLASS zcl_abapgit_object_samc IMPLEMENTATION. CLASS zcl_abapgit_object_samc IMPLEMENTATION.
METHOD constructor.
super->constructor(
is_item = is_item
iv_language = iv_language
io_files = io_files
io_i18n_params = io_i18n_params ).
create_channel_objects( ).
ENDMETHOD.
METHOD get_data_class_name. METHOD get_data_class_name.

View File

@ -5,6 +5,14 @@ CLASS zcl_abapgit_object_sapc DEFINITION
CREATE PUBLIC . CREATE PUBLIC .
PUBLIC SECTION. PUBLIC SECTION.
METHODS constructor
IMPORTING
is_item TYPE zif_abapgit_definitions=>ty_item
iv_language TYPE spras
io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING
zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
METHODS get_data_class_name METHODS get_data_class_name
@ -20,6 +28,18 @@ ENDCLASS.
CLASS zcl_abapgit_object_sapc IMPLEMENTATION. CLASS zcl_abapgit_object_sapc IMPLEMENTATION.
METHOD constructor.
super->constructor(
is_item = is_item
iv_language = iv_language
io_files = io_files
io_i18n_params = io_i18n_params ).
create_channel_objects( ).
ENDMETHOD.
METHOD get_data_class_name. METHOD get_data_class_name.

View File

@ -23,6 +23,9 @@ CLASS zcl_abapgit_object_saxx_super DEFINITION
ABSTRACT ABSTRACT
RETURNING RETURNING
VALUE(rv_data_structure_name) TYPE string . VALUE(rv_data_structure_name) TYPE string .
METHODS create_channel_objects
RAISING
zcx_abapgit_type_not_supported .
PRIVATE SECTION. PRIVATE SECTION.
@ -32,9 +35,6 @@ CLASS zcl_abapgit_object_saxx_super DEFINITION
DATA mv_appl_obj_cls_name TYPE seoclsname . DATA mv_appl_obj_cls_name TYPE seoclsname .
DATA mv_persistence_cls_name TYPE seoclsname . DATA mv_persistence_cls_name TYPE seoclsname .
METHODS create_channel_objects
RAISING
zcx_abapgit_exception .
METHODS get_data METHODS get_data
EXPORTING EXPORTING
!eg_data TYPE any !eg_data TYPE any
@ -53,7 +53,6 @@ ENDCLASS.
CLASS zcl_abapgit_object_saxx_super IMPLEMENTATION. CLASS zcl_abapgit_object_saxx_super IMPLEMENTATION.
METHOD create_channel_objects. METHOD create_channel_objects.
get_names( ). get_names( ).
@ -68,7 +67,7 @@ CLASS zcl_abapgit_object_saxx_super IMPLEMENTATION.
ENDIF. ENDIF.
CATCH cx_root. CATCH cx_root.
zcx_abapgit_exception=>raise( |{ ms_item-obj_type } not supported| ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = ms_item-obj_type.
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.
@ -76,7 +75,8 @@ CLASS zcl_abapgit_object_saxx_super IMPLEMENTATION.
METHOD get_data. METHOD get_data.
DATA: lv_object_key TYPE seu_objkey. DATA: lv_object_key TYPE seu_objkey,
lx_error TYPE REF TO cx_root.
lv_object_key = ms_item-obj_name. lv_object_key = ms_item-obj_name.
@ -88,8 +88,8 @@ CLASS zcl_abapgit_object_saxx_super IMPLEMENTATION.
CHANGING CHANGING
p_object_data = mi_appl_obj_data ). p_object_data = mi_appl_obj_data ).
CATCH cx_root. CATCH cx_root INTO lx_error.
zcx_abapgit_exception=>raise( |{ ms_item-obj_type } not supported| ). zcx_abapgit_exception=>raise_with_text( lx_error ).
ENDTRY. ENDTRY.
mi_appl_obj_data->get_data( IMPORTING p_data = eg_data ). mi_appl_obj_data->get_data( IMPORTING p_data = eg_data ).
@ -120,7 +120,6 @@ CLASS zcl_abapgit_object_saxx_super IMPLEMENTATION.
lv_object_key TYPE seu_objkey, lv_object_key TYPE seu_objkey,
lv_objtype TYPE trobjtype. lv_objtype TYPE trobjtype.
lv_objname = ms_item-obj_name. lv_objname = ms_item-obj_name.
lv_object_key = ms_item-obj_name. lv_object_key = ms_item-obj_name.
lv_objtype = ms_item-obj_type. lv_objtype = ms_item-obj_type.
@ -167,16 +166,9 @@ CLASS zcl_abapgit_object_saxx_super IMPLEMENTATION.
<lg_header> TYPE any, <lg_header> TYPE any,
<lg_changed_by> TYPE any. <lg_changed_by> TYPE any.
create_channel_objects( ).
TRY.
CREATE DATA lr_data TYPE (mv_data_structure_name). CREATE DATA lr_data TYPE (mv_data_structure_name).
ASSIGN lr_data->* TO <lg_data>. ASSIGN lr_data->* TO <lg_data>.
CATCH cx_root.
zcx_abapgit_exception=>raise( |{ ms_item-obj_name } not supported| ).
ENDTRY.
get_data( IMPORTING eg_data = <lg_data> ). get_data( IMPORTING eg_data = <lg_data> ).
ASSIGN COMPONENT 'HEADER' OF STRUCTURE <lg_data> TO <lg_header>. ASSIGN COMPONENT 'HEADER' OF STRUCTURE <lg_data> TO <lg_header>.
@ -197,8 +189,6 @@ CLASS zcl_abapgit_object_saxx_super IMPLEMENTATION.
DATA: lv_object_key TYPE seu_objkey. DATA: lv_object_key TYPE seu_objkey.
create_channel_objects( ).
lv_object_key = ms_item-obj_name. lv_object_key = ms_item-obj_name.
TRY. TRY.
@ -223,16 +213,9 @@ CLASS zcl_abapgit_object_saxx_super IMPLEMENTATION.
FIELD-SYMBOLS: <lg_data> TYPE any. FIELD-SYMBOLS: <lg_data> TYPE any.
create_channel_objects( ).
TRY.
CREATE DATA lr_data TYPE (mv_data_structure_name). CREATE DATA lr_data TYPE (mv_data_structure_name).
ASSIGN lr_data->* TO <lg_data>. ASSIGN lr_data->* TO <lg_data>.
CATCH cx_root.
zcx_abapgit_exception=>raise( |{ ms_item-obj_type } not supported| ).
ENDTRY.
io_xml->read( io_xml->read(
EXPORTING EXPORTING
iv_name = ms_item-obj_type iv_name = ms_item-obj_type
@ -266,8 +249,6 @@ CLASS zcl_abapgit_object_saxx_super IMPLEMENTATION.
DATA: lv_object_key TYPE seu_objkey. DATA: lv_object_key TYPE seu_objkey.
create_channel_objects( ).
lv_object_key = ms_item-obj_name. lv_object_key = ms_item-obj_name.
TRY. TRY.
@ -340,16 +321,9 @@ CLASS zcl_abapgit_object_saxx_super IMPLEMENTATION.
<lg_header> TYPE any, <lg_header> TYPE any,
<lg_field> TYPE any. <lg_field> TYPE any.
create_channel_objects( ).
TRY.
CREATE DATA lr_data TYPE (mv_data_structure_name). CREATE DATA lr_data TYPE (mv_data_structure_name).
ASSIGN lr_data->* TO <lg_data>. ASSIGN lr_data->* TO <lg_data>.
CATCH cx_root.
zcx_abapgit_exception=>raise( |{ ms_item-obj_type } not supported| ).
ENDTRY.
get_data( IMPORTING eg_data = <lg_data> ). get_data( IMPORTING eg_data = <lg_data> ).
ASSIGN COMPONENT 'HEADER' OF STRUCTURE <lg_data> TO <lg_header>. ASSIGN COMPONENT 'HEADER' OF STRUCTURE <lg_data> TO <lg_header>.

View File

@ -193,6 +193,9 @@ CLASS zcl_abapgit_object_scvi IMPLEMENTATION.
zcx_abapgit_exception=>raise_t100( ). zcx_abapgit_exception=>raise_t100( ).
ENDIF. ENDIF.
SORT ls_screen_variant-shdsvfvci ASCENDING.
SORT ls_screen_variant-shdguixt ASCENDING.
* Clear all user details * Clear all user details
CLEAR: ls_screen_variant-shdsvci-crdate, CLEAR: ls_screen_variant-shdsvci-crdate,
ls_screen_variant-shdsvci-cruser, ls_screen_variant-shdsvci-cruser,

View File

@ -15,7 +15,7 @@ CLASS zcl_abapgit_object_sktd DEFINITION
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
@ -161,7 +161,7 @@ CLASS zcl_abapgit_object_sktd IMPLEMENTATION.
CREATE OBJECT mi_persistence TYPE ('CL_KTD_OBJECT_PERSIST'). CREATE OBJECT mi_persistence TYPE ('CL_KTD_OBJECT_PERSIST').
CATCH cx_sy_create_error. CATCH cx_sy_create_error.
zcx_abapgit_exception=>raise( |SKTD not supported by your NW release| ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.

View File

@ -67,9 +67,8 @@ CLASS zcl_abapgit_object_smtg IMPLEMENTATION.
EXCEPTIONS EXCEPTIONS
type_not_found = 1 type_not_found = 1
OTHERS = 2 ). OTHERS = 2 ).
IF sy-subrc <> 0. IF sy-subrc <> 0.
zcx_abapgit_exception=>raise( |SMTG not supported| ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = ms_item-obj_type.
ENDIF. ENDIF.
ls_component-name = iv_fielname. ls_component-name = iv_fielname.

View File

@ -15,7 +15,7 @@ CLASS zcl_abapgit_object_sod1 DEFINITION
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
@ -191,7 +191,7 @@ CLASS zcl_abapgit_object_sod1 IMPLEMENTATION.
TRY. TRY.
CREATE OBJECT lo_data_model TYPE (c_data_model_class_name). CREATE OBJECT lo_data_model TYPE (c_data_model_class_name).
CATCH cx_root. CATCH cx_root.
zcx_abapgit_exception=>raise( |Object type { is_item-obj_type } is not supported by this system| ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.

View File

@ -15,7 +15,7 @@ CLASS zcl_abapgit_object_sod2 DEFINITION
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
@ -191,7 +191,7 @@ CLASS zcl_abapgit_object_sod2 IMPLEMENTATION.
TRY. TRY.
CREATE OBJECT lo_data_model TYPE (c_data_model_class_name). CREATE OBJECT lo_data_model TYPE (c_data_model_class_name).
CATCH cx_root. CATCH cx_root.
zcx_abapgit_exception=>raise( |Object type { is_item-obj_type } is not supported by this system| ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.

View File

@ -14,7 +14,7 @@ CLASS zcl_abapgit_object_sqsc DEFINITION
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
@ -134,7 +134,7 @@ CLASS zcl_abapgit_object_sqsc IMPLEMENTATION.
ASSERT sy-subrc = 0. ASSERT sy-subrc = 0.
CATCH cx_root. CATCH cx_root.
zcx_abapgit_exception=>raise( |SQSC not supported| ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
<lv_dbproxyname> = ms_item-obj_name. <lv_dbproxyname> = ms_item-obj_name.

View File

@ -15,7 +15,7 @@ CLASS zcl_abapgit_object_srfc DEFINITION
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
@ -39,7 +39,7 @@ CLASS zcl_abapgit_object_srfc IMPLEMENTATION.
TRY. TRY.
CREATE OBJECT li_srfc_persist TYPE ('CL_UCONRFC_OBJECT_PERSIST'). CREATE OBJECT li_srfc_persist TYPE ('CL_UCONRFC_OBJECT_PERSIST').
CATCH cx_root. CATCH cx_root.
zcx_abapgit_exception=>raise( 'Object type SRFC is not supported by this system' ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.

View File

@ -10,7 +10,7 @@ CLASS zcl_abapgit_object_srvb DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
@ -159,7 +159,7 @@ CLASS zcl_abapgit_object_srvb IMPLEMENTATION.
CREATE OBJECT mi_persistence TYPE ('CL_SRVB_OBJECT_PERSIST'). CREATE OBJECT mi_persistence TYPE ('CL_SRVB_OBJECT_PERSIST').
CATCH cx_sy_create_error. CATCH cx_sy_create_error.
zcx_abapgit_exception=>raise( |SRVB not supported by your NW release| ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
mv_is_inactive_supported = is_ai_supported( ). mv_is_inactive_supported = is_ai_supported( ).

View File

@ -10,7 +10,7 @@ CLASS zcl_abapgit_object_srvd DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
@ -158,7 +158,7 @@ CLASS zcl_abapgit_object_srvd IMPLEMENTATION.
CREATE DATA mr_service_definition TYPE ('CL_SRVD_WB_OBJECT_DATA=>TY_SRVD_OBJECT_DATA'). CREATE DATA mr_service_definition TYPE ('CL_SRVD_WB_OBJECT_DATA=>TY_SRVD_OBJECT_DATA').
CATCH cx_sy_create_error. CATCH cx_sy_create_error.
zcx_abapgit_exception=>raise( |SRVD not supported by your NW release| ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.

View File

@ -197,6 +197,9 @@ CLASS zcl_abapgit_object_stvi IMPLEMENTATION.
zcx_abapgit_exception=>raise_t100( ). zcx_abapgit_exception=>raise_t100( ).
ENDIF. ENDIF.
SORT ls_transaction_variant-shdtvsvciu ASCENDING.
SORT ls_transaction_variant-shdfvguicu ASCENDING.
* Clear all user details * Clear all user details
CLEAR: ls_transaction_variant-shdtvciu-crdate, CLEAR: ls_transaction_variant-shdtvciu-crdate,
ls_transaction_variant-shdtvciu-cruser, ls_transaction_variant-shdtvciu-cruser,

View File

@ -88,7 +88,7 @@ CLASS zcl_abapgit_object_sush IMPLEMENTATION.
CREATE DATA lr_data_head TYPE ('IF_SU22_ADT_OBJECT=>TS_SU2X_HEAD'). CREATE DATA lr_data_head TYPE ('IF_SU22_ADT_OBJECT=>TS_SU2X_HEAD').
CATCH cx_sy_create_data_error. CATCH cx_sy_create_data_error.
zcx_abapgit_exception=>raise( |SUSH is not supported in your SAP release| ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.

View File

@ -7,6 +7,14 @@ CLASS zcl_abapgit_object_wdcc DEFINITION
PUBLIC SECTION. PUBLIC SECTION.
INTERFACES zif_abapgit_object . INTERFACES zif_abapgit_object .
METHODS constructor
IMPORTING
is_item TYPE zif_abapgit_definitions=>ty_item
iv_language TYPE spras
io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING
zcx_abapgit_type_not_supported.
PROTECTED SECTION. PROTECTED SECTION.
METHODS after_import METHODS after_import
RAISING RAISING
@ -18,6 +26,27 @@ ENDCLASS.
CLASS zcl_abapgit_object_wdcc IMPLEMENTATION. CLASS zcl_abapgit_object_wdcc IMPLEMENTATION.
METHOD constructor.
DATA:
ls_orig_config TYPE wdy_config_data.
FIELD-SYMBOLS:
<lv_data> TYPE data.
super->constructor(
is_item = is_item
iv_language = iv_language
io_files = io_files
io_i18n_params = io_i18n_params ).
ASSIGN COMPONENT 'CONFIG_IDPAR' OF STRUCTURE ls_orig_config TO <lv_data>.
IF sy-subrc <> 0.
RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDIF.
ENDMETHOD.
METHOD zif_abapgit_object~changed_by. METHOD zif_abapgit_object~changed_by.
@ -51,7 +80,6 @@ CLASS zcl_abapgit_object_wdcc IMPLEMENTATION.
ls_config_key-config_type = ms_item-obj_name+32(2). ls_config_key-config_type = ms_item-obj_name+32(2).
ls_config_key-config_var = ms_item-obj_name+34(6). ls_config_key-config_var = ms_item-obj_name+34(6).
TRY.
" does not exist in 702 " does not exist in 702
CALL METHOD cl_wdr_cfg_persistence_utils=>('DELETE_CONFIGURATION') CALL METHOD cl_wdr_cfg_persistence_utils=>('DELETE_CONFIGURATION')
EXPORTING EXPORTING
@ -61,9 +89,6 @@ CLASS zcl_abapgit_object_wdcc IMPLEMENTATION.
IF lv_subrc <> 0. IF lv_subrc <> 0.
zcx_abapgit_exception=>raise( 'Error deleting WDCC: ' && ms_item-obj_name ). zcx_abapgit_exception=>raise( 'Error deleting WDCC: ' && ms_item-obj_name ).
ENDIF. ENDIF.
CATCH cx_root.
zcx_abapgit_exception=>raise( 'Object type WDCC not supported for this release' ).
ENDTRY.
corr_insert( iv_package ). corr_insert( iv_package ).
@ -100,10 +125,6 @@ CLASS zcl_abapgit_object_wdcc IMPLEMENTATION.
IF sy-subrc = 0. IF sy-subrc = 0.
io_xml->read( EXPORTING iv_name = 'CONFIG_IDPAR' io_xml->read( EXPORTING iv_name = 'CONFIG_IDPAR'
CHANGING cg_data = <lv_data> ). CHANGING cg_data = <lv_data> ).
ELSE.
ii_log->add_error( iv_msg = |Object type WDCC not supported for this release|
is_item = ms_item ).
RETURN.
ENDIF. ENDIF.
ASSIGN COMPONENT 'CONFIG_TYPEPAR' OF STRUCTURE ls_orig_config TO <lv_data>. ASSIGN COMPONENT 'CONFIG_TYPEPAR' OF STRUCTURE ls_orig_config TO <lv_data>.
@ -386,8 +407,6 @@ CLASS zcl_abapgit_object_wdcc IMPLEMENTATION.
CATCH cx_static_check. CATCH cx_static_check.
zcx_abapgit_exception=>raise( 'Error Reading Component Config from DB: ' && ms_item-obj_name ). zcx_abapgit_exception=>raise( 'Error Reading Component Config from DB: ' && ms_item-obj_name ).
CATCH cx_root.
zcx_abapgit_exception=>raise( 'Object type WDCC not supported for this release' ).
ENDTRY. ENDTRY.
io_xml->add( iv_name = 'CONFIG_ID' io_xml->add( iv_name = 'CONFIG_ID'

View File

@ -177,7 +177,7 @@ CLASS zcl_abapgit_objects DEFINITION
RETURNING RETURNING
VALUE(ri_obj) TYPE REF TO zif_abapgit_object VALUE(ri_obj) TYPE REF TO zif_abapgit_object
RAISING RAISING
zcx_abapgit_exception . zcx_abapgit_type_not_supported .
CLASS-METHODS map_tadir_to_items CLASS-METHODS map_tadir_to_items
IMPORTING IMPORTING
@ -462,8 +462,7 @@ CLASS zcl_abapgit_objects IMPLEMENTATION.
METHOD create_object. METHOD create_object.
DATA: lv_message TYPE string, DATA: lv_class_name TYPE string,
lv_class_name TYPE string,
ls_obj_serializer_map LIKE LINE OF gt_obj_serializer_map. ls_obj_serializer_map LIKE LINE OF gt_obj_serializer_map.
" serialize & deserialize require files and i18n parameters, " serialize & deserialize require files and i18n parameters,
@ -510,8 +509,11 @@ CLASS zcl_abapgit_objects IMPLEMENTATION.
iv_language = zif_abapgit_definitions=>c_english. iv_language = zif_abapgit_definitions=>c_english.
ENDIF. ENDIF.
CATCH cx_sy_create_object_error. CATCH cx_sy_create_object_error.
lv_message = |Object type { is_item-obj_type } is not supported by this system|. IF iv_native_only = abap_true.
IF iv_native_only = abap_false. " No native support? -> fail
RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDIF.
TRY. " 2nd step, try looking for plugins TRY. " 2nd step, try looking for plugins
IF io_files IS BOUND AND io_i18n_params IS BOUND. IF io_files IS BOUND AND io_i18n_params IS BOUND.
CREATE OBJECT ri_obj TYPE zcl_abapgit_objects_bridge CREATE OBJECT ri_obj TYPE zcl_abapgit_objects_bridge
@ -525,11 +527,8 @@ CLASS zcl_abapgit_objects IMPLEMENTATION.
is_item = is_item. is_item = is_item.
ENDIF. ENDIF.
CATCH cx_sy_create_object_error. CATCH cx_sy_create_object_error.
zcx_abapgit_exception=>raise( lv_message ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDTRY. ENDTRY.
ELSE. " No native support? -> fail
zcx_abapgit_exception=>raise( lv_message ).
ENDIF.
ENDTRY. ENDTRY.
ENDMETHOD. ENDMETHOD.
@ -1084,7 +1083,7 @@ CLASS zcl_abapgit_objects IMPLEMENTATION.
is_item = is_item is_item = is_item
iv_native_only = iv_native_only ). iv_native_only = iv_native_only ).
rv_bool = abap_true. rv_bool = abap_true.
CATCH zcx_abapgit_exception. CATCH zcx_abapgit_type_not_supported.
rv_bool = abap_false. rv_bool = abap_false.
ENDTRY. ENDTRY.

View File

@ -8,8 +8,7 @@ CLASS zcl_abapgit_objects_bridge DEFINITION PUBLIC FINAL CREATE PUBLIC INHERITIN
!io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL !io_files TYPE REF TO zcl_abapgit_objects_files OPTIONAL
!io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL !io_i18n_params TYPE REF TO zcl_abapgit_i18n_params OPTIONAL
RAISING RAISING
cx_sy_create_object_error cx_sy_create_object_error.
zcx_abapgit_exception.
INTERFACES zif_abapgit_object. INTERFACES zif_abapgit_object.
PROTECTED SECTION. PROTECTED SECTION.

View File

@ -225,7 +225,7 @@ CLASS zcl_abapgit_objects_generic IMPLEMENTATION.
WHERE objectname = is_item-obj_type WHERE objectname = is_item-obj_type
AND objecttype = lc_logical_transport_object. AND objecttype = lc_logical_transport_object.
IF sy-subrc <> 0. IF sy-subrc <> 0.
zcx_abapgit_exception=>raise( 'Not found in OBJH, or not supported' ). RAISE EXCEPTION TYPE zcx_abapgit_type_not_supported EXPORTING obj_type = is_item-obj_type.
ENDIF. ENDIF.
" object tables " object tables

View File

@ -312,9 +312,7 @@ CLASS zcl_abapgit_repo IMPLEMENTATION.
ENDIF. ENDIF.
CREATE OBJECT ri_config TYPE zcl_abapgit_data_config. CREATE OBJECT ri_config TYPE zcl_abapgit_data_config.
mi_data_config = ri_config.
" Assume remote data has been loaded already
READ TABLE mt_remote ASSIGNING <ls_remote> READ TABLE mt_remote ASSIGNING <ls_remote>
WITH KEY file_path WITH KEY file_path
COMPONENTS path = zif_abapgit_data_config=>c_default_path. COMPONENTS path = zif_abapgit_data_config=>c_default_path.
@ -322,6 +320,12 @@ CLASS zcl_abapgit_repo IMPLEMENTATION.
ri_config->from_json( mt_remote ). ri_config->from_json( mt_remote ).
ENDIF. ENDIF.
* offline repos does not have the remote files before the zip is choosen
* so make sure the json is read after zip file is loaded
IF lines( mt_remote ) > 0.
mi_data_config = ri_config.
ENDIF.
ENDMETHOD. ENDMETHOD.

View File

@ -5,7 +5,7 @@
<VSEOCLASS> <VSEOCLASS>
<CLSNAME>ZCL_ABAPGIT_GUI_PAGE_TEMPLATE</CLSNAME> <CLSNAME>ZCL_ABAPGIT_GUI_PAGE_TEMPLATE</CLSNAME>
<LANGU>E</LANGU> <LANGU>E</LANGU>
<DESCRIPT>abapGit GUI page template (for copy/paste)</DESCRIPT> <DESCRIPT>abapGit - GUI Page Template (for copy/paste)</DESCRIPT>
<STATE>1</STATE> <STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL> <CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT> <FIXPT>X</FIXPT>

View File

@ -288,6 +288,10 @@ CLASS zcl_abapgit_gui_page_flow IMPLEMENTATION.
iv_txt = zcl_abapgit_gui_buttons=>repo_list( ) iv_txt = zcl_abapgit_gui_buttons=>repo_list( )
iv_act = zif_abapgit_definitions=>c_action-abapgit_home ). iv_act = zif_abapgit_definitions=>c_action-abapgit_home ).
ro_toolbar->add(
iv_txt = 'Back'
iv_act = zif_abapgit_definitions=>c_action-go_back ).
ENDMETHOD. ENDMETHOD.

View File

@ -0,0 +1,51 @@
CLASS zcx_abapgit_type_not_supported DEFINITION
PUBLIC
INHERITING FROM zcx_abapgit_exception
CREATE PUBLIC .
PUBLIC SECTION.
METHODS constructor
IMPORTING
textid LIKE if_t100_message=>t100key OPTIONAL
previous LIKE previous OPTIONAL
log TYPE REF TO zif_abapgit_log OPTIONAL
msgv1 TYPE symsgv OPTIONAL
msgv2 TYPE symsgv OPTIONAL
msgv3 TYPE symsgv OPTIONAL
msgv4 TYPE symsgv OPTIONAL
longtext TYPE csequence OPTIONAL
obj_type TYPE trobjtype.
METHODS get_text REDEFINITION.
PROTECTED SECTION.
PRIVATE SECTION.
DATA mv_obj_type TYPE trobjtype.
ENDCLASS.
CLASS zcx_abapgit_type_not_supported IMPLEMENTATION.
METHOD constructor ##ADT_SUPPRESS_GENERATION.
super->constructor(
textid = textid
previous = previous
log = log
msgv1 = msgv1
msgv2 = msgv2
msgv3 = msgv3
msgv4 = msgv4
longtext = longtext ).
mv_obj_type = obj_type.
ENDMETHOD.
METHOD get_text.
result = |Object type { mv_obj_type } is not supported by this system|.
ENDMETHOD.
ENDCLASS.

View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<VSEOCLASS>
<CLSNAME>ZCX_ABAPGIT_TYPE_NOT_SUPPORTED</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>abapGit - Object Type Not Supported</DESCRIPT>
<CATEGORY>40</CATEGORY>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>
<UNICODE>X</UNICODE>
</VSEOCLASS>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -20,9 +20,6 @@ CLASS zcl_abapgit_web DEFINITION
CLASS-DATA gi_request TYPE REF TO zif_abapgit_web_request. CLASS-DATA gi_request TYPE REF TO zif_abapgit_web_request.
CLASS-DATA gi_response TYPE REF TO zif_abapgit_web_response. CLASS-DATA gi_response TYPE REF TO zif_abapgit_web_response.
CLASS-METHODS initialize
RAISING
zcx_abapgit_exception.
CLASS-METHODS sapevent. CLASS-METHODS sapevent.
CLASS-METHODS redirect. CLASS-METHODS redirect.
CLASS-METHODS search_asset CLASS-METHODS search_asset
@ -46,7 +43,15 @@ CLASS zcl_abapgit_web IMPLEMENTATION.
gi_response = ii_response. gi_response = ii_response.
IF go_viewer IS INITIAL. IF go_viewer IS INITIAL.
initialize( ). zcl_abapgit_web_setup=>setup( ).
CREATE OBJECT go_viewer
EXPORTING
ii_request = ii_request
ii_response = ii_response.
zcl_abapgit_ui_core_injector=>set_html_viewer( go_viewer ).
go_gui = zcl_abapgit_ui_factory=>get_gui( ).
ENDIF. ENDIF.
lv_found = search_asset( ). lv_found = search_asset( ).
@ -70,32 +75,6 @@ CLASS zcl_abapgit_web IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
METHOD initialize.
DATA lo_environment TYPE REF TO zcl_abapgit_web_environment.
DATA lo_cts_api TYPE REF TO zcl_abapgit_web_cts_api.
zcl_abapgit_web_inject_fm=>inject( ).
CREATE OBJECT lo_environment.
zcl_abapgit_injector=>set_environment( lo_environment ).
CREATE OBJECT lo_cts_api.
zcl_abapgit_injector=>set_cts_api( lo_cts_api ).
CREATE OBJECT go_viewer
EXPORTING
ii_request = gi_request
ii_response = gi_response.
zcl_abapgit_ui_core_injector=>set_html_viewer( go_viewer ).
go_gui = zcl_abapgit_ui_factory=>get_gui( ).
ENDMETHOD.
METHOD redirect. METHOD redirect.
DATA lv_html TYPE string. DATA lv_html TYPE string.

View File

@ -21,6 +21,7 @@ CLASS zcl_abapgit_web_inject_fm IMPLEMENTATION.
INSERT 'DEQUEUE_EZABAPGIT' INTO TABLE lt_deps. INSERT 'DEQUEUE_EZABAPGIT' INTO TABLE lt_deps.
INSERT 'SAPGUI_PROGRESS_INDICATOR' INTO TABLE lt_deps. INSERT 'SAPGUI_PROGRESS_INDICATOR' INTO TABLE lt_deps.
INSERT 'TR_OBJECT_TABLE' INTO TABLE lt_deps. INSERT 'TR_OBJECT_TABLE' INTO TABLE lt_deps.
INSERT 'SEO_INTERFACE_IMPLEM_GET_ALL' INTO TABLE lt_deps.
li_env = cl_function_test_environment=>create( lt_deps ). li_env = cl_function_test_environment=>create( lt_deps ).
CREATE OBJECT lo_handler. CREATE OBJECT lo_handler.

View File

@ -0,0 +1,27 @@
CLASS zcl_abapgit_web_setup DEFINITION PUBLIC.
PUBLIC SECTION.
CLASS-METHODS setup
RAISING
zcx_abapgit_exception.
ENDCLASS.
CLASS zcl_abapgit_web_setup IMPLEMENTATION.
METHOD setup.
DATA lo_environment TYPE REF TO zcl_abapgit_web_environment.
DATA lo_cts_api TYPE REF TO zcl_abapgit_web_cts_api.
DATA lo_user_record TYPE REF TO zcl_abapgit_web_user_record.
zcl_abapgit_web_inject_fm=>inject( ).
CREATE OBJECT lo_environment.
zcl_abapgit_injector=>set_environment( lo_environment ).
CREATE OBJECT lo_cts_api.
zcl_abapgit_injector=>set_cts_api( lo_cts_api ).
CREATE OBJECT lo_user_record.
zcl_abapgit_env_injector=>set_user_record( lo_user_record ).
ENDMETHOD.
ENDCLASS.

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<VSEOCLASS>
<CLSNAME>ZCL_ABAPGIT_WEB_SETUP</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>ZCL_ABAPGIT_WEB_SETUP</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>
<UNICODE>X</UNICODE>
</VSEOCLASS>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -0,0 +1,20 @@
CLASS zcl_abapgit_web_user_record DEFINITION PUBLIC.
PUBLIC SECTION.
INTERFACES zif_abapgit_user_record.
ENDCLASS.
CLASS zcl_abapgit_web_user_record IMPLEMENTATION.
METHOD zif_abapgit_user_record~get_name.
RETURN. " todo, implement method
ENDMETHOD.
METHOD zif_abapgit_user_record~get_email.
RETURN. " todo, implement method
ENDMETHOD.
METHOD zif_abapgit_user_record~get_title.
RETURN. " todo, implement method
ENDMETHOD.
ENDCLASS.

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<VSEOCLASS>
<CLSNAME>ZCL_ABAPGIT_WEB_USER_RECORD</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>ZCL_ABAPGIT_WEB_USER_RECORD</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>
<UNICODE>X</UNICODE>
</VSEOCLASS>
</asx:values>
</asx:abap>
</abapGit>