Important Points and Interview questions in app Engine

App Engine

1.     PeopleSoft Application Engine is a PeopleTool designed to help you develop, test, and run background SQL processing programs. PeopleSoft Application Engine is the PeopleTool that you use to develop batch or online programs that perform high-volume, background processing against your data.
2.     Bulk Insert is also ignored when all three of the following conditions are true: the database platform is Oracle, the record contains and EFFDT field (effective date), and the record contain a Mobile trigger. This is required because Oracle does not allow the reading of mutating tables in a row trigger. You should consider using this feature only when the INSERT SQL is called multiple times in the absence of intervening Commits
3.     Set processing is an SQL technique used to process groups, or sets of rows at one time rather than processing each row individually. Set processing enables you to apply your business rule directly on the data (preferably while it resides in a temporary table) in the database using an update or insert/select statement. Most of the performance gain is because the processing occurs in the database instead of loading the data into the application program, processing it, and then inserting the results back into the database tables. Because the data never leaves the database with set processing (whether it remains in the same table), you effectively eliminate the network round trip and database API overhead.
Because the updates in set processing occur within the database, PeopleSoft encourages you to use temporary tables to hold transient data while your program runs. Although temporary tables are not required for set processing, they are often essential to achieve optimum performance in your batch program.
4.     Unless you select the ReUse property for you SQL Action, %BIND fields are substituted with literal values in the SQL statement. This means that the database has to recompile the statement every time it is executed. However, selecting ReUse converts any %BIND fields into real bind variables (:1, :2, and so on), enabling Application Engine to compile the statement once, dedicate a cursor, and re-execute it with new data multiple times. This reduction in compile time can result in dramatic improvements to performance.
5.     One key feature of PeopleSoft Application Engine is its built-in checkpoint/restart capabilities. If there is an abnormal termination (abend) or failure on a step in the program, the end user can restart the request from the last successful checkpoint, or the step immediately preceding the step that failed. The end user restarts the program from the Process Request page.

The commit level you select plays a major role in how restart works in a program. Each time that PeopleSoft Application Engine issues a commit with restart enabled, it records the current state of the program. The recording of the current state that PeopleSoft Application Engine performs is referred to as a checkpoint.
 The ability for Application Engine to “remember” what steps have already completed and which steps have not depends on an important record called AERUNCONTROL—keyed by Process Instance. When a program runs, each time PeopleSoft Application Engine issues a commit it also saves all of the information required for a program restart in the AERUNCONTROL record.

6.     What the difference between %Select, %SelectInit & InsertSelect?
a.     %Select to fetch value
b.     %SelectInit if the SELECT returns no rows, %SelectInit reinitializes the buffers
c.     %InsertSelect will select & insert
7.     App engine Peoplecode functions?
a.     Meta SQL Functions:  %Bind, %Execute Edits, %Select, %SelectInit, %SQL, %Table, %TruncateTable, %UpdateStats
b.     Peoplecode Functions: CallAppEngine, CommitWork, GetAESection
8.     People Soft allows multiple long fields per State Record?  False
9.     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
10.  Two Program views of AE Program?
a.     Definition, Program flow
11.  State Record can be Dynamic Record?
a.     Yes, if you don't have restart enabled, state record can be dynamic.
12.  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
13.  Meta-SQL where is it stored? Temp Table
14.  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
15.  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.

16.  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.
17.  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.
18.  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.
19.  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)
20.   
SHARE

peoplesoft

  • Image
  • Image
  • Image
  • Image
  • Image
    Blogger Comment
    Facebook Comment

0 comments:

Post a Comment

Phaniraavi@gmail.com