mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 12:20:51 +08:00
* decode object name #2504 * fix * fix
This commit is contained in:
parent
22fbd9cdfe
commit
13213e2f2f
|
@ -18,6 +18,7 @@ CLASS zcl_abapgit_html_action_utils DEFINITION
|
|||
IMPORTING
|
||||
!iv_name TYPE string
|
||||
!it_field TYPE tihttpnvp
|
||||
!iv_decode TYPE abap_bool DEFAULT abap_false
|
||||
CHANGING
|
||||
!cg_field TYPE any .
|
||||
CLASS-METHODS jump_encode
|
||||
|
@ -49,13 +50,13 @@ CLASS zcl_abapgit_html_action_utils DEFINITION
|
|||
CLASS-METHODS file_encode
|
||||
IMPORTING
|
||||
!iv_key TYPE zif_abapgit_persistence=>ty_repo-key
|
||||
!ig_file TYPE any "assuming ty_file
|
||||
!ig_file TYPE any
|
||||
RETURNING
|
||||
VALUE(rv_string) TYPE string .
|
||||
CLASS-METHODS obj_encode
|
||||
IMPORTING
|
||||
!iv_key TYPE zif_abapgit_persistence=>ty_repo-key
|
||||
!ig_object TYPE any "assuming ty_item
|
||||
!ig_object TYPE any
|
||||
RETURNING
|
||||
VALUE(rv_string) TYPE string .
|
||||
CLASS-METHODS file_obj_decode
|
||||
|
@ -219,7 +220,8 @@ CLASS ZCL_ABAPGIT_HTML_ACTION_UTILS IMPLEMENTATION.
|
|||
|
||||
IF eg_object IS SUPPLIED.
|
||||
get_field( EXPORTING iv_name = 'OBJ_TYPE' it_field = lt_fields CHANGING cg_field = eg_object ).
|
||||
get_field( EXPORTING iv_name = 'OBJ_NAME' it_field = lt_fields CHANGING cg_field = eg_object ).
|
||||
get_field( EXPORTING iv_name = 'OBJ_NAME' it_field = lt_fields iv_decode = abap_true
|
||||
CHANGING cg_field = eg_object ).
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD.
|
||||
|
@ -227,6 +229,8 @@ CLASS ZCL_ABAPGIT_HTML_ACTION_UTILS IMPLEMENTATION.
|
|||
|
||||
METHOD get_field.
|
||||
|
||||
DATA: lv_value TYPE string.
|
||||
|
||||
FIELD-SYMBOLS: <ls_field> LIKE LINE OF it_field,
|
||||
<lg_dest> TYPE any.
|
||||
|
||||
|
@ -236,13 +240,20 @@ CLASS ZCL_ABAPGIT_HTML_ACTION_UTILS IMPLEMENTATION.
|
|||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
lv_value = <ls_field>-value.
|
||||
|
||||
IF iv_decode = abap_true.
|
||||
* URL decode, not sure why some are decoded automatically
|
||||
REPLACE ALL OCCURRENCES OF '%3d' IN lv_value WITH '='.
|
||||
ENDIF.
|
||||
|
||||
CASE cl_abap_typedescr=>describe_by_data( cg_field )->kind.
|
||||
WHEN cl_abap_typedescr=>kind_elem.
|
||||
cg_field = <ls_field>-value.
|
||||
cg_field = lv_value.
|
||||
WHEN cl_abap_typedescr=>kind_struct.
|
||||
ASSIGN COMPONENT iv_name OF STRUCTURE cg_field TO <lg_dest>.
|
||||
ASSERT <lg_dest> IS ASSIGNED.
|
||||
<lg_dest> = <ls_field>-value.
|
||||
<lg_dest> = lv_value.
|
||||
WHEN OTHERS.
|
||||
ASSERT 0 = 1.
|
||||
ENDCASE.
|
||||
|
|
Loading…
Reference in New Issue
Block a user