Search This Blog

Showing posts with label interview questions. Show all posts
Showing posts with label interview questions. Show all posts

Function, Method & Property

It was for one interview last week, I asked the prospect a very simple question. How to identify a function, a method and a property.

The answer I expected was very simple one which a newcomer should be able to get the trick. He started narrating a long story and finally connected all the above three someway.

But there is a simple way to explain the same.

Function()
A function has parentheses after its name and does not have a dot on the left side.

&Object.Method()
A method has parentheses after its name and has a dot on the left side.

&Object.Property
A property has a dot on its left and no parentheses on the right.

Pretty simple and easy to understand right :)

More PeopleSoft Questions

1.What is a record?
A record definition is a definition of what your underlying SQL database tables will look like, and how they will process data.

2.What are the record structures available in Peoplesoft?
Multiple types of records can be created within application designer.
SQL Tables
SQL Views
Dynamic Views
Derived /Work records
SubRecords

3. How to define parent-child relations in peoplesoft?
Some times while creating records, you'll have a field within a table for which you want to allow multiple occurrences, in which case you create a subordinate or child table. For ex. For employee reviews, an employee can be reviewed for performance in multiple categories - organization skills, interpersonal skills etc.  These categories and ratings are stored in a separate child table, EE_REVIEW_RT, which is related to REVIEW_DT, the parent table which stores data about employee reviews. The keys you set on parent record will determine which keys are required on any child records. The child must have the same keys as the parent, plus one or more keys that uniquely identify each row.

4. Can we assign default value for a field in Data Designer?
Yes, we can assign a default value to a field. Record field properties - Use - Default value

5. How do we create custom field format?
Custom field format allows you to create your own format definitions using format notation, and apply them to fields. These formats are organized into Format Families, which can include one or more unique formats.

6. What are the keys available in Peoplesoft?
Key - Search Key - Duplicate Order Key - Alternate Search Key - Descending Key

7. What is significance of 'Rs Dt' in Data Designer?
Reasonable date specifies whether a reasonable date test will be performed on a date field. The reasonable date test warns if the date is outside a 30-day range before and after the current date.

8. What is a prompt table?
If you want to provide prompt support for a field based on the data stored in a separate table, enter the name of the table you want to use as the Prompt Table at: Record field properties - Edits - Prompt table. This will enable users to position their cursor on the field and press F4 to prompt for a list of values stored on the table.

For example, let's say that we want users to enter Employees IDs in the EMPLID field, which is stored in PERSONAL_DATA. By entering PERSONAL_DATA as the Prompt Table, users simply press F4 on EMPLID to select from a list of Employee ID values for this field.

9.What is Translate/xlatt field?
The translate table is a table that stores values for fields that need to be validated but don't need individual tables of their own.

10.What is the maximum field length for an xlatt field and what data types does it support?
 Max field length – 4, ‘CHAR’ Datatype.

11. What is the significance of 'No Edit ' in edits section in Data Designer?
If you don't want to establish any special edits for a record field click 'No Edit' option button in Record field properties - Edits

12. What is Set control field, where can it be utilized?
When you enter a name in Prompt Table (Record field properties - edits) and tab off the field, Set Control Field is activated. This enables you to select a Set Control Field that overrides the Set Control Field of the record definition specified in Prompt table. If you don't specify a name in this field, it defaults to the Set Control Field of the table specified in prompt table.

13. What is Cache how is it useful for clients?
The Cache or Cache record is a PS record, keyed by process instance, that must be created and maintained by the Application Engine Developer. This record defines the fields that an application uses to pass values from one SQL statement to another. When an application is started, a row in the cache record is created for the assigned process instance. It is then updated by application engine whenever a COMMIT is performed. The cache row is deleted upon successful completion of the application.

14.What is Query Security Record?
Query Security Record is to secure access to a particular record using a security view.

15.What is a Dynamic view record?
Record def that can be used like a view in panels and Peoplecode, but is actually not stored as a SQL View in the database. Instead, Application Processor uses the text as a base for the SQL SELECT that is executed at runtime. Dynamic views some times provide superior performance such as search records.

16.What is the use of Derived/work record?
A temporary work space to be used during online panel processing. A derived or work record is not stored on the database, so you don't build it.

17.What is Query view, how to define it?
A view constructed using Peoplesoft Query tool.

18.What is the use of Search key and list box item?
When you turn on Search Key, the system will include this field in the search dialog for a panel. And it automatically turns on the List Box item. Turn on the List Box Item if you want the field to appear in F4 prompt lists and in the list box preceding a panel.

19. Can we rename a field/record, How does it effect front-end and database?
When you rename a record definition, the system automatically renames all references to it in Peoplecode except in the text portion of the SQL Functions, such as SQLExec and Scroll Select. If you have already SQL Created the underlying tables for the record definition you renamed, you'll need to recreate the table. If you have data in this table you want to preserve, you should use the SQL Alter function to rename the data base tables. When you rename a field, the system automatically renames all references to it in Peoplecode, except in the text portion of the SQL functions such as SQLExec and Scroll Select.

20.Can we delete a field in the record structure?
You cannot delete a field if it is currently used on any records. Before you delete a field, you must first remove it from any records where it resides.

21.How exactly index are built in application designer?
Using Application Designer, you create several kinds of object definitions that represent database components. Record definitions represent tables, indexes and views. The Build process is the centerpiece of Application Designer, which uses DDL to construct a database component (index is one such componet) based on the associated records and fields. Some indexes are defined automatically, based on the search key, list box items and alternate search keys you set in your records. However it is sometimes necessary to define additional indexes to improve the performance.

22.What are system tables, application tools table, User tables in peoplesoft?
System Catalog Tables Ptools Tables Application Tables Sysobjects PSRECDEFN JOB_DATA Syscolumns PSPNLDEFN PERSONAL_DATA

23.What is audit? How many types of audits available in peoplesoft?
For some field values, you may want to keep a history of who adds, changes, or deletes data. When you set the options for tracking that info it is called auditing. When you turn on the Audit field options (Record field properties - Use) Psoft track the info into PSAUDIT table. Three types of audits are available in peoplesoft?
Field Add: Audits the field whenever a new row of data is added.

Field Change: Audits the field whenever the contents are changed.

Field Delete: Audits the field whenever a row of data is deleted.

24.What is the System Maintain field in Record field properties - Use?
The System maintained option is for system documentation purposes only and doesn't affect processing. Check this if you want to document that the field value is system-generated.

25.What is a Subrecord?
A SubRecord by definition allows you to add a group of fields that are commonly used in multiple record definitions. A SubRecord must be defined before it can be entered into a record definition. Insert - SubRecord

26.What are Sub panels?
If you have groups of controls, such as address controls, that you use on multiple panel definitions, you can save it as a subpanel. And insert this sub panel wherever you want.

27.What are Secondary panels?
Secondary panels are used to gather or display information related to the objects that appear in a primary panel. A secondary panel can be called from the primary panel and used to enter or display additional data without cluttering your primary panel.

28. How to invoke the secondary panel?
There are two ways :
Insert a push button control type of Secondary Panel. This automatically invokes the secondary panel when the user presses the button.

Insert a secondary panel control. This is invisible at run time. When you use a secondary panel control , you must also insert a command push button on the panel and call the DO MODAL People code function from the push button's FieldChange event in order to invoke the secondary panel.

29. What is a Related Display field and Display Control field?
A related display field is for display purposes only - it always references a row that's not being updated from the current panel. The display control when you select Related Display field, you need to relate it to the appropriate control. A list of all the controls on the panel marked as display control fields in the Related control field box. Select the control field to which this particular related display is related.

30. How many scroll levels are available in peoplesoft? –3.
31.Can we define Child table fields in '0' level? No, Parent tables only can be associated at '0' level.

32. What is a Command Push button?
Command Push buttons are associated with a record.field, so when the user presses the push buttons, the Application Processor executes any field change Peoplecode associated with that panel control.

33.What is a menu item and bar name?
There are four types of menu items:-
Panel group: defined only in standard menus
Transfer menu items: defined only in pop-up menus.
Peoplecode and Separator menu items: Available for both pop-up and standard menus.

