Process Mining
2023.10
False
横幅背景图像
Process Mining
上次更新日期 2024年4月19日

数据转换

在本地编辑转换

从应用程序模板创建流程应用程序时,您需要确保流程应用程序中使用的数据以正确的方式反映您的业务流程。 通过 数据转换 ,您可以自定义用于 Process Mining的数据。

您可以使用数据转换Process Mining 中自定义转换,也可以在桌面上进行本地编辑,请参阅在本地环境中编辑数据转换

本页介绍如何在 Process Mining 中自定义数据转换。数据转换已集成在仪表板编辑器中。请参阅使用仪表板编辑器

数据转换 使您能够:

  • group by 和筛选器添加新字段。例如,质量检查类型
  • 添加事件。 例如,“ 发票质量检查已完成”。

  • 添加标签。例如,无法满足 SLA违反四眼原则

  • 添加用于计算 KPI 的业务逻辑。例如,Case_has_maverick_buying

先决条件

开始编辑数据转换时,强烈建议您:

  • 对 SQL 有深入的了解;

  • 熟悉用于数据提取的源系统。

未结的数据转换

  1. 选择仪表板编辑器右上角的“数据转换”按钮,打开“数据转换”。

备注:

如果您是首次打开内联编辑器,则需要一些时间来加载编辑器。

系统将显示内联数据转换编辑器。

Input data

输入数据面板显示已作为原始数据加载到流程应用程序中的输入表。 选择一个表格以在数据预览中查看字段和数据内容。 数据预览使您能够检查输入数据是否按预期显示。

备注:

预览版显示 1000 条数据记录。如果要筛选特定数据,请创建一个临时调试查询,请参阅数据转换

备注:

预览”面板显示上次重新计算此表的数据运行的数据。 如果您最近进行了更改,请开始新的数据运行以查看其结果,请参阅编辑和测试数据转换

转换

  1. 选择“转换”以查看转换的结构并显示 .sql 文件。

有关转换结构的更多信息,请参见转换结构。

每个 .sql 文件都会在数据模型中定义一个新表格。如果在“转换”面板中选择 .sql 文件,则“转换”中将显示 SQL 查询,并在“预览”面板中显示正在编辑的数据文件的预览。有关示例,请参见下图。


编辑查询时,您可以在“预览”面板中看到上次运行查询的数据预览。
重要提示:

如果转换中有任何未保存的更改,则会启用“保存”按钮。选择“保存”以保存更改。转换的状态将设置为“最新”。

查看和编辑数据模型

重要提示:

始终确保您的数据模型符合要求。 请参阅数据模型要求

  1. 选择“数据模型”以查看流程应用程序的数据模型。

docs image

有关如何更改数据模型的更多信息,请参阅编辑和测试数据转换

验证检查

如果您的数据模型不符合要求,系统会显示通知。

请参阅数据模型要求

添加表格

  1. 选择“ + 添加表格” 。 系统将显示“添加表格”对话框。

  2. 选择定义新输出表的表。

  3. 选择新表格的“主键”,然后选择“完成”

有关如何在转换中添加表格的更多信息,请参阅添加表格。

添加关系

  1. 选择要与另一个表格相关的表格。

    系统将显示“编辑表格”面板。

  2. 在“编辑表格” 面板中,选择“ + 新增” 以创建新关系。

  3. 从“”列表中选择要在此表中使用的字段。

  4. 选择要连接的“表格”,然后从“”列表中选择用于连接的字段。

  5. 选择“应用”

更改表格的键值

  1. 选择要更改密钥的表格。

    系统将显示“编辑表格”面板。

  2. 在“编辑表格” 面板中,找到要更改键的关系。

  3. 选择要用作联接表的的新字段。

  4. 选择“应用”。

备注:
如果更改主键,则选择作为新主键的字段将在表格中复制。 您可以在Data Manager 中删除原始字段。


删除关系

  1. 选择要删除传出关系的表格。

    系统将显示“编辑表格”面板。

  2. 在“编辑表格”面板中,找到要删除的关系,然后选择“删除关系” 。

  3. 选择“应用”

