5.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.0x 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 5-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. |
|