From e58138e4f9d073bc56a50b8e400540dabaa4cb94 Mon Sep 17 00:00:00 2001 From: thorsten-wolf-neptune <83953375+thorsten-wolf-neptune@users.noreply.github.com> Date: Mon, 5 Sep 2022 18:24:56 +0200 Subject: [PATCH] Fixed "Add via Transport" short keys (#5736) * fixed "Add via Transport" short keys * replace trobj_name with TYPE C LENTH 120 * Pretty Printer (VALUE uppercase) * add skip * add skip * removed pretty printer comments * running * Replace with dtel Works should SAP change the max key length * Replace dtel For abaplint Co-authored-by: Lars Hvam Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com> --- package.json | 4 +- src/ui/zcl_abapgit_gui_page_data.clas.abap | 2 +- ...bapgit_gui_page_data.clas.testclasses.abap | 49 ++++++++++++++++++- 3 files changed, 50 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index f631ad031..af6492e02 100644 --- a/package.json +++ b/package.json @@ -27,8 +27,8 @@ "devDependencies": { "@abaplint/cli": "^2.93.9", "@abaplint/database-sqlite": "^2.1.45", - "@abaplint/runtime": "^2.1.49", - "@abaplint/transpiler-cli": "^2.1.49", + "@abaplint/runtime": "^2.1.50", + "@abaplint/transpiler-cli": "^2.1.50", "abapmerge": "^0.14.7", "c8": "^7.12.0", "eslint": "^8.23.0" diff --git a/src/ui/zcl_abapgit_gui_page_data.clas.abap b/src/ui/zcl_abapgit_gui_page_data.clas.abap index 4092e7eac..d2c052a32 100644 --- a/src/ui/zcl_abapgit_gui_page_data.clas.abap +++ b/src/ui/zcl_abapgit_gui_page_data.clas.abap @@ -160,7 +160,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_DATA IMPLEMENTATION. DATA lo_structdescr TYPE REF TO cl_abap_structdescr. DATA lt_fields TYPE ddfields. DATA ls_field LIKE LINE OF lt_fields. - DATA lv_key TYPE string. + DATA lv_key TYPE c LENGTH 900. lv_key = iv_tabkey. lo_structdescr ?= cl_abap_typedescr=>describe_by_name( iv_table ). diff --git a/src/ui/zcl_abapgit_gui_page_data.clas.testclasses.abap b/src/ui/zcl_abapgit_gui_page_data.clas.testclasses.abap index b2955fb91..02c94083f 100644 --- a/src/ui/zcl_abapgit_gui_page_data.clas.testclasses.abap +++ b/src/ui/zcl_abapgit_gui_page_data.clas.testclasses.abap @@ -4,13 +4,16 @@ CLASS zcl_abapgit_gui_page_data DEFINITION LOCAL FRIENDS ltcl_test. CLASS ltcl_test DEFINITION FOR TESTING DURATION SHORT RISK LEVEL HARMLESS FINAL. PRIVATE SECTION. - METHODS concatenated_key_to_where FOR TESTING RAISING cx_static_check. + METHODS concatenated_key_to_where1 FOR TESTING RAISING cx_static_check. + METHODS concatenated_key_to_where2 FOR TESTING RAISING cx_static_check. + METHODS concatenated_key_to_where3 FOR TESTING RAISING cx_static_check. + METHODS concatenated_key_to_where4 FOR TESTING RAISING cx_static_check. ENDCLASS. CLASS ltcl_test IMPLEMENTATION. - METHOD concatenated_key_to_where. + METHOD concatenated_key_to_where1. DATA lv_where TYPE string. @@ -24,4 +27,46 @@ CLASS ltcl_test IMPLEMENTATION. ENDMETHOD. + METHOD concatenated_key_to_where2. + + DATA lv_where TYPE string. + + lv_where = zcl_abapgit_gui_page_data=>concatenated_key_to_where( + iv_table = 'T100' + iv_tabkey = 'ESHORT' ). + + cl_abap_unit_assert=>assert_equals( + act = lv_where + exp = |sprsl = 'E' AND arbgb = 'SHORT' AND msgnr = ''| ). + + ENDMETHOD. + + METHOD concatenated_key_to_where3. + + DATA lv_where TYPE string. + + lv_where = zcl_abapgit_gui_page_data=>concatenated_key_to_where( + iv_table = 'T100' + iv_tabkey = 'ESHORT 001' ). + + cl_abap_unit_assert=>assert_equals( + act = lv_where + exp = |sprsl = 'E' AND arbgb = 'SHORT' AND msgnr = '001'| ). + + ENDMETHOD. + + METHOD concatenated_key_to_where4. + + DATA lv_where TYPE string. + + lv_where = zcl_abapgit_gui_page_data=>concatenated_key_to_where( + iv_table = 'T100' + iv_tabkey = 'ESHORT 0' ). + + cl_abap_unit_assert=>assert_equals( + act = lv_where + exp = |sprsl = 'E' AND arbgb = 'SHORT' AND msgnr = '0'| ). + + ENDMETHOD. + ENDCLASS.