Search This Blog

Friday, September 18, 2009

Process Schedule WalkThrough

PeopleSoft Process Scheduler (PSPRCSRV) is a centralized tool that enables application developers, system administrators, and application users to manage PeopleSoft batch processes. Using PeopleSoft Pure Internet Architecture, you can access a list of processes through a web browser and queue and run a process request. Process requests using PeopleSoft Pure Internet Architecture have the added functionality of new distribution options that enable you to distribute output through the web in different formats (HTML, PDF, Excel, and so on) to other users based on their user or role ID

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 Application Server

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.

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

Database Server

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.

For the Distribution Agent to pass authentication, you must ensure that the following rules are enforced:

Distribution Agent (PSDSTSRV)

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:

Run Control ID's

To run a report, you must tell the system when and where you want the report to run. For example, you might tell the system to run the report on the database server at midnight or on a Microsoft Windows server every Sunday afternoon, or you might tell it to run the report immediately. For most reports, you must also set parameters that determine the content of the report, such as the business unit or time period on which to report.

A run control is a database record that provides values for these settings. Instead of entering the same values each time you run a report, you create and save a run control with those settings. The next time that you run the report, you select the run control, and the system completes the settings.

You can create run controls that apply to several related reports. For example, suppose that all of the reports that you run at the end of a month require the same parameters: business unit, department, and from and to dates. You can create a single run control that provides values for these parameters and use it for every report.

A run control ID is used as a key (with a user ID) for records that contain the parameters that a process needs at runtime. Storing the parameters in a table that the process can query using the run control ID and user ID enables the process to run without user intervention. Run control IDs are stored in a minimum of two tables: an application run control table and the Tools Run Control table (PSPRCSRQST). You can examine the PS_PRCSRUNCNTL table as a sample application run control table.

The PeopleTools Run Control table stores information that is required by PeopleSoft Process Scheduler, such as output type, format, distribution, file dependency, and destination. The application run control table stores information that is required to run a process, such as the from date, department ID, employee ID, and so on. All application run control tables are keyed by user ID and run control ID.

Process Scheduler configuration file (psprcs.cfg)

When Process Scheduler submits a request, the system creates a new subdirectory to store the log, trace, and reports that were generated by the request. This subdirectory is created in the directory that is specified in the Log/Output Directory parameter in the Process Scheduler configuration file psprcs.cfg. When a high volume of requests is being processed by the Process Scheduler server, limitations imposed by the operating system can prevent additional directories from being generated for the new requests. For instance, certain UNIX flavors only allocate 32K Inodes for a directory.

Process Moniter

After you submit a job using the Process Scheduler Request page, use Process Monitor to review the status of scheduled or running processes. You can view all processes to see the status of any job in the queue and control processes that you initiated. Process Monitor consists of two pages: the Process List page and the Server List page.

Use the Process List page to monitor the process requests that you submit. If a process encounters an error, or if a server is down, you can find out almost immediately. You can also see what processes are queued to run in the future.

Use the Server List page to view information about each of the PeopleSoft Process Scheduler Server Agents that are defined in the system.

Report Manager

Any user who maintains the content of Report Manager must be assigned a Report Manager administrator role in PeopleSoft Security. With this administrator role, the user can:

A super user role is also available that allows you to delete and update all report output in Report Manager. Super users are allowed to delete the report entry and update the distribution list or expiration date of report entries.

The difference between the administrator (ReportDistAdmin) and super user (ReportSuperUser) roles is that the administrator role can access and update any report in the Report Manager. The super user role can update only reports that they are authorized to view.

Report Purge Process

When PeopleSoft Process Scheduler is set to perform a periodic purge on the System Purge tab in the system settings, it triggers the Application Engine program PRCSYSPURGE. This program purges both the Process Request and Report Manager tables. As part of the Report Manager cleanup, it also purges the reports from the Report Repository and archives the data into the Report Archive table.

