EP1367488B1 - Method and computer system for network-job management - Google Patents

Method and computer system for network-job management Download PDF

Info

Publication number
EP1367488B1
EP1367488B1 EP02012072A EP02012072A EP1367488B1 EP 1367488 B1 EP1367488 B1 EP 1367488B1 EP 02012072 A EP02012072 A EP 02012072A EP 02012072 A EP02012072 A EP 02012072A EP 1367488 B1 EP1367488 B1 EP 1367488B1
Authority
EP
European Patent Office
Prior art keywords
job
computer
net
status
computer system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
EP02012072A
Other languages
German (de)
French (fr)
Other versions
EP1367488A1 (en
Inventor
Dieter Babutzka
Hans-Georg Klotzek
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SAP SE
Original Assignee
SAP SE
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SAP SE filed Critical SAP SE
Priority to AT02012072T priority Critical patent/ATE324627T1/en
Priority to EP02012072A priority patent/EP1367488B1/en
Priority to DE60210934T priority patent/DE60210934T2/en
Priority to US10/209,956 priority patent/US7100094B2/en
Publication of EP1367488A1 publication Critical patent/EP1367488A1/en
Application granted granted Critical
Publication of EP1367488B1 publication Critical patent/EP1367488B1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0715Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a system implementing multitasking

Definitions

  • the present invention generally relates to electronic data processing, and more particularly, relates to method, computer program product and system for network-job management.
  • Computer networks often include a plurality of computer systems.
  • each computer system has a technical system administrator who is responsible for all kinds of technical issues related to the computer system.
  • a technical system administrator takes care of user authorizations, setting up tape-mounts, system backup, database reorganization, etc.
  • Many of these tasks are performed via so-called batch jobs (referred to a jobs, hereinafter).
  • a job is typically run in the background (not on the user-interaction level of the computer system) at a time where the system load through user-interaction processes is low in order to avoid slowing down system response times for users.
  • a scheduler of the computer system performs the task of starting a job when a predefined start condition is fulfilled.
  • a second job cannot start before a first job has ended because the first job generates output data that are needed as input for the second job.
  • a problem can occur when the first job dies before having generated all output data. In this case the second job will not receive all required input data. For example, a job can die because of a missing user authorization or a failed tape-mount. The technical system administrator gets notified and can fix the error.
  • a network scheduler is used to control the start and end of various jobs in different computer systems at the computer network level.
  • a business oriented administrator is responsible for the network scheduler. The business oriented administrator gets notified when a job from the first computer system dies and, therefore, a dependent job in the second system does not start. However, the technical administrator of the second system only gets notified that the dependent job did not start as scheduled.
  • the notification can be in the form of a job-net status of a job-net that defines dependencies between jobs of various computers in the computer system.
  • FIG. 1 illustrates a simplified block diagram of an exemplary computer system, that implements embodiments of the present invention.
  • Computer 900 can be connected to further computers 901, 902 via computer network 990.
  • Computer 900 comprises processor 910, memory 920, bus 930, and, optionally, input device 940 and output device 950 (I/O devices, user interface 960).
  • the invention is present by computer program product 100 (CPP), program carrier 970 and program signal 980, collectively "program”.
  • computer 901/902 is sometimes referred to as "remote computer", computer 901/902 is, for example, a server, a router, a peer device or other common network node, and typically comprises many or all of the elements described relative to computer 900.
  • Computer 900 is, for example, a conventional personal computer (PC), a desktop and hand-held device, a multiprocessor computer, a pen computer, a microprocessor-based or programmable consumer electronics, a minicomputer, a mainframe computer, a personal mobile computing device, a mobile phone, a portable or stationary personal computer, a palmtop computer or the like.
  • PC personal computer
  • desktop and hand-held device a multiprocessor computer
  • pen computer a microprocessor-based or programmable consumer electronics
  • minicomputer a mainframe computer
  • a personal mobile computing device a mobile phone
  • portable or stationary personal computer a palmtop computer or the like.
  • Processor 910 is, for example, a central processing unit (CPU), a micro-controller unit (MCU), digital signal processor (DSP), or the like.
  • CPU central processing unit
  • MCU micro-controller unit
  • DSP digital signal processor
  • Memory 920 symbolizes elements that temporarily or permanently store data and instructions. Although memory 920 is conveniently illustrated as part of computer 900, memory function can also be implemented in network 990, in computers 901/902 and in processor 910 itself (e.g., cache, register), or elsewhere. Memory 920 can be a read only memory (ROM), a random access memory (RAM), or a memory with other access options.
  • ROM read only memory
  • RAM random access memory
  • Memory 920 is physically implemented by computer-readable media, such as, for example: (a) magnetic media, such as a hard disk, a floppy disk, or other magnetic disk, a tape, a cassette tape; (b) optical media, such as optical disk (CD-ROM, digital versatile disk - DVD); (c) semiconductor media, such as DRAM, SRAM, EPROM, EEPROM, memory stick, or by any other media, such as paper.
  • computer-readable media such as, for example: (a) magnetic media, such as a hard disk, a floppy disk, or other magnetic disk, a tape, a cassette tape; (b) optical media, such as optical disk (CD-ROM, digital versatile disk - DVD); (c) semiconductor media, such as DRAM, SRAM, EPROM, EEPROM, memory stick, or by any other media, such as paper.
  • memory 920 is distributed across different media. Portions of memory 920 can be removable or non-removable.
  • computer 900 uses devices well known in the art such as, for example, disk drives, tape drives.
  • Memory 920 stores support modules such as, for example, a basic input output system (BIOS), an operating system (OS), a program library, a compiler, an interpreter, and a text- processing tool.
  • support modules are commercially available and can be installed on computer 900 by those of skill in the art. For simplicity, these modules are not illustrated.
  • CPP 100 comprises program instructions and optionally - data that cause processor 910 to execute method steps of the present invention. Method steps are explained with more detail below.
  • CPP 100 defines the operation of computer 900 and its interaction in network system 999.
  • CPP 100 can be available as source code in any programming language, and as object code ("binary code") in a compiled form.
  • Persons of skill in the art can use CPP 100 in connection with any of the above support modules (e.g., compiler, interpreter, operating system).
  • CPP 100 is illustrated as being stored in memory 920, CPP 100 can be located elsewhere. CPP 100 can also be embodied in carrier 970.
  • Carrier 970 is illustrated outside computer 900. For communicating CPP 100 to computer 900, carrier 970 is conveniently inserted into input device 940. Carrier 970 is implemented as any computer readable medium, such as a medium largely explained above (cf. memory 920). Generally, carrier 970 is an article of manufacture comprising a computer readable medium having computer readable program code means embodied therein for executing the method of the present invention. Further, program signal 980 can also embody computer program 100. Signal 980 travels on network 990 to computer 900.
  • program carrier 970 Having described CPP 100, program carrier 970, and program signal 980 in connection with computer 900 is convenient.
  • program carrier 971/972 (not shown) and program signal 981/982 embody computer program product (CPP) 101/102 to be executed by processor 911/912 (not shown) in computers 901/902, respectively.
  • processor 911/912 (not shown) in computers 901/902, respectively.
  • Input device 940 symbolizes a device that provides data and instructions for processing by computer 900.
  • device 940 is a keyboard, a pointing device (e.g., mouse, trackball, cursor direction keys), microphone, joystick, game pad, scanner, disk drive.
  • a wireless receiver e.g., with satellite dish or terrestrial antenna
  • a sensor e.g., a thermometer
  • a counter e.g., goods counter in a factory.
  • Input device 940 can serve to read carrier 970.
  • Output device 950 symbolizes a device that presents instructions and data that have been processed.
  • a monitor or a display (cathode ray tube (CRT), flat panel display, liquid crystal display (LCD), speaker, printer, plotter, vibration alert device.
  • CTR cathode ray tube
  • LCD liquid crystal display
  • speaker printer
  • vibration alert device Similar as above, output device 950 communicates with the user, but it can also communicate with further computers.
  • Input device 940 and output device 950 can be combined to a single device; any device 940 and 950 can be provided optional.
  • Bus 930 and network 990 provide logical and physical connections by conveying instruction and data signals. While connections inside computer 900 are conveniently referred to as “bus 930", connections between computers 900-902 are referred to as “network 990". optionally, network 990 comprises gateways being computers that specialize in data transmission and protocol conversion.
  • Devices 940 and 950 are coupled to computer 900 by bus 930 (as illustrated) or by network 990 (optional). While the signals inside computer 900 are mostly electrical signals, the signals in network are electrical, magnetic, optical or wireless (radio) signals.
  • Networking environments are commonplace in offices, enterprise-wide computer networks, intranets and the internet (i.e. world wide web). The physical distance between a remote computer and computer 900 is not important.
  • Network 990 can be a wired or a wireless network.
  • network 990 is, for example, a local area network (LAN), a wide area network (WAN), a public switched telephone network (PSTN); a Integrated Services Digital Network (ISDN), an infra-red (IR) link, a radio link, such as Universal Mobile Telecommunications System (UMTS), Global System for Mobile Communication (GSM), Code Division Multiple Access (CDMA), or satellite link.
  • LAN local area network
  • WAN wide area network
  • PSTN public switched telephone network
  • ISDN Integrated Services Digital Network
  • IR infra-red
  • radio link such as Universal Mobile Telecommunications System (UMTS), Global System for Mobile Communication (GSM), Code Division Multiple Access (CDMA), or satellite link.
  • UMTS Universal Mobile Telecommunications System
  • GSM Global
  • Transmission protocols and data formats are known, for example, as transmission control protocol/internet protocol (TCP/IP), hyper text transfer protocol (HTTP), secure HTTP, wireless application protocol, unique resource locator (URL), a unique resource identifier (URI), hyper text markup language HTML, extensible markup language (XML), extensible hyper text markup language (XHTML), wireless application markup language (WML), Standard Generalized Markup Language (SGML) etc.
  • TCP/IP transmission control protocol/internet protocol
  • HTTP hyper text transfer protocol
  • HTTP secure HTTP
  • wireless application protocol unique resource locator
  • URL unique resource locator
  • URI unique resource identifier
  • hyper text markup language HTML extensible markup language
  • XML extensible markup language
  • XHTML extensible hyper text markup language
  • WML wireless application markup language
  • An interface can be, for example, a serial port interface, a parallel port interface, a game port, a universal serial bus (USB) interface, an internal or external modem, a video adapter, or a sound card.
  • USB universal serial bus
  • FIG. 2 illustrates details of job-net 300 in one embodiment of computer system 999.
  • computer system 999 has computer 900, first computer 901 and second computer 902 which are connected to each other via network 990.
  • Job-net 300 is stored on computer 900 of computer system 999.
  • job-net 300 can be stored in memory 920 (cf. FIG. 1) of computer 900.
  • job-net 300 can be part of a network scheduler 110 that schedules jobs of any computer in computer system 999.
  • job-net 300 can be connected to the network scheduler via a corresponding interface.
  • Network scheduler 110 is also referred to as scheduler 110, hereinafter.
  • Job-net 300 can also be stored on any other computer of computer system 999.
  • those skilled in the art can implement job-net 300 as a table in a relational database system.
  • job-net 300 defines dependencies between jobs 301-305.
  • the dependencies are illustrated by straight arrows and indicate that the start of a specific job is dependent on the successful completion of another job.
  • second job 302 has dependency D1 on first job 301 and has dependency D2 on further job 305.
  • second job 302 must not start before first job 301 and further job 305 have been successfully completed.
  • dependency D1 For convenience of explanation, the following discussion only takes into account dependency D1.
  • Those skilled in the art can apply the invention to further dependencies, such as dependency D2.
  • Scheduler 110 starts 204 first job 301 on first computer 901. For some reason first job 301 is not successfully completed (illustrated by being crossed out) on first computer 901. For example, a reason can be that the user that was used to logon to first computer 901 has no authorization for starting first job 301. Another reason can be that first job 301 unsuccessfully tries to mount a tape which is not up and running. First job 301 reports a job failure that is received 205 by scheduler 110.
  • job-net 300 includes synchronization points, such as SP-1 and SP-2.
  • a synchronization point corresponds to a predefined location in job-net 300, where a status of job-net 300 can be determined.
  • synchronization point SP-1 is defined to determine 420 job-net status 300-S before starting second job 302 on second computer 902.
  • job-net status 300-S includes the status of the whole job-net.
  • job-net status 300-S includes a snapshot of the status information that is available at each synchronization point SP-1, SP-2 of job-net 300 at a specific point in time (e.g. after having received 205 first job 301 failure report).
  • Those skilled in the art can implement job-net status 300-S in the format of a data structure, such as a table or an XML-file.
  • job-net status 300-S includes the information that first job 301 was not successfully completed on first computer 901. Therefore, the start condition for second job 302 (successful completion of first job 301 and further job 305) is not fulfilled, no matter what the status of further job 305 is. Instead of starting second job 302 on second computer 902, scheduler 110 transmits 430 job-net status 300-S to second computer 902.
  • second computer 902 facilitates the error analysis by creating job failure alert A1.
  • job failure alert A1 can initiate a corresponding pop-up window on the technical system administrator's user-interface.
  • Other implementations of alerts, such as audio signals, are known by those skilled in the art.
  • FIG. 3 illustrates flow chart 200 that can be implemented with one embodiment of computer system 999 (cf. FIG. 2).
  • Computer 900 (cf. FIG. 2) provides 202 job-net 300.
  • job-net 300 can be consolidated from various jobs in various computers (e.g. 901, 902, cf. FIG. 2) of computer system 999.
  • Computer 900 starts 204 first job 301 (cf. FIG. 2) on first computer 901. Preferably, this is achieved by using scheduler 110 (cf. FIG. 2).
  • Computer 900 receives 205 a status of first job 301 from first computer 901.
  • Computer 900 determines 206 job-net status 300-S.
  • computer 900 uses synchronization points SP-1, SP-2 (cf . FIG. 2) of job-net 300 to create a snap shot of each job's status at a corresponding synchronization point.
  • computer 900 detects 208 a failure of first job 301 and includes this information in job-net status 300-S.
  • second job 302 is started 210 in second computer 902.
  • first job 301 (as in the example) or further job 305 failed, computer 900 transmits 212 job-net status 300-S to second computer 902. Second job 302 is not started.
  • second computer 902 creates 214 job failure alert A1 (cf. FIG. 2) to notify a technical system administrator of the reason why second job 302 was not started.
  • FIGS. 4A, 4B illustrate simplified flow charts of methods 400, 500 for error analysis in case of job failure that can be implemented with embodiments of the invention.
  • methods 400, 500 can be executed by computers 900, 902 (cf. FIG. 1) of computer system 999 (cf. FIG. 1).
  • Computer program product 100 includes instructions that cause at least a processor (e.g. 910) of computer 900 to execute the steps of method 400.
  • Computer program product 102 includes instructions that cause at least a processor (e.g. 912) of second computer 902 to execute the steps of method 500.
  • Computer program products 100, 102 can be stored in data carriers 970, 972 (cf. FIG. 1), respectively, or can be carried by signals 980, 982, respectively.
  • computer program product 100 is loaded into memory 920 of computer 900 and computer program product 102 (cf. FIG. 1) is loaded into memory 922 of second computer 902.
  • FIG. 4A illustrates a simplified flow chart of method 400 for error analysis in case of job failure in computer system 999.
  • Computer system 999 has at least first computer 901 and second computer 902.
  • Method 400 includes the steps providing job-net 410, determining job-net status 420 and transmitting job-net status 430.
  • Method 400 also includes the optional (dashed frame) step creating job failure alert 440.
  • job-net 300 is provided defining the start of second job 302 of second computer 902 to be dependent on the successful completion of first job 301 of first computer 901.
  • determining job-net status 300-S of job-net 300 is determined.
  • the determining job-net status step 420 is performed at a pre-defined synchronization-point SP-1.
  • job-net status 300-S is transmitted to second computer 902 in case of unsuccessful completion of first job 301.
  • steps 410-430 are executed by computer 900 of computer system 999.
  • any other computer of computer system 999 may be used as well.
  • second computer 902 creates job failure alert A1.
  • FIG. 4B illustrates a simplified flow chart of method 500 for error analysis in case of job failure in computer system 999.
  • Computer system 999 has at least first computer 901 and second computer 902.
  • Method 500 includes the steps receiving job-net status 510 and creating job failure alert 520.
  • second computer 902 receives job-net status 300-S of job-net 300 from, for example, computer 900 of computer system 999.
  • Job-net 300 defines the start of second job 302 of second computer 902 to be dependent on the successful completion of first job 301 of first computer 901.
  • Job-net status 300-S indicates the unsuccessful completion of first job 301.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Method, system and computer program product for error analysis in case of job failure for network-job management. A computer system (999) has at least a first computer (901) and a second computer (902). The computer system (999) provides a job-net (300). The job-net (300) defines the start of a second job (302) of the second computer (902) to be dependent on the successful completion of a first job (301) of the first computer (901). The computer system (999) determines (420) a job-net status (300-S) of the job-net (300). In case of unsuccessful completion of the first job (301) the computer system (999) transmits (430) the job-net status (300-S) to the second computer (902). <IMAGE>

Description

    Field of the Invention
  • The present invention generally relates to electronic data processing, and more particularly, relates to method, computer program product and system for network-job management.
  • Background of the Invention
  • Computer networks often include a plurality of computer systems. Typically, each computer system has a technical system administrator who is responsible for all kinds of technical issues related to the computer system. For example, a technical system administrator takes care of user authorizations, setting up tape-mounts, system backup, database reorganization, etc. Many of these tasks are performed via so-called batch jobs (referred to a jobs, hereinafter). A job is typically run in the background (not on the user-interaction level of the computer system) at a time where the system load through user-interaction processes is low in order to avoid slowing down system response times for users. For example, a scheduler of the computer system performs the task of starting a job when a predefined start condition is fulfilled. In many cases a second job cannot start before a first job has ended because the first job generates output data that are needed as input for the second job. A problem can occur when the first job dies before having generated all output data. In this case the second job will not receive all required input data. For example, a job can die because of a missing user authorization or a failed tape-mount. The technical system administrator gets notified and can fix the error.
  • In the case of a computer network, usually dependencies between multiple batch jobs of different computer systems exist. That is, for example, a job in a first computer system should not start before successful completion of a job in a second computer system. Usually, a network scheduler is used to control the start and end of various jobs in different computer systems at the computer network level. Typically, in a computer network that is used for business purposes, a business oriented administrator is responsible for the network scheduler. The business oriented administrator gets notified when a job from the first computer system dies and, therefore, a dependent job in the second system does not start. However, the technical administrator of the second system only gets notified that the dependent job did not start as scheduled.
  • In the document "ROUTING LOGGED ERRORS IN AIX" IBM TECHNICAL DISCLOSURE BULLETIN, IBM CORP. NEW YORK, US, vol. 32, no. 6A, 1 November 1989 (1989-11-01), pages 192-193, a first job sends error information to an error demon, a second application has itself registered with the error demon as requiring error information of the first application (and is thus dependent on the first application) and the error demon then sends error information from the first application to the second application. The demon uses a configuration file to identify the targets for routing the error notifications.
  • There is an ongoing need to improve error analysis support for technical computer system administrators in the case of job failure in a computer network system.
  • Summary of the Invention
  • The technical problem of untraceable job-failure in a computer network system is solved by a method according to claim 1. Further embodiments of the invention are a further method according to claim 3, a computer system according to claim 6, computer program products according to claims 4 and 5 and a second computer according to claim 8.
  • By notifying a computer of the reason why a specific job did not start on the computer, a corresponding error analysis is improved for the technical system administrator of the computer. According to the invention, the notification can be in the form of a job-net status of a job-net that defines dependencies between jobs of various computers in the computer system.
  • The aspects of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the appended claims. It is to be understood that both, the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention as described.
  • Brief Description of the Drawings
  • FIG. 1
    illustrates a simplified block diagram of a computer system that can be used with an embodiment of the present invention;
    FIG. 2
    illustrates details of a job-net in one embodiment of the computer system;
    FIG. 3
    illustrates a flow chart that can be implemented with one embodiment of the computer system; and
    FIGS. 4A, 4B
    illustrate simplified flow charts of two methods for error analysis in case of job failure that can be implemented with embodiments of the invention.
    Detailed Description of the Invention
  • Wherever possible, the same reference numbers will be used throughout the drawings to refer to the same or like parts. For convenience of explanation a list of references is provided prior to the claims.
  • FIG. 1 illustrates a simplified block diagram of an exemplary computer system, that implements embodiments of the present invention. Computer system 999 includes computer 900 and has a plurality of further computers 901, 902 (or 90q, with q=0...Q-1, Q any number).
  • Computer 900 can be connected to further computers 901, 902 via computer network 990. Computer 900 comprises processor 910, memory 920, bus 930, and, optionally, input device 940 and output device 950 (I/O devices, user interface 960). As illustrated, the invention is present by computer program product 100 (CPP), program carrier 970 and program signal 980, collectively "program".
  • In respect to computer 900, computer 901/902 is sometimes referred to as "remote computer", computer 901/902 is, for example, a server, a router, a peer device or other common network node, and typically comprises many or all of the elements described relative to computer 900. Hence, elements 100 and 910-980 in computer 900 collectively illustrate also corresponding elements 10q and 91q-98q (shown for q=0) in computers 90q.
  • Computer 900 is, for example, a conventional personal computer (PC), a desktop and hand-held device, a multiprocessor computer, a pen computer, a microprocessor-based or programmable consumer electronics, a minicomputer, a mainframe computer, a personal mobile computing device, a mobile phone, a portable or stationary personal computer, a palmtop computer or the like.
  • Processor 910 is, for example, a central processing unit (CPU), a micro-controller unit (MCU), digital signal processor (DSP), or the like.
  • Memory 920 symbolizes elements that temporarily or permanently store data and instructions. Although memory 920 is conveniently illustrated as part of computer 900, memory function can also be implemented in network 990, in computers 901/902 and in processor 910 itself (e.g., cache, register), or elsewhere. Memory 920 can be a read only memory (ROM), a random access memory (RAM), or a memory with other access options. Memory 920 is physically implemented by computer-readable media, such as, for example: (a) magnetic media, such as a hard disk, a floppy disk, or other magnetic disk, a tape, a cassette tape; (b) optical media, such as optical disk (CD-ROM, digital versatile disk - DVD); (c) semiconductor media, such as DRAM, SRAM, EPROM, EEPROM, memory stick, or by any other media, such as paper.
  • Optionally, memory 920 is distributed across different media. Portions of memory 920 can be removable or non-removable. For reading from media and for writing in media, computer 900 uses devices well known in the art such as, for example, disk drives, tape drives.
  • Memory 920 stores support modules such as, for example, a basic input output system (BIOS), an operating system (OS), a program library, a compiler, an interpreter, and a text- processing tool. Support modules are commercially available and can be installed on computer 900 by those of skill in the art. For simplicity, these modules are not illustrated.
  • CPP 100 comprises program instructions and optionally - data that cause processor 910 to execute method steps of the present invention. Method steps are explained with more detail below. In other words, CPP 100 defines the operation of computer 900 and its interaction in network system 999. For example and without the intention to be limiting, CPP 100 can be available as source code in any programming language, and as object code ("binary code") in a compiled form. Persons of skill in the art can use CPP 100 in connection with any of the above support modules (e.g., compiler, interpreter, operating system).
  • Although CPP 100 is illustrated as being stored in memory 920, CPP 100 can be located elsewhere. CPP 100 can also be embodied in carrier 970.
  • Carrier 970 is illustrated outside computer 900. For communicating CPP 100 to computer 900, carrier 970 is conveniently inserted into input device 940. Carrier 970 is implemented as any computer readable medium, such as a medium largely explained above (cf. memory 920). Generally, carrier 970 is an article of manufacture comprising a computer readable medium having computer readable program code means embodied therein for executing the method of the present invention. Further, program signal 980 can also embody computer program 100. Signal 980 travels on network 990 to computer 900.
  • Having described CPP 100, program carrier 970, and program signal 980 in connection with computer 900 is convenient. Optionally, program carrier 971/972 (not shown) and program signal 981/982 embody computer program product (CPP) 101/102 to be executed by processor 911/912 (not shown) in computers 901/902, respectively.
  • Input device 940 symbolizes a device that provides data and instructions for processing by computer 900. For example, device 940 is a keyboard, a pointing device (e.g., mouse, trackball, cursor direction keys), microphone, joystick, game pad, scanner, disk drive. Although the examples are devices with human interaction, device 940 can also operate without human interaction, such as, a wireless receiver (e.g., with satellite dish or terrestrial antenna), a sensor (e.g., a thermometer), a counter (e.g., goods counter in a factory). Input device 940 can serve to read carrier 970.
  • Output device 950 symbolizes a device that presents instructions and data that have been processed. For example, a monitor or a display, (cathode ray tube (CRT), flat panel display, liquid crystal display (LCD), speaker, printer, plotter, vibration alert device. Similar as above, output device 950 communicates with the user, but it can also communicate with further computers.
  • Input device 940 and output device 950 can be combined to a single device; any device 940 and 950 can be provided optional.
  • Bus 930 and network 990 provide logical and physical connections by conveying instruction and data signals. While connections inside computer 900 are conveniently referred to as "bus 930", connections between computers 900-902 are referred to as "network 990". optionally, network 990 comprises gateways being computers that specialize in data transmission and protocol conversion.
  • Devices 940 and 950 are coupled to computer 900 by bus 930 (as illustrated) or by network 990 (optional). While the signals inside computer 900 are mostly electrical signals, the signals in network are electrical, magnetic, optical or wireless (radio) signals.
  • Networking environments (as network 990) are commonplace in offices, enterprise-wide computer networks, intranets and the internet (i.e. world wide web). The physical distance between a remote computer and computer 900 is not important. Network 990 can be a wired or a wireless network. To name a few network implementations, network 990 is, for example, a local area network (LAN), a wide area network (WAN), a public switched telephone network (PSTN); a Integrated Services Digital Network (ISDN), an infra-red (IR) link, a radio link, such as Universal Mobile Telecommunications System (UMTS), Global System for Mobile Communication (GSM), Code Division Multiple Access (CDMA), or satellite link.
  • Transmission protocols and data formats are known, for example, as transmission control protocol/internet protocol (TCP/IP), hyper text transfer protocol (HTTP), secure HTTP, wireless application protocol, unique resource locator (URL), a unique resource identifier (URI), hyper text markup language HTML, extensible markup language (XML), extensible hyper text markup language (XHTML), wireless application markup language (WML), Standard Generalized Markup Language (SGML) etc.
  • Interfaces coupled between the elements are also well known in the art. For simplicity, interfaces are not illustrated. An interface can be, for example, a serial port interface, a parallel port interface, a game port, a universal serial bus (USB) interface, an internal or external modem, a video adapter, or a sound card.
  • Computer and program are closely related. As used hereinafter, phrases, such as "the computer provides" and "the program provides", are convenient abbreviation to express actions by a computer that is controlled by a program.
  • FIG. 2 illustrates details of job-net 300 in one embodiment of computer system 999. In the example, computer system 999 has computer 900, first computer 901 and second computer 902 which are connected to each other via network 990.
  • Job-net 300 is stored on computer 900 of computer system 999. For example, job-net 300 can be stored in memory 920 (cf. FIG. 1) of computer 900. In one embodiment job-net 300 can be part of a network scheduler 110 that schedules jobs of any computer in computer system 999. In another embodiment (not shown) job-net 300 can be connected to the network scheduler via a corresponding interface. Network scheduler 110 is also referred to as scheduler 110, hereinafter. Job-net 300 can also be stored on any other computer of computer system 999. For example, those skilled in the art can implement job-net 300 as a table in a relational database system.
  • In the example, job-net 300 defines dependencies between jobs 301-305. The dependencies are illustrated by straight arrows and indicate that the start of a specific job is dependent on the successful completion of another job. For example, second job 302 has dependency D1 on first job 301 and has dependency D2 on further job 305. In other words, second job 302 must not start before first job 301 and further job 305 have been successfully completed. For convenience of explanation, the following discussion only takes into account dependency D1. Those skilled in the art can apply the invention to further dependencies, such as dependency D2.
  • The following scenario is used to explain details of the invention. However, the scenario is not limiting the scope of the invention with regards to the specific embodiment of computer system 999 that is used in the scenario. Scheduler 110 starts 204 first job 301 on first computer 901. For some reason first job 301 is not successfully completed (illustrated by being crossed out) on first computer 901. For example, a reason can be that the user that was used to logon to first computer 901 has no authorization for starting first job 301. Another reason can be that first job 301 unsuccessfully tries to mount a tape which is not up and running. First job 301 reports a job failure that is received 205 by scheduler 110.
  • Preferably, job-net 300 includes synchronization points, such as SP-1 and SP-2. A synchronization point corresponds to a predefined location in job-net 300, where a status of job-net 300 can be determined. In the example, synchronization point SP-1 is defined to determine 420 job-net status 300-S before starting second job 302 on second computer 902. Advantageously, job-net status 300-S includes the status of the whole job-net. In other words, job-net status 300-S includes a snapshot of the status information that is available at each synchronization point SP-1, SP-2 of job-net 300 at a specific point in time (e.g. after having received 205 first job 301 failure report). Those skilled in the art can implement job-net status 300-S in the format of a data structure, such as a table or an XML-file.
  • In the example, job-net status 300-S includes the information that first job 301 was not successfully completed on first computer 901. Therefore, the start condition for second job 302 (successful completion of first job 301 and further job 305) is not fulfilled, no matter what the status of further job 305 is. Instead of starting second job 302 on second computer 902, scheduler 110 transmits 430 job-net status 300-S to second computer 902.
  • By making job-net status 300-S available to second computer 902, a technical system administrator can easily identify, why second job 302 was not started as originally scheduled. Without knowing the information from other computers in computer system 999, the technical system administrator would try first to identify an error in second computer 902 where he/she is responsible for. In a preferred embodiment, second computer 902 facilitates the error analysis by creating job failure alert A1. For example, job failure alert A1 can initiate a corresponding pop-up window on the technical system administrator's user-interface. Other implementations of alerts, such as audio signals, are known by those skilled in the art.
  • FIG. 3 illustrates flow chart 200 that can be implemented with one embodiment of computer system 999 (cf. FIG. 2).
  • The behaviour of computer system 999, as described in FIG. 2, can be summarized by using flow chart 200.
  • Computer 900 (cf. FIG. 2) provides 202 job-net 300. For example, job-net 300 can be consolidated from various jobs in various computers (e.g. 901, 902, cf. FIG. 2) of computer system 999.
  • Computer 900 starts 204 first job 301 (cf. FIG. 2) on first computer 901. Preferably, this is achieved by using scheduler 110 (cf. FIG. 2).
  • Computer 900 receives 205 a status of first job 301 from first computer 901.
  • Computer 900 then determines 206 job-net status 300-S. Preferably, computer 900 uses synchronization points SP-1, SP-2 (cf . FIG. 2) of job-net 300 to create a snap shot of each job's status at a corresponding synchronization point. In the example, computer 900 detects 208 a failure of first job 301 and includes this information in job-net status 300-S.
  • For example, in case first job 301 and further job 305 defining a start condition (dependencies D1, D2) for second job 302 were successfully completed at the corresponding synchronization point SP-1, second job 302 is started 210 in second computer 902.
  • In case either first job 301 (as in the example) or further job 305 failed, computer 900 transmits 212 job-net status 300-S to second computer 902. Second job 302 is not started.
  • Advantageously, second computer 902 creates 214 job failure alert A1 (cf. FIG. 2) to notify a technical system administrator of the reason why second job 302 was not started.
  • FIGS. 4A, 4B illustrate simplified flow charts of methods 400, 500 for error analysis in case of job failure that can be implemented with embodiments of the invention. ,
  • For example, methods 400, 500 can be executed by computers 900, 902 (cf. FIG. 1) of computer system 999 (cf. FIG. 1). Computer program product 100 (cf. FIG. 1) includes instructions that cause at least a processor (e.g. 910) of computer 900 to execute the steps of method 400. Computer program product 102 (cf. FIG. 1) includes instructions that cause at least a processor (e.g. 912) of second computer 902 to execute the steps of method 500.
  • Computer program products 100, 102 can be stored in data carriers 970, 972 (cf. FIG. 1), respectively, or can be carried by signals 980, 982, respectively. Preferably, computer program product 100 is loaded into memory 920 of computer 900 and computer program product 102 (cf. FIG. 1) is loaded into memory 922 of second computer 902.
  • FIG. 4A illustrates a simplified flow chart of method 400 for error analysis in case of job failure in computer system 999. Computer system 999 has at least first computer 901 and second computer 902. Method 400 includes the steps providing job-net 410, determining job-net status 420 and transmitting job-net status 430. Method 400 also includes the optional (dashed frame) step creating job failure alert 440.
  • In the providing job-net step 410, job-net 300 is provided defining the start of second job 302 of second computer 902 to be dependent on the successful completion of first job 301 of first computer 901.
  • In the determining job-net status step 420, job-net status 300-S of job-net 300 is determined. Preferably, the determining job-net status step 420 is performed at a pre-defined synchronization-point SP-1.
  • In the transmitting job-net status step 430, job-net status 300-S is transmitted to second computer 902 in case of unsuccessful completion of first job 301.
  • Preferably, steps 410-430 are executed by computer 900 of computer system 999. However, any other computer of computer system 999 may be used as well.
  • In the optional creating job failure alert step 440, second computer 902 creates job failure alert A1.
  • FIG. 4B illustrates a simplified flow chart of method 500 for error analysis in case of job failure in computer system 999. Computer system 999 has at least first computer 901 and second computer 902. Method 500 includes the steps receiving job-net status 510 and creating job failure alert 520.
  • In the receiving job-net status step 510, second computer 902 receives job-net status 300-S of job-net 300 from, for example, computer 900 of computer system 999. Job-net 300 defines the start of second job 302 of second computer 902 to be dependent on the successful completion of first job 301 of first computer 901. Job-net status 300-S indicates the unsuccessful completion of first job 301.
  • In the creating job failure alert 520 a job failure alert (A1) on the second computer (902).
    Reference Description
    100, 102 Computer program product
    110 Scheduler
    200 Flow chart
    2xx Flow chart steps
    300 Job-net
    301-305 Jobs
    Dx Dependencies
    SP-x Synchronization points
    300-S Job- net status
    400, 500 Methods
    4xx, 5xx Method steps
    999 Computer system
    900, 901, 902 Computers
    910, 911, 912 Processors
    920, 921, 922 Memories
    940 Input device
    950 Output device
    960 User interface
    970, 972 Program carrier (computer readable device)
    980, 982 Program signal


    Reference numbers

Claims (8)

  1. A method (400) for error analysis in case of job failure in a computer system (999) having at least a first computer (901) and a second computer (902); the method (400) comprising the following steps:
    providing (410) a job-net (300), wherein the job-net (300) defines the start of a second job (302) of the second computer (902) to be dependent on the successful completion of a first job (301) of the first computer (901);
    determining (420) a job-net status (300-S) of the job-net (300) at a predefined synchronization-point (SP-1) of the job-net (300), wherein the job-net status (300-S) includes a snapshot of status information that is available at the predefined synchronization point (SP-1) and further synchronization points (SP-2) of the job-net (300) at a specific point in time; and
    in case of unsuccessful completion of the first job (301) transmitting (430) the job-net status (300-S) to the second computer (902).
  2. The method (400) of claim 1 comprising the further step:
    creating (440) a job failure alert (A1) on the second computer (902).
  3. A method (500) for error analysis in case of job failure in a computer system (999) having at least a first computer (901) and a second computer (902); the method (500) comprising the following steps:
    receiving (510) on the second computer (902) a job-net status (300-S) of a job-net (300), wherein the job-net (300) defines the start of a second job (302) of the second computer (902) to be dependent on the successful completion of a first job (301) of the first computer (901); the job-net status (300-S) including a snapshot of status information that is available at a plurality of synchronization points (SP-1, SP-2) of the job-net (300) at a specific point in time, the job-net status (300-S) indicating the unsuccessful completion of the first job (301); and
    creating (520) a job failure alert (A1) on the second computer (902).
  4. A computer program product (100) comprising a plurality of instructions for error analysis in case of job failure in a computer system (999) that has at least a first computer (901) and a second computer (902); the computer program product (100), when loaded into a memory (920) of a computer (900), causing at least one processor (910) of the computer (900) to execute the following steps:
    providing (410) a job-net (300), wherein the job-net (300) defines the start of a second job (302) of the second computer (902) to be dependent on the successful completion of a first job (301) of the first computer (901);
    determining (420) a job-net status (300-S) of the job-net (300) at a predefined synchronization-point (SP-1) of the job-net (300), wherein the job-net status (300-S) includes a snapshot of status information that is available at the predefined synchronization point (SP-1) and further synchronization points (SP-2) of the job-net (300) at a specific point in time; and
    in case of unsuccessful completion of the first job (301) transmitting (430) the job-net status (300-S) to the second computer (902).
  5. A computer program product (102) comprising a plurality of instructions for error analysis in case of job failure in a computer system (999) that has at least a first computer (901) and a second computer (902); the computer program product (102), when loaded into a memory (922) of the second computer (902), causing at least one processor (912) of the second computer (902) to execute the following steps:
    receiving (510) on the second computer (902) a job-net status (300-S) of a job-net (300), wherein the job-net (300) defines the start of a second job (302) of the second computer (902) to be dependent on the successful completion of a first job (301) of the first computer (901); the job-net status (300-S) including a snapshot of status information that is available at a plurality of synchronization points (SP-1, SP-2) of the job-net (300) at a specific point in time, the job-net status (300-S) indicating the unsuccessful completion of the first job (301); and
    creating (520) a job failure alert (A1) on the second computer (902).
  6. A computer system (999) for error analysis in case of job failure, wherein the computer system (999) has at least a first computer (901) and a second computer (902); the computer system (999) comprising:
    a memory (920) storing a job-net (300), wherein the job-net (300) defines the start of a second job (302) of the second computer (902) to be dependent on the successful completion of a first job (301) of the first computer (901); and
    a processor (910) configured to determine (420) a job-net status (300-S) of the job-net (300) at a predefined synchronization-point (SP-1) of the job-net (300), wherein the job-net status (300-S) includes a snapshot of status information that is available at the predefined synchronization point (SP-1) and further synchronization points (SP-2) of the job-net (300) at a specific point in time, and in case of unsuccessful completion of the first job (301) to transmit (430) the job-net status (300-S) to the second computer (902).
  7. The computer system (999) of claim 6, wherein the second computer (902) is configured to create (440) a job failure alert (A1).
  8. A second computer (902) in a computer system (999) for error analysis in case of job failure, wherein the computer system (999) further has at least a first computer (901); comprising:
    a memory (922) configured to receive (510) a job-net status (300-S) of a job-net (300), wherein the job-net (300) defines the start of a second job (302) of the second computer (902) to be dependent on the successful completion of a first job (301) of the first computer (901); the job-net status (300-S) including a snapshot of status information that is available at a plurality of synchronization points (SP-1, SP-2) of the job-net (300) at a specific point in time, the job-net status (300-S) indicating the unsuccessful completion of the first job (301); and
    a processor (912) configured to create (520) a job failure alert (A1) on the second computer (902).
EP02012072A 2002-05-31 2002-05-31 Method and computer system for network-job management Expired - Lifetime EP1367488B1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
AT02012072T ATE324627T1 (en) 2002-05-31 2002-05-31 METHOD AND COMPUTER ARRANGEMENT FOR NETWORKED TASK MANAGEMENT
EP02012072A EP1367488B1 (en) 2002-05-31 2002-05-31 Method and computer system for network-job management
DE60210934T DE60210934T2 (en) 2002-05-31 2002-05-31 Method and computer arrangement for networked task management
US10/209,956 US7100094B2 (en) 2002-05-31 2002-07-31 Cause-specific and network-wide error analysis in data processing job management

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP02012072A EP1367488B1 (en) 2002-05-31 2002-05-31 Method and computer system for network-job management
US10/209,956 US7100094B2 (en) 2002-05-31 2002-07-31 Cause-specific and network-wide error analysis in data processing job management

Publications (2)

Publication Number Publication Date
EP1367488A1 EP1367488A1 (en) 2003-12-03
EP1367488B1 true EP1367488B1 (en) 2006-04-26

Family

ID=32395429

Family Applications (1)

Application Number Title Priority Date Filing Date
EP02012072A Expired - Lifetime EP1367488B1 (en) 2002-05-31 2002-05-31 Method and computer system for network-job management

Country Status (4)

Country Link
US (1) US7100094B2 (en)
EP (1) EP1367488B1 (en)
AT (1) ATE324627T1 (en)
DE (1) DE60210934T2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004102449A (en) 2002-09-05 2004-04-02 Hitachi Ltd Setting method for job network, execution method for job network, job management system, management terminal and program
US7246223B2 (en) * 2004-03-23 2007-07-17 Kabushiki Kaisha Toshiba System and method for monitoring configuration changes in a document processing device
US7480816B1 (en) * 2005-08-04 2009-01-20 Sun Microsystems, Inc. Failure chain detection and recovery in a group of cooperating systems
US8381187B2 (en) * 2006-09-21 2013-02-19 International Business Machines Corporation Graphical user interface for job output retrieval based on errors
DE102006046399A1 (en) * 2006-09-29 2008-04-03 Robert Bosch Gmbh Method for error administration in system with number of components, involves displaying error conditions of components by status value
CA2668958A1 (en) * 2009-06-12 2010-12-12 Ibm Canada Limited - Ibm Canada Limitee System and method for managing batch production
US9549046B1 (en) * 2013-02-20 2017-01-17 The Boeing Company Methods and systems for logging time with a mobile computing device

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5165031A (en) * 1990-05-16 1992-11-17 International Business Machines Corporation Coordinated handling of error codes and information describing errors in a commit procedure
JPH05265775A (en) * 1992-03-19 1993-10-15 Hitachi Ltd Job execution forecast control method and job execution condition display method
JPH1078894A (en) * 1996-09-03 1998-03-24 Hitachi Ltd Method for supporting failure restoration for computer system
JP3730740B2 (en) * 1997-02-24 2006-01-05 株式会社日立製作所 Parallel job multiple scheduling method
US20030005023A1 (en) * 2001-06-01 2003-01-02 John Gilbert Batch access method and system
US7117500B2 (en) * 2001-12-20 2006-10-03 Cadence Design Systems, Inc. Mechanism for managing execution of interdependent aggregated processes
US7516458B2 (en) * 2002-07-31 2009-04-07 Sap Aktiengesellschaft Job management in presence of implicit dependency

Also Published As

Publication number Publication date
ATE324627T1 (en) 2006-05-15
US20040025092A1 (en) 2004-02-05
EP1367488A1 (en) 2003-12-03
US7100094B2 (en) 2006-08-29
DE60210934T2 (en) 2006-12-21
DE60210934D1 (en) 2006-06-01

Similar Documents

Publication Publication Date Title
US6658453B1 (en) Server agent system
EP1395919B1 (en) Method and computer program for migrating content from source database to target database
AU771770B2 (en) Communication between client and server computers via HTTP, method, computer program product and system
US6980988B1 (en) Method of applying changes to a standby database system
US6633899B1 (en) Dynamic installation and configuration broker
EP1339002A1 (en) Computer system for business applications with alert notification
US20040024842A1 (en) Validation framework for validating markup page input on a client computer
US7653666B2 (en) Method and computer system for identifying objects for archiving
US6594787B1 (en) Input/output device managed timer process
US7003529B2 (en) System for adaptively identifying data for storage
EP1367488B1 (en) Method and computer system for network-job management
CN114024999B (en) Task compensation method, system, device, electronic equipment and storage medium
EP1486867A1 (en) Adapting software service to environment of computer
EP1410259B1 (en) Capturing data attribute of predefined type from user
EP1355238A1 (en) Method and computer system for delta-handling in server-pages
EP1387267B1 (en) Method and computer system for job scheduling
CN107632893B (en) Message queue processing method and device
US7366727B2 (en) Management of inbound conflicts when merging data of distributed systems
US20050108722A1 (en) Systems and methods for external service administration
EP1533697B1 (en) Systems and methods for external service administration
CN114171168A (en) Business module management system, method, electronic device and storage medium
EP1192531B1 (en) Dynamic installation and configuration broker
EP1355239A1 (en) Method and system for providing a delta information output-stream

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR

AX Request for extension of the european patent

Extension state: AL LT LV MK RO SI

17P Request for examination filed

Effective date: 20040603

AKX Designation fees paid

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR

17Q First examination report despatched

Effective date: 20041014

RIC1 Information provided on ipc code assigned before grant

Ipc: 7G 06F 11/00 A

Ipc: 7G 06F 11/07 B

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

GRAC Information related to communication of intention to grant a patent modified

Free format text: ORIGINAL CODE: EPIDOSCIGR1

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: SAP AG

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT;WARNING: LAPSES OF ITALIAN PATENTS WITH EFFECTIVE DATE BEFORE 2007 MAY HAVE OCCURRED AT ANY TIME BEFORE 2007. THE CORRECT EFFECTIVE DATE MAY BE DIFFERENT FROM THE ONE RECORDED.

Effective date: 20060426

Ref country code: LI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20060426

Ref country code: NL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20060426

Ref country code: AT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20060426

Ref country code: BE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20060426

Ref country code: CH

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20060426

Ref country code: FI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20060426

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MC

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20060531

Ref country code: IE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20060531

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

REF Corresponds to:

Ref document number: 60210934

Country of ref document: DE

Date of ref document: 20060601

Kind code of ref document: P

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20060726

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20060726

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: ES

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20060806

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20060926

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

NLV1 Nl: lapsed or annulled due to failure to fulfill the requirements of art. 29p and 29m of the patents act
PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed

Effective date: 20070129

EN Fr: translation not filed
PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20060727

Ref country code: FR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20070309

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20060531

Ref country code: TR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20060426

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: FR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20060531

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: CY

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20060426

Ref country code: FR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20060426

REG Reference to a national code

Ref country code: DE

Ref legal event code: R082

Ref document number: 60210934

Country of ref document: DE

Representative=s name: MUELLER-BORE & PARTNER PATENTANWAELTE PARTG MB, DE

REG Reference to a national code

Ref country code: DE

Ref legal event code: R081

Ref document number: 60210934

Country of ref document: DE

Owner name: SAP SE, DE

Free format text: FORMER OWNER: SAP AG, 69190 WALLDORF, DE

Effective date: 20141210

Ref country code: DE

Ref legal event code: R082

Ref document number: 60210934

Country of ref document: DE

Representative=s name: MUELLER-BORE & PARTNER PATENTANWAELTE PARTG MB, DE

Effective date: 20141210

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20210520

Year of fee payment: 20

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20210520

Year of fee payment: 20

REG Reference to a national code

Ref country code: DE

Ref legal event code: R071

Ref document number: 60210934

Country of ref document: DE

REG Reference to a national code

Ref country code: GB

Ref legal event code: PE20

Expiry date: 20220530

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF EXPIRATION OF PROTECTION

Effective date: 20220530