Data Capture - Advanced Workflow in ABBYY FlexiCapture 10

 

The advanced workflow schema was introduced in version 10 and is the primary means of customizing FlexiCapture.

 

Let's examine the workflow schemas currently available in FC 10.

  1. The Simple workflow schema offers a set of stages that can be turned on or off. It also allows you to skip verification. This workflow schema can be used to handle simple processing scenarios.
  2. The Unattended workflow schema is, as the name suggests, fully autonomous, and has no configurable settings.
  3. For Web Capture is a workflow schema which allows a Web Capture station to function as a front office. This schema has no customizable features other than the option to skip verification.
  4. The Advanced workflow schema offers a comprehensive set of customization options that cover everything users are likely to need. This workflow schema allows creating custom stages and defining rules that govern how documents are routed between them.

Let’s take a closer look at the Advanced schema.

 

                Here is an example of a customized workflow:

example:customized workflow

 

As you can see, this workflow contains several custom stages. It was used in a project that had a complex double verification scheme that utilized regular verification stations.

 

The advanced schema provides five important capabilities.

 

1.      Adding stages

There are three types of stage: interactive, automatic, and custom.

 

Automatic stages run on a Processing Station and do not require any input from an operator.

The Unattended Processing stage combines recognition and export.

Example:

Let’s assume that we need to pre-recognize the first page of a document, then use the results to select the Document Definition that will be used to recognize the entire document. To accomplish this, we’ll need to add a second recognition stage.

Automatic stages typically involve scripts. To create one, select Automatic in the Create Processing Stage dialog box.

This stage provides access to all documents in a task, making it ideal for any checks and changes.

For example, you can populate the registration parameters using the values of fields in your documents.

The script can run for the whole batch or independently for each document.

The method can be selected from the drop-down list:

 

 

Interactive stages require input from an operator. These stages are typically used to include Verification Stations and Data Verification Stations (including Web stations) in a project.

An interactive stage can be used, for example, for double verification. For double verification, you need two Verification Stations and interactive script stages which will record and compare verification results.

Double verification is natively implemented for Data Verification Station:

 

Custom stages are mainly used for interactions through the Web API.

Any batches routed to this stage will not be routed anywhere else until a command from the Web API is received. Custom stages can be used as a temporary storage mechanism for processed documents and documents that have already been exported (documents can be called back).

This type of stage is rarely used.

 

2.      Ordering stages

As you can see in the first screenshot, stages can be arranged in any order as may be required by your project. We plan to add a stage linking feature in the 4th release: a document will not be able to skip linked stages.

 

3.      Specifying routing rules

You can specify conditions that must be met before a document enters or leaves a certain stag. Routing scripts can also be used. I will expand upon this in my future e-mails.

 

4.      Limiting the number of documents in a task

Everything is simple here:

               

Limiting the number of documents can be useful in many cases, but is mainly used to optimize processing and verification.     

               

5.      Restricting which Document Definitions may be used

There is an option to choose Document Definitions that will be used in a specific stage (see screenshot above).

 

 

Now, let’s take a look at some examples of projects where the advanced workflow schema is used.

 

1.      Batch export

As you know, by default the export stage handles each document individually. Each document is handled as described in its Document Definition, and operations performed on it do not affect other documents in any way. Sometimes, however, documents must be exported in one batch. In order to accomplish this, we can use a scripted stage with Batch Processing enabled.

You will need to write a script for this stage that will perform the actions you need.

A sample project can be found here:

Click to download

 

I recommend using the FCTools.ShowMessage or Processing.ReportMessage (or ReportError, ReportWarning) method in scripted stages, which logs messages. Using this method makes debugging easier and helps you understand what’s going on.

Here is the log from the example above:

 

2.      In this sample a demonstration of full access to a batch is implemented.

A script determines if there are pages of A3 format and then splits them into two different pages of A4 format.

Click to download