If multiple Process Schedulers are running against the same database, and each has its own Report Repository, PRCSYSPURGE is initially responsible for the purge process. It will remove all entries from the PS_CDM_LIST table and then purge all reports that match its server name or report node from its report repository. The PRCSYSPURGE program then inserts entries to the PS_CDM_LIST_PURGE table where neither the server name nor the report node name matches. If the PRCSYSPURGE program detects that more than one Process Scheduler is active, it schedules the Application Engine PRCSRVCLN program to run on all the other active Process Scheduler servers. The PRCSRVCLN program checks whether the server uses its own Report Repository and if so, the program deletes reports from the report Repository that is used by the server.

Report Nodes

The report distribution node defines how your reports are moved to the Report Repository, where you can view them from Report Manager. Reports are moved using XCOPY, FTP, or HTTP and HTTPS, depending on the type of server that you are using.

Batch Timings

Batch Timings reports are provided so that you can monitor the performance of your application engine programs. The Process Scheduler - Batch Timings page applies to the Statement Timings data that is stored in the (table) option.

For the Batch Timings feature to record data, you must enable it using the Configuration Manager Trace tab. In the Application Engine group, select the Statement Timings (table) option.

Job and Jobsets

PeopleSoft Process Scheduler enables you to schedule one or more processes as a group. In this context, job describes this type of process group.

A process is a single task, program, or routine, such as a Structured Query Report (SQR) report or COBOL program that runs either on the client or on a server. A job consists of one or more processes of the same or different types that are submitted as a unit and can run either in series or parallel. They require the scheduling support that only a server environment can offer and all processes must be API-aware.

Scheduled JobSets enable you to schedule a recurring job using a schedule JobSet definition. Each process within a job can be altered to set up its own output destination options or set the operating system where the process is to be scheduled.

Using PSADMIN utility

Use the PSADMIN utility to configure and administer the PeopleSoft Process Scheduler Server Agent. PSADMIN is supported on only Windows 2000 and UNIX. However, in some cases, you can run the PSADMIN utility on operating systems that are not supported application servers.

Configuring a PeopleSoft Process Scheduler server is similar to configuring application servers and web servers. From the PeopleSoft Process Scheduler Administration menu, you invoke a text-driven interface that prompts you for parameter values. All of the PeopleSoft Process Scheduler server configuration information for a specific database is contained in the PSPRCS.CFG configuration file, and the PSADMIN provides an interface to edit this file.

PeopleSoft automatically archives the Process Scheduler configuration file whenever it is changed. The older version is archived as PSPRCS_<Time Stamp>.CFG, and the current version becomes psprcs.cfg. The archive directory path is <PS_Home>\Appserv\prcs\<database>\Archive\. (for example, c:\pt844\Appserv\prcs\fin844\Archive\).

Posting non-process scheduler reports to the report repository

The process of posting reports and files to the Report Repository is performed by the Distribution Agent server. When using PeopleSoft Process Scheduler, the transfer is triggered by the Process Scheduler server when it detects that a process request, such as SQR or Crystal, has generated a report and is ready to be posted.

Reports that were generated outside of the PeopleSoft Process Scheduler either by being run manually or by a third-party scheduler, can be posted to the Report Repository using the PostReport PeopleCode class object. The PostReport PeopleCode class updates the Report Manager with the information for the new report, including the list of users and roles authorized to view the report. The request is sent to the Distribution Agent that is identified by the ServerName of the process scheduler server specified in the request.

Using the PostReport PeopleCode class object implies that a PeopleCode function has been written using this class and is invoked either from an Application Engine or an Application Server.

Sending a single request through an Application Engine can incur a large overhead; therefore, PeopleSoft recommend running the program from PSDAEMON using the POSTRPT_DMN Application Engine program.

The POSTRPT_DMN program monitors for any requests to post by searching for new XML files in a designated directory. The XML file contains all the parameters required by the PostReport PeopleCode class object to post the request to the Report Repository. The program reads the parameters using the POST_REPORT_XML file layout


No comments:

Post a Comment