34.What is  a panel group?
A panel group represents a complete business transaction. It can be composed of either a single panel or a set of panels that should be processed as if it were one panel. Think of it as paging through several pages of a single display. Panel group control: The grouping of panels and their associated labels on a cascading menu - The search record used to retrieve data into the panel - Associated user actions.

35. What is standard / panel group search record ?
The panel group search record is the record used to populate the panel group's level-zero search key fields; this enables the system to identify a unique row of data for the level-zero primary records in the panel group's panels, build a panel buffer for the panel group, and display the panel.

36. What is add mode search record?
When a different search record (other than standard search record) is specified for Add actions to create special security views that limit the rows operators can add based on specific search criteria or to specify a different search record for add actions.

37. What are the allowed actions in menu?
Add, Update/Display, Update / Display All, Data Entry and Correction.
38. What is the main difference between 'update/display' and 'update/display all'?
Update / Display - Used to update existing rows only. Update / Display All - Used to update current and future rows in an effective dated record. Only used with effective dated records.

39. How exactly allowed actions work with 'Effdt' panels?
Action Type View Change Insert New Rows Update / display Current , Future Future only Eff dt > the current row Update / Display all History, Current Future only , , Future Correction History , Current All existing rows Add new rows with no Future Eff dt restrictions

40. What is a menu group?
Menu groups are groups of standard menus that can be accessed from the PeopleSoft Go menu bar. If the menu group contains two or more standard menus, the standard menu labels appear in a cascade menu to the right of the menu group on the Go menu bar.

41. What is an operator and operator class?
Operator definitions - commonly referred to as operator Ids, or just operators - have associated pass words. Operator definitions are for each user in your system. An operator can be defined with its own set of system permissions and restrictions, or it can inherit this info from one or more class definitions to which it is linked.

Class def have no user passwords associated with them; you can't use a class def to sign on to the system. Instead, u use classes to organize your users into groups with common access rights. Instead of setting up access rights for every operator, you can define just a few classes and link your users to them.

42.What is the purpose of access_id?
When you create an operator ID you must assign it an access profile, which specifies an access ID and password. Access ID connects Peoplesoft application(s) with RDBMS, once their password is validated.

43.What is Operator security and Object security?
Object Security is to control access and update to the people tools objects - record def, menu def, proj def, panel and panel group def, tree structures, trees, import def, translate tables and queries.
Operator Security is to control when each Peoplesoft user can sign on, which People Tools and application menu items they can access, what processes they can run and more.

44.What is SetID?
SetIDs are simply the lables used to identify a TableSet. SetId is an additional primary key in control tables, that enables sharing of control table information across business units. All rows of data in your control tables keyed by the same SetID make up a TableSet.

45.What are the tablesets?
A TableSet is a group of rows across your control tables identified by the same SetID. In other words, all rows of data in your control tables keyed by the same SetID make up a TableSet. Tablesets or group of tables enables sharing of control table information and processing options among business units. For ex., using Tablesets you can define a group of Job Codes that can be shared by different business units.

46.What is Application processor?
The Application Processor does all the behind scenes (panels) work. Application Processsor - the People Tools online processor, manages the flow of data processing as users enter informatiion on panels - builds SQL statements based on the actions performed on panels - issues INSERT, DELETE and UPDATE statements to maintain data on the database and SELECT statements to retrieve data.

47. What is the significance of PER099.SQR program?
Refresh Employee Data - When you run this report, the system will update the table with data valid before or on the 'As of Date' you specify.

48.What are the paragraphs available in SQR? - SELECT - SQL - DOCUMENT

49.How many kinds of trees are available in tree manager?
Many kinds of trees for a variety of purposes can be created, but all trees fall into these major types:
Detail trees - in which database field values appear as detail values.
Summary trees - provides an alternative way to group nodes from an existing detail tree, without duplicating the entire tree structure.
Node - oriented trees - in which database field values appear as tree nodes.
Query access trees - to organize record definitions for PeopleSoft Query security.

50.What are the tree structures, and how to define a new structure in tree manager?
Two kinds of tree structures : Detail tree structures and Summary tree structures.
You use detail tree structures for all trees except summary trees, including node-oriented trees.

Creating a detail tree structure:
Select Structure, New, Detail
Enter a Structure ID and description for the tree structure
Enter the panel and record definition to use for entering and storing info about levels.
Enter the panel, record def and field to use for entering and storing info about tree nodes.
Enter the info the tree manager needs for capturing and storing detail values.
Click the Save button to close the dialog box and create the tree structure.

Creating a summary tree structure:
Select Structure, New, Summary.
Enter a Structure ID and description for the tree structure.
Enter the panel and record definition to use for entering and storing info about levels.
Enter the panel and record definition to use for entering and storing info about tree nodes.
Enter the name of the view that joins the summary tree to a detail tree.
Identify the detail tree whose detail values the summary trees summarizes, and the level from which to start.
Click the save button to close and create the tree structure.

51.What is query tree?
PeopleSoft query uses a special type of tree, query tree, that organizes record definitions into access groups. In the Query Security panel group, you specify which access groups an operator or operator class has access rights to. Users can only create or run queries on record definitions from access groups they have rights to.


52.How many query types available in Query tool?
7 types:
Ad hoc queries: to retrieve data from the database on the spot, when you need it. Queries written for use with cube manager must be Ad hoc queries.
Reporting queries: Retrieve data for reports and pass the data to Excel, Crystal reports pro, or a PS/nVision tabular layout.

PS/nVision matrix queries: Queries as part of a PS/nVision matrix layout.
View queries : to create SQL views in the Application Designer.
Search queries: Queries that can be selected through search dialog boxes in PS applications for the records you want to find.

Database agent queries: Used in PS workflow, to detect conditions that trigger business events, then schedule database agents to run them periodically.
Role queries: Queries that PS workflow uses to determine who to send emails forms or worklist entries to. 

53.What function is used for invoking a secondary panel? – DoModal.

54. What is a message agent?
The Message Agent is an automated user workstation. Rather then taking input from the keyboard, it receives messages from third-party applications. The messages tell the Message Agent to do some of the same things a user would: navigate a panel group, enter data into the panel fields and save panel. For ex. It could accept a form from an electronic forms package, read its contents and transfer the data to a panel. It acts as an electronic clerk to process requests according to rules defined in workflow. Using the Message Agent API, you can write programs that add data to the PeopleSoft database.

55.What is a role and how to define a role?
Roles describes how people fit into the workflow. A role is a class of users who perform the same type of work, such as clerks or managers. Business rules specify what user role needs to do an activity. For ex., department managers (a role) must approve external course requests.

56.What is Work list?
A work list is a list of the items awaiting an activity. Users select items from the list, and the system automatically displays the panels they need in order to work on the items. Work lists are automatically created as you route items to them. To define a worklist, you just need to create a worklist record definition and define worklist routings.

58. What is Global variable and local variable, how to declare them?
A global variable, once declared in any Peoplecode program, will remain in scope throughout the PeopleSoft session. The Global statement allows you to declare PeopleCode global variables. The variable must be declared with the Global statement in any PeopleCode program in which it is used. A local variable remains in scope for the life of a PeopleCode program. They cannot be declared inside of function declarations; that is, there are no function-level local variables.

59. What is the purpose of CreatObject function in peoplecode?
CreateObject return an instance of an OLE Automation object as a variable of type object. CreateObject (str_class_name) Where str_class_name identifies a class of OLE Automation object, in the form: App_name.object_name Ex., local object &WORKSHEET &WORKSHEET = CreateObject ( "Excel.Sheet");

60.Can we write peoplecode for menu items?
You can add PeopleCode to both standard and popup menus.
To add a peoplecode menu item to a popup menu:
Create a new menu or open an existing menu.
Access the menu properties of the new menu item.
Edit the properties of the new menu.
If the popup menu has never been saved, you must save it before you can access its peoplecode.
To access the PeopleCode editor, right click on the PeopleCode menu item, then choose View PeopleCode.
Write the Peoplecode program in the PeopleCode editor, then save the menu.
If this is a new popup menu, associate it with a panel field or panel background.
To add PeopleCode menu item to a standard menu:
Open the standard menu to which you want to add an item.
Access the menu properties of the new menu item.
Edit the new menu item properties.
To access the PeopleCode editor, right click on the PeopleCode menu item, then choose View PeopleCode.
Assign the new menu to operators in the Security Administrator.

