# mulesoft Oracle PeopleSoft Connector - Full Documentation --- product: Oracle PeopleSoft Connector version: 3.1 is-latest-version: true --- # Oracle PeopleSoft Connector 3.1 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Connector for Oracle PeopleSoft (PeopleSoft Connector) is a closed-source connector that uses the Component Interface (CI) to communicate in real-time with the service. This is a component provided by Oracle’s PeopleTools. Release Notes: [Oracle PeopleSoft Connector Release Notes](https://docs.mulesoft.com/release-notes/connector/peoplesoft-connector-release-notes-mule-4) Exchange: [Oracle PeopleSoft Connector](https://www.mulesoft.com/exchange/org.mule.connectors/mule-peoplesoft-connector/) > [!NOTE] To run the connector on PeopleTools 8.61, you must add the `-DTM_ALLOW_NOTLS=Y` flag to > both of these locations: > > - In Studio, **Run** > **Run Configurations** window > **Arguments** tab > **VM arguments** > > - In the `AnypointStudio.ini` file, such as after the > `-Dmule.deployment. forceParseConfigXmls=true` flag ## Before You Begin To use this information, you should be familiar with PeopleSoft, Mule runtime engine (Mule), Anypoint Connectors, Anypoint Studio, Mule concepts, elements in a Mule flow, and Global Elements. You need login credentials to test your connection to your target resource. ## POM File Information ```xml org.mule.connectors mule-peoplesoft-connector x.x.x mule-plugin ``` Replace `x.x.x` with the version that corresponds to the connector you are using. To obtain the most up-to-date `pom.xml` file information, access the connector in [Anypoint Exchange](https://www.mulesoft.com/exchange/) and click **Dependency Snippets**. ## What’s New in this Connector Reorganized user interface in the Connector configuration. The input and output of Operations is JSON. Fixed date conversion in Save operation. ## Component Interfaces PeopleSoft’s Component Interfaces (CI) provides a one-way real-time interface to a PeopleSoft database instance. A component in PeopleSoft is a logical grouping of PeopleSoft pages representing a complete business transaction, such as Employee Onboarding. Component Interfaces expose the underlying APIs used by PeopleSoft Components and, therefore, ensure that validations, defaults, and business logic are preserved from the original definition of those components. The Component Interfaces allow you to query PeopleSoft for specific records, update data, and create new instances of the records. ### Attributes and Architecture A component interface has the following four main attributes: ![PeopleSoft architecture](/mulesoft/current/en-us/peoplesoft-connector/latest/_images/peoplesoft-ci-architecture.jpg) - Component Interface Name: Each component interface requires a unique name. The programs calling a component use the name of the component interface to access properties and methods. - Keys (Get keys, Create keys, and Find keys): Keys are special properties containing values that retrieve an instance (get keys) or a list of instances (find keys) of the component interface. You can add, remove, or change keys in PeopleSoft Application Designer. Keys are created automatically when you create a component interface. - Get keys: Map to fields marked as search keys in the Components Search record. - Create keys: Generated in CI when the Use tab on the Component Properties dialog allows the Add action. - Find keys: Map to fields marked as both Alternate Search keys and Search Key in the Component Search Record. - Properties and Collections (Fields and Records): Properties provide access to both component data and component interface settings. A property can correspond to a field or a scroll (collection). A component interface collection is a special type of property that corresponds to a scroll and contains fields and subordinate scrolls as defined in its underlying component. Types of properties: - Standard properties are assigned automatically when a component interface is created. - User-defined properties map to record fields on the PeopleSoft component and are displayed in the PeopleSoft Application Designer. - Methods: A method is a function that performs a specific task on a component interface at run time. There are two main types of methods: standard and user-defined. Standard methods are those that are available for all component interfaces. The following are the standard methods that the connector supports:
MethodDescription

Create

Add a new instance of the Component Interface to the PeopleSoft database. This is similar to clicking Add and entering the relevant keys through the PeopleSoft Web UI.

Cancel

Cancel an instance of the Component Interface. This is equivalent of the Cancel operation in the Web UI when working on a particular component.

Find

Search for any instances of the component that match the provided Search Keys. This returns a list of possible matches.

Get

Retrieve instances that match the specific keys you provide. This returns a single record or none at all.

Save

Save changes made to the component, new, or existing.

The Save operation tries to update an existing record before creating a new one. For new records, the connector automatically populates the keys with default values provided by the PeopleSoft instance, thereby reducing the need for the user to provide the default key/values pairs.

