mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 12:20:51 +08:00
dsys downport (#3495)
This commit is contained in:
parent
ac701157f0
commit
01823a97a9
|
@ -38,7 +38,7 @@ ENDCLASS.
|
|||
|
||||
|
||||
|
||||
CLASS zcl_abapgit_object_dsys IMPLEMENTATION.
|
||||
CLASS ZCL_ABAPGIT_OBJECT_DSYS IMPLEMENTATION.
|
||||
|
||||
|
||||
METHOD constructor.
|
||||
|
@ -61,6 +61,54 @@ CLASS zcl_abapgit_object_dsys IMPLEMENTATION.
|
|||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD deserialize_dsys.
|
||||
|
||||
DATA: ls_data TYPE ty_data,
|
||||
ls_docu_info TYPE dokil,
|
||||
lv_version TYPE dokvers.
|
||||
|
||||
io_xml->read( EXPORTING iv_name = 'DSYS'
|
||||
CHANGING cg_data = ls_data ).
|
||||
|
||||
CALL FUNCTION 'DOCU_INIT'
|
||||
EXPORTING
|
||||
id = c_id
|
||||
langu = mv_language
|
||||
object = mv_doc_object
|
||||
typ = c_typ
|
||||
IMPORTING
|
||||
xdokil = ls_docu_info.
|
||||
|
||||
lv_version = ls_docu_info-version.
|
||||
|
||||
CALL FUNCTION 'DOCU_UPDATE'
|
||||
EXPORTING
|
||||
head = ls_data-head
|
||||
state = 'A'
|
||||
typ = c_typ
|
||||
version = lv_version
|
||||
TABLES
|
||||
line = ls_data-lines.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_master_lang.
|
||||
|
||||
DATA: lv_language TYPE spras.
|
||||
|
||||
SELECT SINGLE langu FROM dokil INTO rv_language
|
||||
WHERE id = c_id
|
||||
AND object = mv_doc_object
|
||||
AND masterlang = abap_true.
|
||||
|
||||
IF sy-subrc <> 0.
|
||||
rv_language = mv_language.
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD zif_abapgit_object~changed_by.
|
||||
|
||||
rv_user = zcl_abapgit_factory=>get_longtexts( )->changed_by(
|
||||
|
@ -147,11 +195,15 @@ CLASS zcl_abapgit_object_dsys IMPLEMENTATION.
|
|||
|
||||
METHOD zif_abapgit_object~jump.
|
||||
|
||||
DATA lv_lang TYPE sy-langu.
|
||||
|
||||
lv_lang = get_master_lang( ).
|
||||
|
||||
CALL FUNCTION 'DSYS_EDIT'
|
||||
EXPORTING
|
||||
dokclass = mv_doc_object+0(4)
|
||||
dokname = mv_doc_object+4(*)
|
||||
doklangu = get_master_lang( )
|
||||
doklangu = lv_lang
|
||||
EXCEPTIONS
|
||||
class_unknown = 1
|
||||
object_not_found = 2
|
||||
|
@ -174,53 +226,4 @@ CLASS zcl_abapgit_object_dsys IMPLEMENTATION.
|
|||
io_xml = io_xml ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD deserialize_dsys.
|
||||
|
||||
DATA: ls_data TYPE ty_data,
|
||||
ls_docu_info TYPE dokil,
|
||||
lv_version TYPE dokvers.
|
||||
|
||||
io_xml->read( EXPORTING iv_name = 'DSYS'
|
||||
CHANGING cg_data = ls_data ).
|
||||
|
||||
CALL FUNCTION 'DOCU_INIT'
|
||||
EXPORTING
|
||||
id = c_id
|
||||
langu = mv_language
|
||||
object = mv_doc_object
|
||||
typ = c_typ
|
||||
IMPORTING
|
||||
xdokil = ls_docu_info.
|
||||
|
||||
lv_version = ls_docu_info-version.
|
||||
|
||||
CALL FUNCTION 'DOCU_UPDATE'
|
||||
EXPORTING
|
||||
head = ls_data-head
|
||||
state = 'A'
|
||||
typ = c_typ
|
||||
version = lv_version
|
||||
TABLES
|
||||
line = ls_data-lines.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
||||
METHOD get_master_lang.
|
||||
|
||||
DATA: lv_language TYPE spras.
|
||||
|
||||
SELECT SINGLE langu FROM dokil INTO rv_language
|
||||
WHERE id = c_id
|
||||
AND object = mv_doc_object
|
||||
AND masterlang = abap_true.
|
||||
|
||||
IF sy-subrc <> 0.
|
||||
rv_language = mv_language.
|
||||
ENDIF.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
ENDCLASS.
|
||||
|
|
Loading…
Reference in New Issue
Block a user