Process batches

Batch processing takes place as follows:

  • Tasks are distributed over the Extraction Process(es) via the Server Scheduler. The number of Extraction Process started depends on the number of cores in your computer, on the structure of the batch and on the tasks to do.

  • Events are fired dependent on the task processing events.

  • When a project is loaded for the first time in an Extraction Process, the scripting engine is initialized. Subsequently the Application_InitializeScript event is fired by each Extraction Process processing the batches from the project.

  • The event Application_InitializeBatch is fired each time a new batch is started by each Extraction Process processing this batch. When the Server distributes the batch over many Extraction Processes, then each Extraction Process fires this event at the beginning of the batch processing.

  • The Batch_Open and Batch_Close events are fired only once per batch (at the open and close events) even if the batch processing is split over many Extraction Processes. These two events may also be fired by different Extraction Processes.

  • When the whole batch is processed, the scripting engine in the project is de-initialized and the Extraction Process fires the Application_DeinitializeScript event. When the Server distributes the batch over many extraction processes, each Extraction Process fires this event.

  • These events are also fired for all user interactive modules that support scripting. To distinguish between the opening module and rich and thin client execution please use the property: Project.ScriptExecutionMode and Project.ScriptExecutionMdouleType.

The following figure illustrates the script events fired during processing batches on the Extraction Processes:


A visual representation of the batch processing main event sequence.