This chapter discusses:
PeopleSoft Process Scheduler.
PeopleSoft Process Scheduler architecture.
PeopleSoft Process Scheduler components.
The primary role of Process Scheduler is to support the PeopleSoft application environment. With a PeopleSoft application, you might want to perform certain processes (such as running programs, batch programs, reports, and so on) in the background of the online system. Running reports, posting journal entries, loading benefit enrollment forms, and calculating payroll deductions are all examples of processes that you might want to perform independently of the PeopleSoft application.
Using PeopleSoft Process Scheduler can streamline your business practices by enabling you to take advantage of the distributed computing environment at your site, whereby you can schedule performance-sensitive jobs to run on a powerful server while the online system is still available to end users.
PeopleSoft Process Scheduler enables you to:
Schedule recurring processes.
Create jobs (groups of processes).
Schedule a process request to run on any date or during any time interval that your business requires, such as monthly, daily, hourly, or by the minute.
Submit a job to run several processes and conditionally schedule successive processes based on the status of a previous process in the job.
End users need to be concerned only with successfully submitting process requests, monitoring their progress, and viewing their output in Report Manager. However, it is important to understand how each part of PeopleSoft Process Scheduler functions.
The following sections describe the role of each of the basic components in a three-tier environment.
The application server runs the appropriate SQL against the database to add a row to the Process Request table (PSPRCSRQST) for the submitted process request. Process Monitor also uses SQL to fetch the process status from the Process Request table.
Note. In this context, application server refers to the physical machine on which the PeopleSoft Application Server runs. The PeopleSoft Application Server is the actual set of server processes that are controlled by BEA Tuxedo. The PeopleSoft Process Scheduler Server is a separate component that does not necessarily need to run on the application server.
PeopleSoft Process Scheduler Server Agent
The PeopleSoft Process Scheduler Server Agent is the component that resides on a server and runs as a process; that is, after it is initiated, it runs continuously in the background and requires no user interaction until it receives a request to shut down. Although the PeopleSoft Process Scheduler Server can run on the application server machine, it can also run on any supported batch server or database server.
As with each of the server processes, such as PSAPPSRV, that run within a PeopleSoft Application Server domain, the PeopleSoft Process Scheduler Server maintains its own SQL connection to the database server.
The PeopleSoft Process Scheduler Server Agent becomes idle for a specified interval of time so that it does not consume server resources. It continues alternating between being idle and active until the database administrator stops it manually.
The PeopleSoft Process Scheduler Server Agent polls the Process Request table at a regular, user-defined interval to determine whether any process requests have been directed toward the server. If so, it starts the appropriate process, based on the requested run date and time. The agent also updates the run status of that process instance to Initiated and updates the session ID with the process ID (PID) of that process.
After the PeopleSoft Process Scheduler Server Agent initiates a process, the started process—if it is API-Aware—is responsible for updating the Run Status column in PSPRCSRQST accordingly. However, during the polling cycle, the agent also:
Cancels (at the operating system-level) processes that have been canceled through the Process Monitor.
Checks for processes with a run status of Initiated and Processing to determine whether these processes are actually running.
To make this determination, it uses the PID that is stored in the database when the process is started. If the PID does not exist, the process is then set to Error.
The database server houses the Process Request tables that contain a variety of data that are related to the requests, such as command line parameters, output options, and process status.
Report distribution in the PeopleSoft system is closely associated with PeopleSoft Process Scheduler. Process Scheduler uses the PeopleSoft Process Scheduler Server Agent to run the reports and log files that you submit using a process request. When they have finished, the Distribution Agent transfers these reports and log files to the Report Repository where you can view them from a web browser using PeopleSoft Pure Internet Architecture. You can transfer the following files to the Report Repository:
Reports
Logs
Trace files
Report distribution options enable you to restrict access to these reports based on user ID or role ID, as defined in PeopleSoft Security Administration.
For the Distribution Agent to pass authentication, you must ensure that the following rules are enforced:
The User ID that you use to start the Process Scheduler server must include the ProcessSchedulerAdmin role.
See Granting PeopleSoft Process Scheduler Administrative Rights.
On the Report Node Definition page, the Universal Resource Locator (URL) Host must contain a fully qualified name.
If you specify the Auth Token Domain name during the PeopleSoft Pure Internet Architecture installation, you must also include the domain name on the URL Host.
The Distribution Agent process runs on the same server as the PeopleSoft Process Scheduler Server Agent. When you use the Server Definition page to set up the PeopleSoft Process Scheduler Server Agent with a distribution node, either the PeopleSoft Process Scheduler Server Agent or BEA Tuxedo starts the Distribution Agent, depending on the operating system in which you start PeopleSoft Process Scheduler. In Windows 2000 and UNIX, BEA Tuxedo starts the Distribution Agent, while in OS390, the PeopleSoft Process Scheduler Server Agent starts it.
The PeopleSoft Process Scheduler Server Agent and the Distribution Agent both check the status of each process in the Report List table (PS_CDM_LIST). When the PeopleSoft Process Scheduler Server Agent initiates a process request that has an output destination type of Web, or if the Server Definition page is set up to transfer system log or trace files to Report Manager, then an entry is inserted into the Report List table. When the program that is associated with the process finishes, the status in the Report List table is updated to Generated, indicating that the files are ready to transfer to the Report Repository. In Windows 2000 and UNIX, where PeopleSoft Process Scheduler servers are started through BEA Tuxedo, the Process Scheduler (PSPRCSRV) sends a Tuxedo service to the Distribution Agent (PSDSTSRV) to initiate transferring of reports to the Report Repository. In OS390, the Distribution Agent polls the Report List table to determine which process requests have finished running and then transfers them to Report Repository.
See Using the PSADMIN Utility.
The Report Repository is the designated server where the Distribution Agent transfers reports that are generated from the PeopleSoft Process Scheduler Server. The repository can be set up on either a UNIX or Microsoft Windows 2000 machine by installing PeopleSoft Pure Internet Architecture and certified web server software, (Oracle Application Server, WebLogic or WebSphere), and can be used by multiple PeopleSoft databases. The Distribution Agent determines the Report Repository to which it should transfer the reports based on the setting that is specified in the server definition. When the Distribution Agent transfers all the files for a specific request, it creates a subdirectory under the designated directory that is specified in the PeopleSoft Pure Internet Architecture as the PSReports home directory, for example,<Database Name>/<Transfer date in YYYMMDD format>/<Report Instance>
Process Scheduler has several components that work together to help you run reports and processes offline. After a job has been submitted, use Process Monitor to check the status of the job, and then use Report Manager to view the output of the job through a web browser.
Process Scheduler Manager involves the interaction of these components, which you can select from the menu:
Process Type Definitions |
Set global definitions for processes. |
Process Definitions |
Define settings that are specific to a process. |
Job Definitions |
Group processes. |
Schedule JobSet Definitions |
Describe the jobsets that run on a recurring basis, such as weekly or monthly. |
Recurrence Definitions |
Describe the frequency of processes that run on a recurring basis, such as weekly or monthly. |
Server Definitions |
Define to instances of the PeopleSoft Process Scheduler Server Agent. |
Report Node Definitions |
Define the report distribution node, including URL, home directory, and File Transfer Protocol (FTP) address. Use this component to set the parameters that are needed for the PeopleSoft Process Scheduler Server to transfer reports and log and trace files that are generated from a process request to Report Manager. |
Process System Settings |
View or change the last process instance number, as well as the system’s default operating system. |
Process Request |
Submit a job or process to run. This component is commonly integrated into applications to support process requests that you make by selecting Run from PeopleSoft applications. The Process Request page enables you to specify variables, such as where a process runs and in what format the process output is generated. |
Note. Depending on your role at your site, you might be concerned with only one or two of these components. Most end users are concerned with only the basic tasks of submitting a process request, checking its progress, and viewing it in Report Manager.