Sunteți pe pagina 1din 5

INTERVIEW PREPARATION

PeopleCode Events
1.Page Activate
Page activate is on whole page ,not on all the rows/recs
WHAT U CAN DO
-hide/unhide fields/scroll
-check the security for the user who is accessing the page
VALID FOR

This event is valid only for pages that are defined as standard or secondary. This event is
not supported for subpages.
2.FiledChange

Use FieldChange PeopleCode to recalculate page field values, change the appearance of
page controls, or perform other processing that results from a field change other than data
validation

3.FieldDefault

The page field is still blank after applying any default value specified in the record
field properties.
This is true if there is no default specified, if a null value is specified, or if a 0 is
specified for a numeric field.

The field has a FieldDefault PeopleCode program.

4.FieldEdit Event
Use FieldEdit PeopleCode to validate the contents of a field, supplementing standard
system edits. If the data does not pass the validation, the PeopleCode program should
display a message using the Error statement, which redisplays the page, displaying an error
message and turning the field red
5.FieldFormula Event

Only on fields now in libs


6.ItemSelected Event
The ItemSelected event is initiated whenever a user selects a menu item from a pop-up
menu. In pop-up menus, ItemSelected PeopleCode executes in the context of the page field
from where the pop-up menu is attached, which means that you can freely reference and
change page fields, just as you could from a button.
7.PostBuild Event
The PostBuild event is initiated after all the other component build events have been
initiated. This event is often used to hide or unhide pages. Its also used to set component
variables.
PostBuild PeopleCode is only associated with components.
8.PreBuild Event
The PreBuild event is initiated before the rest of the component build events. This event is
often used to hide or unhide pages. Its also used to set component variables.
Note. If a PreBuild PeopleCode program issues an error or warning, the user is returned to the
search page. If the search record has no keys, a blank component page appears.
Also use the PreBuild event to validate data entered in a search page after a prompt list is
displayed. For example, after a user selects key values on a search, the PreBuild
PeopleCode program runs, catches the error condition, and issues an error message. The
user receives and acknowledges the error message. The component is canceled (because of
the error), and the user is returned to the search page. PreBuild PeopleCode is only
associated with components.
9.PrePopup Event
The PrePopup event is initiated just before the display of a pop-up menu.
You can use PrePopup PeopleCode to control the appearance of the pop-up menu.
Note. This event, and all its associated PeopleCode, does not initiate if run from a
component interface.
PrePopup PeopleCode can be associated with record fields and component record fields.
10.RowDelete Event
The RowDelete event is initiated whenever a user attempts to delete a row of data from a
page scroll area. Use RowDelete PeopleCode to prevent the deletion of a row (using an
Error or Warning statement) or to perform any other processing contingent on row
deletion. For example, you could have a page field called Total on scroll area level zero
whose value is the sum of all the Extension page fields on scroll area level one. If the user
deleted a row on scroll area level one, you could use RowDelete PeopleCode to recalculate
the value of the Total field.

11.ROWInit Event
The RowInit event is initiated the first time that the Component Processor encounters a
row of data. IUse it to set the initial state of component controls. This occurs during
component build processing and row insert processing. It also occurs after a Select or
SelectAll Rowset method, or a ScrollSelect or related function, is executed.
No initializations 2 b done here.
12.RowInsert Event
When a user adds a row of data, the Component Processor generates a RowInsert event.
You should use RowInsert PeopleCode for processing specific to the insertion of new rows.
Do not put PeopleCode in RowInsert that already exists in RowInit, because a RowInit
event always initiates after the RowInsert event, which will cause your code to be run twice.
13.RowSelect Event
The RowSelect event is initiated at the beginning of the component build process in any of
the update action modes (Update, Update/Display All, Correction). RowSelect PeopleCode
is used to filter out rows of data as they are being read into the component buffer. This
event also occurs after a ScrollSelect or related function is executed
14.SaveEdit Event
The SaveEdit event is intiated whenever a user attempts to save the component. You can
use SaveEdit PeopleCode to validate the consistency of data in component fields. Whenever
a validation involves more than one component field, you should use SaveEdit PeopleCode.
If a validation involves only one page field, use FieldEdit PeopleCode.
SaveEdit is not field-specific: it triggers associated PeopleCode on every row of data in the
component buffers, except rows flagged as deleted.
An Error statement in SaveEdit PeopleCode displays a message and redisplays the
component without saving data. A Warning statement enables the user to click OK and
save the data, or to click Cancel and return to the component without saving.
Use the SetCursorPos function to set the cursor position to a specific page field following a
warning or error in SaveEdit, to show the user the field (or at least one of the fields) that is
causing the problem. Make sure to call SetCursorPos before the error or warning, because
these may terminate the PeopleCode program.
SaveEdit PeopleCode can be associated with record fields and components.
15.SavePostChange Event
After the Component Processor updates the database, it initiates the SavePostChange
event. You can use SavePostChange PeopleCode to update tables not in your component
using the SQLExec built-in function.
An error or warning in SavePostChange PeopleCode causes a runtime error. Avoid errors
and warnings in this event.
The system issues a SQL Commit statement after SavePostChange PeopleCode completes
successfully.
If you are executing Workflow PeopleCode, keep in mind that if the Workflow PeopleCode

