Академический Документы
Профессиональный Документы
Культура Документы
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 th
e 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.
Application Designer is an integrated development environment that is used to de
velop PeopleSoft applications.
The following are the uses of Application Designer.
1. Design and generate database tables.
2. Design on-line pages
3. Controlling on-line processing flow.
4. Providing security for the database.
What is the difference between SQLEXEC and CREATESQL?
SqlExec means it bypasses the component buffer and it is directly contacts datab
ase to retrieve data. But it retrieves the data row by row and not possible for
bulk insert.
But in the case of Create SQL we can able insert the data in bulk.
What is the advantage of using Application Engine?
Q: What are the compulsary SQC's that should be used in SQR Program?
A: Following are the SQC's that must be includen in every SQR program
Setenv.sqc
setup02.sqc
prcsapi.sqc
prcsdef.sqc
curdttim.sqc
datetime.sqc
What is the default Crystal Report that PeopleSoft query tool created ?
ACTQRY.RPT
What happens when changing from NO EDIT to EDIT option ?
Users can enter only prompt table values and the defult values get populated fro
m the database.
Where is WorkItem is available ?
WorkList Record
Which Peopleools system table is used to track object changes in PeopleSoft ?
PSREALEASE
What record changes does not affect Database ?
Change in ListBox in Record Feild properties.
Name some fields that are effective dated on the Personal Data pages?
1. Name
2. Address
3. Marital status
4. Smoker
Implementing Parallel Processing
There is no simple switch or checkbox that enables you to turn parallel processi
ng on and off. To implement parallel processing,
you need to complete a set of tasks in the order that they appear in the followi
ng list.
1. Define your Temporary Tables by defining and saving your Temporary Table reco
rds as type Temporary Table .
2. Set the Temporary Table Online pool. This will set the basic Temporary Table
Online pool based on the PeopleTools Options specifications.
(Note: This is done one time by the PS Admin group).
3. Assign Temporary Tables to your Application Engine program in its Program Pro
perties, setting the appropriate number of Instance Counts and Runtime option.
4. Build/Rebuild your Temporary Table record. This will build the necessary Batc
h temporary tables into that record s Temporary Table pool for use at execution ti
me.
5. Code %Table meta-SQL as references to Temporary Tables in your Application En
gine program, so that Application Engine
can resolve table references to the assigned Temporary Table instance dynamicall
y at runtime.
Application Engine Program Meta-SQL
A critical step in implementing parallel processing is to make sure that you ve in
cluded all of the appropriate meta-SQL within the PeopleCode that your Applicati
on Engine program executes.
To reference a temp table (Online or Batch), you need to use:
%Table(record)
You can reference any table with %Table, but only those records defined as Tempo
rary Tables get replaced by Application Engine with
a numbered instance of a Temporary Table from the Temporary Table pool.
For batch/dedicated Temporary Tables, when Application Engine resolves any %Tabl
e, it checks an internal array to see if a Temporary Table instance has
already been chosen for the current record. If so, then Application Engine subst
itutes the chosen table name. If there are no more batch/dedicated instances ava
ilable,
then Application Engine uses the base table instance by default (if the Runtime
option Continue has been chosen). Regardless of whether %Table is in PeopleCode
SQL
or in an Application Engine SQL Action, the program uses the same physical SQL
table.
For synchronous calls to Application Engine, an available instance number will b
e selected at random according to internal rules. Synchronous refers to using th
e CallAppEngine
PeopleCode function; all other methods that you use to invoke Application Engine
programs are asynchronous which means the page is not frozen while the program ru
ns to completion.
Populate your Temporary Table Process Instance with the Process Instance
All temporary tables should be keyed by Process Instance as a general rule. Also
, if you have opted to use the Continue runtime option when batch/dedicated tables
can t be assigned,
Process Instance is required as a key field. The current Process Instance is aut
omatically put into the State record, but when you Insert rows into your Tempora
ry Tables you must supply that Process Instance.
%ProcessInstance or %Bind(PROCESS_INSTANCE)
This meta-SQL returns the numeric (unquoted) Process Instance. The %PROCESSINSTA
NCE meta-SQL is more efficient and faster than using the %Bind(PROCESS_INSTANCE)
.
Note: The Process Instance value is always zero for programs initiated with Call
AppEngine. This is because the program called with CallAppEngine runs in process ,
that is, it runs within the same unit of work as the component with which it is
associated.
Clear Temporary Tables (%TruncateTable)
The Temporary Tables are truncated automatically at the end of processing. If th
e shared base table has been allocated because no batch/dedicated instances
were available, then Application Engine performs a delete of rows by Process Ins
tance instead of performing a truncate. In such a case,
the PROCESS_INSTANCE is required as a high-level key.
You can perform additional deletes of Temporary Table results during the run, bu
t you will need to include your own SQL Action that does a %TruncateTable.
Temporary Tables in PeopleSoft
Temporary tables are used exclusively with Application Engine programs and are i
ntended to provide parallel processing. The Application Engine programs may be e
xecuted online via CallAppEngine PeopleCode function or invoked through the Proc
ess Scheduler.
Parallel or concurrent processing allows multiple instances of an Application En
gine program to execute against the same tables while drastically reducing the r
isk for table contention.
Batch process performance can be improved by splitting the data to be processed
into groups and simultaneously running multiple instances of the program to deal
with different groups of data. For example, employees could be processed by las
t name by splitting the group into multiple groups alphabetically.
If you have a program that uses a temporary table and it is invoked multiple tim
es, that single temporary table could be used concurrently in multiple execution
s of the code.
This could create unpredictable results since the different instances of the cod
e would be issuing Deletes, Inserts, and/or Updates unsynchronized with each oth
er.
You could solve this problem by creating multiple temporary tables as a pool of
tables. Each invocation of your program would have to allocate an unused tempora
ry table, mark it as in use and release it back to the pool when you are through w
ith it.
By using the Temporary Table record type definition, you are able to define a re
cord and the PS Build process will build multiple uniquely named copies of your
Temporary Table as a pool.
Additionally, PS does Temporary Table management for your Application Engine pro
grams. You can code your program with supplied meta-SQL (%Table) so each executi
on of your Application Engine program will be given access to its own copy of th
e Temporary Table for its exclusive use. When the program ends, the table will b
e returned to the pool of Temporary Tables.
Temporary Table Pools
Online Pool
Defined in PeopleTools Options by PS Admins. Our current setting is five (5).
Used by Application Engine programs invoked by CallAppEngine.
Batch Pool
Defined in Application Engine program properties. Properties that must be set in
clude:
§ Assign Temporary Tables to the Application Engine program (Temp Table tab)
§ Set the Instance Count (Temp Table tab). The number entered here will dedicate t
he number of instances requested for the AE program.
§ Set the Runtime option (Temp Table tab). This is the action the AE program will
take if batch/dedicated tables cannot be allocated at runtime.
Continue the base table will be used instead (using Process Instance)
Abort program execution terminates.
§ Set the Batch Only checkbox (Advanced tab). If the program will only be run in b
atch mode and not executed from the CallAppEngine() PeopleCode function,
you should use this checkbox. Any dedicated temporary tables used for Batch Only
programs do not have online instances created.
Important Notes
Instance Count and the Batch Only checkbox should be set prior to building the r
ecord definition.
Ø If the temporary table was originally built with online instances (Batch Only ch
eckbox is not checked) and then changed to batch only , online tables must be dropp
ed manually
PeopleSoft Security Tables
When conducting an audit of PeopleSoft, eventually you will need to run queries
against the PeopleSoft security tables.
Listed below are the PeopleSoft delivered security table names, and a brief desc
ription of the table contents.
PSROLEUSER User Roles
PSOPRDEFN Operator ID and password information. Passwords stored
are encrypted. Updated by Security Administrator.
PSAUTHITEM Menus, panels and items an Operator is authorized to ac
cess. Updated by Security Administrator.
PSAUTHSIGNON Records sign-on times for all Operators. Updated by Securi
ty Administrator.
PSAUTHPRCS Records process groups for all Operators. Updated by Sec
urity Administrator.
PSACCESSPRFL Security table used to allow a super-user to create an acc
ess profile that would contain an Access ID and Access Password. Access ID and P
asswords are used to connect PeopleSoft to the underlying database. (only in ver
sion 7 and above)
PSOPRCLS Maps one Operator to multiple Operator Classes. (only
in version 7 and above)