Ich habe folgenden Code mit dem ich via 'Tr_request_modify' einen Transport anlegen möchte. Das anlegen klappt auch schon ganz gut, der Inhalt wird leider nicht mit transportiert. Wie kann ich den selektierten Inhalt aus der Coat_class ist das richtige Format bringen, damit ich die reports in meinen Transport bekomme?
bitte nicht auf die Benennung der Variablen achten, sind durch ständiges probieren ein wenig wirr. 😇
Ich habe auch teile meines Codes hier im Editor rausgeschmissen, weswegen unter DATA noch mehr Variablen deklariert werden die nicht verwendet werde.
Danke!
REPORT ZCA_TRANSPORT_SOURCES.
TYPES: BEGIN OF ty_trwbo_request,
h TYPE trwbo_request_header,
objects TYPE trwbo_t_e071,
keys TYPE trwbo_t_e071k,
keys_str TYPE e071k_strtyp,
objects_filled TYPE trwbo_charflag,
attributes TYPE trwbo_t_e070a,
attributes_filled TYPE trwbo_charflag,
END OF ty_trwbo_request.
TYPES: BEGIN OF ty_report,
trkorr LIKE E070-TRKORR,
END OF ty_report.
DATA: lv_transport_type TYPE c LENGTH 1,
lv_uc TYPE c LENGTH 1,
lv_simulation_mode TYPE abap_bool,
lv_transport_create TYPE abap_bool,
lv_transportnr Type c LENGTH 10,
lt_coat_classi TYPE TABLE OF coat_classi,
lt_coat_classi2 TYPE TABLE OF coat_classi,
lt_coat_classi3 TYPE TABLE OF coat_classi,
ls_coat_classi TYPE coat_classi,
lv_transport TYPE TRWBO_REQUEST,
ls_trwbo_request TYPE ty_trwbo_request,
ls_trwbo_request_import TYPE ty_trwbo_request,
ls_request TYPE ty_report,
lt_reports TYPE trwbo_t_e071,
ls_report LIKE LINE OF lt_reports,
ls_coat_classi2 TYPE coat_classi,
lv_name TYPE STRING,
ls_trdir LIKE TRDIR.
START-OF-SELECTION.
ls_request-TRKORR = lv_transportnr.
lv_name = p_name.
CONCATENATE '%'lv_name'%' INTO lv_name.
"Select über notwendigen Einträge in der coat_classi
SELECT *
FROM coat_classi
INTO TABLE lt_coat_classi
WHERE nr = '0005'
AND object_name LIKE lv_name.
LOOP AT lt_coat_classi2 INTO ls_coat_classi2.
CLEAR ls_report.
ls_report-trkorr = ls_coat_classi2-OBJECT_NAME. "bitte ändern
APPEND ls_report TO lt_reports.
ENDLOOP.
CLEAR ls_trwbo_request.
ls_trwbo_request-objects = lt_reports.
ls_trwbo_request-h = 'TEST'.
CALL FUNCTION 'TR_REQUEST_MODIFY'
EXPORTING
IV_ACTION = 'CREA'
* IV_NEW_REQUEST = ''
IV_NEW_REQUEST_TYP = 'K' "Transport Typ (K=Workbench)
IV_NEW_TASK_TYPE = 'U' "Typ der Aufgabe
* IV_NEW_TARSYSTEM = ' ' "Zielsystem
* IV_NEW_AS4TEXT = ' ' "Beschreibung des Auftrags
* IS_NEW_ATTRIBUTE =
* IV_REQUEST = "Transportid
IS_REQUEST = ls_trwbo_request "zu ändernder Inhalt
* IT_USERS =
* IV_START_COLUMN = 1
* IV_START_ROW = 4
* IMPORTING
* ES_NEW_REQUEST =
* ET_NEW_TASKS =
* EV_REQUEST_CHANGED =
* ES_REQUEST = ls_trwbo_request_import
* EV_ATTRIBUTES_FILLED =
* ET_ATTRIBUTES =
EXCEPTIONS
CANCELLED_BY_USER = 1
NO_AUTHORIZATION = 2
INVALID_ACTION = 3
INVALID_REQUEST = 4
INVALID_REQUEST_TYPE = 5
REQUEST_NOT_CREATED = 6
REQUEST_NOT_DELETED = 7
ENQUEUE_FAILED = 8
DB_ACCESS_ERROR = 9
OTHERS = 10
.
IF SY-SUBRC <> 0.
ENDIF.