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. For more information, see About Service Orchestration.

(missing or bad snippet)

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:

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

  1. 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.
  2. 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.
  3. 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.
  4. 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
  5. 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.