61.What is three-tier architecture?
Prior to PeopleSoft 7, PS applications are executed in a two-tier architecture, where all the online application logic runs on the client using data obtained directly through SQL calls from a separate database server.
PeopleSoft 7and 7.5 supports three-tier transaction processing, where portions of the application logic move from the client to an application server that communicates with the database server. The components that comprise the tiers are :
Clients: Windows and web clients. (PS supports a UNIX Message Agent client for use with the Message Agent only)
PS Application Server: A UNIX or Windows NT machine containing BEA's Tuxedo middleware product and BEA's Jolt. The application server may or may not reside on the same physical machine as the database server.
Database Server: Running any of the supported RDBMS / platform combinations.
Advantages: -
Reduced network traffic
Improved WAN performance
Reduced maintenance of client workstation configuration (especially for the casual user), since database connectivity is not required on the client.
Enabling Web Client connections.
Ability to scale the system, as needed, to meet rising user demands by reconfiguring application servers, by installing application server(s) on more machines, and by using multiple applications servers.

62.What is Tuxedo?
The application server, the centerpiece of PeopleSoft's three-tier architecture, utilizes Tuxedo, BEASystems' transaction monitor, to manage and monitor client transactions. When a client work station requests sends requests to the application server where Tuxedo then schedules a PeopleSoft service, such as Panel Group Build or Save. BEA tuxedo software for thewindows and web client comes bundled with Peopletools - embedded in PeopleSoft's binary directory.

63.What is inbound map and outbound map?
Electronic commerce maps (that help transfer data from PS Business Documents to the staging tables in the PeopleSoft database) specify how the EDI Agent transfers data between PeopleSoft Business Documents and the staging tables in the PeopleSoft database.

There are two types of maps:
Inbound maps, which the EDI Agent uses to transfer data from PeopleSoft Business Documents and the staging tables for processing by a PeopleSoft application.
Outbound maps, which the EDI Agent uses to create PeopleSoft Business Documents from data the application put in the staging tables for delivery to a trading partner.

64.What is SQLExec function ? And what are the limitations of this command?
The SQLExec function executes a SQL command from within a PeopleCode program by passing an SQL command string. The SQL command bypasses the Application Processor and interacts with the database server directly.

Limitation of SQLExec SELECT statement:
Only a single row of data. If you write a SQL statement that retrieves more than one row of data, SQLExec outputs only the first row to its output variables.

If you want to select multiple rows of data, you can use ScrollSelect to read rows into a work scroll. Limitations of SQLExec UPDATE, DELETE, and INSERT statements:
These statements can only be issued in SavePreChange, Workflow and SavePostChange events.

65. Which PeopleTool is used to input peoplecode? - Application Designer.

66. How can you access PeopleCode editor?
In the PeopleCode display of a record definition, double click on the grid space that corresponds to the field and Peoplecode event. When field in a record definition is highlighted, select View, View PeopleCode OR View PeopleCode from the popup menu.

In the project workspace, existing programs are displayed beneath their associated record field with a lightning bolt symbol; double – click one of these. OR select view PeopleCode from the popup menu for a highlighted record, record field, or programs.

In the Application Designer, once the field is highlighted on the panel definition, select View, view PeopleCode. Alternatively, you can right-click and select the view PeopleCode from the popup menu.

67. When is PeopleCode case sensitive?
PeopleCode is only case sensitive within a quoted literal.

68. What are the most commonly used PeopleCode events?
FieldChange, RowInit, SaveEdit, FieldEdit, FieldDefault, and SavePreChange in that order.

69. In which PeopleCode would you code errors and warnings?
SearchSave, FieldEdit, SaveEdit and RowDelete primarily. You may also code errors and warnings in RowSelect.

70. What is the biggest draw back 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.

71. 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.

72. How do FieldEdit and FieldChange differ?
The main difference between FieldEdit and FieldChange is how Error and Warning statements are handled.
In FieldEdit, Error and Warning statements will cause the panel to be displayed with a message informing the operator of a possible problem.
In FieldChange, Error and Warnings statements cancel the panel group.

73. How does SaveEdit differ from FieldEdit?
SaveEdit and FieldEdit are both used for validation, but each one is performed at a different time. SaveEdit performed when the operator saves, FieldEdit is performed when the operator changes a field. SaveEdit is also performed on every row of data; FieldEdit is only performed on one row of data. When an error is received in FieldEdit, the field turns red; in SaveEdit field do not turn red.

74. 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.

75. What built-in function will you probably see in SavePostChg programs?
Since SavePostChg usually updates tables that are not contained in the buffers, the built-in function SQLExec is often used to perform these updates on the database.

76. Can calculated fields be stored on SQLTables? Should they?
Calculated fields usually are not stored on SQLtables. However, they might be if the calculated field is being passed to an interface that does not have access to the fields needed to calculate the field again.

77. Why would a derived/work field be used?
A derived / work field may be used to store and display a calculated value on a panel or to pass a value from one PeopleCode program to another.

78. How is a record definition indicated as a derived / work record?
A record definition is indicated as a derived / work record by selecting the "Derived/Work" radio button under the Type tab in the record properties.

79. What major difference is there between derived/work fields and other fields on panel definitions?
Derived / Work fields can be on any occurs level and do not need to come from the primary record definition for the level.

80. What types of variables can you define in PeopleCode? Local an Global variables.

81. What happens if you don't declare a variable?
If a variable is not declared PeopleCode will assume it is a local variable.

82. How long do local variables last?
Local variables are retained in memory only until the PeopleCode program ends.

83. 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.

84. How is an external PeopleCode function declared?
An external PeopleCode function is declared at the top of the program where the function will be used with a Declare function statement. The only PeopleCode that can be above a Declare Function statement is Comments.

85. 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.

86. How must 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.

87. 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.

88. 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.

89. 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.

90. 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.

91. 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.

92. What is the purpose of Gray, UnGray, Hide, and UnHide?
These built-in functions change the display characteristics of fields on a panel. The Gray built-in function will make the field display-only. The Hide will make the field invisible. This is helpful when enforcing field level security.

93.What does SetDefault do?
The SetDefault built -in function will clear out the contents of the field. The record default or FieldDefault PeopleCode can than be applied if appropriate.

94. Why are All and None used?
The All and None built-in functions check for the presence or absence of a value that the operator has entered. This can be helpful since a different value may be stored on the database if a value is not entered into a field based on its type.

95. 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.

96. Why is PriorValue used?
The PriorValue built-in function is used to determine the value of a field before it was changed.

97.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.

98.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.

99. 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.

100. 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.

101.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.

102. 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.

103. 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.

104. What is the name of the file created by the trace? DBGI.TMP which is stored in TEMP directory.

105. 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.

106. 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.

107. 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.

108. What must exist at occurs levels 1,2,and 3 but not occurs level 0? - A scroll bar.

109. 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.

110. 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.

111. 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.

112. What do ActiveRowCount and FetchValue do? Why are they generally used together?
The ActiveRowCount function returns the number of rows at a specific occurs level. The FetchValue built-in function is used to retrieve the value of a field when using a looping statement. The two are usually found together in most For Looping statements.

113. When is UpdateValue necessary?
The UpdateValue built - in function must be used when updating the value of a field within a PeopleCode looping statement.

114. How will the syntax of built - in functions change if they are used in a multiple occurs level applications?
When built- in functions are used in multiple occurs level applications, the record name and row number of the parent always must be specified.

115. Why are command push buttons used ? What are the advantages?
Command push buttons can be used to trigger PeopleCode programs. The advantage of using one is that the operator determines when the program should be performed.

116. What PeopleCode events will a command push button perform?
Any FieldEdit and Fieldchange PeopleCode programs on the field where the push button is attached.

117. What are the two different ways to retrieve a bitmap to display on the command push button? 
Bitmaps can be retrieved from a file using the Browse push button or from the clipboard using the Paste push button.

118. How do you attach a field to a command push button?
A field is attached to a command push button in the panel definition. Select Edit, panel Field properties and modify the field entries under the Record tab.

119.Why should the SortScroll function be used?
The SortScroll built-in function can be used to dynamically sort the rows of data within a scroll bar.

120.What are the parameters of the SortScroll function?
The occurs level and primary record definition to be sorted, followed by the field to use for the sort with "A" for ascending or "D" for descending. Multiple sort fields can be referenced.

