ABAP/BC/Массовое изменение пакета разработки для группы объектов

Материал из Викиучебника — открытых книг для открытого мира
Перейти к навигации Перейти к поиску
 1 *&---------------------------------------------------------------------*
 2 *& Report  ZBC_CHANGE_DEVCLASS
 3 *&
 4 *&---------------------------------------------------------------------*
 5 *& Название разработки: Перемещение объектов разработок в другой пакет *
 6 *& Разработчики: Югов А.                                               *
 7 *&                                                                     *
 8 *& Описание: Данная разработка полезна когда нет возможности           *
 9 *& премеестить из одного пакета в другой - не отображается в SE80      *
10 *&---------------------------------------------------------------------*
11 
12 REPORT  zbc_change_devclass.
13 
14 DATA gs_tadir TYPE tadir.
15 DATA gt_tadir TYPE TABLE OF tadir.
16 
17 SELECT-OPTIONS so_pgmid FOR gs_tadir-pgmid.
18 SELECT-OPTIONS so_objct FOR gs_tadir-object.
19 SELECT-OPTIONS so_objnm FOR gs_tadir-obj_name.
20 SELECT-OPTIONS so_devcl FOR gs_tadir-devclass.
21 
22 PARAMETERS p_targcl LIKE gs_tadir-devclass.
23 
24 SELECT * FROM tadir
25   INTO TABLE gt_tadir
26   WHERE pgmid     IN so_pgmid
27     AND object    IN so_objct
28     AND obj_name  IN so_objnm
29     AND devclass  IN so_devcl.
30 
31 LOOP AT gt_tadir INTO gs_tadir.
32   UPDATE tadir
33     SET devclass = p_targcl
34     WHERE pgmid    EQ gs_tadir-pgmid
35       AND object   EQ gs_tadir-object
36       AND obj_name EQ gs_tadir-obj_name
37       AND devclass EQ gs_tadir-devclass.
38 ENDLOOP.
39 
40 IF sy-subrc EQ 0 AND gt_tadir IS NOT INITIAL.
41   COMMIT WORK AND WAIT.
42 ELSE.
43   ROLLBACK WORK.
44 ENDIF.