cancel
Showing results for 
Search instead for 
Did you mean: 

Execute interfaces in order

Former Member
0 Kudos

Hi,

I have scenario where, I need to send a flat file to a ftp folder and once it's done. I need to inform 3rd party system, Stating file is placed on folder, process it.

How do i acheive this as two interface mappings will not help as the first file is huge and file adapter can take some time to deliver. I dont want my second process to send a confirmation message to 3rd party before the file is delivered.

Please suggest some ideas.

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi,

Please go through the below link for clear understanding of how to handle file acknowledgments.

http://scn.sap.com/community/pi-and-soa-middleware/blog/2006/06/22/xi-playing-with-the-file-adapters...

Regards

Venkat

Former Member
0 Kudos

Hi Prabhas,

You can achieve it though intergation process/BPM.

Steps of the step would be like this -

1. Receive step .

2. Transform step if there is any mapping if not then skip this step,

3. Use block with exception branch within thn that place send step for sending the file to third party.

    Add transform step to create sucess massage in email format.

    Add send step to send this success mail to concerned party.

4. In exception branch you can add some control step to raise alert or you can create failure message in email format & send it across to third party by adding Transform+send step.

Regards,

Ashish

Former Member
0 Kudos

But how do i know if the file has reached target succesfully? Then only i should send message.

former_member184789
Active Contributor
0 Kudos

You can have a BPM such that:

1. Have a receive step to receive in BPM.

2. Send to receiver system.

3. Send acknowledgement to third party system

In BPM, the step 3 will not be executed until step 2 is done. If you want such that you also need the negative acknowledgement i.e the process of sending message to receiver has failed, then do the following:

Introduce a container variable of type xsd:int say count1.

1. Receive step.

2. Have a fork with the below flows:

2a. Send the message to receiver, followed by container operation to increment count1 by 1.

2b. Have a switch case here, if count1 = 1, then execute the send step for positive acknowledgement

else send the negative acknowledgement.

You can have different transformation steps before sending for positive or negative acknowledgements.

Hope this helps..

Former Member
0 Kudos

Interesting scenario... not sure about this approach my idea is to:

Make it 2 simple scenarios:

Main interface:  File to File(FTP)

Secondary File to ThirdParty

Use RunOperatingSystemCommand in Reciver File Adapter...once your main File was written in folder make sure you write a dummy file in another file folder using operating system command.

With the dummy File secondary interface will gets triggered and sends message to third party.

Let us know how this is going.

Thanks.