Since Version 3 of OS/400, IBM i owners have been improving the efficiency and accuracy of their operations by automating job submissions on their systems with the IBM Advanced Job Scheduler for i. It can run jobs on request, as a result of some system or network event, or on almost any sort of regular or irregular schedule. Schedules can take into account holidays, fiscal calendars, and the availability of system resources. Users can send regular or exception notifications from jobs using a variety of methods, including email. They can also distribute job output automatically to any IBM i user in the network. From a central system, users can submit jobs across the entire IBM i network. In addition, the Advanced Job Scheduler can provide information for documenting business processes and forecasting upcoming work.
The what, when, where, and how of scheduling
With the Advanced Job Scheduler, you can automatically process any function that you can submit as a job. This function can be something as complex as a multi-system, core business application suite, or as simple as a single CL command. For example, you could launch a nightly backup with a Save Library (SAVLIB) command, or you could override a few database files then call an RPG program.
With the scheduler, you can run jobs manually, run jobs based on a particular schedule, or set up to run jobs automatically based on some other system or network event. With time-based scheduling, jobs can run at repeated intervals; on specific dates and times; or on particular days of the week, month, or fiscal period. You can even define which days of the week are working days in order to support schedules such as "the last working day of each month." You can also create calendars to define fiscal periods, company holidays, or frequently used run schedules. With holiday calendars, you can specify for each holiday whether to skip the job, run it as scheduled, or run it on an alternate date. You can then further refine run schedules by specifying date and time ranges. For example, you can schedule a job to run hourly but only between 5 p.m. and 7 a.m. After the job has completed, the Advanced Job Scheduler can notify you the completion status of the job and distribute reports to other output queues or as an attachment to an email.
The Advanced Job Scheduler can run jobs on your local system or on any other system in the network where the product has been installed and started. An internal TCP/IP service or Distributed Data Management over TCP/IP or SNA can be used to handle system-to-system communications. Jobs can also be defined to process commands on non-IBM i platforms.
Work Flow Manager
The Work Flow Manager is a tool that lets you define units of work that can consist of a combination of automated and manual steps. The units of work can then be scheduled or started manually. With various notification checkpoints, users can be notified when steps have started, completed, did not run by a specific time, and exceeded the run limit. Each step may have predecessor and successor jobs. Predecessor jobs for a step must complete before the step can be automatically or manually completed. After a step has completed, successor jobs are set to run. It is common to specify predecessor jobs that are the same as the successor jobs of the previous step. This causes the step to wait until the jobs complete before notifying that the step has completed.
A good candidate for using the Advanced Job Scheduler Work Flow Manager is payroll processing. The payroll process consists of manual steps such as inputting time cards, validating reports, and printing and disbursing checks. The automatic steps can clear the batch work files, process timecard input, run the payroll updates, and create the reports and checks.
Dependency-based scheduling also provides a rich set of options for alternate jobs, job groups, job dependencies, and resource dependencies. For example, a schedule can specify that an alternate job should run if the regular job ends abnormally. In that case, the alternate job might call a clean up function and then perform additional notification. You can create a job group to define an ordered set of jobs that run sequentially. The first job in the sequence has the schedule information that launches the group. If any job in the group fails, the remaining jobs will not run until the group is submitted at the next scheduled time, or the group is started manually.
There are several additional methods for controlling sequences based on job dependencies. One is to describe predecessor and successor job relationships. For example, you can specify JOB3 as a successor that will run only after JOB1 and JOB2 have completed normally. This same JOB3 can also be a predecessor to JOB4 and JOB5, where JOB4 will run after JOB3 completes normally and JOB5 will always run after JOB3 finishes, whether JOB3 finishes normally or abnormally.
All of the information related to scheduled jobs within the Advanced Job Scheduler is stored in library QUSRIJS on your IBM i. Advanced Job Scheduler defaults to monitor for the scheduled jobs stored in that library. The QUSRIJS library where this information is stored and then monitored is called a scheduling environment. The scheduling environment is portable because it is just a normal IBM i library. Additional scheduling environments can be created for varioius reasons. In scenarios where your schedule environment must remain available, your schedule environment can be copied to a backup system to help preserve your operations in the event of a system outage. You can also create several scheduling environments on your system to support both production and test of your scheduling needs.
There are five interfaces to Advanced Job Scheduler functions: a 5250 workstation interface, CL commands that can be run in a batch environment, a graphical interface via IBM Navigator for i, a wireless interface via Advanced Job Scheduler for Wireless, and a web interface via Navigator for the Web or IBM Systems Director Navigator for i. To get to the main product menu on a 5250 workstation, type GO JS on a command line. If you prefer to enter CL commands directly, there are currently over 30 that are supported by the product.
When the IBM Navigator for i (iNav) plug-in is installed for the Advanced Job Scheduler on a Client Access workstation, an entry for the product will appear in the iNav tree under Work Management. Expanding the Advanced Job Scheduler entry reveals nodes in the tree for Scheduled Jobs, Job Groups, Scheduled Job Activity, and more. Right-clicking will bring up context menus for tasks such as creating calendars, changing default values, and creating new jobs.
If the plug-in is installed on a workstation where Management Central is being used, the Advanced Job Scheduler will automatically replace the basic Management Central scheduling dialog. Distributed systems management tasks, such as sending objects and files, distributing PTFs, collecting inventory information, and issuing commands to groups of systems can be scheduled using the richer scheduling capabilities of Advanced Job Scheduler. Multiple tasks can be processed by a single Advanced Job Scheduler job.
Using AJS for Wireless, you can manage your AJS scheduled jobs using an internet-ready cell phone or wireless PDA. From your wireless device, you can view job logs, see the commands that were run for your job, and examine the dependencies for your job. You can stop running jobs, and start scheduled jobs. You can even respond to inquiry messages - all from your wireless device.
With AJS for the web, you can manage your AJS scheduled jobs using an internet browser. To access AJS using IBM Systems Director Navigator for i, follow these steps:
- Before you begin, verify that the Administration instance of the HTTP Server is running on your system.
- Use the following URL in a web browser replacing hosta with your IBM i name or IP address. http://hosta:2001
- After signing on, expand IBM i Management on the left.
- Select Work Management on the left.
- Click the Show All Work Management Tasks button.