121. Why is the ScrollSelect function used?
To control the process of allocating buffers in a panel group using peoplecode , instead of the application processor.

122. What are the parameters of a ScrollSelect function?
First the occurs level number and primary record definition of the scroll bar the data will be selected into. These are followed by the select record, and the When Clause within quotes. Bind variables are then passed if necessary.

123. 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.

124.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.

125.How and where can a user invoke a popup menu?
User can invoke a standard popup menu by right-clicking in an edit box or long edit box.
If a developer-defined popup menu is attached to a panel field or to the panel back ground in the panel definition, it can be accessed when the user right - click on the panel field or on the back ground, respectively.

126.What type of actions can a popup menu item perform?
A menu item in a developer-defined pop up menu can perform a Transfer, which invokes the panel specified in similar way to if the user selected the panel via menus. It can also run a PeopleCode program attached to the ItemSelected event.

127. How do u associate a popup menu with a panel field? With the panel background?
To associate a popup menu with a panel field, select the panel field in the panel definition and access the Panel Field properties. Click the use tab and specify a popup menu. To associate a popup menu with the panel back ground, access the Panel Properties using File, object Properties (or the Properties icon). Click the use tab and specify a popup menu.

128.What PeopleCode event is fired before a popup menu is displayed?
PrePopup. It allows you to alter the appearance of the popup menu.

129.What functions may be used to alter the appearance of a menu item?
DisableMenuItem, EnableMenuItem, HideMenuItem, CheckMenuItem and UnCheckMenuItem.

130. What PeopleCode event is fired when the user selects a menu item?
ItemSelected. Remember, this is associated with menu PeopleCode rather than record PeopleCode.

131. What are the major uses for SQLExec?
The SQLExec built-in function is mainly used to perform SQL Select, Insert, Update and delete statements from within PeopleCode.

132.How can SQLExec aid performance?
It can aid performance by only retrieving from the database the data required, instead of an entire row.

133. What PeopleCode event should be used to update other tables with SQLExec?
In order to update other tables that are not contained in the buffers on the client workstation with a SQLExec, SavePostChg PeopleCode should be used. This is because SavePostChg is the only PeopleCode event that is performed after the updates have been made to the database.

134. 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.

135. 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.

137. 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.

138. 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.

139. Describe the 'modal' aspect of a modal panel group?
You may only interact with the objects in the modal panel group dialog box. You cannot interact with the originating panel group nor the menus on the originating window.

140. Compare standard panel groups and modal panel groups.
Standard Panelgroups
Standard Modal Accessed via selecting a menu bar and item.
You can interact with menus like File and Go
The icon bar allows easy access to commands.
Buffer is allocated after search dialog box.
You typically only interact with data within the Record
Modal PanelGroups
Via a PeopleCode program, typically run from a popup menu item.
No interaction is possible.
There is no icon bar. Instead, there are OK, Cancel and Apply.
Buffer is allocated upon calling the DoModalPanelGroup function.
Data can be passed between the Panel groups, Originating panel and the modal Panel group.

141. Compare secondary panels and modal panel groups.
Secondary Panels Modal Panel Groups Modal Modal Single panel Panel group Usually only accessed from originating panel Via standard menu Buffer is relating to originating panel Independent buffers Keys must be related to originating panel Keys may optionally relate Can read fields on originating panel Reads only shared fields from o.p. Cannot modify fields on originating panel Can modify shared fields on originating panel Secondary panel push button or DoModal() DoModalPanelGroup()

142. How is data synchronized between the originating and modal panel groups?
You must add fields from a derived / work record that are shared between the two. You must also add PeopleCode to pass and return values in the derived fields.

143.What are the differences among the OK, Cancel and Apply buttons in a modal panel group?
OK and Apply both save the data within the modal panel group. OK also dismisses the dialog box, Apply doesn't. Cancel dismisses the dialog box without saving any changes to the modal panel group.

144. What questions should you ask yourself before starting to implement a modal panel group?
Should the originating panel group provide search key values for the modal panel group? If so, what are the search keys?

Is MessageBox a Think-Time Function?

Think-time functions are PeopleCode functions that suspend PeopleSoft processing to wait for an external event (user input, an external process to complete etc). PeopleBooks strongly recommends not using think-time functions in certain PeopleCode events.

However, what category does MessageBox fall into? Well according to PeopleBooks:

If the style parameter specifies more than one button, the function behaves as a think-time function and is subject to the same restrictions as other think-time functions.

In other words, MessageBox is not a think time function when the style parameter only specifies one button! This can only be the case when the style parameter is 0 or %MsgStyle_OK which means only show the OK button. So if you use 0 or %MsgStyle_OK as the style parameter, you can use MessageBox as a normal function in any relevant PeopleCode event.

Interview Questions

PeopleSoft Interview Questions

1. The main attributes of a Component Interface (CI) are?
Keys, Properties & Collections, Methods and Name

2. Which one of the following are standard properties when a Component Interface (CI) is created?
GetHistoryItems

3. With reference to the Component Interface Tester which of the following is NOT TRUE?
GetExisting option is equivalent to opening a record in Update/Display Mode only

4. Which of the following are TRUE when a Component Interface (CI) is created on component that has Add action enabled?
Get keys, Create keys and Find keys gets created automatically. The Create method is created along with the other Standard methods for the CI

5. Which of the following can be mapped as Find Keys for a Component Interface ?
A OR b

6. Which of the following is NOT TRUE in Component Interface (CI) Architecture?
A component interface can be mapped to multiple PeopleSoft components

7. The following are various steps that describes the peoplecode logic while implementing a Component Interface?
1. Establish a user session
2. Get the Component Interface
3. Populate the Create Keys
4. Create an Instance of the CI
5. Populate the required fields
6. Save the CI

8. Will Tuxedo continue to be used in a PeopleSoft/WebSphere or PeopleSoft/WebLogic environment?
Yes. WebSphere or WebLogic are used as the HTTP server and servlet engine. They are not used as middleware with the PeopleSoft Application Server. Tuxedo is always used with PIA, regardless of the HTTP server or Java servlet engine.

9. Can a PeopleTools 8.4 and a PeopleTools 8.1x database run on the same machine?
Yes, databases can co-exist on the same physical machine. In most cases, the databases themselves can exist within the same RDBMS, however, it is important to verify that the database version required by PeopleTools 8.4 is the same as for the current PeopleTools 8.1x implementation.

10. Can a PeopleTools 8.4 and a PeopleTools 8.1xapplication server run on the same machine?
Yes, both PeopleTools 8.4 and PeopleTools 8.1x application servers can run on a single machine. It is important to ensure that there are no port clashes between the installations.

11. How does the PeopleSoft Enterprise Portal work with 8.1x and 8.4 applications?
There are several scenarios that may exist when customers use the PeopleSoft Enterprise Portal with a mixture of 8.1x and 8.4 applications. Specific information on the use of the PeopleSoft Enterprise Portal in a blended environment will be available in a forthcoming white paper, which will be available on Customer Connection. In general, the recommendation is to use the PeopleSoft Enterprise Portal 8.4with 8.1x and 8.4 applications, rather than an older version.

12. For the servlet layer on the web server, what version of the Java Servlet API are the PIA Java Servlets coded to with PeopleTools 8.4?
The PIA Java servlets in PeopleTools 8.4 are coded to JavaSoft's Java Servlet API 2.0 and are fully compatible with Servlet API 2.2. It should be noted that the PeopleSoft Internet Architecture is supported only on the BEA WebLogic and WebSphere servlet engines.

13. IBM How should Web Application Servers be used with PeopleTools 8.1x and PeopleTools 8.4?
The PeopleSoft Internet Architecture uses a web application server and an HTTP server. PeopleTools 8.12 and above include both BEA WebLogic and Apache with Jserv. With PeopleTools 8.4, both BEA WebLogic and IBM WebSphere are bundled. Apache with Jserv is no longer a supported web application server combination. Customers can choose which web application server to run during installation time. In a mixed PeopleTools 8.1x and 8.4 environment, each PeopleTools installation should have their own chain of web application server and application server, PeopleSoft Proprietary and Confidential Page 5and these can be on the same machine. For example, a PeopleTools 8.1xinstallation using Apache and Jserv could reside on the same machine as a PeopleTools 8.4 installation using IBM WebSphere. Care should be taken to ensure that unique port numbers are assigned to each server chain.