删除表格

  1. 在数据模型编辑器中选择要删除的表格。

    系统将显示“编辑表格”面板。

  2. 选择“删除表格”

    系统会显示确认消息。

  3. 选择“删除”以继续。

表和关系将从数据模型中删除。

使新数据模型可在仪表板中使用

  1. 选择“保存” 以保存数据模型。

  2. 选择“应用到仪表板”以运行转换并使新表格可在仪表板中使用。

    备注:

    这可能需要几分钟。 如果运行成功完成,则对数据模型的更改将显示在Data Manager 中。

备注:

仅在对数据模型进行任何更改后,才会启用“保存” 选项。

查看转换日志

日志”面板会显示后台发生的情况。“日志”面板每几秒自动刷新一次。有关示例,请参见下图。
docs image

日志级别

该日志包含不同的 日志级别 ,用于指示消息的严重性:
日志级别描述

数据运行状态

信息

Information ”消息包含有关数据运行进度的有用信息。

成功

Warning

警告 是指数据中的潜在问题,该问题可能会影响已发布流程应用程序的图表上显示的内容。 建议解决所有警告,以防止将来出现任何潜在的问题。

成功

错误

错误 是指数据中的错误,导致流程应用程序无法加载数据或运行转换。

您必须解决所有错误才能成功运行数据运行。

失败

筛选日志

您可以使用“ 筛选器 ”菜单来更改日志级别。 有关示例,请参见下图。

docs image

保存日志文件

您可以选择图标复制日志文件的内容,并将其粘贴到(例如,可以保存在计算机上的记事本文件中)中。 这使您能够在解决导致错误或警告的问题时查看消息。

备注:

这也使您能够共享日志文件的内容,例如在需要支持时。

编辑和测试数据转换

Editing transformations

有关编辑数据转换的更多信息,请参阅下面列出的页面。

运行查询

注意:

运行查询限制为 10 分钟。 因此,强烈建议使用小型数据集来开发和测试数据转换,以确保您的转换不会超过此时间限制。 另请参阅: Process Mining 门户

编辑转换时,您可以选择“运行查询”以测试您的更改并查看预览。系统会运行修改后的查询和所有相关查询。例如,如果已修改 cases_input.sql。“运行查询”命令将运行 cases_input.sqlcases.sql,后者使用 cases_input.sql 的结果。

生成的数据仅在“数据转换”编辑器中可用,而在仪表板编辑器中不可用。

有两种类型的运行:

  • 运行查询: 启动数据运行,重新计算所有修改后的查询及其依赖项。

  • 运行文件: 启动运行以仅重新计算当前选定的 SQL 文件及其父查询。 此选项使您能够测试和调试对特定 SQL 文件的自定义。

提示:

您可以随时选择“取消运行”以取消转换运行。

结果显示在“预览”面板中。
备注:

运行查询”通常比启动完整数据运行的“应用到仪表板”快得多。

备注:

运行查询不会影响已发布流程应用程序中的数据。

添加文件夹和文件

您可以在转换中创建新文件夹并添加新文件。

命名约定

  • 对于文件、文件夹、字段和表格的名称:

    • 只能使用小写 (az) 字符、大写 (AZ) 字符和数字 (0-9);

    • 不能对文件、文件夹、字段和表格的名称使用特殊字符|*:?"<>\/
  • 对于文件名,您只能使用_:.作为特殊字符。
  • 文件名不能以_ (下划线)开头。

从转换菜单创建新的文件夹或文件

请按照以下步骤创建新的文件夹或文件。

步骤

操作

1

导航到转换中要添加新文件或文件夹的位置。

2

转到“转换”面板,然后选择菜单图标以打开转换菜单。

3

从菜单中选择适用的选项。

4

输入新文件夹或文件的描述性名称,然后按“Enter”。

docs image
系统将在所选文件夹中创建新文件夹或文件。

