- How
did you apply bundles?
a. Use the PeopleSoft
delivered Upgrade Assistant or Change Assistant for PT8.45 and above.
- How
did you do your retrofitting for peoplecode, sql
a. Say we are working on
one version of peoplesoft and the same works well in other version, we simply
compare the objects between them were necessary and make some minor
changes (if any) and copy the same where there exists a problem. This minimizes
time in fixing and helps bring consistency amongst various versions. This is
how i retrofit if I encounter such an incident (problem or issues).
- How
did you migrate from legacy?
a. Identify
the fields to be extracted from legacy
b. Map
the legacy fields to PeopleSoft fields. Create the new fields if needed
c. Apply
the business logics and get the legacy data to peoplesoft using PeopleSoft
tools such as AE/CI
- What
is left join, right join? (Learn all joins)
a. Left
Join: Merging the values of Table-A & Table-B of common fields between
them & also other values of Left Table (Table-A). Right Join: Merging the
values of Table-A & Table-B of common fields between them & also
other values of Right Table (Table-B).
- People
Soft allows multiple long fields per State Record? False
- Maximum
number of Actions in a Step?
a. There are 8 actions
available. But we can use only 7 actions in 1 step. They are
b. 1.Sql (or) Call
Section (We can use only one of this two)
c. 2.People Code 3.Log
Message 4.Do Select 5.Do When 6.Do While 7.Do Until
- PeopleCode
variables (global, component, local, and parameter), method, and property
names can now be up to characters long? Ans 1000
- Prompt
table with no edit to no edit?
a. User can enter values
from prompt table b) user can enter values from prompt table and default value
will be populated
- Changing
Prompt Table with NO Edit to Prompt Table with Edit?
a. Only
selection of existing data is possible
- DoSave
() can be called from one of the following events?
a. FieldEdit,
FieldChange, or MenuItemSelected PeopleCode.
- Two
Program views of AE Program?
a. Definition, Program
flow
- State
Record can be Dynamic Record?
a. Yes, if you don't
have restart enabled, state record can be dynamic.
- In
Call Section – Action it is possible to leave the Program ID with blank
Value in certain cases?
a. The Answer is True,
as many times you will call section from the same App Engine. In such scenario,
the Program Id can be blank.
- PSWORKLIST
record is used for workflow routing. It should contain minimum of?
a. 6 keys in Ascending
orders BUSPROCNAME, ACTIVITYNAME, EVENTNAME, WORKLISTNAME, INSTANCEID,
TRANSACTIONID
- 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
- What
is the minimum number of objects an object group can consist of? 19
- What
is the logic used by Component Buffer? Depth First
Algorithm
a. If
scroll level zero of a page contains only controls associated with primary
scroll record fields that are search keys or alternate search keys, then only
the search key and alternate search key fieldsare in the component buffer, not
the entire record. The values for the fields come from the keylist, and the
record cannot run RowInit PeopleCode. If level zero contains at least one
record field from the primary scroll record that is not a search key or
alternate search key, then all the record fields from the primary scroll record
are available in the buffer. Methods used: GetRecord, GetField, GetRow,
GetRowset
- Fit
gap analysis implementation and upgrade?
a. Fit gap analysis as
the name says it is not a complete upgrade doc. to fit in the gap between the
new and existing system from which we are going to migrate to the new system we
run an compare and document in the changes that need to be performed in then
new system.
- Meta-SQL
where is it stored? Temp Table
- Where
do you set PeopleCode trace?
a. Configuration Manager
and application server. We can also do this for app engine at
Peopletools-process scheduler- processes (select the app engine name), options
tab-choose append- write - value TRACE.
- What
is PSCAMA (Peoplesoft Application messaging attribute)?
a. PSCAMA
contains fields common to all messages. The <PSCAMA> tag repeats for each
row in each level of the <Transaction> section of the message. The sender
can set PSCAMA fields to provide basic information about the message. For example,
to indicate the message language or the type of transaction a row represents.
When receiving a message, your PeopleCode should inspect the PSCAMA records for
this information and respond accordingly.
- What
is app messaging, where did you use?
a. App Messaging is an
integration tool that allows PeopleSoft to send and receive information in an
XML format over a HTTP connection. It is used extensively to send information
from a PeopleSoft system to another PeopleSoft system and to exchange data with
external systems.
- How
many temporary records are there in app engine?
a. There
can be n number of Temporary tables, but App. engine. Creates up to 99
instances for a single temporary table
- Why
state records are needed?
a. State records are
used in Application engine development and customization. Basically they are
used to pass the values (variables, database field) from section to another
section, from action to another action. Each application engine can have
multiple state records but there will be only one default state record. It can
be a SQL table or derived table. All state record ends with _AET.
- Different
ways to run AE, SQR?
a. SQR:
command line (sqrw.exe), process scheduler & peoplecode AE: commandline
(psae.exe), process scheduler, peoplecode-callappengine (aename,st-rec)
- What
is component interface, where did you use?
a. A component interface
is a people tool to enable a peoplesoft component for synchronous access from
another application (java, c, c++, xml).
- Why
temporary records are needed?
a. AE programs run in
batch mode so the multiple instances of the same program get created and due to
this the deadlock situation can come. To avoid this situation peoplesoft
provides the concept of temp tables i.e. the data that needs to be updated by
the AP program is stored in the temp tables. This avoids the situation where
the programs fetches the row one by one, process it, and then send the updated
data back. By creating temp tables you can store the data that is affected by
business logic in the temp table and then you can perform the operations on it
instead of the main table. Once the processing is completed you can send the
data back to the main table.
- Differences
between State and temporary records?
a.
1
State record at any point of time has only single line information, as it's
driven by the Process_Instance as key field. While temp table can have multiple
rows.
2. State record had only single instance, while the temp table can have maximum of 99 instances.
3. State record is used for restart logic.
4. State record can be used for dynamically calling AE section, by adding AE_SECTION, AE_APPLID as fields. Temp table cannot be used.
2. State record had only single instance, while the temp table can have maximum of 99 instances.
3. State record is used for restart logic.
4. State record can be used for dynamically calling AE section, by adding AE_SECTION, AE_APPLID as fields. Temp table cannot be used.
- DDDAudit
what is it?
a. DDD
Audit is a SQR used to find the inconsistencies between the data structures
defined in Peopletools table against the underlying database.
b. SYS
Audit is an SQR used to compare the different people tools tables and find
inconsistencies like orphaned objects ex. Peoplecode not attached to any record
etc.,
- What
is scroll select, etc?
a. ScrollSelect
function selects records from a table and loads them into the scroll buffer
area of a page. In parent/Child relationships, ScrollSelect chooses all
corresponding child rows and inserts them under the next higher-level row. The
function requires the specification of the target scroll area, a source record
from which to select rows and an optional SQL string. The parameters passed to
ScrollSelect vary based on the scroll level at which the function is targeted.
b. Level
1 ScrollSelect (1, RECORD.target_recname, RECORD.sel_recname);
c. Level
2 ScrollSelect (2, RECORD.level1_recname, RECORD.target_recname,
RECORD.sel_recname);
d. Level3ScrollSelect
(3, RECORD.level1_recname, RECORD.level2_recname, RECORD.target_recname,
RECORD.sel_recname);
- How
do you debug your AE?
a. Peoplesoft>Peopletools>Process
Schedule>process> Select Process Name
b. In
the page select "Over Ride Options"
c. *Parameters
List > Append > -Trace.
- What
happens if you don't specify a Search Record for a Component?
a. The
search record has to be specified else component definition cannot be saved. If
the component design is such that no search record is needed to be specified
then give the search record as "INSTALLATION". It directly loads the
actual page without going to the search page with the information on the page
referring to the user who is currently logged in to the Peoplesoft portal
- What
are the think-time functions?
a. Think
time functions are DoModal, WinMessage, messagebox, DoCancel and Exec.... think
time function are cannot write following events save prechange, rowselect,
savepostchange, workflow.
- How
to use a Dynamic prompt table? What we need to...
a. In
order to use a dynamic prompt table; the field that is going to have the
dynamic prompt must point to a field in the DERIVED record. The prompt table
can be dynamically assigned with the following code.
b. If(condition)
%derivedrecordfield.value=promttable1 else derivedrecordfield.value=promttable2
end-if;
- What
is the difference between a Grid and a scroll?
a. Scroll
area is used to maintain parent child relationship we insert grid in low level
scroll
b. Example:
assume we have 3 scroll levels in our page level1, level2 and level3 we insert
grid in level 3
- How
many Grids can we insert in a single component or page?
1
- Tell
me about component Buffer?
a. Component stores all
page related information 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.
- If
there is same Component X in two different menus, menu1 and menu2 and if u
want to assign a different Search record?
a. Can be done from Menu
Item Properties, where there an option of specifying search record which will
have precedence over the one specified in the component properties
- What
is the difference between component level peoplecode and record level
peoplecode?
a. Component and Record
level PeopleCode are executed when the control is passed to the associated
Component and Component containing the record respectively. Since a single
record might be associated with several different Components, It is possible to
trigger the same Record PeopleCode from several components while the component
level code is associated with a unique component.
- What’s
the advantage and disadvantage of SQLExec
a. 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
- Is
there any function existing in peoplecode, which stops the processing of
whole component?
a. Think-time
functions suspend processing 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 (example some remote process)
b. Following
are Think time functions:
c. DoCancel,
DoModal, DoModalComponent, Exec (only when Synchronous) , File attach
functions, Prompt, RemoteCall, WinMessage and WinMessageBox
- What
is Component Processor?
a. The Component
Processor Controls the Peoplesoft Applications from Initial data retrieval
through updating the database.
- While
pressing Save Button how many times Save Pre Change and Save Post Change
triggers and when does the commit occur?
a. It
depends on which level (record level, record field level or component level)
you are placing you peoplecode. if you have people code in your save prechange
event of the record level or record field level, then it will get executed for
all the active rows of your scroll area. Similarly save post change. the commit
will happen after each save prechange. To avoid this you have to write this in
a component level. Then it will get executed only once
- The
following are various steps that describe the peoplecode logic while
implementing a Component Interface?
a. 1.Establish
a user session, 2.Get the Component Interface, 3.populate the Create Keys,
4.Create an Instance of the CI, 5.pulate the required fields, 6. Save the CI
- The
main attributes of a Component Interface (CI) are?
a. Keys, Properties
& Collections, Methods and Name
- Which
one of the following are standard properties when a Component Interface
(CI) is created?
a. InteractiveMode,
GetHistoryItems, and EditHistoryItems
- Which
of the following can be mapped as Find Keys for a Component Interface?
a. Search
key and alternate search key
- If
you are PS developer then in what scenarios Component Interface will have
advantages over component?
a. A
component exposes your pages to peoplesoft only. Moreover it helps us to define
common properties for a set of related pages.
b. A
component interface is a set of application programming interfaces (APIs) that
you can use to access and modify PeopleSoft database information
programmatically. PeopleSoft Component Interfaces expose a PeopleSoft component
(a set of pages grouped for a business purpose) for synchronous access from
another application (PeopleCode, Java, C/C++, or Component Object Model [COM]).
- How
do we maintain Consistency between Components and CI?
a. A CI is called in
Save-prechange with Currently active component buffer data’s. The called CI
gets saved successfully. But the component from which CI called gets errored in
Save-postchange. How do we maintain consistency between two components?
Lame. Theory is one thing, Application is another.
ReplyDelete