cancel
Showing results for 
Search instead for 
Did you mean: 

Conditional get of files via XI 3.0

0 Kudos

Hi all,

I have a scenario where a third-party system will create seven files that should be picked up and processed by XI. The process will in brief look like this. First a start. tmp file is created then the seven data files are created and then a finished.tmp file is created.

What I need to do is to first check, do we have a finished.tmp file. If so I can go ahead and process the seven data files. But if the finished.tmp file does not exist I do not want to start the processing because then this indicates that something is not OK. This means that I only want to process if all files are present otherwise stop.

Anyone has an idea how I would go about to accomplish this in XI 3.0?

Regards,

Fred

Accepted Solutions (1)

Accepted Solutions (1)

udo_martens
Active Contributor
0 Kudos

Hi Fredrik,

you can implement that with BPM standard <a href="http://help.sap.com/saphelp_nw04/helpdata/en/0e/56373f7853494fe10000000a114084/frameset.htm">Example: Collecting and Bundling Messages - Multiple Interfaces</a>. Collecting will be finished if all receiving branches are used.

Regards,

Udo

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi Fredrik,

This can be achieved by Module programming.

Regards,

Karan.

0 Kudos

Hi all,

Thanks for all your idéas. At the moment Iam into the BPM track. I will try to read up on this and do a test. But if there is more idéas please post them.

Regards,

Fredrik

bhavesh_kantilal
Active Contributor
0 Kudos

Hello Fredrik,

I remember doing a similar exercise a few weeks back where the requirement was similar.

A program on SAP creates all these files and XI needed to act as the FTP to pick up these files and post it to the target system . No Mapping, No content conversion.

But, just as your requirement, we had to wait for the final file - I think this was / is called as the Signature file , XI was supposed to pick up these files if and only if the Signature file was created and that too within a particular time frame. After going down the BPM path we realised using XI in this case made no sense ( no mapping and no content conversion ) and we also found that SAP by default had this feature available ( not sure how, but the ABAP'er in the team did tell us that doing this on SAP using some FM was a very simple thing ) and finally we decided that it made no sense to user XI here as SAP had more control over this process and decided to ditch XI here.

I in no way mean to say we should not use XI in such cases, as every requirement is unique in itself, but I just thought I'd share my experience here and throw this requirement as well as an open dicussion to our forum

Hope this helps

Regards

Bhavesh

0 Kudos

Hi Bhavesh,

It was very interesting to read about your experience, I think our requirement is very similar to the one you had to deal with. XI will only act as a "middlman" to move files from one location to the other but only when the signature file is present and after the move delete all files including the signature files.

We have had the same thoughts as to if we should use XI or not. The main reason for using XI for this was that we wanted to have a central "hub" which all our interfaces was routed via, content conversion or not. This helps us in monitoring administrating etc. But all the interfaces we have had so far have not had this requirement so it´s been a pretty straight forward approach.

I have now also played a little with BPM but couldn't get it to work. It might be that I have no real experience with it, but anyway I got stuck. Maybe I could get the check of the signature file to work but then I also need a part to delete the signature files after the files have been processed.

So maybe we will revisit the thought of using another method for these kind of transfers.

Regards,

Fred

Shabarish_Nair
Active Contributor
0 Kudos

Use a BPM.

Have a receive step that will start the process only if the tmp file is present.

Receive (tmp file - Start process) -> do the rest of the logic after this receive step.

Former Member
0 Kudos

I beleive you have to write an script that and has to call from the Sender file adapter..so it will call before the message processing in Adapter Engine...

Bottom line if script will determine all the file are there then send File adapte can pick the files else the script will put it in Error direcotory.

let me think more on it..

Thanks

Farooq Farooqui

Former Member
0 Kudos

One more solution:

You can write an Adapter Module (and call at sender side).

This will check the no. of files including the start file and end file. if all are present the pass read the files else throw and Alert and archive the Fils in the Error Directory.

Thanks

Farooq.