diff --git a/src/objects/zcl_abapgit_object_doma.clas.abap b/src/objects/zcl_abapgit_object_doma.clas.abap index e2c2161ae..8bc1f7280 100644 --- a/src/objects/zcl_abapgit_object_doma.clas.abap +++ b/src/objects/zcl_abapgit_object_doma.clas.abap @@ -62,7 +62,7 @@ ENDCLASS. -CLASS ZCL_ABAPGIT_OBJECT_DOMA IMPLEMENTATION. +CLASS zcl_abapgit_object_doma IMPLEMENTATION. METHOD adjust_exit. @@ -229,13 +229,15 @@ CLASS ZCL_ABAPGIT_OBJECT_DOMA IMPLEMENTATION. FROM dd01v WHERE domname = lv_name AND ddlanguage IN lt_language_filter - AND ddlanguage <> mv_language. "#EC CI_SUBRC + AND ddlanguage <> mv_language + ORDER BY langu. "#EC CI_SUBRC SELECT DISTINCT ddlanguage AS langu APPENDING TABLE lt_i18n_langs FROM dd07v WHERE domname = lv_name AND ddlanguage IN lt_language_filter - AND ddlanguage <> mv_language. "#EC CI_SUBRC + AND ddlanguage <> mv_language + ORDER BY langu. "#EC CI_SUBRC SORT lt_i18n_langs. DELETE ADJACENT DUPLICATES FROM lt_i18n_langs. diff --git a/src/objects/zcl_abapgit_object_dtel.clas.abap b/src/objects/zcl_abapgit_object_dtel.clas.abap index 57f107bc7..f623ffb3c 100644 --- a/src/objects/zcl_abapgit_object_dtel.clas.abap +++ b/src/objects/zcl_abapgit_object_dtel.clas.abap @@ -35,7 +35,7 @@ ENDCLASS. -CLASS ZCL_ABAPGIT_OBJECT_DTEL IMPLEMENTATION. +CLASS zcl_abapgit_object_dtel IMPLEMENTATION. METHOD deserialize_texts. @@ -115,7 +115,8 @@ CLASS ZCL_ABAPGIT_OBJECT_DTEL IMPLEMENTATION. FROM dd04v WHERE rollname = lv_name AND ddlanguage IN lt_language_filter - AND ddlanguage <> mv_language. "#EC CI_SUBRC + AND ddlanguage <> mv_language + ORDER BY langu. "#EC CI_SUBRC LOOP AT lt_i18n_langs ASSIGNING . lv_index = sy-tabix. diff --git a/src/objects/zcl_abapgit_object_fdt0.clas.abap b/src/objects/zcl_abapgit_object_fdt0.clas.abap index 1e5e2d48f..4c28e378a 100644 --- a/src/objects/zcl_abapgit_object_fdt0.clas.abap +++ b/src/objects/zcl_abapgit_object_fdt0.clas.abap @@ -403,7 +403,8 @@ CLASS zcl_abapgit_object_fdt0 IMPLEMENTATION. SELECT application_id FROM fdt_admn_0000s INTO TABLE lt_application_id WHERE object_type = 'AP' - AND name = ms_item-obj_name. + AND name = ms_item-obj_name + ORDER BY application_id. ls_object_category_sel-system_objects = 'X'. diff --git a/src/objects/zcl_abapgit_object_intf.clas.locals_imp.abap b/src/objects/zcl_abapgit_object_intf.clas.locals_imp.abap index 0557e1dc7..a788e3e00 100644 --- a/src/objects/zcl_abapgit_object_intf.clas.locals_imp.abap +++ b/src/objects/zcl_abapgit_object_intf.clas.locals_imp.abap @@ -28,8 +28,8 @@ CLASS lcl_aff_helper DEFINITION. descript TYPE seodescr, scotype TYPE seoscotype, END OF ty_sub_component, - ty_compontents TYPE STANDARD TABLE OF ty_component, - ty_sub_compontents TYPE STANDARD TABLE OF ty_sub_component. + ty_compontents TYPE SORTED TABLE OF ty_component WITH UNIQUE DEFAULT KEY, + ty_sub_compontents TYPE SORTED TABLE OF ty_sub_component WITH UNIQUE DEFAULT KEY. CLASS-METHODS: get_attributes @@ -129,10 +129,11 @@ CLASS lcl_aff_helper IMPLEMENTATION. SELECT component~cmpname component_text~descript component~cmptype INTO TABLE lt_components FROM seocompo AS component - LEFT OUTER JOIN seocompotx AS component_text + LEFT OUTER JOIN seocompotx AS component_text ON component~cmpname = component_text~cmpname AND component~clsname = component_text~clsname AND component_text~langu = iv_language - WHERE component~clsname = iv_clif_name. "#EC CI_BUFFJOIN + WHERE component~clsname = iv_clif_name + ORDER BY component~cmpname. "#EC CI_BUFFJOIN SELECT sub_component~cmpname sub_component~sconame sub_component_text~descript sub_component~scotype INTO TABLE lt_sub_components diff --git a/src/objects/zcl_abapgit_object_iwmo.clas.abap b/src/objects/zcl_abapgit_object_iwmo.clas.abap index 6d4c28e09..c72ae8f2f 100644 --- a/src/objects/zcl_abapgit_object_iwmo.clas.abap +++ b/src/objects/zcl_abapgit_object_iwmo.clas.abap @@ -63,7 +63,8 @@ CLASS zcl_abapgit_object_iwmo IMPLEMENTATION. " Get entry with highest version SELECT created_by changed_by INTO (lv_created, lv_changed) FROM ('/IWBEP/I_MGW_OHD') - WHERE technical_name = ms_item-obj_name. + WHERE technical_name = ms_item-obj_name + ORDER BY PRIMARY KEY. rv_user = lv_changed. IF lv_changed IS INITIAL. rv_user = lv_created. diff --git a/src/objects/zcl_abapgit_object_iwsv.clas.abap b/src/objects/zcl_abapgit_object_iwsv.clas.abap index 5fa748eb1..9e53ba0a2 100644 --- a/src/objects/zcl_abapgit_object_iwsv.clas.abap +++ b/src/objects/zcl_abapgit_object_iwsv.clas.abap @@ -63,7 +63,8 @@ CLASS zcl_abapgit_object_iwsv IMPLEMENTATION. " Get entry with highest version SELECT created_by changed_by INTO (lv_created, lv_changed) FROM ('/IWBEP/I_MGW_SRH') - WHERE technical_name = ms_item-obj_name. + WHERE technical_name = ms_item-obj_name + ORDER BY PRIMARY KEY. rv_user = lv_changed. IF lv_changed IS INITIAL. rv_user = lv_created. diff --git a/src/objects/zcl_abapgit_object_iwvb.clas.abap b/src/objects/zcl_abapgit_object_iwvb.clas.abap index 765fcbd58..78b21145d 100644 --- a/src/objects/zcl_abapgit_object_iwvb.clas.abap +++ b/src/objects/zcl_abapgit_object_iwvb.clas.abap @@ -63,7 +63,8 @@ CLASS zcl_abapgit_object_iwvb IMPLEMENTATION. " Get entry with highest version SELECT created_by changed_by INTO (lv_created, lv_changed) FROM ('/IWBEP/I_MGW_VAH') - WHERE technical_name = ms_item-obj_name. + WHERE technical_name = ms_item-obj_name + ORDER BY PRIMARY KEY. rv_user = lv_changed. IF lv_changed IS INITIAL. rv_user = lv_created. diff --git a/src/objects/zcl_abapgit_object_msag.clas.abap b/src/objects/zcl_abapgit_object_msag.clas.abap index cfe735425..788b934be 100644 --- a/src/objects/zcl_abapgit_object_msag.clas.abap +++ b/src/objects/zcl_abapgit_object_msag.clas.abap @@ -48,7 +48,7 @@ ENDCLASS. -CLASS ZCL_ABAPGIT_OBJECT_MSAG IMPLEMENTATION. +CLASS zcl_abapgit_object_msag IMPLEMENTATION. METHOD delete_documentation. @@ -243,7 +243,8 @@ CLASS ZCL_ABAPGIT_OBJECT_MSAG IMPLEMENTATION. FROM t100t WHERE arbgb = lv_msg_id AND sprsl IN lt_language_filter - AND sprsl <> mv_language. "#EC CI_BYPASS "#EC CI_GENBUFF + AND sprsl <> mv_language + ORDER BY langu. "#EC CI_BYPASS "#EC CI_GENBUFF SORT lt_i18n_langs ASCENDING. @@ -252,7 +253,8 @@ CLASS ZCL_ABAPGIT_OBJECT_MSAG IMPLEMENTATION. SELECT * FROM t100t INTO CORRESPONDING FIELDS OF TABLE lt_t100t WHERE sprsl IN lt_language_filter AND sprsl <> mv_language - AND arbgb = lv_msg_id. "#EC CI_GENBUFF + AND arbgb = lv_msg_id + ORDER BY PRIMARY KEY. "#EC CI_GENBUFF SELECT * FROM t100 INTO CORRESPONDING FIELDS OF TABLE lt_t100_texts WHERE sprsl IN lt_language_filter @@ -289,9 +291,9 @@ CLASS ZCL_ABAPGIT_OBJECT_MSAG IMPLEMENTATION. METHOD zif_abapgit_object~delete. - DATA: ls_t100a TYPE t100a, - lv_frozen TYPE abap_bool, - lv_message_id TYPE arbgb. + DATA: ls_t100a TYPE t100a, + lv_frozen TYPE abap_bool, + lv_message_id TYPE arbgb. * parameter SUPPRESS_DIALOG doesnt exist in all versions of FM RS_DELETE_MESSAGE_ID * replaced with a copy diff --git a/src/objects/zcl_abapgit_object_nspc.clas.abap b/src/objects/zcl_abapgit_object_nspc.clas.abap index f0201a946..3624290bd 100644 --- a/src/objects/zcl_abapgit_object_nspc.clas.abap +++ b/src/objects/zcl_abapgit_object_nspc.clas.abap @@ -46,7 +46,7 @@ ENDCLASS. -CLASS ZCL_ABAPGIT_OBJECT_NSPC IMPLEMENTATION. +CLASS zcl_abapgit_object_nspc IMPLEMENTATION. METHOD add_to_transport. @@ -119,7 +119,8 @@ CLASS ZCL_ABAPGIT_OBJECT_NSPC IMPLEMENTATION. " Collect additional languages, skip main lang - it was serialized already SELECT DISTINCT spras AS langu FROM trnspacett INTO TABLE lt_i18n_langs - WHERE namespace = ms_item-obj_name AND spras <> mv_language. "#EC CI_SUBRC + WHERE namespace = ms_item-obj_name AND spras <> mv_language + ORDER BY langu. "#EC CI_SUBRC LOOP AT lt_i18n_langs ASSIGNING . SELECT SINGLE * FROM trnspacett INTO ls_trnspacett diff --git a/src/objects/zcl_abapgit_object_sicf.clas.abap b/src/objects/zcl_abapgit_object_sicf.clas.abap index 437aa7d5d..86bf49516 100644 --- a/src/objects/zcl_abapgit_object_sicf.clas.abap +++ b/src/objects/zcl_abapgit_object_sicf.clas.abap @@ -101,7 +101,8 @@ CLASS zcl_abapgit_object_sicf IMPLEMENTATION. * Do not add handlers if they already exist, it will make the below * call to SAP standard code raise an exception SELECT * FROM icfhandler INTO TABLE lt_existing - WHERE icf_name = is_icfservice-icf_name. + WHERE icf_name = is_icfservice-icf_name + ORDER BY PRIMARY KEY. LOOP AT lt_existing ASSIGNING . DELETE TABLE lt_icfhndlist FROM -icfhandler. ENDLOOP. diff --git a/src/objects/zcl_abapgit_object_tabl.clas.abap b/src/objects/zcl_abapgit_object_tabl.clas.abap index 0ce78af58..51b841658 100644 --- a/src/objects/zcl_abapgit_object_tabl.clas.abap +++ b/src/objects/zcl_abapgit_object_tabl.clas.abap @@ -623,7 +623,8 @@ CLASS zcl_abapgit_object_tabl IMPLEMENTATION. FROM dd02v WHERE tabname = lv_name AND ddlanguage IN lt_language_filter - AND ddlanguage <> mv_language. "#EC CI_SUBRC + AND ddlanguage <> mv_language + ORDER BY langu. "#EC CI_SUBRC LOOP AT lt_i18n_langs ASSIGNING . lv_index = sy-tabix. @@ -687,21 +688,24 @@ CLASS zcl_abapgit_object_tabl IMPLEMENTATION. FROM dd02l INTO TABLE lt_data WHERE tabname = ms_item-obj_name AND as4local = 'A' - AND as4vers = '0000'. + AND as4vers = '0000' + ORDER BY PRIMARY KEY. SELECT as4user as4date as4time APPENDING TABLE lt_data FROM dd09l WHERE tabname = ms_item-obj_name AND as4local = 'A' - AND as4vers = '0000'. + AND as4vers = '0000' + ORDER BY PRIMARY KEY. SELECT as4user as4date as4time APPENDING TABLE lt_data FROM dd12l WHERE sqltab = ms_item-obj_name AND as4local = 'A' - AND as4vers = '0000'. + AND as4vers = '0000' + ORDER BY PRIMARY KEY. SORT lt_data BY as4date DESCENDING as4time DESCENDING. diff --git a/src/objects/zcl_abapgit_object_tran.clas.abap b/src/objects/zcl_abapgit_object_tran.clas.abap index 10fca1b9d..3192e08ef 100644 --- a/src/objects/zcl_abapgit_object_tran.clas.abap +++ b/src/objects/zcl_abapgit_object_tran.clas.abap @@ -411,7 +411,8 @@ CLASS zcl_abapgit_object_tran IMPLEMENTATION. INTO CORRESPONDING FIELDS OF TABLE lt_tpool_i18n FROM tstct WHERE sprsl <> mv_language - AND tcode = ms_item-obj_name ##TOO_MANY_ITAB_FIELDS. "#EC CI_GENBUFF + AND tcode = ms_item-obj_name + ORDER BY sprsl ##TOO_MANY_ITAB_FIELDS. "#EC CI_GENBUFF mo_i18n_params->trim_saplang_keyed_table( EXPORTING @@ -905,7 +906,8 @@ CLASS zcl_abapgit_object_tran IMPLEMENTATION. WHERE tcode = lv_transaction. "#EC CI_SUBRC "#EC CI_GENBUFF SELECT * FROM tstca INTO TABLE lt_tstca - WHERE tcode = lv_transaction. + WHERE tcode = lv_transaction + ORDER BY PRIMARY KEY. IF sy-subrc <> 0. CLEAR: lt_tstca. ENDIF. diff --git a/src/objects/zcl_abapgit_object_ueno.clas.abap b/src/objects/zcl_abapgit_object_ueno.clas.abap index 6e16b7a0b..fb11bf054 100644 --- a/src/objects/zcl_abapgit_object_ueno.clas.abap +++ b/src/objects/zcl_abapgit_object_ueno.clas.abap @@ -153,7 +153,8 @@ CLASS zcl_abapgit_object_ueno IMPLEMENTATION. SELECT * FROM dm02l INTO TABLE lt_dm02l - WHERE entid = mv_entity_id. + WHERE entid = mv_entity_id + ORDER BY PRIMARY KEY. LOOP AT lt_dm02l INTO ls_dm02l. @@ -200,7 +201,8 @@ CLASS zcl_abapgit_object_ueno IMPLEMENTATION. SELECT * FROM dm42s INTO TABLE lt_dm42s - WHERE entidto = mv_entity_id. + WHERE entidto = mv_entity_id + ORDER BY PRIMARY KEY. LOOP AT lt_dm42s INTO ls_dm42s. @@ -251,7 +253,8 @@ CLASS zcl_abapgit_object_ueno IMPLEMENTATION. SELECT * FROM dm45l INTO TABLE lt_dm45l - WHERE entid = ms_item-obj_name. + WHERE entid = ms_item-obj_name + ORDER BY PRIMARY KEY. LOOP AT lt_dm45l INTO ls_dm45l. @@ -540,7 +543,8 @@ CLASS zcl_abapgit_object_ueno IMPLEMENTATION. FROM dokvl INTO CORRESPONDING FIELDS OF TABLE lt_dokvl WHERE id = c_text_object_type - AND object LIKE ls_dokvl-object ##TOO_MANY_ITAB_FIELDS. + AND object LIKE ls_dokvl-object + ORDER BY PRIMARY KEY ##TOO_MANY_ITAB_FIELDS. LOOP AT lt_dokvl INTO ls_dokvl. diff --git a/src/objects/zcl_abapgit_object_view.clas.abap b/src/objects/zcl_abapgit_object_view.clas.abap index a5fd9ed1c..cd5535fe6 100644 --- a/src/objects/zcl_abapgit_object_view.clas.abap +++ b/src/objects/zcl_abapgit_object_view.clas.abap @@ -51,7 +51,7 @@ ENDCLASS. -CLASS ZCL_ABAPGIT_OBJECT_VIEW IMPLEMENTATION. +CLASS zcl_abapgit_object_view IMPLEMENTATION. METHOD deserialize_texts. @@ -162,7 +162,8 @@ CLASS ZCL_ABAPGIT_OBJECT_VIEW IMPLEMENTATION. FROM dd25v WHERE viewname = ms_item-obj_name AND ddlanguage IN lt_language_filter - AND ddlanguage <> mv_language. "#EC CI_SUBRC + AND ddlanguage <> mv_language + ORDER BY langu. "#EC CI_SUBRC LOOP AT lt_i18n_langs ASSIGNING . lv_index = sy-tabix.