Complete the following tasks to install the sample project for testing and configuration purposes:
If you did not install the PSA during the initial driver installation, locate the product CD or download, go to the PeopleSoft application server, and run install.exe. You should see the following PSA files on your target server:
DIRXML_PSA50_TOOLS81.exe
DIRXML_PSA50_TOOLS84.exe
These files are self-extracting zip files that contain the PSA project folder and files for the respective 8.1 x and 8.4 x versions of PeopleTools. Extract the appropriate file onto the file system of your PeopleSoft Application Designer host ( c:\psa). Use the DIRXML_PSA50_TOOLS81.EXE file for 8.2 x PeopleTools deployments.
To ensure that the PSA can be imported into the PeopleSoft Application server, make sure that the PSA files have write access enabled. For example, in Windows*, you should turn off read-only file properties.
After the PSA files have been installed in an accessible file system location, they must be imported into the PeopleSoft Database via the PeopleSoft Application Designer tool.
Connect to the PeopleSoft database as administrator in two tier mode.
In the Application Designer, select
.Click c:\psa\psa-psa8.
, then select the PSA project directory:Click
.With all object types selected, click
to copy all project components into the PeopleSoft database.Connect to the PeopleSoft database as administrator in two tier mode.
In the Application Designer, select
.Click c:\psa\DIRXML_PSA50_TOOLS84.
and select the PSA project directory:Click
.With all object types selected, click
to copy all project components into the PeopleSoft database.After you have imported the project into the PeopleSoft database, you should build project record definitions and project views.
Log in to PeopleSoft Application Designer using an administrator username that has administrative and development rights.
In the Application Designer, select
.From Build Options, click
. After project tables are created, click to close the Build Progress window.Click
to create sample project tables.You must create project tables before creating the views. Views are created using information from table fields.
In the Application Designer, select
.In Build Options, click
.Click
to create the sample project views. After views are created, click to close the Build Progress window.In order for the driver to access PeopleSoft transaction tables, you need to apply security to the PSA. You accomplish this by creating the DirXML Administrator role and then assigning it to the administrative user. You can assign the role to an existing account or create a new account specifically for PSA security.
In the Application Designer, click
.Click
.In the Add Role field, type DirXML Administration, then click .
In the Description field, type DirXML Administration.
Click the Permission Lists tab, then click the drop-down arrow.
For the Permission List value, type DirXML, then click .
The Description field populates automatically.
Click Save.
Click
.Type your administrative user username as the User ID, then click
.Click the
tab, then click in the last row to add data.Add the
role to this user, then click Save.Close and restart the PeopleSoft clients and applications.
Log in to the PeopleSoft portal.
Click
.Click
, then specify a role name (for example, ).Type a description for the role.
(Optional) Type a long description for the role.
Click the
tab.Search for and select the DirXML® permissions list, then click
.Assign
role to your administrative user by clicking .Click Search to locate the User Profile that you want to add the DirXML Administrator role to, then click the
.Click the
tab, then click one of the “+” buttons to add a new role.Search and select the role, click
to add it, then click Save.The PSA Sample project is intended to provide recommended PeopleSoft integration scenarios through the use of very comprehensive direction and examples. The various elements of the PSA are completely independent of any existing PeopleSoft application software, so there is no risk of data table corruption, extension, or modification.
The objects of the PSA include:
Field definitions
Record definitions
Page definitions
Component definitions
Component Interface definitions
Menu definitions
SQL code
All of these objects are named with a prefix of DIRXML_ so that they cannot be confused with existing objects.
This application is intended to simulate the data and functions of an HR or other type of Person provisioning application. The base Record definitions for the application are:
DIRXML_S_PERS: Provides basic HR field data
DIRXML_S_DEPT: Sample Department codes table
DIRXML_S_PHONES: Phone Numbers table
The data is accessed using the DIRXML_ADMINISTRATOR menu options. The menu provides access to a
component and a component. These applications simulate the standard methods for adding and updating Department and Person data into the PeopleSoft database. The driver default configuration does not directly access any of these tables or components. Additionally, the data provided by this application is not passed directly to the driver from these components. The actual transfer of data takes place through staging table components.The staging table interface is designed to insulate the PeopleSoft Application data from direct manipulation by the driver. This allows an interface to be designed to:
Combine access to the data from multiple data tables and applications through a single interface.
Prevent the driver from viewing or modifying sensitive application data.
Provide storage for external data that does not easily fit into standard PeopleSoft applications.
The Record definition that represents all of the data that can be published or subscribed by the driver is called DIRXML_STAGE01. This record aggregates most of the data fields from the three Application data records into a single access point. There are also additional fields not in the Application records that are used to contain references to the synchronized eDirectory objects.
For PeopleSoft users, the data in the staging table can be accessed via the
component of the DIRXML_ADMINISTRATOR menu. The driver accesses the data via the DIRXML_SCHEMA01 Component Interface.Every time a modification is made to the Application Data Records, transaction records are placed in the DIRXML_TRANS01 table. The PSA places identifiers indicating the key of the data row being modified, the time of the event, the type of event, and various other pieces of transaction related data. Any change made to a data row via the DIRXML_ADMINISTRATOR application interfaces is recorded with an NPSDriver1P identifier that shows the data is being published by a PeopleSoft administrator. Changes made via the Component Interface API are recorded with an NPSDriver1S identifier that shows the data was subscribed into the application tables programmatically.
In addition to providing an audit trail of database modifications, the transaction table is utilized by the driver to facilitate Publisher channel activities. The driver polls the transaction table for records in the Available state, reads the related application data record, and processes the data through the Publisher channel. The transaction records are then updated with the processing status.
In addition to the transaction tables and interfaces, the PSA includes utilities to monitor, maintain, archive, and remove transaction records.
Data moves between the various PeopleSoft Components and tables through PeopleCode. Each of the application data records in the PSA contains PeopleCode that performs the basic functions of moving data between the Staging table and Application tables, ensuring the integrity of the data and data transfers, and generating Transaction table records at the appropriate time and with the appropriate data. PeopleCode is very powerful and is capable of performing a wide variety of tasks, some of which are potentially destructive to your data.
IMPORTANT:Only personnel who have completed PeopleTools and PeopleCode training should modify the elements of the PSA.
These guidelines might prove helpful when implementing changes to the PSA.
Whenever possible, always provide a Component Interface to affected data tables. In the PSA, the DIRXML_S_PERS data rows are created and updated with PeopleCode via the DIRXML_TST_PERS Component Interface. The Component Interface guarantees the integrity of the data as defined by the designer of the application. It ensures valid Translate values, proper data format, required fields are present. Most importantly, the Component Interface can restrict the data fields that can be accessed on a particular record or record set. This is a very important aspect of data security.
The DIRXML_SCHEMA01 Component Interface has been extended with a Delete method that enables removal of data schema records via the driver’s Subscriber channel. Use of this functionality is not required. The method can be removed from the CI or the driver can be configured to not use it.
Make sure that the staging table record contains the same required fields that exist on the target Application records. This helps ensure successful record data synchronization.
It is important to generate transactions whenever the application data table records are created or updated, even if the changes are made by the driver. Although data loopback can occur, the generation process ensures that Translate table values and related field values generated by the changes are properly synchronized.
If you are using SQLExec() statements to update tables or create records, use great care to ensure that you are not violating the logic and rules of the applications overlying the tables. SQL is the easiest and most powerful, and therefore most destructive, method for updating data.
Do not generate Transaction records until after you have successfully updated the application tables.
If desired, it is possible to completely bypass the staging table interface in your synchronization scenario. The driver can be directed to interact with any Component Interface. Make sure that the PeopleCode generating the transaction records is updated to specify the new Application data CI and is triggered appropriately. Also ensure that the same CI methods are implemented and enabled.
The driver is delivered with a Java archive (JAR) file that contains the compiled Java interfaces for all of the Component Interfaces defined in the PSA. If the driver is to be configured to use different application CIs, it is necessary to build and JAR those interfaces. For more information, refer to Section 3.0, Installing and Configuring the Driver.
Test everything thoroughly.
You can test to ensure that transactions are created by entering a new person using the PeopleSoft Identity Manager sample application. This example uses Departments, so you need to create a sample department and then add a person (assigning him or her to that department) to validate that the application works. The following information explains how to test your sample applications.
In the Application Designer, select
.In the DirXML Administrator menu, select
.Click an empty Department field row to add sample department and description values.
Click
to add the Department.From the DirXML Administrator menu, select
.Type data into the various fields for the new person, then click
.Asterisks represent required fields.
Verify that an
transaction was created by selecting .Click the
button.Verify that the transaction was created and select the transaction.
Click
.Verify the Schema data on the first tab (
).Verify that you can update the fields on the second tab (
).Click
and verify that you can view the data.Click
and verify that you can view the sequence of transactions.Verify that other Transaction table applications work by clicking
( , , etc.), and .You can create additional transaction tables (Transaction 05, Transaction 06, and so forth.) The delivered sample application is configured to use only
.Log in to the PeopleSoft portal.
Click
from the left menu.If the
menu doesn’t appear, you should delete the Application Server cache and reboot the Application Server.Click
.Specify a sample department, then click
.Click
.Enter values for a sample user, then click
and verify that the user's data appears in the Transaction01 table. You do this by searching in the DirXML Transaction01 application.Verify that other delivered applications work by selecting them from the
menu.