活动
最新
False
横幅背景图像
Document Understanding 活动
上次更新日期 2024 年 4 月 10 日

使用 FlexiCapture Scope 处理文档

下面的示例说明了如何使用 Abbyy 包并将其集成到 UiPath 工作流中。 系统会收集、分类、处理和验证文件。 确认所有步骤后,将创建一个 .xlsx 文件,包括最终输出。 该示例将展示“ 验证文档”、“ FlexiCapture 作用域”、 “获取字段”、 “获取表格”和 “分类文档”等活动。 您可以在 UiPath.Abbyy.Activities 包中找到这些活动。

此自动化流程的构建方法如下:

  1. 打开 Studio,并新建一个默认命名为“主要”的“流程”。
  2. 将“工作流设计器”拖动至“序列”容器中并创建以下变量:

    变量名称

    变量类型

    默认值

    filePaths

    System.String[]

     

    data

    数据表

     

    i

    Int32

     

    table

    数据表

     
  3. 在序列容器中拖动“ 分配 ”活动。

    • 在“收件人”字段中添加“filePaths”变量。
    • 添加表达式 。directory.GetFiles(in_ImagesFolderPath)
  4. 在“ 分配 ”活动下添加“构建数据表”活动。

    • 在“ 属性 ”面板的“ 数据表 ”字段中添加变量 data
    • 单击“ 数据表 ”按钮以定义表格列。
    • 单击“ 添加列 ”按钮。 在新窗口中,在“ 列名称 ” 字段中添加列的名称。
    • 从“ 数据类型 ” 下拉列表中选择 String 值。
    • 选中“ 允许 Null ” 选项对应的复选框。 这允许在此列中添加空值。
    • 添加所有列后,选择“ 确定 ”按钮以关闭窗口。
    • 您的数据表应如下所示:



  5. 将“遍历 循环 ”活动拖动到“ 构建数据表 ”活动下方。

    • 在“ 项目 ” 字段中添加名称 file
    • 在“ 属性 ” 面板中,在“ ” 字段中添加变量 filePaths ,在“ 索引” 字段中添加变量 i
    • 从“ 类型参数 ” 下拉列表中选择 String 选项。
  6. 在“遍历循环”活动的正文中添加“ FlexiCapture 作用域 活动。

    • 从活动的正文中选择“ 执行” 序列,并创建以下变量:

      变量名称

      变量类型

      默认值

      classification

      字符串

       

      document

      UiPath.Abbyy.Core.FlexiCapture.FCDocument

       

      field

      UiPath.Abbyy.Core.FlexiCapture.FCField

       
  7. 将“ 添加数据行 ” 活动拖动到“ 执行” 容器中。

    • 在“属性”面板中,向“数组行”字段中添加表达式“{}”,并向“数据表”字段添加“data”变量。
  8. 将“分配”活动置于“添加数据行”活动下方。

    • 在“ 收件人” 字段中添加表达式 data.Rows(i)("FileName") ,在“ ” 字段中添加名称 file
  9. 将“ 分类文档 ” 拖动到“ 分配 ” 活动下。

    • 在“ 定义文件 ” 字段中插入表达式 {in_FCDotFilePath}
    • 在“ 源文档 ” 字段中添加值 file
    • 在“结果”字段中添加 classification 变量。
  10. 拖动“ 分配 ”活动。

    • 在“ 目标” 字段中添加表达式 data.Rows(i)("Classification") ,在“ ” 字段中添加变量 classification
  11. 将“ 流程文档” 活动放置在“ 分配 ”活动下。

    • 在“ 定义文件 ” 字段中添加表达式 {in_FCDotFilePath}
    • 文档字段中添加值 file
    • 在“结果”字段中添加 document 变量。
  12. 将“ 验证文档” 活动放置在“ 流程文档 ”活动下。

    • 在“ 文档” 字段中添加变量 document
    • 在“结果”字段中添加 document 变量。
  13. 拖动一个 序列 容器并将其命名为 Company Name
  14. 在“ 公司名称” 序列中拖动“获取字段”活动。

    • 属性面板中,向文档字段添加变量 document
    • 在“ 名称 ” 字段中添加表达式 "CompanyName"
    • 在“结果”字段中添加 field 变量。
  15. 将“ 分配 ”活动拖动到“ 获取字段 ”活动下。

    • 在“ 目标” 字段中添加值 data.Rows(i)("Company Name") ,在“ ” 字段中添加表达式 field.Value


  16. 返回“ 执行” 容器,然后在“ 公司名称 ” 容器下拖动一个新的“序列” 活动。

    • 将新序列命名为 Customer Number
  17. 在“ 客户编号 ”序列中拖动“获取字段”活动。

    • 属性面板中,向文档字段添加变量 document
    • 在“ 名称 ” 字段中添加表达式 "CustomerNumber"
    • 在“结果”字段中添加 field 变量。
  18. 将“ 分配 ”活动拖动到“ 获取字段 ”活动下。

    • 在“ 目标” 字段中添加值 data.Rows(i)("Customer Number") ,在“ ” 字段中添加表达式 field.Value


  19. 返回到“ 执行” 容器,然后在“ 客户编号 ” 容器下拖动一个新的“序列” 活动。

    • 将新序列命名为 Email
  20. 在“ 电子邮件 ”序列中拖动“获取字段”活动。

    • 属性面板中,向文档字段添加变量 document
    • 在“ 名称 ” 字段中添加表达式 "Email"
    • 在“结果”字段中添加 field 变量。
  21. 将“ 分配 ”活动拖动到“ 获取字段 ”活动下。

    • 在“ 目标” 字段中添加值 data.Rows(i)("Email") ,在“ ” 字段中添加表达式 field.Value


  22. 返回“ 执行” 容器,然后在“ 电子邮件 ” 容器下拖动一个新的“序列” 活动。

    • 将新序列命名为 Date
  23. 在“ 日期 ”序列中拖动“获取字段”活动。

    • 属性面板中,向文档字段添加变量 document
    • 在“ 名称 ” 字段中添加表达式 "Date"
    • 在“结果”字段中添加 field 变量。
  24. 将“ 分配 ”活动拖动到“ 获取字段 ”活动下。

    • 在“ 目标” 字段中添加值 data.Rows(i)("Date") ,在“ ” 字段中添加表达式 field.Value


  25. 返回到“ 执行” 容器,然后在“ 日期 ” 容器下拖动一个新的“序列” 活动。

    • 将新序列命名为 Delivery Address
  26. 在“ 收件人地址 ”序列中拖动“获取字段”活动。

    • 属性面板中,向文档字段添加变量 document
    • 在“ 名称 ” 字段中添加表达式 "DeliveryAddress"
    • 在“结果”字段中添加 field 变量。
  27. 将“ 分配 ”活动拖动到“ 获取字段 ”活动下。

    • 在“ 目标” 字段中添加值 data.Rows(i)("Delivery Address") ,在“ ” 字段中添加表达式 field.Value


  28. 返回“ 执行” 容器,然后在“ 收件人地址 ” 容器下拖动一个新的“序列” 活动。

    • 将新序列命名为 Billing Address
  29. 在“ 帐单邮寄地址 ”序列中拖动“获取字段”活动。

    • 属性面板中,向文档字段添加变量 document
    • 在“ 名称 ” 字段中添加表达式 "BillingAddress"
    • 在“结果”字段中添加 field 变量。
  30. 将“ 分配 ”活动拖动到“ 获取字段 ”活动下。

    • 在“ 目标” 字段中添加值 data.Rows(i)("Billing Address") ,在“ ” 字段中添加表达式 field.Value


  31. 返回“ 执行” 容器,然后在“ 账单地址 ” 容器下拖动一个新的“序列” 活动。

    • 将新序列命名为 Invoice Number
  32. 在“ 发票编号 ”序列中拖动“获取字段”活动。

    • 属性面板中,向文档字段添加变量 document
    • 在“ 名称 ” 字段中添加表达式 "InvoiceNumber"
    • 在“结果”字段中添加 field 变量。
  33. 将“ 分配 ”活动拖动到“ 获取字段 ”活动下。

    • 在“ 目标” 字段中添加值 data.Rows(i)("Invoice Number") ,在“ ” 字段中添加表达式 field.Value


  34. 返回到“ 执行” 容器,然后在“ 发票编号 ” 容器下拖动一个新的“序列” 活动。

    • 将新序列命名为 Total CHF
  35. 在“ 总计 CHF ”序列中拖动“获取字段”活动。

    • 属性面板中,向文档字段添加变量 document
    • 在“ 名称 ” 字段中添加表达式 "TotalCHF"
    • 在“结果”字段中添加 field 变量。
  36. 将“ 分配 ”活动拖动到“ 获取字段 ”活动下。

    • 在“ 目标” 字段中添加值 data.Rows(i)("Total CHF") ,在“ ” 字段中添加表达式 field.Value


  37. 返回到主 序列 容器。
  38. 将“遍历范围”活动下的 Excel写入范围”活动拖动到“遍历范围”活动下。

    • 在“ 属性 ” 面板的“ 工作表名称” 字段中添加值 "Sheet1"
    • 在“起始单元格”字段中添加值 "A1"
    • 在“数据表”字段中添加“data”变量。
    • 在“workbook 路径”字段中添加表达式“"OCR_Results.xlsx"”。
    • 选中“添加标头”复选框,以便让系统认为第一行为标头。
  39. FlexiCapture 作用域 活动拖动到“ 写入范围 ”活动下方,并创建以下变量:

    变量名称

    变量类型

    默认值

    doc

    UiPath.Intelligent OCR.FC.FC 文档

     
  40. 将“ 流程文档” 活动放置在“ 智能 OCR 作用域 ”活动的“执行”容器中。

    • 在“ 定义文件 ” 字段中添加表达式 {in_FCDotFilePath}
    • 在“ 文档” 字段中添加表达式 filePaths(0)
    • 在“结果”字段中添加 doc 变量。
  41. “获取表格 ”活动拖动到“ 流程文档” 活动下。

    • 在“ 文档” 字段中添加变量 doc
    • 在“ 名称 ” 字段中添加表达式 "LineItems"
    • 在“结果”字段中添加 table 变量。
  42. 将“ 写入范围 ” 活动拖动到“ 智能 OCR 作用域 ” 活动下。

    • 在“ 属性 ” 面板的“ 工作表名称” 字段中添加值 "Table Example"
    • 在“起始单元格”字段中添加值 "A1"
    • 在“数据表”字段中添加“table”变量。
    • 在“workbook 路径”字段中添加路径“"OCR_Results.xlsx"”。
    • 选中“添加标头”复选框,以便让系统认为第一行为标头。
  43. 运行工作流。 自动化流程会创建一个新工作簿,其中包含所有已分类、已处理和已验证的数据。

此处下载示例。

此页面是否有帮助?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath 白色徽标
信任与安全
© 2005-2024 UiPath. All rights reserved.