This blog article will teach you how to develop SOAP to SFTP scenario in CPI. You will also learn how to configure SOAP & SFTP adapter’s.
Step-1: Add i-Flow and name it as SOAP_To_SFTP_Interface and Enter the Description as, “i-Flow for SOAP to SFTP with Dynamic File Naming”
Step-2: Open the i-Flow and Change the Sender Participant to “SOAP” and Target Participant to “SFTP”
Step-3: Connect the Sender Participant “SOAP” to Start and use the SOAP adapter with SOAP 1.1 as protocol. Configure the Connection Tab as per below. Don’t make changes to WS-Security or Conditions tab.
Note: SOAP Address can be anything, but for practice purpose use the naming convention. This will be the end point URL for the Interface to trigger.
Step-4: In the pallet functions, choose Transformation —> Content Modifier and drop it in-between Start and End Message. Change the Name of Content Modifier to FileName
Step-5: Click on the Message Header Tab and create the below headers
Step-6: Click on the Exchange Property Tab and create the below property
Step-7: Connect the End message and Target Participant “SFTP” and use SFTP adapter. In SFTP adapter, enter the following details under Target Parameters.
Make sure that the SFTP credentials are deployed in the below path
Overview –> Manage Security –> Security Material –> Create/Upload Credentials
Check the connectivity test of SFTP adapter in Test Connectivity in the below path
Overview –> Manage Security –> Connectivity Tests –> SSH
Copy the Host Key and paste it in notepad & deploy it in Known Hosts(SSH) file in the below path
Overview –> Manage Security –> Security Material –> Upload Known Hosts(SSH)
Maintain the Processing and Advanced Tabs as show in below screenshots
Step-8: Save the Integration Flow & deploy it. Once Deployed, Go to Monitor. The status of the Integration Flow should be started
Step-9:Now we are good with the Integration flow. The next step is configuring the end point in SOAP UI. Copy the end point from Monitor tab.
Now let’s test the scenario
Step-10:
Open SOAP UI and create new project and give a suitable name. In the Initial WSDL, paste the URL and click on OK. Once you login, it will ask for Basic Authentication, Enter the S-user ID and Password or Gmail ID and Password
Step-11: The project is created. Now double click on Request 1.
Step-12: Replace the highlighted text in above screenshot with the below payload.
<EmpDetails>
<Empid>1002</Empid>
<Name>Say</Name>
<Phone>9856543210</Phone>
<Addr>Bangalore</Addr>
<State>KA</State>
<Client>CPI_CLIENT</Client>
<BU>NA</BU>
<EOM>No</EOM>
</EmpDetails>
Step-13: Go to Manage Integration Content and open your Iflow. Now copy the end point URL as shown in below screenshot.
Step-14: Paste in the Address bar of SOAP UI
Step-15: Maintain the Access credentials in Properties tab of SOAP UI
Step-16: Go To the Manage Integration Contents —> <your iflow>—–> Log Configuration—-> Log Level and Change it to Trace
Note: This trace will be enabled only for 10 mins.
Step-17: Now go to SOAP UI and trigger the message
Step-18: Go to Monitor Message Processing and check for message.
Below Integration Flow Model explains the flow of message from each block.
When you click on the SFTP block and look into Log Content Tab, you will find out the dynamically assigned Directory and file name against produced File.
Note: Login to any simulation tool for SFTP (say WINSCP) you can cross check the file
If you want to create the Exception sub process for this interface go through the below blog
https://blogs.sap.com/2022/06/07/how-to-create-exception-sub-process-for-i-flow-in-sap-cpi/
Conclusion:
This blog post assist you in developing SOAP to SFTP scenario in CPI
Please feel free to post a query in the comments section if you have any inquiries. I’d like to ask everyone to provide feedback and to like this blog article if you found it helpful. To discover more about CPI, kindly follow me for similar articles.