fails, SavePostChange PeopleCode is not executed. If your component has both Workflow
and SavePostChange PeopleCode, consider moving the SavePostChange PeopleCode to
SavePreChange or Workflow.
If you are doing messaging, your Publish PeopleCode should go into this event.
SavePostChange does not execute if there is an error during the save. For example, if there
is a data conflict error because another user updated the same data at the same time,
SavePostChange does not execute.
Important! Never issue a SQL Commit or Rollback statement manually from within a
SQLExec function. Let the Component Processor issue these SQL commands.
SavePostChange PeopleCode can be associated with record fields, components, and
component records.

16.SavePreChange Event
The SavePreChange event is initiated after SaveEdit completes without errors.
SavePreChange PeopleCode provides one final opportunity to manipulate data before the
system updates the database; for instance, you could use SavePreChange PeopleCode to set
sequential high-level keys. If SavePreChange runs successfully, a Workflow event is
generated, and then the Component Processor issues appropriate Insert, Update, or Delete
SQL statements.
SavePreChange PeopleCode is not field-specific: it triggers PeopleCode on all fields and on
all rows of data in the component buffer.
SavePreChange PeopleCode can be associated with record fields, components, and
component records.
17.SearchInit Event
The SearchInit event is generated just before a search, add, or data-entry dialog box is
displayed. SearchInit triggers associated PeopleCode in the search key fields of the search
record. This enables you to control processing before a user enters values for search keys in
the dialog box. In some cases, you may want to set the value of the search dialog fields
programmatically. For example, the following program in SearchInit PeopleCode on the
component search key record field EMPLID sets the search key page field to the users
employee ID, makes the page field unavailable for entry, and enables the user to modify the
users own data in the component:
EMPLID = %EmployeeId;
Gray (EMPLID);
AllowEmplIdChg(true);
You can activate system defaults and system edits in the search page by calling
SetSeachDefault and SetSearchEdit in SearchInit PeopleCode. You can also control the
behavior of the search page, either forcing it to appear even if all the required keys have

been provided, or by skipping it if possible, with the SetSeachDialogBehavior function. You


can also force search processing to always occur by selecting the Force Search Processing
check box in the component properties in PeopleSoft Application Designer.

SearchInit PeopleCode Function Restrictions


You can't use the following functions in SearchInit PeopleCode:

DoModal

DoModalComponent

Transfer

TransferPage

18.SearchSave Event
SearchSave PeopleCode is executed for all search key fields on a search, add, or data-entry
dialog box after a user clicks Search. This enables you to control processing after search
key values are entered, but before the search based on these keys is executed. A typical use
of this feature is to provide cross-field edits for selecting a minimum set of key information.
This event is also used to force a user to enter a value in at least one field, even if its a
partial value, to help narrow a search for tables with many rows.
Note. SearchSave is not initiated when values are selected from the search list. To validate
data entered in the search page, use the Component PreBuild event.
You can use Error and Warning statements in SearchSave PeopleCode to send the user
back to the search page if the user entry does not pass validations implemented in the
PeopleCode.
Note. This event, and all its associated PeopleCode, is not initiated if run from a component
interface.
SearchSave PeopleCode can be associated with record fields and component search
records.

S-ar putea să vă placă și