cancel
Showing results for 
Search instead for 
Did you mean: 

How to start XI communication channel after file creation

Former Member
0 Kudos

We want to trigger/start the communication channel in XI immediately after a file is created by a program.

I have checked some blogs and saw that

u201Chttp(s)://host:port/AdapterFramework/ChannelAdminServlet?party=party&service=service&channel=channel&action=actionu201D

can be used to do it.

But how in ABAP? Our ABAPers are not familiar with it. Has anybody implemented it?

Or is there any other way of doing it?

Please let me know.

Blogs I have checked

Ref:

http://help.sap.com/saphelp_nw04/helpdata/en/45/0c86aab4d14dece10000000a11466f/frameset.htm

Thanks

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

We want to trigger/start the communication channel in XI immediately after a file is created by a program.

Hi,

In Batch JOB schedule we have options to execute programs after the successful completion of previous job ( that is ur program which creates files in NFS ) ; So a simple ABAP Function can be scheduled in this way to start Communication channel in XI;

Former Member
0 Kudos

Yes. That is the question. what is that simple program to start XI communication channel from ABAP program. Ours ABAPers have not done anything like that and need help.

Former Member
0 Kudos

Sai,

Since it's a file sender, why not make the polling interval real small, say 45-60 secs? Can't the business wait for this kind of delay?

The one that you want to implement, can be done ... but my point is why not use the easy way and it will hardly make too much of difference.

Let us know if this works for you.

Regards,

Neetesh

Former Member
0 Kudos

Neetesh,

The job that creates the files runs for different sets of data and runs for long hours. If I set the polling short, it tries to pick up partial files and sends it. Then again the channel fails when it tries to archive the file as the program is holding a lock on it.

Currently I am using Availability time planning. But since the data is growing day by day, it is not working the expected way.

Any other idea?

Thanks

Former Member
0 Kudos

Okay, now I have a better understanding of your requirement

If you are using NFS, then you have option of not picking the partial file.

If you are using FTP, then a simple script will do the exact same thing of not letting the adapter pick partial files.

If you still not satisfied with the solution, then external control of the channel is the only option that I can think of.

Former Member
0 Kudos

Neteesh,

I am using NFS. Are you talking abou the Additional Parameters - MSecs to Wait Before Modification Check and the Maximum File Size(Bytes) option?

Former Member
0 Kudos

Yes.

Former Member
0 Kudos

We have tried that Neteesh. Two processes create different sets of files at different times. Some times the file stays at zero bytes for a long time and then gets populated. We don't want to send that.

We need a way to trigger the channel at the end of file creation.

Former Member
0 Kudos

Another way that I can think of -

1. Create two folders - A & B.

2. Drop files in folder A.

3. Write a script to check for size modification for files in folder A. If size is 0 bytes, do nothing.

4. Once the file is completely written (check for end of file), move the file to folder B.

5. File channel will pick the files from location B.

This will make sure that only 100% complete files are picked. Hope this helps.

Former Member
0 Kudos

We thought about that long back. But our ABAPers are not allowed to / cannot use OS level commands like move or copy file commands in the program. That is a whole new security level.

Thanks