cancel
Showing results for 
Search instead for 
Did you mean: 

Table to check the list of objects in a TR not yet imported

Loed
Active Contributor
1,569

Hi,

What table will I check for me to know the list of objects under a TR which was not yet imported but is already in the queue of STMS?

I tried E071 but it only shows TRs which were imported already.

So the scenario is this, we have 3 servers, DEV - QA - PROD.

TR #40 was already release in DEV, hence TR will now be seen in the STMS QA.

However, the #40 TR is not present in table E071 of QA server. In what table can I see the list of objects of TR #40?

Thanks a lot!

Loed

Accepted Solutions (0)

Answers (1)

Answers (1)

jmodaal
Active Contributor

Hello,

as the transport request is not imported in the system the content (also the object list) is not available in any table in the target system. So you have to get the needed information from a system either where the transport request was created (your dev system) or where the transport request already has been imported. If it is necessary to have the information about the transport request in your QA system, you can either create an RFC enabled function module specific to your purpose or use function module RFC_READ_TABLE to read the E071 table in the dev system (take into consideration that RFC_READ_TABLE - despite it is often used for such purposes - is not released for use by customer).

Beside that there is a possibility to get information about the content of a non-imported transport request by using R3trans (using parameter -l <data file> -w <log file>.

Kind regards

Jan

Loed
Active Contributor
0 Kudos

Thanks Jan!

Do you have a sample how to use the RFC_READ_TABLE in the QA? or how the program R3trans work? Did you already try them?

Loed

jmodaal
Active Contributor

Hello Loed,

have a look at this short program for using RFC_READ_TABLE:

program z_test.
parameters: pTrkorr like e070-trkorr obligatory,
pRfcdest like rfcdes-rfcdest obligatory.
data: options type standard table of RFC_DB_OPT with empty key,
fields type standard table of RFC_DB_FLD with key fieldname,
field type RFC_DB_FLD,
data type standard table of tab512 with empty key,
singleLine type tab512,
fieldValue type char120,
fieldInfo type RFC_DB_FLD,
exItabError type ref to CX_SY_ITAB_LINE_NOT_FOUND,
exOutOfBounds type ref to CX_SY_RANGE_OUT_OF_BOUNDS.
options = value #( ( TEXT = |TRKORR = '{ pTrkorr }'| ) ).
call function 'RFC_READ_TABLE' destination pRfcdest
EXPORTING
QUERY_TABLE = 'E071'
TABLES
OPTIONS = options
FIELDS = fields
DATA = data
EXCEPTIONS
TABLE_NOT_AVAILABLE = 1
TABLE_WITHOUT_DATA = 2
OPTION_NOT_VALID = 3
FIELD_NOT_VALID = 4
NOT_AUTHORIZED = 5
DATA_BUFFER_EXCEEDED = 6
OTHERS = 7.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
exit.
ENDIF.
format color col_heading.
write:/ 'PGMID', 'OBJECT', 'OBJ_NAME'.
format color off.
loop at data into singleLine.
new-line.
perform writeFieldValue using: 'PGMID', 'OBJECT', 'OBJ_NAME'.
endloop.
form writeFieldValue using pFieldname.
clear fieldValue.
try.
field = fields[ fieldname = pFieldname ].
fieldValue = singleLine-wa+field-offset(field-length).
catch CX_SY_ITAB_LINE_NOT_FOUND into exItabError.
message exItabError->get_text( ) type 'E'.
endtry.
write fieldValue under pFieldname.
endform.

For using R3trans it would be a little bit more effort. It is a binary executable available in the OS and mainly used in the TMS. You can find some information by using Google. Using it in an ABAP program would make it necessary to create a command file, call R3trans via system-call, read the log, interprete it and delete command and log file afterwards. It is the only possibility (I know) for getting information of 3rd party transport requests, where you don't have the possibility to look into the source system. For your purpose I would use RFC_READ_TABLE.

Kind regards

Jan