Top PeopleCode Interview Questions
Q – 1 Explain SMTP sendMail failed error during testing of HRMS upgrade to 8.9 (8.46.09 tools). On all of our triggerbusinessevents trying to send an email, we receive the above error. Any help would be appreciated.?
Ans-
Solution 1:
Ask your DBA to UP SMTP server.
Solution 2:
make sure that you have filled all the feilds in the page or attach specified files if any.
These are the only reasons of above error.
Q – 2 Can you explain about component Buffer?
Ans- When you open any page in a component, the system retrieves all of the data records for the entire component and stores them in one set of record buffers, organized by scroll level and then by page level.
This component buffer consists of rows of buffer fields that hold data for the various records that are associated with page controls, including the primary records; related display records, derived work records, and translate table records.
PeopleCode frequently must refer to data in the Component Buffer, that is, the area in memory that stores data for the currently active component.
There are two methods of specifying a piece of data in the Component Buffer from within PeopleCode:
Contextual references, which refer to data relative to the location of the currently executing PeopleCode program.
References using scroll path syntax, which provide a complete, or absolute, path through the Component Buffer to the referenced component.
The component buffer contain current active component data it is temporary memory area .
Q – 3 Tell me What is the diff between component level peoplecode and record level peoplecode?
Ans-
Record Level peoplecode:
The peoplecode written on the Recoed level Peoplecode will affect all the Components in which that particular record is used, and if we want to execute the record peoplecode for particular Component then we would need to add following code in before existing peoplecode
If %component = component. [statement_list_1]
[Else
[statement_list_2]]
End-If;
Component Level Peoplecode:
The component level Peoplecode works only for that particular component and if any record in the component is referenced by component level peoplecode then it would not effect any other component where same record is used as it was doing in above case.
Sequence: first Record level peoplecode will fire and then Component level peoplecode.
As far as sequence is concerned
Q – 4 Tell me What is the difference between SQl Object and SQl Exec?
Ans- SQL Object is a peopletool definition which can be created using app designer as well as using peoplecode command CREATESQL( ) , it is mainly used for reuseablility of the sql statements. so whenever this statement is required no need to hard code, just create an sql object of the same and use where ever it is required.
sqlexec is a peoplesoft delivered function used to retrive only one row and u can update multiple rows of data. It directly interacts with the database.
Q – 5 How to comment out a piece of the peoplecode in a program?
Ans- REM can be used to comment a single line, but it will be processed by the comp. processor;
Single and multiple line commenting:
/* PeopleCode stmts
—— —— —— —-
*/
Nested Comments:
<* /* PC Stmts …… ….. ….. */ /* …… Some info on code …… */ /* More comments */ *>
Q – 6 Tell me Is there any function exist in peoplecode which stops the processing of whole component?
Ans- i think, it is “Error” Function. Use the Error function in FieldEdit or SaveEdit PeopleCode to stop whole processing and display an error message. It is distinct from Warning, which displays a warning message, but does not stop processing. Error is also used in RowDelete and RowSelect PeopleCode events.
Q – 7 Tell me Where can we write the peoplecode?
Ans-
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
Q – 8 Explain the advantage and disadvantage of sqlexe in peoplecode?
Ans- By using SQLExec function we can do the manipulation to the database. we can write insert,update,delete sql commands.But drawback while selecting the data using sqlexec, it will return only one at a time.another drawback, if the name of the records changed, then you have to make the changes in the code as the query will in the quotes inside sqlexec
Q – 9 Explain about component Buffer?
Ans- Component Buffer is the area in memory that stores data for the currently active component.
Q – 10 Tell me with an example, where u used peoplecode extensively?
Ans- Using Application packages is a very good way of coding your business logic and display logic.
This way you can modularize your code very well and you can bring in the Object Oriented way of programming which will be very easy to develop and maintain.
Q – 11 How to comment out a piece of the peoplecode program?
Ans- Singleline comment: REMARK[REM] comment;
Multiline comment :/*comment*/
Nested comment :<*comment /*comment*/comment*>
Q – 12 Tell me few peoplecode functions?
Ans- Component Buffer consists of rows of buffer fields that hold data for the reocrds associated with the page including primary scrolls, derived work records etc.
Q – 13 Where PeopleCode get stored?
Option: 1. Application Server
Option: 2. Database Server
Option: 3. Client Machine.
Option: 4. File Server.
Option: 5. Batch Server.
Ans- 2. Database server
PSPCMPROG TABLE
Q – 14 Explain How to send email to the all employeee from the peoplesoft application when a certain event is true?
2. What is the event used to trigger?
Ans- Create a workflow. In the workflow, use a query with active employess and their email ids as inputs. On the successfull occurence of the event, trigger this workflow using TriggerBusinessEvent.
Q – 15 What is Component Processor?
Ans- The Component Processor is the PeopleTools runtime engine that controls processing of an application from the time that a user requests a component from an application menu until the database is updated and processing of the component is complete.
Q – 16 Explain few peoplecode functions you worked with?
Ans- Component Buffer consists of rows of buffer fields that hold data for the records associated with the page including primary scrolls, derived work records etc.
I have worked with fieldedit ,fieldchange, dosave(), dosavenow(),SQLexec() and savepostchg……
Q – 17 Can you explain with an example, where you used peoplecode extensively?
Ans- Using Application packages is a very good way of coding your business logic and display logic.
This way you can modularize your code very well and you can bring in the Object Oriented way of programming which will be very easy to develop and maintain.
Q – 18 Where can we write the peoplecode?
Ans- PeopleCode may be placed on Record Field,Page,Componet,Menu Item,Component Interface,Meassage and Message Channel and Application Engine
Q – 19 Suppose If there is same Component X in two different menus, menu1 and menu2 and if u want to assign a different search record for each menu, then which peoplecode function do u use and where do u write the code?
Ans- Instead of using PeopleCode,Directly we can assign the search record at the menu level which will override the search Record specified at the component level.