AE and PeopleSoft
Automic Automation provides an advanced integrated automation solution that enhances the value of the Oracle PeopleSoft Process Scheduler, ensuring batch application integration, data integration and application scheduling are addressed efficiently and best practices incorporated. This topic provides an overview of how to set up and test the connection between your Automic Automation system and the PeopleSoft product components, how to include bind variables by using AE script elements for PeopleSoft, and how to use Run Controls, single database records in the PeopleSoft database.
Note: This integration capability, like all integrations of the Automic system, can support service orchestration workflows. Such workflows orchestrate automated processes that run across multiple platforms, domains, and applications to deliver a specific IT service.
Setting up the PeopleSoft Agent
Installing the PeopleSoft Agent is a prerequisite to establish the communication between the two systems. You can install the Agent either while installing the Automation Engine or later on using the Automic Web Interface.
Important! Before installing the PeopleSoft Agent, check the version compatibility information at (missing or bad snippet). For information about how to use the compatibility matrix, see Compatibility Information.
More information:
- Agents (HOST)
- Installing the Agent for PeopleSoft (Windows)
- PeopleSoft Agent - Installation Process (Windows)
- Adding and Configuring Agents
Testing the PeopleSoft Connection
To test the connection to the PeopleTools Application Server, you can use the pscitester program. Pscitester is a PeopleSoft sample program that is supplied as a Java source. It is available in %PS_HOME%/sdk/PSCOMPINTFC/src/java/samples. You can use this sample program to test whether PeopleSoft is accessible through the Java Object Adapter.
Steps
Install the Java SDK
- On the Host
- Install the Java SDK on a work station which can also be a different one from the PeopleSoft server.
Adjust the PATH Variable
- Add the bin directory <SDK_HOME>\bin to the PATH environment variable. Enter javac in the MS DOS prompt or the terminal to test if the installation was completed successfully. Javac is output.
Generate the Java Sources
- Select a Component Interface in the Application
Designer and click Build -> PeopleSoft APIs. The Java classes that should
be build can be selected now:
CompIntfc.USER_PROFILE
CompIntfc.USER_PROFILE_IDTypes
CompIntfc.USER_PROFILE_IDTypesCollection
CompIntfc.USER_PROFILE_Roles
CompIntfc.USER_PROFILE_RolesCollection
CompIntfc.USER_PROFILE_Roles_RouteControls
CompIntfc.USER_PROFILE_Roles_RouteControlsCollection
CompIntfc.USER_PROFILE_Attributes
CompIntfc.USER_PROFILE_AttributesCollection
CompIntfc.USER_PROFILE_SYNC
CompIntfc.USER_PROFILE_SYNCCollection
CompIntfc.USER_PROFILE_Collection
CompIntfc.CompIntfcPropertyInfo
CompIntfc.CompIntfcPropertyInfoCollection - Deactivate the checkbox for COM Type Library generation and select a folder in the field Java classes in which the files can be generated. The Java files are generated in a selectable directory in PeopleSoft/Generated/CompIntfc.
- Select a Component Interface in the Application
Designer and click Build -> PeopleSoft APIs. The Java classes that should
be build can be selected now:
Create the *.class Files
- Create a folder and copy the file psjoa.jar, the
directory pscitester and the directory PeopleSoft to it. The PeopleSoft
directory was specified while you created the Java classes. The directory
is structured as follows:
./psjoa.jar
./pscitester/pscitester.java
./PeopleSoft/Generated/CompIntfc/CompIntfcPropertyInfo.java
./PeopleSoft/Generated/CompIntfc/CompIntfcPropertyInfoCollection.java
./PeopleSoft/Generated/CompIntfc/ICompIntfcPropertyInfo.java
./PeopleSoft/Generated/CompIntfc/ICompIntfcPropertyInfoCollection.java
./PeopleSoft/Generated/CompIntfc/IUserProfile.java
./PeopleSoft/Generated/CompIntfc/IUserProfileIdtypes.java
./PeopleSoft/Generated/CompIntfc/IUserProfileIdtypesAttributes.java
./PeopleSoft/Generated/CompIntfc/IUserProfileIdtypesAttributesCollection.java
./PeopleSoft/Generated/CompIntfc/IUserProfileIdtypesCollection.java
./PeopleSoft/Generated/CompIntfc/IUserProfileRoles.java
./PeopleSoft/Generated/CompIntfc/IUserProfileRolesCollection.java
./PeopleSoft/Generated/CompIntfc/UserProfile.java
./PeopleSoft/Generated/CompIntfc/UserProfileIdtypes.java
./PeopleSoft/Generated/CompIntfc/UserProfileIdtypesAttributes.java
./PeopleSoft/Generated/CompIntfc/UserProfileIdtypesAttributesCollection.java
./PeopleSoft/Generated/CompIntfc/UserProfileIdtypesCollection.java
./PeopleSoft/Generated/CompIntfc/UserProfileRoles.java
./PeopleSoft/Generated/CompIntfc/UserProfileRolesCollection.java
./PeopleSoft/Generated/CompIntfc/IUserProfileRolesRoutecontrols.java
./PeopleSoft/Generated/CompIntfc/IUserProfileRolesRoutecontrolsCollection.java
./PeopleSoft/Generated/CompIntfc/UserProfileRolesRoutecontrols.java
./PeopleSoft/Generated/CompIntfc/UserProfileRolesRoutecontrolsCollection.java
./PeopleSoft/Generated/CompIntfc/IUserProfileCollection.java
./PeopleSoft/Generated/CompIntfc/UserProfileCollection.java
./PeopleSoft/Generated/CompIntfc/UserProfileSync.java
./PeopleSoft/Generated/CompIntfc/UserProfileSyncCollection.java - Change to this directory by using the MS DOS prompt
or the terminal and set the CLASSPATH:
For Windows: set CLASSPATH=.;psjoa.jar
For Unix: export CLASSPATH=psjoa.jar:. - Transmit the example with:
javac pscitester/pscitester.java
- Create a folder and copy the file psjoa.jar, the
directory pscitester and the directory PeopleSoft to it. The PeopleSoft
directory was specified while you created the Java classes. The directory
is structured as follows:
Start the Pscitester Program
- You require a running Application Server to which the program can connect.
- Enter the JOLT port in the test program. It is available in the file %PS_HOME%\APPSERV\<APPSERVERNAME>\psappsrv.cfg under [JOLT Listener].
- Start the program:
java pscitester.pscitester
Ignore the following error message:
java.lang.NullPointerException: PSProperties not loaded from file.
If this message should not be displayed, copy the file pstools.properties from the PeopleSoft server to the current directory.
- The following output displays if all entries were made correctly:
Application Server Connect Information...
Enter The Application Server Name: wgw2ksps2
Enter The Application Server Port Number[ 9000]:
Enter PeopleSoft UserID [PTDMO]: PS
Enter PeopleSoft UserID Password: [PTDMO]: ********
Connected to Appserver...
Get on Component Interface "USER_PROFILE" succeeded
Listing Component Interface property for field "UserID"
Long Label: User ID
Short Label: User
Is Collection: false
Type: 0
Format: 6
Is Key: true
Is Required: false
Is Xlat: false
Is YesNo: false
Is Prompt: false
Using Bind Variables
PeopleSoft processes can include bind variables. You can use the AE to schedule these processes and assign values to them.
Important!
- The PeopleTools database must be configured for this purpose.
- Extensive testing is highly recommended for jobs that replace values for bind variables before they are used in the production system. These values have a particular format (such as the date format) that must be kept.
The following script functions interact with each other. Use these functions in the following way:
- PS_SET_BINDVAR replaces a value that you can either predetermine in AE script or retrieve by using a Run Control ID.
- Subsequently, call the script function PS_RUN_PROCESS to start and monitor a process. In doing so, bind variable values are considered.
Changes in Run Controls
Most processes require parameters such as periods for their execution. You can store this information once in Run Controls (RUN_CONTROL_RECORDS), and the relevant processes retrieve their execution parameters from the corresponding Run Control.
Usually, a Run Control is a single database record in the PeopleSoft database. However, it can also comprise several data records. The system identifies a Run-Control as unique through the keywords OPRID (User ID) and RUN_CNTRL_ID.
Examples
Automic Automation provides the PS_MODIFY_RUNCONTROL script function, which you can use to modify Run Controls. The modification refers to an individual data record in such a case. If you want to maintain several data records of Run Controls, use PS_MODIFY_RUNCONTROL for each change. The AE procedure differs from online maintenance in PeopleSoft.
Example 1
A user wants to process the SQR report Employee Turnover Analysis, creating the Run Control myRunControl. After adding the Run Control, the parameter fields required for the report are entered and stored. The relevant fields are FROM_DATE and THRU_DATE.
Automic Automation can automate this change by retrieving the user ID from the PeopleSoft job's Login object.
PS_MODIFY_RUNCONTROL RUNCONTROLID='myRunControl',RECORDNAME='RUN_CNTL_HR',FIELDNAME='FROM_DATE',FIELDVALUE='20050306'
PS_MODIFY_RUNCONTROL RUNCONTROLID='myRunControl',RECORDNAME='RUN_CNTL_HR',FIELDNAME='THRU_DATE',FIELDVALUE='20060306'
Example 2
The following example shows a Run Control for currency conversion. In this case, fields and values are provided in list form (currency list).
To change currency values, you must assign a key when calling PS_MODIFY_RUNCONTROL:
PS_MODIFY_RUNCONTROL RUNCONTROLID='myRunControl',RECORDNAME='RUN_CNTL_CC2_EO',FIELDNAME='RATE_MULT',FIELDVALUE='100',KEYNAME(1)='CURRENCY_CD',KEYVALUE(1)='EUR'
The data of the currency list is provided in level 1. Therefore, indicate the number 1 in the KEYNAME(1)= and KEYVALUE(1)= parameters.
Risks and Limitations
Keep the following recommendations in mind when changing Run Controls:
- Assigned values are only occasionally checked. Therefore, wrong values can exist in the PeopleSoft database and cause one or several components to no longer work online. You can only remove this error by using SQL commands.
- Although no inconsistency will arise in the data model, the database can include values that are not recordable online. PeopleCode prohibits the collection of a running date from the previous year, for example. Use the PS_MODIFY_RUNCONTROL script function to enter this kind of data.
- PS_MODIFY_RUNCONTROL does not create new Run Controls because the relevant database table fields are filled by PeopleCode and can depend on each other. Neither the AE nor the PeopleCode interfaces for AE recognize this dependency.
- Dependencies between the fields of a Run Control are not considered; they can lead to malfunctions in the PeopleSoft application.
- Run Controls can write more than one data record. For example, the RUN_CNTL_CC_EO (Currency Conversion) component writes to the PS_RUN_CNTL_CC1_EO and PS_RUN_CNTL_CC2_EO tables. Users are responsible for filling the data records with the correct names.