14. Why did PeopleSoft bundle IBM WebSphere Advanced Single Server Edition rather than Advanced Edition?
The Advanced Single Server Edition (AEs) of WebSphere provides the same core J2EE and Web Services programming model as the Advanced Edition (AE) with simplified administration. In the AE version WebSphere uses DB2 or other standard database to keep the configuration and runtime information to support very large farm of WebSphere servers. However, it is one more database to install, administer and maintain. The AEs version does not use the database and uses file based configuration in a way that is similar to BEA WebLogic. PeopleSoft and IBM WebSphere architects determined that AEs version would satisfy the deployment requirements of PeopleSoft customers and would make it easy for owning and administering PeopleSoft Applications based on WebSphere.

15. Will the PeopleSoft Internet Architecture, now that it embeds BEA WebLogic and IBM WebSphere, work with my other corporate web servers and tools?
One of the core values of the PeopleTools development group is investment protection. The time, money and resources that you may have already invested in licensing another web server, training developers and administrators, building and deploying other web applications will not be compromised by this decision. How is this accomplished

16. Is BEA WebLogic the same thing as the web server that was previously on the Tuxedo CD?
No. The web server that was delivered on the Tuxedo CD has absolutely nothing to do with WebLogic. WebLogic is a web application server that is designed for large-scale production websites. The HTTP server on the Tuxedo CD was only there to provide a mechanism for launching the graphical Tuxedo administration console if the Tuxedo administrator didn't already have a web server in place. It was never intended for large-scale, production website use — only for a system administrator or two.

17. Are disconnected mobile applications supported in PeopleTools 8.1x?
No. The PeopleSoft Mobile Agent architecture, which is used to support disconnected mobile applications, is only available in PeopleTools 8.4. The PeopleSoft Mobile Agent is dependent upon certain core technologies that were specifically developed for PeopleTools 8.4.

18. Is WebSphere certified on PeopleTools 8.1x?
No. IBM WebSphere is certified on PeopleTools 8.4 only. Customer wishing to use IBM WebSphere with PeopleTools 8.1x may take advantage of an IBM WebSphere for early adopters program, created and managed by IBM. Further information about this program can be found in the whitepaper The IBM WebSphere 8.1x Early Adopter Program. Are there additional license requirements for IBM WebSphere

19. Are there advantages or disadvantages to using BEA WebLogic over IBM WebSphere or vice versa?
No. Both products are certified with PIA as of version 8.4 and work equally well. By offering both BEA WebLogic and IBM WebSphere, we give our customers more choices and flexibility to run PeopleSoft in their preferred environment.

20. Is web server load balancing supported with PeopleTools 8.4?
Customers can set up clusters of BEA WebLogic or IBM WebSphere servers to do web server load balancing. In such scenarios, if an instance is down, requests are automatically routed to another instance. For more information on high availability and clustering with WebLogic, WebSphere and other web servers.

21. Both BEA WebLogic and IBM WebSphere have the ability to plug into many different web servers. Does PeopleSoft support the web servers that they plug into?
BEA and IBM provide plug-ins for many of the leading web servers. This allows the customer to use their own HTTP web server and WebLogic's or WebSphere's Java servlet engine. PeopleSoft uses this plug-in capability to support IIS. We have no reason to believe that there will be any issues with other web servers that WebLogic or WebSphere are able to work with through their plug-in architecture, but PeopleSoft GSC will not support these other web servers with PeopleTools 8.4

22. Does Application Messaging work between 8.1xand 8.4 applications?
Application Messaging is used by PeopleSoft applications to communicate with one another. This is true not just for 8.1x and 8.4 applications, but also between an 8.1x and an 8.4 application. For example, the HRMS 8.3 applications, which are based on PeopleTools 8.15, can communicate with Financials 8.4applications, which are based on PeopleTools 8.4, using Application Messaging. If specific issues materialize relating to the Application Messages published by certain applications, these new messages will be made available to customers.

23. Why is PeopleSoft no longer supporting Apache Jserv?
Apache JServ was a servlet engine that was supported in PeopleTools 8.1x. This support has been removed from PeopleTools 8.4 for several reasons: v JServ is no longer an active product and is in maintenance mode and there are no longer any new official releases. v Our customers have exhibited a desire to use commercial products for mission-critical enterprise web application servers rather than open source solutions. Therefore, moving to support Tomcat is not seen as a reasonable solution. v Apache can still be used as an HTTP server with BEA WebLogic .

24. What HTTP servers and Java servlet engine combinations are supported with PeopleTools 8.4?
All popular http servers (reverse proxies) are supported. Please refer to the platforms database on Customer Connection for specific information on current certified platforms

25. WorkItem is available in?
WorkList Record

26. Where are workflow work items found ?
Worklist

27. In which platform does Crystal and Psnvision works?
Windows (Correct)

28. You want to update your password and enter a hint for forgotten password. What would you access?
User Profile

29. Question based on changing prompt table, what happens when changing from NO EDIT TO EDIT option?
user can type only prompt table values and the default values gets populated from the database.

30. Customization done in Dev DB, Which tool i will use to move it to Prod DB?
Use App Designer -> Copy DB

31. Your Onsite DBA has called you up and told you that one of the tables PS_ABC_TAO has grown very big in size. Based on the standard naming convention, you have determined that the record is a temporary record since it ends with _TAO You look into the database and decide that that the data is not required any more. You ask the DBA to delete the data in the table. Next day you get a call from an irritated user who says that a daily process that took only 1 minute to run is taking about 2 hours today. You look into his process and find that it uses PS_ABC_TAO as a temporary table. What would you suggest the DBA to do ?
Update statistics on the table

32. (Some scenario) Question relating DBA Purging Temporary Table?
Update Statistics

33. How many Message nodes are possible for a database.?
Unlimited

34. How will you get a single output by combining two or more queries?
UNION

35. What BEA product is used for DB transaction in PS?
Tuxedo

36. Which one of the following Data Types is NOT supported by the PeopleCode programming environment?
TIMESTAMP

37. What hyperlinks available in PeopleBooks? Some options with different hyperlinks not available in peoplebooks, select the correct one?
Study all hyperlinks in the first page of people books.

38. The example below demonstrates the use of SQR flags in the configuration manager directories folder: -F C:PSHrmsSqrWhat do the above SQR flags signify to the SQR Report Writer upon execution?
Specifies the output path

39. When a business requirement in Fit/Gap Analysis does not meet by PeopleSoft then?
Some options:
1. Customize PS application (Yes)
2. Buy third party software (Yes)
3. Call PS Development Center for Enhancement (Yes)

40. What are the status available in PeopleSoft Domain Status Menu?
Server, Client and Queue Status

41. Which of the following are part of an AE program ?
Section ,Step and Action

42. Which of the following fires after the database is updated?
SavePostChange

43. What event gets fired after DB Update?
SavePostChange

44. For downloading patches and fixes , you have gone to the customer connection and looking under 8 april, 2000 and see Report IDS like R-CCHEN-VP14JM. What does R stand for ?
Released

45. In which one of the following views would you see the fields, criteria, and other details associated with the current query?
Query view

46. PeopleSoft tracks object changes using a system table. Which PeopleTools System table is used to track object changes?
PSRELEASE

47. PeopleSoft has its own naming convention for system and non-system (application) tables. In the list below, RECORDNAME refers to the name of any table or record. Referring to the above information, which one of the following identifies the naming convention PeopleSoft uses for system tables?
PSRECORDNAME

48. Which process is used for running AE programs which are to be run at a frequency of less than a day ?
PSDAEMON

49. you can specifically trace the activity of the PSAPPSRV server process by setting the?
PSAPPSRV.tracesql

50. Which of the following is correct in order to start the Process Scheduler Server from the command line using psadmin.?
Psadmin –p start –d

51. In the following url http://localhost/Peoplesoft/EMPLOYEE/PSFT_HR/c/PROCESS_SCHEDULER.PRCSTYPEDEFN.GBLwhich one is the component definition?
PRCSTYPEDEFN.GBL

52. I have created a Menu and a Page and given user access to that page, which of the tables gets affected on this (Scenario)?
PeopleTools Tables

