Merge pull request #1507 from larshp/issue_1502

TABL: consider DD12L in changed_by #1502
This commit is contained in:
Lars Hvam 2018-06-17 09:50:14 +02:00 committed by GitHub
commit ad0d06e4d0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -13,26 +13,44 @@ CLASS ZCL_ABAPGIT_OBJECT_TABL IMPLEMENTATION.
METHOD zif_abapgit_object~changed_by. METHOD zif_abapgit_object~changed_by.
DATA: lv_as4date TYPE dd02l-as4date, TYPES: BEGIN OF ty_data,
lv_as4time TYPE dd02l-as4time. as4user TYPE as4user,
as4date TYPE as4date,
as4time TYPE as4time,
END OF ty_data.
DATA: lt_data TYPE STANDARD TABLE OF ty_data WITH DEFAULT KEY,
ls_data LIKE LINE OF lt_data.
SELECT SINGLE as4user as4date as4time SELECT as4user as4date as4time
FROM dd02l INTO (rv_user, lv_as4date, lv_as4time) FROM dd02l INTO TABLE lt_data
WHERE tabname = ms_item-obj_name WHERE tabname = ms_item-obj_name
AND as4local = 'A' AND as4local = 'A'
AND as4vers = '0000'. AND as4vers = '0000'.
IF sy-subrc <> 0.
rv_user = c_user_unknown.
RETURN.
ENDIF.
SELECT SINGLE as4user INTO rv_user SELECT as4user as4date as4time
APPENDING TABLE lt_data
FROM dd09l FROM dd09l
WHERE tabname = ms_item-obj_name WHERE tabname = ms_item-obj_name
AND as4local = 'A' AND as4local = 'A'
AND as4vers = '0000' AND as4vers = '0000'.
AND ( as4date > lv_as4date OR ( as4date = lv_as4date AND as4time > lv_as4time ) ).
SELECT as4user as4date as4time
APPENDING TABLE lt_data
FROM dd12l
WHERE sqltab = ms_item-obj_name
AND as4local = 'A'
AND as4vers = '0000'.
SORT lt_data BY as4date DESCENDING as4time DESCENDING.
READ TABLE lt_data INDEX 1 INTO ls_data.
IF sy-subrc = 0.
rv_user = ls_data-as4user.
ELSE.
rv_user = c_user_unknown.
ENDIF.
ENDMETHOD. ENDMETHOD.