SAP bundled an integrated scheduler with the first versions of SAP R/3, which had an essentially time-driven algorithm. Background processes, that are processes that run without user interaction, were launched and run within the local system. Typical activities for background processing include periodically recurring processes to update a booking system or to create time-consuming reports analyzing large volumes of data.
The automatic changeover from dialog-oriented daytime operation to nighttime operation, where mainly background processes run, occurs using SAP’s own scheduler. SAP has also enabled preconfigured procedures for background processes to be supplied as job templates. Examples can be found in recent versions of SAP R/3, up to and including Release 4.6.
Scheduling of ABAP-based processes
Since SAP R/3 Release 3.1l, SAP has been offering the eXternal Batch Processing (XBP) interface. This is SAP’s response to customer requests for an external scheduler designed for their business process applications, both SAP and non-SAP. This has enabled SAP partners’ scheduler solutions to extensively monitor jobs in SAP solutions. Monitoring encompasses the processes of creating, starting and interrupting jobs, and reading and processing output and error files.
This XBP interface fulfilled the demands of customers and partners for many years. Over time, however, the requirements became more extensive and included the need for schedulers to use intercepts and to support hierarchical relationships, i.e. ‘parent-child’ relationships. Both these demands were met by the SAP Web Application Server 6.20 in an extended version of the XBP interface. The intercept procedure lets the external scheduler cancel the release of manually created jobs in an SAP solution and delay their processing until it makes commercial sense to do so or until dictated by load criteria in the system landscape. This is the case, for instance, if system resources are not available and the scheduled jobs then impact too heavily on response times or the data throughput of programs running in real time. XBP’s parent-child function supplies information on whether a superordinate job – the ‘parent job’ – has generated several secondary ‘child jobs.’ This often occurs in order to spread the load as best as possible. Child jobs cannot be processed at different times, however. They need to be monitored and controlled concurrently with the parent job as a single logical unit.
SAP NetWeaver linked to scheduling
Whereas scheduling in SAP R/3 always focuses on the individual components, central job scheduling will assume increasing importance with the introduction of SAP NetWeaver. Business processes have to run automatically on the SAP NetWeaver integration platform using all components. Modern business process solutions such as SAP NetWeaver Business Intelligence (SAP NetWeaver BI) and SAP Customer Relationship Management (SAP CRM) work with volumes of data that are systematically searched, evaluated and compressed in the system landscape To optimize these solutions, SAP NetWeaver also supports appropriate scheduling functions.
The job scheduling functions, supplied with SAP NetWeaver ‘04 at no extra cost, can all be controlled centrally by solutions provided by SAP. The big benefit of the latest version of SAP NetWeaver is that ABAP programs can be planned, launched and monitored centrally. This helps significantly reduce the TCO in relation to the size of the system landscape. The solution also works perfectly with older SAP versions. It is possible to start cross-component job chains and job chains with activities running in parallel, such as parent-child jobs. Working with job templates speeds up the planning process.
What the future will bring
As well as central job control, the next version of SAP NetWeaver will also facilitate complete integration of scheduling functions. SAP NetWeaver will then provide a set of preconfigured templates with the relevant scheduling functions for every SAP application in a system landscape. Automation and monitoring are possible via a single control point. This enables job management that is controlled exclusively by the business process. Administrators will be able to create and plan jobs for SAP solutions with much less effort.
The innovations in the next version of SAP NetWeaver concern the following areas: The user interface will be integrated with WebDynpro in SAP NetWeaver Administrator, SAP’s latest central administration portal. The process server as the background processes’ control unit will run on the SAP application platform within the J2EE server. This means an end to the current reliance on the Oracle database because the database-independent Open SQL will be used for access. Furthermore, the next version of SAP NetWeaver will incorporate the scheduler into the software logistics, with the option of using SAP tools for installation, upgrading, and migration. The scheduler will then use the System Landscape Directory (SLD) as a central directory. This will contain data on elements such as the system landscape, scheduler installation, version, and host computer.
As a smooth flow of background jobs is essential for live business processes, the scheduler in the next SAP NetWeaver version will supply detailed monitoring information to the central monitoring infrastructure, the SAP Computing Center Management System (SAP CCMS). The monitoring information will then be available in the SAP Solution Manager or via system management tools from SAP partners. In future it will be possible to create jobs in other systems for all applications running on SAP NetWeaver. Extended application interfaces will be used for execution via the integrated scheduling system. As well as monitoring ABAP programs, it will also be possible to launch JAVA programs using a universally available interface. This will be available on web services in future, in line with the XBP interface already in existence.
Even though the integrated scheduling solution will be the only one that SAP will be providing support for, SAP will remain open to other partners’ scheduling solutions. This means SAP will continue to offer access to all functions via certifiable interfaces. In return, partners’ scheduling solutions should also support the new SAP interfaces.
Given the continuing expansion of the scheduling functions, the question will arise as to the kind of jobs that will be handled in the context of SAP NetWeaver in future. In the past, it was ABAP programs that were the units being controlled. With the introduction of SAP Web Application Server 6.20, JAVA programs were added, chiefly as Enterprise JAVA Beans. In future, the units being controlled will be geared fully to the Enterprise Service Architecture (ESA) and, therefore, to business processes too. Standardization work is under way in this area.