Execution Cycle: Batch Processing
This section describes, in general, how Lawson processes batch jobs. That is, reports and other kinds of jobs that run in background and are managed by a queue.
The following diagram shows a simple example of the batch job execution process in a single-server environment. The table that follows the diagram correlates the step numbers in the diagram with what is happening at that step in the process.
Step # | What is Happening |
---|---|
1 |
Client submits a request. (A client can be any component that has the capability to submit, including users, processes, Lawson programs, servers and so on.) |
2 | Inbound Queue receives the requests and forwards it to lajs. |
3 | LAJS creates a record in the queued jobs table. |
4 |
LAJS sends a message to the outbound queue that client job has been successfully submitted. Status of the job is "Waiting." Ongoing: LAJS reports status to the queued jobs table; Job Scheduler checks the table for status. (The client can manually check job status at any time by viewing the Job Scheduler.) |
5 | When Status changes to "Running," LAJS sends the job to execjob for processing. |
6 | The execjob program spawns a LA-RTS instance for running the job. |
7 | EXECJOB creates a log file. |
8 | EXECJOB creates print files. |
Ongoing | Components (EXECJOB, LA-RTS, database driver) write errors to the log file if any occur. |
9 | LA-RTS reports successful completion of the job to the execjob program. |
10 | EXECJOB performs report distribution |
11 | EXECJOB reports status of the job to LAJS. |
12 | LAJS changes the job status to "Complete." |