PeopleSoft

Application Engine debugging issues – ParseXmlFromURL

I was trying to debug an application engine process in Application Designer, and the following line (in bold) would throw an exception and prevent me from debugging any further

The value of &sTmplFile was:

I finally discovered that the ParseXmlFromURL method requires a fully qualified path. For example:

My environment was not prepending the drive component because it did not have the PS_SERVDIR environment variable defined. Once I set this variable, everything…

Continue reading

Oracle PeopleSoft

Application Engine: Releasing Temporary Tables

I was trying to debug an Application Engine and noticed that the debugger had hung. I restarted Application Designer and re-ran the debugger for the Application Engine. Since there was only one instance assigned to each temporary table, I noticed that the previous failed run had not released the temporary tables. I managed to work around this by deleting from the following tables:

The following are the SQL Statements that I used:

If…

Continue reading

Oracle PeopleSoft

Can no longer run Application Engine programs from Application Designer

I wasted a good couple of hours trying to figure out why my application engine programs would no longer run in Application Designer (two-tier). I have concluded that it is due to a PeopleTools bug in Application Designer. Something was causing the App Engine program to run in an infinite loop. I had to manually close the psae.exe process, and observed that the log file couldn’t even execute the first step of MAIN: PeopleTools 8.51.03…

Continue reading

PeopleSoft

Application Engine: Temporary Table instancing

What is temporary table instancing? Instancing in the application engine context is when a process run by the user is assigned a dedicated temporary table. When should it be used? It’s a must when there are multiple users running the same process concurrently, or when the same user is running the same process concurrently (i.e. multiple times in parallel). How does it work? A new table is created in the database with a number suffix…

Continue reading

PeopleSoft

Application Engine: The different types of Do Select

Select/Fetch – Opens the cursor only once and retrieves rows one at a time. Commits inside the step (commits in the Called Section) are ignored if the program is restartable (noticeable in the trace file) and are not ignored if the program is not restartable. Reselect –¬†Opens the cursor and closes the cursor on each iteration of the loop. It will re-select the same row of data. Logic in Actions of this step should be…

Continue reading