Skip to Content
Author's profile photo Artem Solohin

IFlow to IFlow in NWDS, PI 7.4

Sometimes we need to implement scenario like this:


Source System -> (some channel) -> Iflow -> Iflow -> (some channel) -> Target System.


We had in practice this requirement when

  1. We want to map message first and then throw runtime error,  that depends on mapping result. And we want to see all source message and result of mapping.
  2. We don’t want to use BPM
  3. Or we want to change dynamically URL in SOAP Sender Channel (add some GET parameters), and client want unchangeable URL without any dynamic.

I will show configuration without mappings and async.

So, step-by-step:

We will have 3 systems.

  1. BC_SENDER_SYSTEM
  2. BC_TEMP_SYSTEM
  3. BC_RECEIVER_SYSTEM.

Step1. At first create second Iflow

Source:

Business System: BC_TEMP_SYSTEM

Service Interface: SI_data_OA (outbound, async)

Channel: CC_SOAP_HTTP (sender, soap, http)

Target:

Business System: BC_RECEIVER_SYSTEM

Service Interface: SI_data_to_receiver_IA (inbound, async)

Channel: your receiver channel to target system

Step2. Activate second Iflow and deploy it.

Step3. Open corresponding ICO and get endpoint URL:
it should look like this

http://<host>/XISOAPAdapter/MessageServlet?senderParty=&senderService= BC_TEMP_SYSTEM&receiverParty=&receiverService=&interface= SI_data_OA&interfaceNamespace=<namespace>

Step4. Now create first Iflow

Source:

Business System: BC_SENDER_SYSTEM

Service Interface: SI_data_from_sender_OA (outbound, async)

Channel: your sender channel from source system

Target:

Business System: BC_TEMP_SYSTEM

Service Interface: SI_data_IA (inbound, async)

Channel: CC_SOAP_HTTP_R (receiver, soap, http)

In this channel we add URL from step 3. And user credentials of PIAPPLUSER (Java system user).

Step5. Activate and deploy first Iflow.

Run.

Have fun 🙂

Assigned Tags

      2 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Former Member
      Former Member

      Hi Artem.

      Can you please explain a bit more in detail, why exactly this scenario is needed? Just to enhance the first part of the blog and be more clear at least to me 🙂

      Appreacite that.

      Regards

      Diego

      Author's profile photo Artem Solohin
      Artem Solohin
      Blog Post Author

      I will write blog, when i show, how to change URL in soap sender channel to create dynamic queue.

      I think that scenario IFlow - IFlow have wide range of using.

      F.e. when you can't put all your logic in one OM and don't want to use BPM.