1. Define
PeopleCode?
PeopleCode is an object oriented proprietary (case-insensitive) language
used to express business logic for PeopleSoft applications.
2. Where can you write the PeopleCode? 1. Record field level 2. Page people code 3. Component level people code 4. Component record people code 5. Component record field people code 6. Menu item people code 7. Application engine people code
8. Component interface people code 9. Messaging people code 10. Application package people code
3. Where people codes get stored? Database server (PSPCMPROG) table
objectvalue1 – table name objectvalue2 – field name objectvalue3 – event name
4. Order of people code events firing?
1. Searchinit
2. Searchsave
3. Rowselect
4. Prebuild
5. Field Default
6. Field Formula
7. RowInit
8. PostBuild
9. Activate
10. FieldEdit
11. FieldChange (PrePopup,
ItemSelected)
12. RowInsert
13. RowDelete
14. SaveEdit
15. SavePreChange.
16. WorkFlow
17. SavePostChnage.
5. When workflow even fires?
After the save pre change work flow event get fired.
6. What are
the types of data types are available in PC? Give me some ex for each? Two
types 1. Conventional
data type (Any, Boolean, float, integer, object, string, time, date, number)
2.Object data type (record, rowset)
7. What are
the comments available in PC? REM can
be used to comment a single line, but it will be processed by
the component processor
Single
and multiple lines commenting:
/*
PeopleCode Statements
------ ------ ------ ----
*/
Nested Comments:
<*
/* PC Statements..... ..... ..... */
/* ...... Some info on code ...... */
/* More comments */
*>
8. Variable
types available in PC? Two
types of variables 1) user defined variable prefixed with
‘&’ 2) system defined variable
prefixed with ‘%’
9. What is
the component processor? Component
processor is a runtime engine that controls processing of an application from
the time user request the component from the menu till the database is updated
and processing of component is completed.
10. Explain about the component buffer and data
buffer?
In short Component Buffer contains
all the Data of active component. The data buffer is used to store data added
from sources other than the component, such as from a PeopleSoft Application
Engine program, an application message, and so on. PeopleTools 8 provides an alternative to the scroll level,
row, and field components in the form of the data buffer classes Rowset, Row,
Record, and Field, which you reference using dot notation with object methods
and properties.
11.
Difference between SQLExec and CreateSql?
SQLExec
can only select a single row of data. If your SQL statement retrieves more than
one row of data SQLExec sends only the first row to its output variables. Any
subsequent rows are discarded. If
you need to SELECT multiple rows of data use the CreateSQL or GetSQL functions
and the Fetch SQL class method.
12. What is the getsql function in PC? Use the GetSQL function to
instantiate a SQL object and associates it with the SQL definition specified by
sqlname. The SQL definition must already exist, either created using PeopleSoft
Application Designer or the StoreSQL function. Processing of the SQL definition
is the same as for a SQL statement created by the CreateSQL function. Syntax: GetSQL (SQL.sqlname [, paramlist]);
13. Transfer () with syntax? Use
the Transfer function to close the current page and transfers the end-user to
another page, either within the current component or in another component.
Transfer can either start a new instance of the application and transfer to the
new page there, or close the old page and transfer to the new one in the same
instance of PeopleTools Transfer(new_instance,
MENUNAME.menuname,BARNAME.barname, ITEMNAME.menu_itemname,
PAGE.component_item_name,action [, keylist] [,AutoSearch]);
Example:
Transfer (false, MenuName."CREATE_PROJECTS", BarName."USE",
ItemName."PROJECT_SUMMARY", Page."PC_PROJSUMMARY_PNL", "U", BUSINESS_UNIT, PROJECT_ID);
Transfer (false, MenuName."CREATE_PROJECTS", BarName."USE",
ItemName."PROJECT_SUMMARY", Page."PC_PROJSUMMARY_PNL", "U", BUSINESS_UNIT, PROJECT_ID);
14.
Transferpage () with syntax ? Use
the TransferPage function to transfer control to the page indicated by PAGE.
page__namename within, or to the page set with the SetNextPage function.
The page that you transfer to must be in the current component or
menu. TransferPage([PAGE.page_name_name])
15. Explain
about ACTIVE event? The Activate event get fired each
page gets activated. Active PeopleCode can only be associated with pages. The
event is used for security validations such as field enabling and hiding a
scroll, enabling user to programmatically control the display of that page
controls. This event is used for component build processing in add mode and
update mode.
16. Define about Funclib()
FUNCLIB is a reusable function stored
in derived/work record field event. So, first create a new record and set the
record type to Derived/Work. FUNCLIB records do not hold data, so they do not
need to exist at the database
Level. Add the field ATTACHADD to
this record and save the record as APT_ATTACH_FUNC. PeopleSoft recommends
placing FUNCLIB PeopleCode in the FieldFormula event.
17. What is deferred
processing? Deferred processing is used speed
up the data-entry process. This means that the system does not
validate the data for each field as you Tab through a page. You can enter
in all the data for your page without unnecessary trips to the server for data
validation. Entered data is validated when:
- You navigate to another page in the component
- Click the Save button
- Click the Refresh button (access key: Alt+0)
If there are any errors in your data, you are notified at
this time.
Field Edit event will not fire until we press the SAVE button if the deferred processing is ON.
You can select Deferred Processing mode at the following levels:
Field Edit event will not fire until we press the SAVE button if the deferred processing is ON.
You can select Deferred Processing mode at the following levels:
- Page control
- Grid
- Page (include subpage and secondary page)
- Component levels
Want to get field value
into people code which is at level 2. GetLevel0
()(1).GetRowset(Scroll.level 1recordname).GetRow(CurrentRowNumber()).record.fieldname
The
default method for the Rowset class is GetRow. This means you can specify just
a row number, and not use the GetRow method. For example, the following two
lines of code are equivalent &MyRow = GetRowset()(5); or
&MyRow = GetRowset().GetRow(5)
19. Order of
events PC events firing in deferred processing? SaveEdit àSavePreChange
àworkflow àSavePostChange
this is similar to Interactive Processing where as in this Field Change,
Field Edit Peoplecode events & System edits will be differed until we press
the Save Button.
20. Difference between saveprechange and savepostchange? In Save Prechange we can get the
data from Component Buffer for that particular Component where as in SavePost
change Component Buffer is cleared we have to get data from Database and this
is used to update values outside the database.
21.
Difference between saveedit and fieldedit? Fieldedit event is
fired every time for each row when field is edited where as saveedit is fired
only once when a user click on save button
22. Expalin about fieldformula?
The FieldFormula event is not currently used. Because
FieldFormula PeopleCode initiates in many different contexts and triggers
PeopleCode on every field on every row in the component buffer, it can
seriously degrade application performance. Use RowInit and FieldChange events
rather than FieldFormula.
If a field value is changed, whether
through PeopleCode or by a user, the IsChanged property for the row is usually
set to True. However, if a value is set in FieldDefault or FieldFormula, the
row is not marked as changed. At save time, all newly inserted and changed rows
are written to the database. All newly inserted but not changed rows are not
written to the database.
As a matter of convention,
FieldFormula is now often used in FUNCLIB_ (function library) record
definitions to store shared functions. However, you can store shared functions
in any PeopleCode event. FieldFormula PeopleCode is only associated with record
fields.
23. Difference between prebuild and postbuild? :
PreBuild fires before any PeopleCode events on all the rows and fields in the
component such as FieldDefault and RowInit. During the PreBuild event there
will not be any data in the component buffer structure other than search record
as its executing prior to the component build process. That’s why it is called
PreBuild.
During
the PostBuild event you will have access to the data read from the database
into the component buffer structure. That’s why it is called PostBuild.
24. Difference between winmessage and msgget functions? a)The MsgGet function
retrieves a message from the PeopleCode Message Catalog, substitutes in the
values of the parameters into the text message and is stored in database, where
as WinMessage doesn’t store in database.
b)
MsgGet function message number is mandatory parameter, but there is no such
parameter in WinMessage.
25. Explain use of gray and ungray fun? Use
the Gray function user to make field unavailable for entry a page. Preventing
the user from making changes to the field .Gray make a field display-only,
while hide makes it invisible.
Syntax: Gray
(fieldname)
Use
the Ungray function to make a gray (non-editable) page field editable .If the
field was grayed with call to the Gray function. If the page field is made
display-only in page the field properties dialog, then Ungray has no
effect.
Syntax: UnGray
(fieldname)
26. Purpose of all and none functions? Use
the all function to verify a field contain value, or if all the fields in a
list of fields contain values. If any of the fields are NULL, then all return
false. A blank character field or zero numeric value in a required numeric
field is considered a null value.
Syntax: ALL (fieldname)
None
function to checks that a field or lists of fields have no value.
27. What are the PC function use to control the translate values
dynamically? a)
AddDropDownItem: The AddDropDownItem
method adds an item to the dropdown list in the control for the field. The
first time this method is called, it overrides the prompt table or translate
table used to populate the list. Those items no longer appear in the list. Only
the items added using this method display. Subsequent calls to this method add
additional items to the dropdown list. The items added with the first call to
the method also display. If there is an existing value and the dropdown list is
changed with these functions, the selection shows as (Invalid value) unless the
new list contains an entry with the same code as the existing value. Syntax:
AddDropDownItem (CodeString, DescriptionString).
b)
ClearDropDownItem: The
ClearDropDownList method clears all items added to the dropdown list using the
AddDropDownItem method. In addition, this method causes the prompt table or
translates table values defined for the list to come back into effect again
(unless they’re subsequently overridden again with AddDropDownItem).
Syntax: ClearDropDownList
().
28. What are
the foundations classes which are useful to access component buffer? Rowset, row, record and
field.
29. Syantax
to declare a variables in PC? Local
variable-type & varname;
30. Define
standalone rowset? In
PeopleCode standalone rowset is an independent rowset object not associated
with component buffer. They allow you to work data with outside of the data
whatever additional data you need from the database. In this sense they replace
the functionality of the derived records which were once used as place holders
to store data not directly associated with the component. Because a standalone
rowset is standalone, there is no automatic action by the component processor
on it. This means that if a standalone rowset is used to manipulate data
(insert/update), code will need to be added to manually save changes.
31. Difference between getrowset and createrowset? GetRowset is used to
get rowset for a record in the component buffer.
CreateRowset is used to create rowset for
a record which is in database, and is also called as standalone rowset.
32. Use of scrollflush() :
Used to remove all rows inside target scroll area and frees it associated
buffer. Rows that are flushed are not deleted from the database. This function
is often used to clear work scroll before a call to ScrollSelect.
Syntax:
ScrollFlush (scrollpath)
33. Explain about the workflow event? WorkFlow
PeopleCode executes immediately after SavePreChange and before database update
that precedes SavePostChange. The main purpose of the workflow event is to
segregate PeopleCode related to workflow from the rest of applications
PeopleCode. Only PeopleCode related workflow (Such as triggerbusinessevent)
should be in workflow programs. Your program should be deal with workflow only
after my SavePreChange process completed.
34. Explain about thinhtime and thicktime function? Think-time functions
suspended processing until the user has taken some actions (such by clicking
button in message box), or until external function has run to completion (for
example a remote process).
Think-time
function hold avoids the following events: SavePreChange, Workflow, RowSelect,
SavePostChange.
35. In which
PC events dosave function is useful? FieldEdit, FieldChange,
or ItemSelected.
36. Callappengine () explain with syntax? The
CallAppEngine function should only be used in events that allow database
updates because generally, If your are calling PeopleSoft application engine.
You’re intending to perform database updates. This includes following
events: SavePreChange, SavePostChange,
Workflow, Message Subscription, and FieldChange.
CallAppEngine
Cannot use in Application engine PeopleCode actions. If you need to access one
application engine program from another application engine program, use the
CallSection action
37. What is the difference b/n err msgget and war msgget? Error
stop the process, warning allow processing to continue. An error in FieldEdit
prevents the system from accepting the new value of a field. A warning enables
the component processor to accept the new data.
An error in SaveEdit
prevents the system from saving any row of data. A warning in SaveEdit also is
applied to all data in the page or component, but the component processor will
accept the data
38. Expalin
about remote call feature in PC? RemoteCall
is a PeopleTools feature that enables executing COBOL program remotely from
within a PeopleSoft application. RemoteCall is made using the RemoteCall PeopleCode
function.
39. Some PC file attachment functions? a)
AddAttachment
Syntax:
AddAttachment (URLDestination, DirAndFileName, FileType, UserFile [, MaxSize [,
PreserveCase [, UploadPageTitle [, AllowLargeChunks]]]])
Use
the AddAttachment function to upload a file from an end-user machine to a
specified storage destination. Note that it is the responsibility of the
calling PeopleCode program to store the returned file name for further use.
b)
DeleteAttachment
Syntax: DeleteAttachment (URLDestination,
DirAndFileName [,
PreserveCase])
Use the DeleteAttachment function
to delete a file from the specified storage location.
DeleteAttachment does not generate
any type of "Are you sure" message. If you want the user to verify
the deletion before it is performed, you must write your own checking code in
your application
c) DetachAttachment
Syntax: DetachAttachment (URLSource, DirAndFileName, UserFile [, PreserveCase])
Use the DetachAttachment function
to enable a user to make a copy of an attached file on their local client
system. The file is sent to the browser with appropriate HTTP headers to cause
the browser to display a save dialog box to the user. The user can save the
copy of the file with any filename.
d) ViewAttachment.
Syntax: ViewAttachment
(URLSource, DirAndFileName, UserFile [, NewWindow [, PreserveCase]])
Use the ViewAttachment function
to enable an end-user to view a file on a system.
The copy of the file to be viewed
may have a different name than the file at the storage location.
40. Define PC editor? Any method of accessing
PeopleCode programs displays a window where PeopleCode programs can be input or
modified. This window is the PeopleCode editor. The PC editor enables you to
edit and navigate all pc programs that belong to the same parent definition.
On
the left side of the window is a drop-down list box showing the current field
and other available fields, records, and components. Any field with PeopleCode
attached is listed in bold. The right side of the window has a drop-down list
box listing the current PeopleCode event and other acceptable events for that
definition. Events already containing PeopleCode for that definition are listed
in bold.
41 Difference between meta sql and normal sql? SQL Statements are Platform Dependent, where as MetaSQL
statements are Platform Independent.
MetaSQL: - %Bind, %Execute Edits, %Select, %SelectInit, %Sql, %Table, %Truncate
Table.
SQL: The SQL statements are used to fetch/retrieve, update,
insert, delete data from the database. In PeopleSoft we use the SQL
statements using SQLExec or CreateSQL. Different SQL statements are: Select,
Insert, Update, Create and Delete.
MetaSQL: Different RDBMS have different date and time formats.
Though the component processor takes care of the automatic conversion but at the
time of using the SQLExec the automatic conversion does not take place. So in
order to understand this, MetaSQL concept has come. Which we can use in diff
SQL stmts. for example %datetimein, %date, %time, %currentdatetime,
%datetimeout etc.
%dateIn: This is used in the where clause of "Select
and update"
%dateout: This is used while selecting the data.
42. Which PeopleTool is used
to input peoplecode? -
Application Designer.
43.
When is PeopleCode case sensitive? PeopleCode is only case sensitive within
a quoted literal.
44. In which PeopleCode would you code errors and
warnings? SearchSave, FieldEdit,
SaveEdit and RowDelete primarily. You may also code errors and warnings in
RowSelect.
45. What is the biggest drawback to
Fieldformula? Since FieldFormula is
performed every time the panel is displayed on every row of data, its biggest
drawback is the performance overhead it adds.
46. What other PeopleCode event might you expect
to find with RowInit? FieldChange.
Since RowInit initializes the data before it is displayed, usually it is used
along with FieldChange to accommodate any of the changes that are performed by
the operator once the panel is displayed.
47. How does SavePostChg differ from all other
Peoplecode events? SavePostChg
is different from all other Peoplecode events since it is performed after the
updates are made on the database.
48. What happens if you don't declare a
variable? If
a variable is not declared PeopleCode will assume it is a local variable.
49. Why are application specific people-code
functions used? PeopleCode
functions are used to perform the same logic in multiple programs while only
having to maintain it in one place.
50. How is a PeopleCode function called? A PeopleCode function is
called by referencing the function name and then passing the function the
appropriate number of parameters in parentheses.
51. How a PeopleCode function be defined so that
it can be used as a variable in the calling program? In order for a PeopleCode
function to be used as a variable, it must be defined using a
"Returns" in the Function statement. Also, at least one
"Return" statement must be used in the function code.
52. Why is the Message Catalog used? The
Message Catalog is used to store the text of error and warning messages that
will be used in PeopleSoft applications. This allows the same message to be
used in more than one PeopleCode program while only maintaining it in one
place. It also prevents the text of messages from being hard-coded into
Peoplecode programs.
53. How is a message added to the Message Catalog? To
add a new message to the Message Catalog, the correct message set should first
be retrieved. A new message can be added to the set by performing a row insert
(F7). The new message number will automatically be assigned.
54. Which message sets does PeopleSoft reserve as
its own? Message
sets 1 through 19,999 are reserved for use by PeopleSoft applications. Message
sets 20,000 through 29,000 can be used by PS users.
55. How is a message retrieved from the Message
Catalog in PeopleCode? To retrieve a
message from the Message catalog in PeopleCode, the MsgGet built in function is
used. The required parameters of the function are message set, number and a default
message.
56. When should WinMessage be used? The
WinMessage built-in function is used to display an information message to the
operator without performing normal error and warning processing. It also can be
very helpful when used for debugging.
57. When would FieldChanged, RecordChanged,
RecordDeleted, RecordNew, and PanelGroupChanged be used? These
built-in functions can be used in SaveEdit, SavePreChg, or SavePostChg programs
to filter down the processing to occur only when necessary.
58. Why is PriorValue used? The
PriorValue built-in function is used to determine the value of a field before
it was changed.
59. What is the CurrentRowNumber? It is the number of the row of data the application
processor is performing PeopleCode on in the buffers on the client workstation.
60. How does AddToDate work? This function is passed a date field and then the number of
years, months and days to add. Leap years are automatically taken into
consideration, and negative numbers may be passed as parameters to subtract
from the date.
61. Which two cross reference reports are
best for PeopleCode? How do they present their data? XRFFLPC reports for one field all of the PeopleCode programs
where it is referenced. XRFPCFL does the opposite. It reports for one
PeopleCode program all of the fields it uses.
62. What does Find in PeopleCode do? The Find in PeopleCode utility will scan through all of the
PeopleCode on a database looking for a specific character - string.
63. When is it useful to select the Export
to File option in Find in PeopleCode? An Export report produces an unformatted copy of all of the
source code where the character string was found. This can be very helpful in
an upgrade.
64. How can you use WinMessage as part of
the debugging process? A WinMessage can be used to set break points and display the
current value of fields and variables in the PeopleCode debugging process.
65. How do you turn on the PeopleCode
trace?
·
The PeopleCode trace can be turned
on by selecting the Set push button on the PeopleCode Trace Control panel.
·
It can also be turned on by saving
options in the Configuration manager, logging out of Psoft and logging back on.
·
It can also be turned on within
PeopleCode by using the SetTracePC built-in function.
66. What is the name of the file created by the
trace? DBGI.TMP
which is stored in TEMP directory.
67. How do you turn off the PeopleCode trace? The
PeopleCode trace can be stopped by turning off all of the check boxes on the
PeopleCode trace control panel and selecting the set push button. It
can also be turned off within PeopleCode by passing the parameter zero to the
SetTracePC built-in function. Once the PeopleSoft session is
closed, the PeopleCode trace will also automatically be turned off.
68. How many rows of data can there be at occurs
level 0? There
can only be one row of data for each record definition at occurs level 0.
Scroll bars are not allowed at this level.
69. How many rows of data can be there at occurs
level 1? There
can be multiple rows of data for each record definition at occurs level 1 since
a scroll bar can be used to navigate between them.
70. What must exist at occurs levels 1,2,and 3 but
not occurs level 0? - A scroll
bar.
71. How does the application processor allocate
buffers to hold data? The
application processor starts allocating buffers at occurs level 0 and then
works its way down. It uses the panel and record definitions to determine the
data it needs. From a panel definition, fields are allocated in TAB order.
Generally, if there is one field from record definition on the panel, the
entire row will be brought into the buffers. The exceptions are fields that are
in the search dialog box, derived work fields and related display fields.
72. What record definitions will perform PeopleCode
in a panel group? Any
record definition that is not used as a related display record will perform
PeopleCode in a panel group.
73. In what order will PeopleCode be performed on
the buffers in a panel group? PeopleCode starts at the top
of the buffers in a panel group and works its way down to the bottom. The
PeopleCode programs on a given row will be performed in the same order as the
fields on the record definition.
74. When should the SQLExec function be used
instead of the scroll buffer functions? Dates are converted within
SQLExec built-in function by using the system variables %DateIn and %DateOut.
75. What are the drawbacks of using a SQLExec
built in function? Since
the SQL statement is contained within quotes, it is a black box to PeopleSoft.
Means the programmer is responsible for the syntax, efficiency and maintenance
of the SQL. Also, if a SQLSelect is being performed within the function, only
one row of data can be returned.
76. What are Inline variables? How are they
used? Inline
variables are used to reference the value of fields stored in the buffers in
SQL statements. An inline variable consists of a colon followed by the appropriate
record and field name to be referenced. 136. How are dates converted within
SQLExec statements? Dates are converted within SQLExec built-in function by
using the system variables %DateIn and %DateOut.
77. What parameters are passed to the built-in
function SQLExec? The
SQLExec built-in function is passed the SQL statement to perform within quotes,
followed by any bind variables or output variables if necessary.
78. What PeopleCode event is fired before a
popup menu is displayed? PrePopup.
It allows you to alter the appearance of the popup menu.
79. What functions may be used to alter the
appearance of a menu item? DisableMenuItem,
EnableMenuItem, HideMenuItem, CheckMenuItem and UnCheckMenuItem.
80. When is the ScrollFlush function used? Is used to remove the rows of
data from within a scroll bar without deleting them from the database.
81. What are the parameters of a ScrollFlush
function? Name
of the primary record definition for the scroll bar where the rows of data will
be removed.
82.
In which PC events domadel func can't be used? savepre,save
post,workfl,rowselect
83.
What is domodal with syntax? DoModal(PAGE.pagename, title, xpos, ypos, [level,
scrollpath, target_row])
84. PeopleCode Tables PSPCMNAME: PeopleCode Reference table.
PSPCMPROG: Store actual PeopleCode programs (actual code behind PeopleCode events).
Process Request Tables
PSPRCSQUE: This record contains the process request information to run a process request.
PSPRCSRQST: This record contains the process request information to run a process request.
PS_PMN_PRCSLIST: A view to list all process requests in the Process Monitor except for "Delete" (runstatus = 2) process requests.
PSPCMPROG: Store actual PeopleCode programs (actual code behind PeopleCode events).
Process Request Tables
PSPRCSQUE: This record contains the process request information to run a process request.
PSPRCSRQST: This record contains the process request information to run a process request.
PS_PMN_PRCSLIST: A view to list all process requests in the Process Monitor except for "Delete" (runstatus = 2) process requests.
85. How to pass peoplecode execution? There
isn't a delivered way to pause the execution of PeopleCode. However, there are
two alternatives that you can use:
- The java.lang.Thread.sleep() Java Class method or;
- The DBMS_LOCK.SLEEP() database procedure (Oracle only)
Using java.lang.Thread.sleep()
To use this approach, add the
following line to your PeopleCode, passing a value in milliseconds which is the
amount of time to sleep:
GetJavaClass("java.lang.Thread").sleep(1000);
The code above will sleep for 1000
milliseconds (1 second). Note that this approach uses up CPU cycles and has a
performance hit on the application server. If you find this to be an issue,
then the second approach may be better suited if you have an Oracle database.
Using DBMS_LOCK.SLEEP()
SQLExec("exec DBMS_LOCK.SLEEP(1)"); The code above will sleep for
1 second.
86. How to create a view using a PC? We
write the following code: SQLEXEC
(“CREATE VIEW VIEW_NAME AS SELECT TAB_COLS FROM TAB_NAME”);
87. Explain difference between rowinit and rowinsert? RowInit
event fires the first time the Component process encounters a row of data.
RowInsert event fires when the end-user adds a row of data. Don’t put
PeopleCode in RowInsert that is already exists in RowInit, because a RowInit
always fires before the RowInsert event, which will cause your code to be run
twice
88.
How is searchinit is most often in PeopleSoft application? 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.
89. Explain about hide and unhide? Use
the Hide function to make a page field invisible. It usually appear in RowInit
programs that set up the initial display of data, and in FieldChange programs
that change field display based on changes the user makes to a field. Syntax:
Hide (fieldname);
Use
the Unhide function to make a field visible that was previously hidden with
Hide. If the field was hidden by setting its Invisible property in the Page
Field Properties dialog box, then Unhide has no effect. Generally, you want to
put this function on the same scroll level as the field that is being changed
in RowInit (which executes on every row) or FieldChange (which executes on the
current row). This simplifies the function’s syntax to: Syntax:Unhide(fieldname);
90. %clientdate and
%component? %ClientDate
returns the current date for the current user, adjusted for the user’s time
zone. This is the date as specified with the current user’s personalizations.
%Component returns an uppercase
character string containing the name of the current component, as set in the component
definition.
91. Why command push
button is used and its advantages? Push method to
add items to the end of the array:
Local Array of Number
&MYARRAY;
Local Number &MYNUM;
&MYARRAY = CreateArrayRept
(&MYNUM, 0); /* This creates an
empty array of number */
&MYARRAY.Push (100);
&MYARRAY.Push (200);
&MYARRAY.Push (300);
92. Explain arrays on PC? An
Array is collection of data storage locations, each of which holds same data.
The maximum depth of an Array is 15 Dimensions. Push and UnShift are functions
of array used to add the elements into array, one from the end and one from
beginning of the array. Pop is the function used to select and delete from the
end of the array.
93. How to refer a low level row from higher level? Local
Rowset &rs = GetLevel0 ().GetRow (1).GetRowset (Record.RECORDNAME);
94. Explain the relationship b/w the classes? The
4 Buffer classes relate in following manner:
·
A Record contains one or more Fields. Records
contain the Fields that makes up the Record.
·
A Row contains one or more Records and zero or
more child Rowsets. A Row contains the records that make up that row. A
Rowset contain one or more Rows. A Rowset is a data structure that describes
hierarchal data.
95. How to change prompt table dynamically? We
can change in 2 ways:
a)
Using EDITTABLE fields for Prompt Table. I.e., Prompt table property of Record
Fields should be assigned with %EDITTABLE value.
b)
Using Dynamic Views.
96.
Explain about on execute event? OnExecute
is not an event. Any PeopleCode present in this event is executed only when
it’s called explicitly in a PeopleCode program, or when an action is executed.
97. Where we write the PC in app packages? In
OnExecute event we write our PeopleCode.
98. What is the use of findin option regarding PC? :
Search through all PeopleCode or SQL Programs for a text string that would
describe in a dialogue box. You can also specify which type of PeopleCode and
SQL programs to search.
99.
What is default processing? Deferred Processing is a default
processing
100.
What are the component level PC events?
·
PostBuild Event
·
PreBuild Event
·
SavePostChange Event
·
SavePreChange Event
·
Workflow Event
101. How are dates converted within SQLExec statements?
Dates are converted within SQLExec built-in
function by using the system variables %DateIn and %DateOut.
Excellent !!!
ReplyDeletegood thanks for sharing
ReplyDeletemore helpfull to me. thanks boss
ReplyDeletesuuper bhai..
ReplyDeleteAlmost every thing covered. it helped me a lot thanks for sharing ur knowledge.
ReplyDeleteHi Guys,
ReplyDeleteI have created a blog on PeopleSoft HRMS key concepts both functional and technical.
The blog contains a range of articles on various key topics where the focus is more on keeping the content precise, comprehensive and well explanatory.
PeopleSoft HRMS key Concepts
Nice Answering.
ReplyDeleteFieldEdit and FieldChange Event
ReplyDeleteThanks Ismail. Really helpful
ReplyDeleteHelpful information
ReplyDeleteThanks a lot for sharing such a usefull information and tutorials on Peoplesoft HRMS Functional Online Training
ReplyDeleteGood info for interviews. Thanks Ismail
ReplyDeleteYou done a great job. you are the best .God bless
ReplyDeletePeoplesoft Interview Questions and Answers
ReplyDeletehttp://allinterviewquestionsandanswerspdf.blogspot.in/2016/06/top-100-peoplesoft-interview-questions.html
This blog is really very helpful to understand the concept of peoplecode for the beginners.
ReplyDeleteHey,
ReplyDeleteHip Hip Hooray! I was always told that slightly slow in the head, a slow learner. Not anymore! It’s like you have my back. I can’t tell you how much I’ve learnt here and how easily! Thank you for blessing me with this effortlessly ingestible digestible content.
I have a strange situation where the client wants to archive a table and delete it after archiving but the real catch is they want only delete the parent table record and all child tables records are to be kept and no need to be archived. As my knowledge it's referencing around 20 tables and later views are also used.
I performed archiving all records get copied to Archive Database but when it goes and delete the parent table it throws an error.
I tried disabling and enabling the foreign key, it disables but it fails enabling. How to accomplish this task?
Once again thanks for your tutorial.
Kind Regards,
Irene Hynes
in answer for ques 20 , you said 'in SavePost change Component Buffer is cleared ' I seriosuly doubt that because component buffer still exists.
ReplyDeleteThere are many programs out there that promise to help a person develop a ripped physique but the fitlylab program stands out because it offers the complete picture.Source to know more about Fitlylab best reviews.
ReplyDeleteThis system also has many different advantages over other types of laser technology. For one, the laser beam is highly sensitive to small differences in temperature. If you are curious to know more about yolo curve lipolaser, click here now.
ReplyDeleteThe ultimate Light is one of the most advanced slimming technologies on the market today. Unlike other products that use heat, the light from this device reaches fat cells. You are curious to know more about led light therapy, browse this site.
ReplyDelete