从上下文菜单创建新文件夹或文件

请按照以下步骤从上下文菜单中创建新的文件夹或文件。

步骤

操作

1

右键单击转换中要在其中添加新文件或文件夹的文件夹。

2

从菜单中选择适用的选项。

3

输入新文件夹或文件的描述性名称,然后按“Enter”。

docs image
系统将在所选文件夹中创建新文件夹或文件。

未保存的文件更改

编辑.sql文件时,“转换”文件夹结构中会指示存在未保存的更改。
docs image
在上述示例中,“ models”->“5_business_logic”文件夹中的Tags.sql文件存在未保存的更改。

重命名文件夹或文件

请按照以下步骤创建新的文件夹或文件。

步骤

操作

1

右键单击要重命名的文件夹或文件以打开上下文菜单。

2

选择“重命名”

3

根据需要编辑名称,然后按“Enter”。

文件夹或文件已重命名。

删除文件夹或文件

请按照以下步骤创建新的文件夹或文件。

步骤

操作

1

右键单击要删除的文件夹或文件,打开上下文菜单。

2

选择“删除”。

系统会显示确认消息。

3

选择“删除”以确认删除。

docs image
文件夹或文件已删除。

在文件中添加注释

如果要在 SQL 转换文件或文件的注释部分中包含注释,强烈建议使用默认情况下设置为 {# ... #} 的 Jinja 注释语法。这也使您能够注释宏。

SQL

{# {{ pm_utils.optional(ref('Cases_base'), '"Case_status"') }} as "Case_status", #}

{# case
    when {{ pm_utils.optional(ref('Cases_base'), '"Case_value"', 'double') }} >= 1000000 
      then {{ pm_utils.as_varchar('>= 1M') }}
    when {{ pm_utils.optional(ref('Cases_base'), '"Case_value"', 'double') }} >= 0 
     then {{ pm_utils.as_varchar('0 - 1M') }}
   when {{ pm_utils.optional(ref('Cases_base'), '"Case_value"', 'double') }} is not null
     then {{ pm_utils.as_varchar('< 0') }}
  end as "Case_value_group", #}{# {{ pm_utils.optional(ref('Cases_base'), '"Case_status"') }} as "Case_status", #}

{# case
    when {{ pm_utils.optional(ref('Cases_base'), '"Case_value"', 'double') }} >= 1000000 
      then {{ pm_utils.as_varchar('>= 1M') }}
    when {{ pm_utils.optional(ref('Cases_base'), '"Case_value"', 'double') }} >= 0 
     then {{ pm_utils.as_varchar('0 - 1M') }}
   when {{ pm_utils.optional(ref('Cases_base'), '"Case_value"', 'double') }} is not null
     then {{ pm_utils.as_varchar('< 0') }}
  end as "Case_value_group", #}

在文件中查找/替换

在“数据转换”编辑器中,您可以查找和替换单个文件中的文本。

查找文本

要在数据转换编辑器中查找文本,请执行以下操作:
  1. 在代码编辑器中单击随机位置,或选择要在其他文本中搜索的文本。

  2. CTRL+F
  3. 在“查找”字段中输入要搜索的测试。

    当前文件中所有出现该文本的路径都将高亮显示。

  4. 选择ENTER可跳至下一个匹配项。

查找和替换

要在数据转换编辑器中查找文本,请执行以下操作:
  1. 在代码编辑器中单击随机位置,或选择要在其他文本中搜索的文本。

  2. CTRL+H
  3. 在“查找”字段中输入要搜索的测试,然后在“替换”字段中输入新测试。

    当前文件中所有出现该文本的路径都将高亮显示。

  4. 选择ENTER以替换文本并跳到下一个匹配项。
要在数据转换编辑器中查找文本,请执行以下操作:
  1. 单击代码编辑器。

  2. CTRL+H
  3. 在“查找”字段中输入要搜索的测试,然后在“替换”字段中输入新测试。

    当前文件中所有出现该文本的路径都将高亮显示。

  4. Crtl+Alt+Enter
提示:
您还可使用“替换” 或“替换所有” 图标。


在多个文件中查找/替换

如果要在多个文件中查找/替换文本,则只能在外部编辑器中执行此操作。

请按照以下步骤在多个文件中查找/替换文本:

  1. 从流程应用程序导出转换。

    备注:

    如果“数据转换”编辑器中有待定更改,请首先使用“应用到仪表板”,并在数据运行完成后导出转换。

  2. 解压缩转换文件。

  3. 在您喜欢的代码编辑器中打开转换,例如 Notepad++ 或 Visual Studio Code。

  4. 使用这些工具的功能查找或替换多个文件中的文本。

  5. 保存文件。

  6. 将转换文件添加到 .zip 文件。

  7. 在流程应用程序中导入转换。

备注:

当系统询问您将哪些数据用于数据运行时,如果要在执行新的数据运行之前继续编辑转换,请选择“取消”。

编辑 dbt 项目配置文件

您还可以在“数据转换”编辑器中打开 dbt 项目配置文件,例如 dbt_project.yml
警告:
强烈建议仅在需要时编辑 vars 部分。不应更改 dbt_project.yml 的其他部分,以确保转换继续正常工作。

有关 dbt 的详细信息,请参阅官方 dbt 文档

在仪表板中提供转换

要使更改在仪表板中可用,您必须执行完整的数据运行以加载数据并运行转换。选择“应用到仪表板”按钮以开始数据运行。

备注:

根据数据集的大小,这需要一些时间。

成功运行数据后,新转换将在仪表板编辑器中可用,并可用于调整仪表板。

注意:

如果您有流程应用程序的已发布版本,则业务用户将立即看到新数据。 如果要确保已发布的应用程序在编辑转换时继续正常运行,强烈建议您使用开发应用程序。

请执行以下步骤:

  1. 克隆您的应用程序以创建开发应用程序。

  2. 从开发应用程序导出转换

  3. 在已发布的流程应用程序中导入转换

合并事件日志

如果您的事件日志分为多个事件日志文件,则可以在数据转换中将事件日志合并为单个事件日志。

备注:

要合并多个事件日志, Case_ID应为所有文件指向同一对象。 例如,所有案例 ID 都指向销售订单 ID,这样Case_ID 就指向所有事件日志的同一张表。

  1. 基于事件日志应用程序模板创建一个新应用程序。 请参阅应用程序模板

  2. 使用“ 选择数据源” 步骤中的“ 上传数据 ” 选项,然后选择要合并的事件日志文件。

  3. 继续执行“新建应用程序”向导,以创建应用程序并转换数据。

    数据运行将失败,应用程序状态将显示为运行失败

  4. 选择“查看日志”以查看日志文件。

    系统将显示一条错误消息,指示未找到所需的Event_log_raw.sql文件。
    docs image
  5. 转到“数据转换”编辑器。

  6. 对于每个输入文件:

    1. 创建一个.sql文件,其内容与现有Event_log_input.sql相同。
      docs image
    2. 调整文件以选择所需的输入字段,并正确进行类型转换。

    3. 将新的源表名称添加至sources.yml

      现在,所有新的输入文件都可以合并到一个事件日志中。

      注意:

      确保输入文件都具有完全相同的字段集。

  7. 选择Event_log_input.sql文件,并将内容替换为:
    -- The following code merges 3 input tables.
    select * from {{ ref('Event_log_input_1') }}
    union all
    select * from {{ ref('Event_log_input_2') }}
    union all
    select * from {{ ref('Event_log_input_3') }}-- The following code merges 3 input tables.
    select * from {{ ref('Event_log_input_1') }}
    union all
    select * from {{ ref('Event_log_input_2') }}
    union all
    select * from {{ ref('Event_log_input_3') }}
    docs image
    注意:调整代码以匹配所需输入表的名称。
  8. 选择“应用到仪表板”以运行数据转换,并使生成的表格可在仪表板中使用。

此页面是否有帮助?

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