- Overview
- Document Processing Contracts
- About the Document Processing Contracts
- Box Class
- IPersistedActivity Interface
- PrettyBoxConverter Class
- IClassifierActivity Interface
- IClassifierCapabilitiesProvider Interface
- ClassifierDocumentType Class
- ClassifierResult Class
- ClassifierCodeActivity Class
- ClassifierNativeActivity Class
- ClassifierAsyncCodeActivity Class
- ClassifierDocumentTypeCapability Class
- ExtractorAsyncCodeActivity Class
- ExtractorCodeActivity Class
- ExtractorDocumentType Class
- ExtractorDocumentTypeCapabilities Class
- ExtractorFieldCapability Class
- ExtractorNativeActivity Class
- ExtractorResult Class
- ICapabilitiesProvider Interface
- IExtractorActivity Interface
- ExtractorPayload Class
- DocumentActionPriority Enum
- DocumentActionData Class
- DocumentActionStatus Enum
- DocumentActionType Enum
- DocumentClassificationActionData Class
- DocumentValidationActionData Class
- UserData Class
- Document Class
- DocumentSplittingResult Class
- DomExtensions Class
- Page Class
- PageSection Class
- Polygon Class
- PolygonConverter Class
- Metadata Class
- WordGroup Class
- Word Class
- ProcessingSource Enum
- ResultsTableCell Class
- ResultsTableValue Class
- ResultsTableColumnInfo Class
- ResultsTable Class
- Rotation Enum
- SectionType Enum
- WordGroupType Enum
- IDocumentTextProjection Interface
- ClassificationResult Class
- ExtractionResult Class
- ResultsDocument Class
- ResultsDocumentBounds Class
- ResultsDataPoint Class
- ResultsValue Class
- ResultsContentReference Class
- ResultsValueTokens Class
- ResultsDerivedField Class
- ResultsDataSource Enum
- ResultConstants Class
- SimpleFieldValue Class
- TableFieldValue Class
- DocumentGroup Class
- DocumentTaxonomy Class
- DocumentType Class
- Field Class
- FieldType Enum
- LanguageInfo Class
- MetadataEntry Class
- TextType Enum
- TypeField Class
- ITrackingActivity Interface
- ITrainableActivity Interface
- ITrainableClassifierActivity Interface
- ITrainableExtractorActivity Interface
- TrainableClassifierAsyncCodeActivity Class
- TrainableClassifierCodeActivity Class
- TrainableClassifierNativeActivity Class
- TrainableExtractorAsyncCodeActivity Class
- TrainableExtractorCodeActivity Class
- TrainableExtractorNativeActivity Class
- Document Understanding Digitizer
- Document Understanding ML
- Document Understanding OCR Local Server
- Document Understanding Process - Studio Template
- Document Understanding Activities
- About the Document Understanding Package
- Project Compatibility
- Set PDF Password
- Merge PDFs
- Get PDF Page Count
- Extract PDF Text
- Extract PDF Images
- Extract PDF Page Range
- Extract Document Data
- Create Validation Task and Wait
- Wait for Validation Task and Resume
- Create Validation Task
- Classify Document
- Create Classification Validation Task
- Create Classification Validation Task and Wait
- Wait for Classification Validation Task and Resume
- Intelligent OCR
- About the IntelligentOCR Activities Package
- Project Compatibility
- Load Taxonomy
- Digitize Document
- Classify Document Scope
- Keyword Based Classifier
- Intelligent Keyword Classifier
- Present Classification Station
- Create Document Classification Action
- Wait for Document Classification Action and Resume
- Train Classifiers Scope
- Keyword Based Classifier Trainer
- Intelligent Keyword Classifier Trainer
- Data Extraction Scope
- RegEx Based Extractor
- Form Extractor
- Intelligent Form Extractor
- Present Validation Station
- Create Document Validation Action
- Wait for Document Validation Action and Resume
- Train Extractors Scope
- Export Extraction Results
- ML Services
- OCR
- OCR Contracts
- Release Notes
- About the OCR Contracts
- Project Compatibility
- IOCRActivity Interface
- OCRAsyncCodeActivity Class
- OCRCodeActivity Class
- OCRNativeActivity Class
- Character Class
- OCRResult Class
- Word Class
- FontStyles Enum
- OCRRotation Enum
- OCRCapabilities Class
- OCRScrapeBase Class
- OCRScrapeFactory Class
- ScrapeControlBase Class
- ScrapeEngineUsages Enum
- ScrapeEngineBase
- ScrapeEngineFactory Class
- ScrapeEngineProvider Class
- OmniPage
- PDF
- [Unlisted] Abbyy
- [Unlisted] Abbyy Embedded
FlexiCapture Integration
.xlsx
file. It presents activities such as Classify Document, Validate Document, Get Field, Export Document, or Get Table. You can find these activities in the UiPath.Abbyy.Activities package.
This is how the automation process can be built:
-
Open Studio and create a new Process named by default Main.
Note: Make sure to add all the needed files (.json
files and all the images) inside the project folder. - Drag a Sequence container in the Workflow Designer.
- Drag an FlexiCapture Scope activity inside the Sequence container.
-
Select the Do container inside the FlexiCapture Scope activity and create the following variables:
Variable Name
Variable Type
Default Value
classification
String
 processedDoc
