4.1 Customizing the PSA by Triggering Transactions
Transaction record creation is triggered by PeopleCode associated with modifications and additions to data on the Schema Data record (DIRXML_S_PERS) and row Delete events on the Staging record (DIRXML_SCHEMA01). If desired, the PeopleSoft administrator or consultant can use these examples to trigger transactions based on other events within the PeopleSoft application.
NOTE:The D Event Type operation has been redefined for the 5.0
x PeopleSoft Service Agent (PSA). The D Event Type is now generated for application object Delete events instead of object Disable events. All Modification events now generate M (Modify) transaction events.
The default Transaction creation function is defined on the DIRXML_DRIVER field of the DIRXML_DERIVED Record definition:
A PeopleCode function call would be as follows:
DirXML_Trans( Transaction Table Name,
Transaction Channel Type,
Schema CI Name,
Event Type,
Schema Record Key Value,
Transaction Date and Time,
Transaction Miscellaneous Info,
Collection Row Delete Field Name,
Collection Row Delete Field Key Value,
Transaction Status);
An example of sample Modification event transaction from the PSA looks like this:
DirXML_Trans(“DIRXML_TRANS01”,
&channel,
“DIRXML_SCHEMA01”,
“A”,
DIRXML_S_PERS.DIRXML_S_ID,
%DateTime,
&tValue,
“”,
“”,
“A”);
Table 4-1 Function Call Parameter Definitions
Transaction Table |
The name of the table where transactions are written. This table is built within PeopleTools and the field elements should be consistent with the delivered DIRXML_TRANS01 table. |
DIRXML_TRANS01 |
Transaction Channel Type |
The name used to identify the driver that processes the transactions and the channel that created the transactions. |
NPSDriver1S transaction was caused by a Subscriber channel event and is processed by driver NPSDriver1. NPSDriver1P transaction was caused by a Publisher channel event and is processed by driver NPSDriver1. |
Schema CI Name |
The name of the Schema CI object that the transaction type is connected to. The driver uses the name of this object to query for the data connected to the transaction type. |
DIRXML_SCHEMA01 |
Event Type |
The type of XML event that is written to the transaction table. This can be 1 of 4 values as listed. |
A=ADD
M=MODIFY
D=DELETE
R=ROW DELETE |
Schema Record Key Value |
The identifier that is used to associate a particular record within PeopleSoft to an eDirectory™ object. It could be the EMPLID value for employees, STUDENTID value for students, DEPTID for departments, ACCTID for account codes, and so forth. Key elements must be identified for the Transaction Schema. |
ASSOC_ID |
Transaction Date Time |
The date/time element used to determine when the transaction is processed. |
%Datetime |
Transaction Miscellaneous Info |
The parameter contains 1...n values that the developer wants to pass to the driver during processing. This value might not be available via the Schema object when a transaction is processed by the driver. |
ASSOC_ID | "|” | LAST_NAME |
Collection Row Delete Field Name |
The field name of the scroll level attribute in the application record. |
DIRXML_S_PHONES |
Collection Row Delete Field Key |
The key field value of the deleted data row (CELL, PGR, BUSN). |
|
Transaction Status |
The initial processing status of the transaction. Generally this value is set to A for Available. For Subscriber delete events, it is not desirable for the driver to process the transaction event. Therefore, delete event transactions generated by the default PSA are assigned a status of S for Success. |
|