sap abap dinamik program oluşturma ve silme (gizli abap kodu çalıştırma)

merhaba, size bugün abap ile dinamik programların nasıl oluşturulduğunu anlatacağım. geliştirmiş olduğum program ile herhangi bir text dökümanına abap kodları yazıp, sisteme import edip, programı çalıştırıp, hemen sonrasında da silebiliriz. sistemde repository objelerinin değiştirilmesi yasak olsa bile bu program ile kodlarımızı yükleyip çalıştırabiliyoruz. (yani canlı sistemlerde de işe yarıyor). çok fazla laf kalabalığı yapmadan abap kodunu ekliyorum. güle güle kullanın.

REPORT  ztest.
 
DATA: lv_rep(20) TYPE c,
      lt_code TYPE TABLE OF rssource-line.
 
DATA: lt_filetable TYPE filetable,
      lv_rc TYPE i,
      lv_filename TYPE string.
 
FIELD-SYMBOLS <fs> TYPE any.
 
lv_rep = 'ZHIDDENPROGRAM'.
 
DATA: lv_use_file(1) TYPE c.
 
 
REFRESH lt_code.
lv_use_file = 'X'.
 
IF lv_use_file EQ 'X'.
  CALL METHOD cl_gui_frontend_services=>file_open_dialog
    CHANGING
      file_table = lt_filetable
      rc         = lv_rc.
 
  IF lv_rc NE 1.
    RETURN.
  ENDIF.
 
  READ TABLE lt_filetable INTO lv_filename INDEX 1.
 
  CALL FUNCTION 'GUI_UPLOAD'
    EXPORTING
      filename = lv_filename
    TABLES
      data_tab = lt_code.
ELSE.
  APPEND  'REPORT ZHIDDENPROGRAM.'
           TO lt_code.
  APPEND  'WRITE / ''Merhaba ben dinamik olarak oluşturuldum!''.'
           TO lt_code.
ENDIF.
 
ASSIGN lv_rep TO <fs>.
 
INSERT REPORT <fs> FROM lt_code.
 
SUBMIT (<fs>) AND RETURN.
 
DELETE REPORT <fs>.