UiPath.Abbyy.Core.FlexiCapture.FCDocument
 validatedDoc
UiPath.Abbyy.Core.FlexiCapture.FCDocument
 field
UiPath.Abbyy.Core.FlexiCapture.FCField
 ValidationData
UiPath.Abbyy.Core.FlexiCapture.ValidationStationAdapters.ValidationStationData
 HumanValidated
UiPath.DocumentProcessing.Contracts.Results.ExtractionResult
 FolderValues
System.String[]
 TableValues
UIPath.DocumentProcessing.Contracts.Results.TableFieldValue[][]
 -
Drag an Assign activity inside the Do container.
- Add the variable
FolderValues
in the To field. - Add the expression
Directory.GetFiles("Input")
in the Value folder.
- Add the variable
-
Add a For Each activity below the Assign activity.
- In the Properties panel, select the option
String
from the TypeArgument drop-down list. - Add the variable
FolderValues
in the Values field.
- In the Properties panel, select the option
-
Select the Body container placed inside the For Each activity and create the following variables:
Variable Name
Variable Type
Default Value
ClassificationResult
String
 InvoiceNumberField
UiPath.Abbyy.Core.FlexiCapture.FCField
 InvoiceTableField
System.Data.DataTable
 InvoiceTableText
String
 -
Drag a Classify Document activity in the Body of the For Each activity.
- Add the expression
{Directory.GetCurrentDirectory + "\Invoice.fcdot", Directory.GetCurrentDirectory + "\Letters.fcdot" }
in the DefinitionFiles field. - Add the expression
item.ToString
in the SourceDocument field. - Add the variable
ClassificationResult
in the Result field.
- Add the expression
-
Drag a Message Box activity below the Classify Document activity.
- In the Properties panel, select the option
Ok
from the Buttons drop-down list. - Add the expression
"Document type is: " + ClassificationResult
in the Text field. - Select the check-box for the TopMost option. Doing so, the message box is always displayed to the foreground.
- In the Properties panel, select the option
-
Drag a Process Document activity below the Message Box activity.
- In the Properties panel, add the expression
{Directory.GetCurrentDirectory + "\Invoice.fcdot", Directory.GetCurrentDirectory + "\Letters.fcdot" }
in the DefinitionFiles field. - Add the expression
item.ToString
in the Document field. - Add the variable
processedDoc
in the Result field.
- In the Properties panel, add the expression
-
Drag a Message Box activity below the Process Document activity.
- In the Properties panel, select the option
Ok
from the Buttons drop-down list. - Add the expression
"Document was processed with confidence score: " + processedDoc.Confidence.ToString
in the Text field. - Select the check-box for the TopMost option. Doing so, the message box is always displayed to the foreground.
- In the Properties panel, select the option
-
Drag a Validate Document activity under the Message Box activity.
- In the Properties panel, add the variable
processedDoc
in the Document field. - Add the variable
validatedDoc
in the Result field.
- In the Properties panel, add the variable
-
Drag a Get Field activity under the Validate Document activity.
- In the Properties panel, add the variable
validatedDoc
in the Document field. - Add the variable
"InvoiceNumber"
in the Name field. - Add the variable
InvoiceNumberField
in the Result field.
- In the Properties panel, add the variable
-
Drag a Message Box activity below the Get Field activity.
- In the Properties panel, select the option
Ok
from the Buttons drop-down list. - Add the expression
InvoiceNumberField.Value
in the Text field. - Select the check-box for the TopMost option. Doing so, the message box is always displayed to the foreground.
- In the Properties panel, select the option
-
Drag a Get Table activity below the Message Box activity.
- In the Properties panel, add the variable
validatedDoc
in the Document field. - Add the variable
"InvoiceTable"
in the Name field. - Add the variable
InvoiceTableField
in the Result field.
- In the Properties panel, add the variable
-
Drag an Output Data Table activity under the Get Table activity.
- In the Properties panel, add the variable
InvoiceTableField
in the DataTable field. - Add the variable
InvoiceTableText
in the Text field.
- In the Properties panel, add the variable
-
Drag a Message Box activity below the Output Data Table activity.
- In the Properties panel, select the option
Ok
from the Buttons drop-down list. - Add the variable
InvoiceTableText
in the Text field. - Select the check-box for the TopMost option. Doing so, the message box is always displayed to the foreground.
- In the Properties panel, select the option
-
Drag an Export Document activity below the Message Box activity.
- In the Properties panel, add the variable
validatedDoc
in the Document field. - Select the
XLS
option from the Format drop-down list. - Add the expression
"export.xls"
in the Name field. - Add the expression
Directory.GetCurrentDirectory + "\Output"
in the Path field.
- In the Properties panel, add the variable
- Run the process. The robot automatically extracts the data and creates a new file with the validated results.
Download example from here.