53. You are a PeopleSoft Partner and wish to get information on database performance benchmark ( or something like this) Where would you look for the info ?
PeopleSoft Knowledge base SYSAUDIT finds for Orphaned Records

54. Which RDBMS uses Tablespace?
Oracle, DB2, Other Options: SQL Server, Informix, Sybase

55. Changing Prompt Table with NO Edit to Prompt Table with Edit?
Only selection of existing data is possible

56. Which command is valid in both bootstrap and regular mode when operating the data mover?
GRANT_USER

57. PeopleCode events pertaining to Record Field:?
FieldEdit, SaveEdit and RowDelete

58. Which of the following are Record field events ?
FieldChangeSearchSave and SavePreChange

59. Which of the following commands can be run in Bootstrap mode?
ENCRYPT_PASSWORD

60. What commands are valid in BS mode?
ENCRYPT_PASSWORD

61. What views available in Application Designer project workspace?
Development and Upgrade

62. Which of the above record definitions is NOT stored on the database and is therefore NOT required to be built?
Derived/Work Record

63. You have downloaded an Application fix as a project from the customer connection. Where would you upgrade it to ?
Demo

64. PS Query definition is stored on which server?
DB Server

65. How do you login into BS mode?
DB Access Id

66. If you want to log into DataMover in Bootstrap mode, you would login as..?
Database superuser

67. What is added as new option in Build apart from Create Tables, Indexes, Views?
Create Trigger

68. Where will you configure for failover of Application Server (Scenario)?
Configuration.properties

69. Which one of the following is a transaction control statement ?
Commit

70. What Record Changes does not affect Database?
Change in List box in Record Field properties (correct)

71. Which one of the following steps is NOT part of performing an upgrade?
Apply all outstanding patches, prior to upgrade

72. Update and Fixes: R-* files refers to?
Application Updates and Fixes

73. How do you set up table-sharing in PeopleTools applications?
Add the field, SETID, as a key field to each table you want to share, and then define the set control field. PeopleSoft reserves ALL Message Sets (in Utilities, Message Catalog) up to which number?

74. What is the default Crystal Report that PeopleSoft Query tool creates?
ACTQRY.RPT

75. (Some scenario) Find which is not part of AE Program, Options would be?
Action,Section,Step,Event

76. Which of the following are true with respect to validate signon with database option enabled in psadmin.?
1. The application server first attempts to connect to database using the user id and password as part of the database connection string.
2. User must be defined on either the operating system or the database and within the PeopleSoft.

77. Which of the Following are true for force Shutdown In PeopleSoft Domain Shutdown menu?
1. shuts down the domain using the tmshutdown -k TERM -c command.
2. A forced shutdown is a non-quiescent shutdown that immediately terminates all the processes

78. After logging into customer connection, you wish to search for fixes/patches. What are the search criteria's available ?
1. Report ID
2. Date / time
3. Release

79. What are the Search Keys you use to find Patches and Fixes?
1. Release
2. Updated date time
3. Report Id

80. Which one of the following tree types is NOT supported in the PeopleSoft tree manager?
1. Query trees
2. Combination trees

81. Which Web Services is only used as a Proxy Server?
1. MS IIS
2. Apache

82. In PeopleCode Debugger what are the valid values?
1. Go
2. Step Over
3. View Variable Value

83. Select the components which form the part of Integration Broker?
1. File Layout
2. CI
3. app. Messaging

84. what are the views available in App. Designer project workspace (multiple answer)?
1. Development
2. Upgrade

85. What are Menu types available?
1. Component
2. PeopleCode
3. Separator

86. Database Connectivity Drivers should be installed in the following System?
1. Client Workstation in two tier mode (Yes)
2. App Server (Yes)
3. Batch Server (Yes)
4. Data Mover (Yes)

87. Where do you need to install connectivity software?
1. batch server
2. App server
3. two tier client

88. What are the People Tools available for Integration Broker?
1. Appl. Messaging
2. Component Interface
3. File Layout

89. A Customer wants to use a new Image in HRMS, where it is stored?
DB Server

90. Can you access pia from mac OS?
Yes

91. Which language technology is used in app messaging?
XML

92. Which one of the following PeopleCode debugging tools automatically converts values of any data type other than object into string values for viewing during debugging?
WinMessage

93. PIA screens and recognize it?
Where are the work items presentWorkilist

94. Where do u set the web server cache?
webserver configuration.properties file

95. Your company obtained the newest Application Release of PeopleSoft, and you need to prepare for the upgrade. Upon reading the new Release Notes, you notice that changes were made to two COBOL modules (batch programs). You need to decide how to compare the current versions of these COBOL programs with the versions delivered with the new PeopleSoft application release. Which would be the fastest method of comparing these different versions?
Use non-PeopleSoft comparison tools. 5.

96. True or False. A business Process be used as a Navigator Home page ?
true

97. True or False. The physical, dedicated tables are locked at the time the Application Engine program is loaded into memory?
True

98. True or False. State Record can be Dynamic Record?
True

99. True or False. In Call Section – Action it is possible to leave the Program ID with blank Value in certain cases?
True

100. True or False. You can assign multiple databases and application servers to a single profile. But, each database and application server must be assigned to only one profile?
True

PeopleSoft Knowledge Collection

1. What is a set ID or Table set?
It is going share common control table values.

2. What is an object group?
Collection of one or more objects that form a logical group for security purpose.

3. What is business Process Map?
It is an alternative method for accessing panels or it is a graphical representation of a map.

4. What is an activity?
It is a collection of logical steps. It represents specific transaction a user might need to perform.

5. What is a business Process?
It is a collection of activities and it represents broad area functionality, categorizing the several activities.

6.What is a Process?
A task involved by the system.

7. What is a process instance?
It is a process number used to request process.

8. What is a process server agent?
It is going to initialize, select and parse the program.

9. What is a command line parameter?
The executable (.EXE) file is nothing but command line parameter. E.g. C:/SQLbin\SQL.exe.

10. What is Parameter List?
It defines under what database, platform will the program. (Nothing but the meta-strings)

11. What is Application Upgrade?
It is a migration of object from one database to another and updating other system components such as application software.

12. What is Mass change and explain the uses of Mass change?
Mass change is a SQL generator you can use to develop and perform custom applications. Using mass change, a developer can set up a series of INSERT, UPDATE, OR DELETE SQL statements that the end user can execute to perform business functions.
The overall structure of Mass change is similar to that of People soft Query
Except that Query retrieves data from the database while mass change actually updates the database.
The uses of Mass change are as follows.
1. It is used to perform high volume set oriented transactions.
2. Copy data from table or table
3. Archive table data (Archive means that the data does not have backup file and uses to update the values)

13. Why use Mass change and why not SQL execute to update a record, which is not attached to the panel?
The reason why Mass change is preferred over SQL exec is….
1. Two- Three Mass change program can work at a single time.
2. Data / information need not be defined in Mass change
3. Mass change can be used for file download upload.

