Introduction
A good habit is to clean up import queues (STMS), so the overview of all that remains to be done is best. You can always search the histroy for what has been done.
SAP provides the menu function to remove already imported requests, and maybe soms old and obsolete transports, that have not been imported, from before the acceptation environments new client copy, can be removed also.
You might want to add requests again, of maybe a company provides you with a set of requests to add.
The STMS menu provides you with a on-at-a-time solution:
A good habit is to clean up import queues (STMS), so the overview of all that remains to be done is best. You can always search the histroy for what has been done.
SAP provides the menu function to remove already imported requests, and maybe soms old and obsolete transports, that have not been imported, from before the acceptation environments new client copy, can be removed also.
You might want to add requests again, of maybe a company provides you with a set of requests to add.
The STMS menu provides you with a on-at-a-time solution:
In this blog I will provide an ABAP solution to add multiple requests in a queue for an environment.
Solution
The function module that SAP used to add a request is: TMS_MGR_FORWARD_TR_REQUEST.
A small ABAP around this function will help you:
*&---------------------------------------------------------------------*
*& Report ZTMS_ADD_TO_IMPORT
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ztms_add_to_import.
TABLES: tmsbuffer.
TABLES: tmscsys.
PARAMETERS: p_syst LIKE tmscsys-sysnam OBLIGATORY DEFAULT 'AEJ'.
SELECT-OPTIONS: s_req FOR tmsbuffer-trkorr .
DATA g_trkorr TYPE tmsbuffer-trkorr.
at SELECTION-SCREEN on s_req.
*--------------------------------------------------------------------*
if s_req is initial.
check sy-ucomm <> '1'.
message e000(38) with 'Selection obligatory'.
endif.
START-OF-SELECTION.
*--------------------------------------------------------------------*
LOOP AT s_req WHERE sign = 'I' AND option = 'EQ'.
g_trkorr = s_req-low.
CALL FUNCTION 'TMS_MGR_FORWARD_TR_REQUEST'
EXPORTING
iv_request = g_trkorr
iv_target = p_syst
* IV_TARDOM =
IV_TARCLI = sy-mandt
* IV_SOURCE =
* IV_SRCDOM =
* IV_NO_DELIVERY =
* IV_WRONG_POS =
iv_import_again = 'X'
* IV_MONITOR = 'X'
* IV_VERBOSE =
* IT_REQUESTS =
* IMPORTING
* EV_DIFFERENT_GROUPS =
* EV_TP_RET_CODE =
* EV_TP_ALOG =
* EV_TP_SLOG =
* EV_TP_PID =
* ES_EXCEPTION =
* ET_TP_FORWARDS =
* TABLES
* TT_STDOUT =
EXCEPTIONS
read_config_failed = 1
table_of_requests_is_empty = 2
OTHERS = 3
.
IF sy-subrc <> 0.
WRITE: / g_trkorr, 'ERROR' COLOR COL_NEGATIVE.
* Implement suitable error handling here
ENDIF.
ENDLOOP.
Remarks
The order in which you provide the select-option with requests is also the order in which the requests are added to the import queue. However, if you already have certain transports in the queue, they are not removed first. You have to remove these first from the queue, so they can be added in the right order.
I have to mention that the order of transports is very important, because while importing SAP follows the list and imports later request over earlier.
I need say thank you and thank you for writing this, helped me a lot.
ReplyDeleteKeep blogging Pinto.
Very good program, i don't know how can i thank you :)
ReplyDeleteThank you very very much dear Sabrina Pinto. You're a hero!
ReplyDelete