- User-defined methods are created in PeopleSoft Application Designer to provide added functionality to the component interface. ## Add the Connector to a Studio Project Anypoint Studio provides two ways to add the connector to your Studio project: from the Exchange button in the Studio taskbar or from the Mule Palette view. ### Add the Connector Using Exchange 1. In Studio, create a Mule project. 2. Click the Exchange icon **(X)** in the upper-left of the Studio task bar. 3. In Exchange, click **Login** and supply your Anypoint Platform username and password. 4. In Exchange, search for "peoplesoft". 5. Select the connector and click **Add to project**. 6. Follow the prompts to install the connector. ### Add the Connector in Studio 1. In Studio, create a Mule project. 2. In the Mule Palette view, click **(X) Search in Exchange**. 3. In **Add Modules to Project**, type "peoplesoft" in the search field. 4. Click this connector’s name in **Available modules**. 5. Click **Add**. 6. Click **Finish**. ### Configure in Studio 1. Drag the connector to the Studio Canvas. 2. Create the connector configuration, configure the parameters and add the `psjoa` library. 3. In the properties editor of the Invoke Operation, configure the remaining parameters:
ParameterValue

Display Name

Name of the operation to display in Studio

Extension Configuration

The reference name to the global element you have created.

Component Name

The component interface name .

Operation

An operation to run over the selected CI.

The connector configuration should look like the image below: ![Global elements properties window](/mulesoft/current/en-us/peoplesoft-connector/latest/_images/peoplesoft-config.png) ## Log Requests and Responses To log requests and responses when using the connector, configure a logger by adding this line to the `Loggers` element of the `log4j2.xml` configuration file for the Mule app: ```xml ``` The following example shows the `Loggers` element with the `AsyncLogger` line added: ```xml ``` You can view the app log as follows: - If you’re running the app from the Anypoint Platform, the output is visible in the Anypoint Studio console window. - If you’re running the app using Mule from the command line, the app log is visible in your OS console. Unless the log file path was customized in the app’s log file (`log4j2.xml`), you can also view the app log in this default location: `MULE_HOME/logs/.log` For more information about the app log, see [Configuring Logging](https://docs.mulesoft.com/mule-runtime/latest/logging-in-mule). ## Use Case: Retrieve a Collection of Employee Records ![Find Employees Studio flow with Listener, Transform Message, Find Employees, Transform Message, and Logger](/mulesoft/current/en-us/peoplesoft-connector/latest/_images/peoplesoft-use-case-flow.png) 1. Create a new Mule Project in Anypoint Studio. 2. Drag a HTTP Listener to the canvas and configure the following parameters:
ParameterValue

Display Name

HTTP

Extension Configuration

If no HTTP element has been created yet, click the plus sign to add a new HTTP Listener Configuration, set the Host and Port, and click OK.

Path

/find

3. Drag the PeopleSoft Invoke Operation next to the HTTP endpoint component and configure it according to the steps below: 1. Add a new PeopleSoft Configuration by clicking the plus sign in the Basic Settings field. 2. Configure the global element completing required fields with your credentials. 3. Add the `psjoa` library. 4. Add CI\_PERSONAL\_DATA to the Component interface IDs. 4. Click Test Connection to confirm that Mule can connect with the PeopleSoft instance. If the connection is successful, click OK to save the configurations. Otherwise, review or correct any incorrect parameters, then test again. 5. Back in the properties editor of the Invoke Operation, configure the remaining parameters:
ParameterValue

Display Name

Find Employees

Extension Configuration

PeopleSoft (the reference name to the global element you have created).

Component Name

CI_PERSONAL_DATA (the component interface name that holds the employee data).

Operation

Find