14. What are the steps involved in Mass change?
The following are the order of steps involved in Mass change.
`1. Define type
2. Assign to template
3. Operator security
4.Mass change definition

15. What is Mass change group?
Adding all Mass change into a group. (i.e., Multiple Mass change definitions can be executed simultaneously).

16. What is workflow?
To an extent all the business processes defined using the Application designer involve workflow. However we usually reserve the term to refer to processes that involve multiple users and the routing of data between the users. People soft workflow tools help you build the routings into your computer systems. You use them to tie together the individual steps so that the system can help coordinate the activities.

17. How Workflow is controlled?
It is controlled by Decision Point (it is graphically denoted by a (?)). Where user has to choose which activity is appropriate towards the next step.

18. What are the key fields used in Key list?
7 key fields used in a key list. They are as follows..
1. Busprocname- (Business Process Name)
2. Activity name
3. Event name
4. Work list name
5. Instance Id
6. Transaction Id
7. Emplid

Note: While defining the above fields in the record definition, a key has to be assigned in the record field properties.

19. What is routing in workflow?
Transfer of roles / users

20. Why workflow is used and explains the advantage of workflow in People soft application?
Workflow typically eliminates the job tasks associated with controlling paper flow, and frees people the once performed clerical functions to do more meaningful work.
• Tasks that don't require user involvement
• Tasks that involve non People soft users
• Tasks that several users work on together.

21. Define the components of workflow?
There are 3 underlying components of workflow i.e., Rules, Roles, Routing.

Rules
Rules are your company's business practices captured in software. Rules determine what activities are required to process your business data. The rules are contained in policies and procedures documents.

Roles
Roles describe how people fit into the workflow. A role is a class of users who perform the same type of work, such as clerks or managers. Your business rules typically specify what user role needs to do an activity.
Roles direct the work to types of people rather than to individuals. Identifying roes instead of individual users makes your workflow more flexible and easier to maintain. Roles remain stable even as people change jobs.

Routings
Routings connect the activities in the workflow. They are the systems means of moving information from one place to another, from one step to the next. Routings bring the flow into workflow. The network of routings creates a business process from what used to be isolated activities. Routings make it possible to deploy applications throughout the enterprise. They work through the levels and departments of an enterprise to bring together the role that are necessary to complete complex tasks.

Section2

1. What is a workflow processor?
Workflow processor is a suite of online agents that run and control the workflow in your business processes. Once you define your business processes, you set up agents to do the work for you. Workflow processor consists of:

Word lists, which are ordered lists of the work a person (or group of people) have to do.
Application agents, which detect when a business rule has been triggered as users enter data into a People soft application. They evaluate who should action the new work instance (the role) and routes it to them (the routing)
The message agent, which processes messages sent to People soft external systems, such as electronic mail systems, interactive voice response systems, kiosks, other workflow systems, even the internet. It provides an application-programming interface (API) that enables third-party systems to integrate with People soft applications.

Database agents, which monitor the People soft database to identify items that need to enter workflow, such as overdue requisitions, scheduled performance reviews; departments that are over budget-any item you want to be alerted about. Workflow Administrator gives you the ability to access, monitor, analyze, and control workflow in your organization, which activities take the longest, which work lists are overloaded, and you can redesign work when an employee is out sick

2. What is a Tree?
It is a People soft object that defines the grouping and hierarchical relationship between the values of database fields. It also specifies how the system groups together the values of the fields for the purpose of reporting and security access.
Note: A particular tree is imported through out People soft system. Only one tree should be active throughout People soft system at a time.

3. What is a Tree Node (Unit)?
It represents the group of detailed values that report to it.

4. What is a Tree level?
It provides the short way to refer all nodes that share a single parent.

5. What is a node?
It is an individual branch of main level.

6. What is a Parent?
A node, which has other nodes reporting to it.

7. What is a child?
Lower level than its parent is called a child.

8. What is a sibling?
A node, which is placed at the same level, is called sibling.

9. What is meant by category in Tree manager?
High-level grouping under which you can organize your tree structure and tree definition.

10. Explain the various options to define a Tree?
There are 2 options to define a Tree..
1.Detailed Tree: used to gather information about the various parts of the tree.
2.Summary Tree: collection of detailed tree nodes.

11. What are the advantages of Tree Manager?
The following are the advantages of a Tree Manager..
1. By building a tree you can make rules centralized and can be used throughout the system.
2. Tree makes it easier to select the values you want to include in a report, ledger or security profile.
3. The main advantage in a tree is that it summarizes the rules visually and you can easily see as to now the values relate to each other.

12. What is an application reviewer?
It is a tool, which is window, based and designed as an aid in debugging People code programs. It allows us to investigate processing errors and to set a break point in between programs.
Note: People code works in data on the stacks. (Stacks store the internal machine execution numbers)

13. What are the important Cross-reference Reports in People soft?
There are three important Cross-reference reports in People soft..
1. XRF PCFL (Cross reference people code to field)
2. XRF FLPC (Cross reference field to People code)
3. XRF PNPC (Cross reference panel to People code)

14. What is a Query Tool?
Query tool is a powerful tool for defining database queries in an easy-to-use graphical environment. You can extract the precise data you want using visual representation of People soft database.

15. Enlist the uses of Query tool?
The following are the uses of Query tool..
1. It is used to simplify SQR statements
2. It can be used to generate one-time adhoc queries or queries used repeatedly.
3. It provides security for queries.
4. Query tool can be used to generate Pnvision and Crystal reports.

16. Explain briefly the types of queries?
There are 3 types of Queries
Search for records. Many of the search dialog boxes in People soft applications enable you to open Query and create a query based on the search record definition. This option enables you to search for records based on sophisticated search criteria. This type of query is called a search query.

Determine who to forward information to. You can write queries that People soft Work flow uses to determine who to send e-mails, forms, or work list entries to.
This type of query is called a role query>

User defined queries (adhoc query) is used to generate reports in the user defined format.

17. Explain briefly about the Database tab and Query tab?
When you click the database tab, you see a list of available record definitions (or record components). You can view these records as either a tree of access groups or as an alphabetical tree of records to which you operator ID has access.
When you click the Query tab, you see all the components used in the current query (such as record components, field components, prompts, expressions, and so on.

18. What is an Access Group in a Query tool?
Access groups provide a way for you to logically organize the record components to control security access within Query. It is not a physical representation of your database. The record components shown are those that the operator has been granted access to.

19. Explain briefly about Crystal Reports?
With Crystal Reports Pro from Seagate software, you can generate attractive reports. Crystal reports builds directly on queries you create in People soft Query. Crystal reports pro for windows is a report formatter that helps you to generate clear and easy to read printed reports containing data from your People soft applications. You can generate standard reports we have already created and saved in Crystal, or create your own custom reports.
Generating formatted output in Crystal involves two steps. First you create and save queries in People soft Query then you create report definitions in Crystal to format the fields (columns) used in the queries. Once you have created and saved the report definitions, you can print reports that are easy to read and understand. You can generate reports in a variety of different formats, including ASCII files, Microsoft Word documents and spread sheets.

Section3

. What is Application Engine?
It is the tool, which performs, background SQL processing against our application data tables. It is an alternative for COBOL, SQL or SQR
Programs. Other tools such as query tool and mass change generate SQL.

2. What are the parts of Application Engine?
Application Engine consists of 4 parts.
1. Application: It is a set of SQL statements.
2. Steps: It is the smallest unit of work committed in an application.
3. Sections: Comprises of 1 or more steps
4. Statements: SQL statements like update, insert, delete or select are issued.

3. What is the advantage of using Application Engine?
The following are the advantages of using Application Engine.
Encapsulation
Unlike applications developed using COBOL or SQR, Application Engine applications reside completely within your database. With Application Engine, there are the programs to compile, no statements to store, and no need to directly interact with the operating environment in use. You can build, run and debug your applications without existing People Tools.
Effective Dating
Application sections are effective dated-meaning you can activate/deactivate a section as of a particular date. This enables you to archive sections as you modify them, instead of destroying them. In the future if you decide to revert to a previous incarnation of a section you can simply reactivate it.
SQL / Meta-SQL Support
In addition to writing your SQL within Application Engine, you can also copy SQL statements into Application Engine from SQL talk or any other SQL utility with few – if any changes.
RDBMS platforms have many differing syntax rules – especially in regard to date, time and other numeric calculations. For the most part you can work around this problem using Meta-SQL which Application Engine supports. This language was created to handle different RDBMS SQL syntax's by replacing them with a standard syntax, called Meta-strings.
With in Platform specific sections
You can also have the ability to call generic portions of SQL statements by using the & CLAUSE function. This means you can write your generic SQL portions just once, and reference them from your different platform versions.
Set Processing Support
Set processing is a SQL technique used to process groups (or sets) of rows of one time rather than one at a time. Application Engine is particularly effective of processing these types of applications.
Object Orientation
Unless designed to anticipate changes in field attributes. COBOL applications may need to be modified when things change. If a developer increases a field's length, then it may need to be changed in every instance where the COBOL program uses this field as a bind or select variable. This can require a good bit of effort. And, if not handled properly, a change like this can cause confusing errors. For example, if the length of a field in the COBOL is wrong, it may work fine, or you may get an error, or the field may get truncated.
One of the corner stones of People soft functionality is Application Designer. Because of the way it works, most field attributes (type, length and scale) can be specified once, globally. If the field is used on more than one record, it has the same attributes in each of these records.

PORTABILITY
You can use Data Mover to import/export your applications. This means that you can export an application(s) into a file, and attach it to an e-mail message. Then, the recipient can simply use the IMPORT feature of Data Mover, and the application is ready to run.

4. What is a Cache Record?
The Cache record (or cache) is a physical People soft record, keyed by process instance that must be created and maintained by the Application Engine developer. This record defines the fields that an application uses to pas values from one SQL statements to another. You retrieve cache field values by the Application Engine and BIND function; you assign cache values using & SELECT.

5. What is unique about panels, which refer to view as opposed to physical tables?
Panels that refer to views in People soft are not used for insert, update or delete. All fields on these panels are display only.

6. How search records are used?
Search records are used to search, retrieve and filter data. Search records also define the structure of the dialog box.

7. Where are the search records assigned?
Search records are assigned to a panel group in a menu.

8. Does the search record for a panel has to be the same as the record being
Accessed on the panel? Why or Why not?
The search record for the panel does not have to be the same as the record being
Accessed on the panel because the search record is used to search for and or
Filter the search key.

9. How can a search record dialog box be suppressed?
A search record dialog box can be suppressed by assigning a search record that does not have search key.

10. What do search views delivered by People soft do besides displaying the dialog
Box?
Search views delivered by People soft are used to implement row level security as well as display a dialog box.

11. What do you need to do to modify the search views?
To modify a search view, we need to change the record definition and recreate the underlying SQL view.

12. When would you have to alter the tables and modify the panels, in the process
of modifying search records?
You need to alter tables and modify panels, when you modify a search record to include a new field.

13. When will there be two occurs level records in a panel group?
If you are referring to two different record definitions that share a same high-level key then two-level one-scroll bar can be displayed as stacked scroll bars.

14. In what order does the application processor fill buffer for the panel group?
The application processor uses occurs level in the panel group to fill the buffer.

15.Differentiate Error V/s Warning statements in People code?
The error statement issues a message and the condition causing the error must
Be corrected before proceeding. The warning statement issues a message and
The user can proceed without changing any values.

16. Where can you run Jobs?
The process scheduler can run jobs on the client or a server machine.

17. What restrictions are placed on multi-process jobs?
A multi process jobs can only be scheduled to run on a server.

18. List the three output destinations available through the Process Scheduler?
You can direct the output to a printer file and windows screen.

19. Where do you set up default operator / class options for Process Monitor?
In operator security, using change, process profile.

20. What are the advantages of incorporating Table set ids into People soft applications?
Table set Ids allow you to share sets of values (codes) in the same prompt table.

21. What fields should be at the tope of every search record definition that use table set Ids?
SET ID is the field that should be at the top of every record definition that uses table set Ids.

22. What is a Record Group ID?
A Record group ID is a group of record definitions that are Sharing the same set control field.

23. What do you determine using Table set Ids control information?
Table set ID control information determines how the information should be shared. The Table set ID control panel defines which Table set Ids set control filed code will use for each record group.

24. What are the three types of Maps used by the navigator?
The 3 types of Maps used by the navigator are..
1. Business Process Map
2. Activity Map
3. Step Map

25. What are the types of layers in Crystal reports?
There are 4 types of layers in Crystal Reports. They are..
1. Report Header - In this, we will write title, date, and logos of the company.
2. Page Header – Used to write column headings.
3. Detail – Contains database column values.
4. Page Footer – Used to write page numbers and address.

Section4

1. What is PIA and what are its components?
It is n-tier architecture. We have client, web server, application server and Database server. We have jolt and tuxedo. We have WSL, WSH, JSL, JSH, QUEUES and services.
In database server we have system tables, peopletools tables and application tables.

2. Differentiate Field edit and Save edit?
In Field edit for each field change, a transition to the application server to the database is taken place. In Save edit for all the fields, only one transition to the application server to the Database is taken place.

3. What are think time functions?
Think-time functions suspend processing either until the user has taken some action (such as clicking a button in a message box), or until an external process has run to completion.

4. In which events error & warning are used most extensively.
Field edit, Save edit, Search save, row delete, row insert.

5. Is there any way by which you can find out whether the user is in Add mode or Update mode?
%mode---returns A---for Add mode. Returns U –for Update mode

6. What is the purpose of the SQLEXEC function? What are its benefits and draw backs?
SQLEXEC is used to execute the sql statements (select, insert,update,delete).
We can get only one row at a time.

7. How is the searchinit event most often used by people soft application?
A) Searchinit fires before the search dialogue page is displayed to the end user.For this reason searchinit is often used to enhance roll level security by inserting and graying out certain values to the search dialogue page.

8. What are the options for using SQL in people code?
a) Sqlexec
b) Record class methods (selectbykey, delete, insert, update)
c) Using sql class, its properties and methods.

9. What is the difference between component buffer and data buffer?
Component buffer contains all the data of the active component.
Data buffer contains the data other than the data in the component buffer (Data of other records)

10. What databuffer classes are available in people code?
Rowset, Row, Record, Field, Array, File, Sql, chart, grid and so on.

11. When we select a component what events will be fired?
If default mode for component is search mode: only searchinit will fired .If default mode for component is new mode :field default, field formula, rowinit, searchinit.

12. What are different variables in people code and their Scope?
System variables and User defined variables.
Scope --- Global, Component, Local.

13. What is default processing?
In default processing, any blank fields in the component are set to their default value. You can specify the default value either in the Record Field Properties, or in FieldDefault PeopleCode

14. What is difference between field default and Row init?
Field default specifies only the default value for a field when we are in Add mode.
Row init fires only when a row of data coming from database to component buffer.

15. What is difference between saveprechange and savepostchange? Which function directly interacts with the database?
Saveprechange---last event that executes before updating the data from component buffer to the database.
Savepostchange –fires after the updation of data in the database.
SQLEXEC --- function directly interacts with the database.

16. What is Getlevel 0()? What is the use of %subrec and %selectall functions?
Getlevel0 ()---used the get the rowset of the level0.
%subrec--is used only in Dynamic View SQL where it expands to the columns of a subrecord:
%selectall--%SelectAll is shorthand for selecting all fields in the specified record, wrapping date/time fields with %DateOut, %TimeOut.

17. What is an array in people code? What is maximum dimension of an array? Which function inserts values into an array? What is "pop"?
An array is a collection of data storage locations, each of which holds the same type of data.
The maximum depth of a PeopleCode array is 15 dimensions.
Push and unshift are the functions of the array used to add the elements into the array one from the end of the array and one from the beginning.
Pop is a function of array used to select and delete an element from the end of the array.

18. What is difference between Getrowset and Createrowset in people code?
Getrowset –is used to get rowset for a record in the component buffer.
Createrowset—is used to create rowset for a record which in database, and is also called a Standalone rowset

19. Can you save the component programmatically?
Using Dosave and Dosavenow functions.

20. What is differed processing and its advantages?
Postpones some user actions to reduce the number of trips to the database so that increases the performance (in system edits, field edit, and field change).
Advantages:
1) Reduces the network traffic.
2) Increases the performance.
33. Write the syntax to access third level record field using object oriented peoplecode?
&fld=Getlevel0 ()(1).GetRowset(Record..GetRow(1),
GetRowset (Record.).GetRow(1),
GetRowset (Record.).GetRow(1),
GetRecord (Record.).GetFieild(Field.))

21. What are the built-functions used to control translate values dynamically?
Adddropdownitem ()
Deletedropdownitem ()

22. How to populate data into grid in online?
&Rs.Select or Scrollselect ().
SECURITY
Before accessing a people soft application what levels of security must be passed through.
a) Field level security
b) Row level security
c) Maintain security
d) Definition security
e) Portal security.

23.What is the use of primary permission list in user profile?
Primary permission list is used for mass change and definition security purposes.
How to authorize the user to run a process or report?
To authorize a user to run a process, the process group, which contains the process or report, should be added to the permission list of that user.

24.How to give access to the records that are to be used in a query?
To give access to the records that are to be used in query, we have create a new query security tree and add the records which we want to give the access and then assign a access group to the tree. After that we have to add that query tree and query access group to the permission list.

25.What are the rules used by the system to determine whether a user is authorized to update an object?
The user should have the permission to update the object. This is given by the Definition security. The group, which holds the object, should be added to the permission list of the user in update mode.
What are the different ways we can set up the portal security to access component in portal?
1) Structure & content
2) Menu import
3) Register component