Archiv für die Kategorie 'Ändern Originalsystem von Objekten'

Ändern des Originalsystems und der Transportschichtzuordnung

Samstag, 15. November 2014

Hallo Leute,

beim Umzug von einem zum anderen System hatte ich heute doch gewisse Probleme.

Meine selbstgeschriebenen Reports liessen sich im neuen System nicht mehr ändern sondern nur noch modifizieren.

Auch ein Transport der modifizierten Quelltet war nicht mehr möglich da mir nur lokale Transportaufträge angeboten wurden.

Also musste eine schnelle Lösung her.

Die Transportschicht der Pakete habe ich mit DB Mitteln geändert.

Für das Ändern des Originalsystems habe ich einen kleinen Report geschrieben.

Ihr dürft diesen gerne Kopieren und bei Bedarf auch verwenden. Jedoch übernehme ich keine Haftung dafür sollte bei euch etwas schief gehen und ihr das System zerstört.

 

*&———————————————————————*
*& Report Z_AENDERN_ORIGINAL_SYSTEM
*&
*&———————————————————————*
*&
*& Ändern des Originalsystems bei zu selektierenden Objekten
*&
*&———————————————————————*
REPORT Z_AENDERN_ORIGINAL_SYSTEM.

DATA:
gt_tadir TYPE TABLE OF tadir.
DATA:
gv_lines TYPE syindex.

DATA:
BEGIN OF gs_sel,
obj_name TYPE sobj_name,
srcsystem TYPE srcsystem,
END OF gs_sel.

FIELD-SYMBOLS:
<fs_tadir> TYPE tadir.

SELECT-OPTIONS:
s_objnme FOR gs_sel-obj_name OBLIGATORY,
s_orisys FOR gs_sel-srcsystem OBLIGATORY.

PARAMETERS:
p_test AS CHECKBOX DEFAULT ‚X‘,
p_orig type srcsystem obligatory.

START-OF-SELECTION.

SELECT *
FROM tadir
INTO TABLE gt_tadir
WHERE obj_name IN s_objnme
AND srcsystem IN s_orisys.

END-OF-SELECTION.

LOOP AT gt_tadir ASSIGNING <fs_tadir>.
<fs_tadir>-srcsystem = p_orig.
ENDLOOP.

DESCRIBE TABLE gt_tadir LINES gv_lines.

IF p_test IS INITIAL.
MODIFY tadir FROM TABLE gt_tadir.
IF sy-subrc IS INITIAL.
COMMIT WORK.
WRITE: / ‘ECHTLAUF’.
ELSE.
ROLLBACK WORK.
WRITE: / ‘Fehler beim Ändern der Tabelle. Keine DB änderung durchgeführt.’.
ENDIF.
ELSE.
WRITE: / ‘TESTLAUF’.
ENDIF.
WRITE: / ‘Es wurden ‘, gv_lines, ‘Einträge geändert.’.