The connector settings should look like: ![Find operation properties window configuration](/mulesoft/current/en-us/peoplesoft-connector/latest/_images/peoplesoft-use-case-settings.png) 6. Add a Transform Message (Core) element between the HTTP endpoint and the PeopleSoft endpoint to provide the input parameters required by the FIND method. The input fields should be automatically populated: ![DataWeave input](/mulesoft/current/en-us/peoplesoft-connector/latest/_images/peoplesoft-use-case-dw.png) Inside the Transform Message, associate fields with queryParamas. This way, each value can be dynamically set from the URL. ```dataweave %dw 2.0 output application/json --- { KEYPROP_EMPLID: attributes.queryParams.id, PROP_NAME: attributes.queryParams.name, PROP_LAST_NAME_SRCH: attributes.queryParams.lastname, PROP_NAME_AC: attributes.queryParams.nameac } ``` 7. Add other Transform Message after the PeopleSoft element to display the response in the browser: ```dataweave %dw 2.0 output application/json --- payload ``` 8. Add a Logger scope after the JSON transformer to print the data that is being passed to the PeopleSoft connector in the Mule Console. 9. Save and Run as Mule Application. Then, open a web browser and check the response after entering the URL `http://localhost:8081/find?id=0004&name=&last_name=&name_ac=`. If there are records in your PeopleSoft database whose KEYPROP\_EMPLID contains the value "MULE", you should get a JSON collection with those records. Otherwise, you receive an empty collection. ```json [ { "KEYPROP_EMPLID": "MULE0001", "PROP_NAME": "Muley", "PROP_LAST_NAME_SRCH": "The Mule", "PROP_NAME_AC": "" }, { "KEYPROP_EMPLID": "MULE0002", "PROP_NAME": "Second Muley", "PROP_LAST_NAME_SRCH": "The Backup Mule", "PROP_NAME_AC": "" }, ... ] ``` \+ In this example, all input parameters for the FIND operation are optional. If none of them defined (`http://localhost:8081/find?id=&name=&last_name=&name_ac=`), then PeopleSoft will retrieve the first 300 records available (the maximum limited by the server). ### Use Case: XML ```xml ``` ## See Also - Visit Oracle’s [PeopleSoft Component Interface API site](https://docs.oracle.com/en/applications/peoplesoft/peopletools/index.html) - [Salesforce Help](https://help.salesforce.com) --- product: Oracle PeopleSoft Connector version: 3.1 is-latest-version: true --- # Oracle PeopleSoft Connector 3.1 Reference > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Connector for Oracle PeopleSoft (PeopleSoft Connector) provides real-time connectivity to query and update all PeopleSoft modules, using a common integration interface known as the Component Interface. Release Notes: [Oracle PeopleSoft Connector Release Notes](https://docs.mulesoft.com/release-notes/connector/peoplesoft-connector-release-notes-mule-4) ## Default Configuration
FieldDescription

Name

The name for this configuration. Connectors reference the configuration with this name.

Type: String
Default: None
Required: Yes

Connection

The connection types that can be provided to this configuration.

Type: Connection
Default: None
Required: Yes

Enable Edit History Items

Type: Boolean
Default: false
Required: No

Enable Get History Items

Type: Boolean
Default: false
Required: No

Enable Interactive Mode

Type: Boolean
Default: false
Required: No

Date format for the conversion

Format the connector to convert DateTime values to the PeopleSoft format. By default, the connector uses MM/dd/yyyy K:mm:ssa where MM is the month, dd is the day, yyyy is the calendar year, K is the hour, mm is minutes, ss is seconds, and a is AM or PM . This format depends on the Peoplesoft instance.

Type: String
Default: MM/dd/yyyy K:mm:ssa
Required: No

Expiration Policy

Configures the minimum amount of time that a dynamic configuration instance can remain idle before the runtime considers it eligible for expiration. This does not mean that the platform expires the instance at the exact moment that it becomes eligible. The runtime purges the instances as needed.

Type: ExpirationPolicy
Default: false
Required: No

## Connection Type
FieldDescription

Application Server

Type: String
Default: None
Required: Yes

Username

Type: String
Default: None
Required: Yes

Password

Type: String
Default: None
Required: No

Domain Connection Password

Type: String
Default: None
Required: No

Component Interface List

Type: Array of String
Default: None
Required: Yes

Reconnection

When the app is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

Type: Reconnection
Default: None
Required: No

## Operations - [Invoke Operation](#invokeoperation) - [Update User Profile ID Type](#updateuserprofile) ## Invoke Operation `` Invokes a PeopleSoft operation depending on the type selected. DataSense discovers the structure of the entities in the system during design time and run time and uses the structure to perform the operation for the type selected. This varies for Find, Get, Create, and so on.
FieldDescription

Configuration

The name of the configuration to use.

Type: String
Default: None
Required: Yes

Content

A Map with the parameters to be used in the operation.

Type: Binary
Default: #[payload]
Required: No

Streaming Strategy

Configure if repeatable streams should be used and their behavior.

Type: One of:

Default: #[payload]
Required: No

Component Name

Type: String
Default: None
Required: Yes

Operation

Type: String
Default: None
Required: Yes

Target Variable

The name of a variable in which the operation’s output is placed.

