Luckily, I’ve got a chance to look at PeopleSoft integration with other SaaS app using OIC (Oracle Integration Cloud) and decided to share what I learned.
If you’re not familiar with PeopleSoft, please visit PeopleSoft Information Portal and just click hamburger menu on top right-hand side of web page. You will see it covers lots of things.
I’ll explain contact information synchronisation from Salesforce.com into PeopleSoft which is SOAP web service based integration. It is a typical integration use case for PeopleSoft. Will post REST API and file based integration in future as well.
PeopleSoft has excellent middleware layer called Integration Broker. And I’ve chosen SOAP web service for contact information component interface as it would be easiest and simplest way to expose simple business logic in PeopleSoft as SOAP web service. Of course, you have other options such as REST API, JMS, file based integration, it really depends on organisation’s integration requirements.
I will focus on how to manage CI(Component Interface)-based web service configuration of PeopleSoft Integration Broker in this Part 1 – I’ll be using PeopleSoft version 9.2 with PeopleTools 8.56.
Very Short version of PeopleSoft Dictionary
Hope you learn some words in advance, which are meaningful in PeopleSoft ecosystem.
PeopleTools: PeopleTools provides the underlying technology for PeopleSoft applications. All PeopleSoft applications, such as Human Capital Management and Customer Relationship Management are built, deployed, and maintained using PeopleTools.
With PeopleTools you can:
- Develop new applications or customize existing applications.
- Administer applications that you have deployed within your organization.
- Provide decision support and reporting functionality to decision makers.
- Integrate PeopleSoft applications with other PeopleSoft applications or third-party applications.
- Upgrade and update your applications as part of system lifecycle management.
PeopleCode: PeopleCode is the structured programming language built into PeopleTools that extends the functionality of the PeopleTools environment, it is a proprietary object-oriented programming language used to express business logic for PeopleSoft applications
Integration Broker: PeopleSoft Integration Broker is a middleware technology that –
- Performs asynchronous and synchronous messaging among internal systems and third-party systems.
- Exposes PeopleSoft business logic as web services to PeopleSoft and third-party systems
- Consumes and invokes web services from third-party and PeopleSoft systems.
It enables you to perform these integrations among internal systems and third-party integration partners, while managing data structure, data format and transport disparities. Because of its modular design, you can reuse many elements that you develop for integrations. It consists of two subsystems: the integration gateway and the integration engine. The integration gateway resides on a PeopleSoft web server, and the integration engine is installed on an application server as part of the PeopleSoft application.
Component interface: Component interface is a set of application programming interfaces (APIs) that you can use to access and modify PeopleSoft database information programmatically. PeopleSoft component interfaces expose a PeopleSoft component (a set of pages grouped for a business purpose) for synchronous access from another application (PeopleCode, Java, or C/C++).
Expose Contact Information Component interface SOAP web service
Now I’ll explain quickly how to expose contact information component interface as SOAP web service.
- Go to Application Login, Financials/Supply Chain.
Then log on using username VP1. VP1 is typical username which has admin role in PeopleSoft.
- Go to NavBar from top right-hand side, then go to Navigator, Customer, Contact Information.
And search by Contact Name. I’ve used SetID SHARE and Contact Name begins with Bruce.
I’ve got search result with Bruce Lee as below.
- Now go from Navigator, PeopleTools, Integration Broker, Web Services, CI-Based Services.
- Search CONTACT_INFO from component interface name and select it. Then click Review CI STATUS.
- You will see nothing from Service Operation. Select Select All and click Display Selected Actions.
- Select all if not, then click Perform Selected Actions.
- We’ve got service operation available. Click View Service Definition.
- Click Provide Web Service.
- Select Select All, then click Next under Step 2 of 4.
- You can check content of WSDL from View WSDL. Click Next under Step 3 of 4.
- Click Finish.
- Download WSDL from runtime WSDL URL. Make sure to download all of related schema files as well. It seems my PeopleSoft demo environment used http for runtime WSDL URL and actual web service endpoint within WSDL. I had to change it to https.
- Try find, get web service call from Soap UI using downloaded WSDL or runtime WSDL URL. I tried CI_CONTACT_INFO_F (find) web service call with SetID SHARE and “Bruce” and it returned CONTACT_ID 50.
- Tried CI_CONTACT_INFO_G (get) web service operation with SetID SHARE and CONTACT_ID 50 which returned detail of Bruce as below.
Now we’re ready to go for development in OIC. Will continue in Part 2 soon…