Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Function module / program to simulate an import request

Former Member
0 Likes
1,838

Hey there,

i'm working on a program for an automatic analyze of errors occuring during a transport.

The given situation is:

A transport can not be performed.

Question why?

The first step is to retry the transport later on and analyze the transport-protocoll. Maybe the error exists no longer (e.g. an DDIC-DataType was missing and was imported during the time between the first try and the retry) so that everything is fine or it still exists. Then further steps have to be taken.

To do this automatically I'm looking for a function module oder a program to simulate the transport and to get the transport protocoll.

Would be glad if anyone could help me

Regards

Pascal

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
1,482

Hi

Try any of these ,lets see if it is helpful.

/SDF/CMO_COMP_REPOS Function modules for software logistics

/SDF/CMO_GET_LOCAL_TRANSPORTS Create a list of transports created in th

/SDF/CMO_GET_TRANSPORT_LIST Get list of imported transports

/SDF/CMO_GET_TRANSPORT_TEXTS Get texts for transport requests

/SDF/CMO_TRANSPORTS_COMPARE Number of transports in period of time

/SDF/CMO_TRANSPORTS_STAT Get transport objects statistics

Regards

Neha

8 REPLIES 8
Read only

ThomasZloch
Active Contributor
0 Likes
1,482

I don't think this is available, due to the complexity of the underlying dependencies. You cannot simulate an entire target system to find out whether any object is missing there. All objects need to be imported and then activated in a second step, only then such inconsistencies can be detected.

I would be happy to be proven wrong here and learn better. This would be a very useful functionality.

Thomas

Read only

Former Member
0 Likes
1,484

Hi

Try any of these ,lets see if it is helpful.

/SDF/CMO_COMP_REPOS Function modules for software logistics

/SDF/CMO_GET_LOCAL_TRANSPORTS Create a list of transports created in th

/SDF/CMO_GET_TRANSPORT_LIST Get list of imported transports

/SDF/CMO_GET_TRANSPORT_TEXTS Get texts for transport requests

/SDF/CMO_TRANSPORTS_COMPARE Number of transports in period of time

/SDF/CMO_TRANSPORTS_STAT Get transport objects statistics

Regards

Neha

Read only

0 Likes
1,482

Hey thx for your replies.

Could you tell me, what kind of data

"/SDF/CMO_COMP_REPOS" is? Function module? Function Group? I tried to find it via workbench search but I had no success. Sry for that rookie question, im BA student 2008 and the first word i heared about abap is only 4 weeks ago

I've also called some colleagues from the transport group, who told me, that there's no function / programm to "simulate" an import. It's also not possible to "really" retry it, because it could occur, that some fixes made in (independent) following transports are overwritten. That could lead to an inconsistent system.. not that good..

So at the moment, I think I should skip the that "retry step" and directly have a look at the import-protocoll to analyze it. Are there any suggestions how I could retrieve that protocoll automatically to analyze it via ABAP? It tried to find the corresponding function by using the debugger in SE01->'choose Request'->Jump->Transportprotocoll, but i haven't found it.

PS: Should I open another question/topic for that new issue?

Kind Regards

Pascal

Read only

0 Likes
1,482

Nice task, given you're just four weeks into ABAP. What is the point in analyzing transport protocols via a program? There could be so much different stuff in there, I think you're running uphill.

Yes, I think you should open a new question to ask for that function module and close this one.

Thomas

Read only

0 Likes
1,482

There some "routine-tasks" in analyzing protocols like:

Error -- Table XY cannot be activated

-> look up the components of that table

-> are they in the target system?

-> are they in the source system?

-> are they 'active' in target and sourcesystem?

That's at least what i've heared about it, since i've never done a 'real' transport myself. But apart from that, it should be possible to create a framework to do that work. A 'special task' of this framework is, that it has to be extensible for further checks (because i won't be able to cover every possible error in the next 3 weeks).

Maybe it's kind a difficult for the first time of 'independent' work in a foreign language, but I'll - at least - gain some knowledge about ABAP and different methods to figure out complicated stuff by myself.

The function module that i've looked for is

TRINT_READ_LOG which has to be called like this:

PARAMETERS: filename TYPE TRFILE.

DATA: lt_log TYPE STANDARD TABLE OF TRLOG.

CALL FUNCTION 'TRINT_READ_LOG'
 EXPORTING
   IV_LOG_TYPE             = 'FILE'
   IV_LOGNAME_FILE         = filename
  TABLES
    ET_LINES                = lt_LOG
 EXCEPTIONS
   INVALID_INPUT           = 1
   FILE_ACCESS_ERROR       = 2
   DB_ACCESS_ERROR         = 3
   OTHERS                  = 4
.

filename should contain the full path to the protocoll, which can be found in se01 -> request -> transprotocoll.

Had some fun with the debugger to find it 😕

Should i mark the question as answered, even if there's no solution for the "topic-task"?

Read only

0 Likes
1,482

I found STRF_SETNAME_PROT which will build the filename for TRINT_READ_LOG, maybe that's of any help. There is also TR_READ_LOG.

Please keep us updated on the progress.

> Should i mark the question as answered, even if there's no solution for the "topic-task"?

Yes, once you reach ten "unanswered" questions, you cannot open a new one.

Thomas

Read only

0 Likes
1,482

Hey,

I'll keep STRF_SETNAME_PROT in mind, maybe it's useful to know (e.g. in the documentatin) for the well-formatted values for filename

I've tested TR_READ_LOG and it seems to work similar to TRINT_READ_LOG. Not astonishing the TR_ calls TRINT_ ro read the log from the filesystem ^^

Yes, once you reach ten "unanswered" questions, you cannot open a new one.

Ah ok, thx. I think as next step, I'll draw my attention to the DDIC functions to check the consistence of DDIC objects.

So far, thx for your replies

Regards

Pascal

Read only

0 Likes
1,482

>

> So far, thx for your replies

I've one small request,

Closing the threads is a good Practice, but closing your thread with giving "Reward" would make it Sweeter.

As People Are continuously following your problem since 1 week along with you.

Cheers,

Amit.