Type: String
Default: None
Required: No

Target Value

An expression to evaluate against the operation’s output and the outcome of that expression is stored in the target variable.

Type: String
Default: #[payload]
Required: No

Reconnection Strategy

A retry strategy in case of connectivity errors.

Type: One of:

Default: None
Required: No

### Invoke Output

Type

Binary

#### For Configurations - Default Configuration #### Throws - PEOPLESOFT:CONNECTIVITY - PEOPLESOFT:INVALID\_COMPONENT\_INTERFACE - PEOPLESOFT:INVALID\_COMPONENT\_INTERFACE\_ID - PEOPLESOFT:INVALID\_OPERATION\_PARAMETER - PEOPLESOFT:MAPPING\_EXCEPTION - PEOPLESOFT:NO\_METADATA - PEOPLESOFT:REQUEST\_FAILED - PEOPLESOFT:RETRY\_EXHAUSTED - PEOPLESOFT:STRING\_TO\_DATE\_PARSE\_ERROR - PEOPLESOFT:UNKNOWN ## Update User Profile ID Type `` Changes the ID type of an USER\_PROFILE record and assigns it an attribute.
FieldDescription

Configuration

The name of the configuration to use.

Type: String
Default: None
Required: Yes

User Id

The UserID of the record to update.

Type: String
Default: None
Required: Yes

Id Types

The list of new ID Types to assign.

Type: Array of IDType Default: None
Required: Yes

### For Configurations - Default Configuration ### Throws - PEOPLESOFT:CONNECTIVITY - PEOPLESOFT:INVALID\_COMPONENT\_INTERFACE - PEOPLESOFT:INVALID\_COMPONENT\_INTERFACE\_ID - PEOPLESOFT:INVALID\_OPERATION\_PARAMETER - PEOPLESOFT:MAPPING\_EXCEPTION - PEOPLESOFT:NO\_METADATA - PEOPLESOFT:REQUEST\_FAILED - PEOPLESOFT:RETRY\_EXHAUSTED - PEOPLESOFT:STRING\_TO\_DATE\_PARSE\_ERROR - PEOPLESOFT:UNKNOWN ## Types ### Reconnection
FieldDescription

Fails Deployment

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

Type: Boolean
Default: None
Required: No

Reconnection Strategy

The reconnection strategy to use.

Type: One of:

Default: None
Required: No

### Reconnect
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often to reconnect (in milliseconds)

Count

Number

The number of reconnection attempts to make

blocking

Boolean

If false, the reconnection strategy runs in a separate, non-blocking thread

true

### Reconnect Forever
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often in milliseconds to reconnect

blocking

Boolean

If false, the reconnection strategy runs in a separate, non-blocking thread

true

### Expiration Policy
FieldDescription

Max Idle Time

A scalar time value for the maximum amount of time a dynamic configuration instance should be allowed to be idle before it’s considered eligible for expiration.

Type: Number
Default: None
Required: No

Time Unit

A time unit that qualifies the maxIdleTime attribute.

Possible values:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Type: Enumeration
Default: None
Required: No

### Repeatable In-Memory Stream
FieldDescription

Initial Buffer Size

This is the amount of memory to allocate to consume the stream and provide random access to it. If the stream contains more data than can be fit into this buffer, then the buffer expands according to the bufferSizeIncrement attribute, with an upper limit of maxInMemorySize.

Type: Number
Default: None
Required: No

Buffer Size Increment

This is by how much the buffer size expands if it exceeds its initial size. Setting a value of zero or lower means that the buffer should not expand, meaning that a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised when the buffer gets full.

Type: Number
Default: None
Required: No

Max Buffer Size

This is the maximum amount of memory to use. If more than that is used, then a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised. A value lower or equal to zero means no limit.

Type: Number
Default: None
Required: No

Buffer Unit

The unit in which maxInMemorySize is expressed.

Possible values:

  • BYTE

  • KB

  • MB

  • GB

Type: Enumeration
Default: None
Required: No

### Repeatable File Store Stream
FieldDescription

Max In Memory Size

Defines the maximum memory that the stream should use to keep data in memory. If more than that is consumed, it starts to buffer the content on disk.

Type: Number
Default: None
Required: No

Buffer Unit

The unit in which maxInMemorySize is expressed.

Possible values:

  • BYTE

  • KB

  • MB

  • GB

Type: Enumeration
Default: None
Required: No

## See Also [Salesforce Help](https://help.salesforce.com)