process-mining
2023.4
false
重要 :
请注意此内容已使用机器翻译进行了部分本地化。
UiPath logo, featuring letters U and I in white
Process Mining
Automation CloudAutomation Cloud Public SectorAutomation SuiteStandalone
Last updated 2024年10月17日

Loading data using Theobald Xtract Universal

简介

本页面介绍了如何使用 Theobald Xtract Universal (XU) 将数据从 SAP 源系统加载到 Process Mining (Automation Suite) 中的流程应用程序中。有关 Theobald Xtract Universal (XU) 的更多信息,请前往 Theobald 软件官方网站

Theobald Xtract Universal 提供对 SAP ECC 和 SAP HANA 数据源的快速数据访问和提取。 有关如何使用 Theobald Xtract Universal (XU) 的一般说明,请参阅 Theobald 软件官方文档 Theobald Xtract Universal 入门

先决条件

假设您已经:

备注:
Loading data using Theobald Xtract Universal requires that the command line tool (xu.exe) can be executed without additional authentication.

设置 Theobald Xtract Universal

Theobald Xtract Universal 是经过 SAP 认证的提取工具,用于从 SAP 源系统中提取数据,并通过远程函数调用 (RFC) 与 SAP 集成。Theobald Xtract Universal 包含要在 SAP 中安装的只读自定义功能模块。使用以下链接下载自定义模块:Z_THEO_READ_TABLE-transport1.zip

备注:

许可证通过 UiPath 提供,用于 Process Mining。

请按照以下步骤设置 Theobald Xtract Universal。

  1. 从我们的网站下载 Theobald Xtract Universal 的最新试用版,请参阅下载试用版。在 Windows Server/虚拟机上安装 Theobald Xtract Universal。

  2. 检查对 SAP 系统的网络访问是否已打开,请参阅 SAP TCP/IP 端口

  3. 授予 SAP 用户访问 SAP 实例的权限,请参阅授权对象 - 适用于表格的 SAP 用户权限

  4. 需要在 SAP 中自定义 Theobald Xtract Universal 中的以下组件:Z_THEO_READ_TABLE
  5. 为所需的应用程序模板配置 Theobald Xtract Universal。请参阅应用程序模板

备注:

步骤 2-4 需要 SAP 团队的验证。

Setup credentials for the SQL Server database

将数据上传到 Process Mining (Automation Suite) 需要访问要将提取的数据上传到的 SQL Server 数据库位置。如要设置 SQL Server 目标连接,您需要以下设置参数来验证对 SQL Server 数据库位置的访问权限。

  • 服务器
  • 数据库
  • 架构
  • 角色

使用 Theobald Xtract Universal 加载数据

使用 Theobald Xtract Universal 设置数据加载需要执行多个步骤。

  1. 设置 SQL 用户以上传数据;
  2. 导入模板提取;
  3. 配置来源;
  4. 配置目标;
  5. 配置提取脚本;
  6. 运行提取脚本。

下面将详细介绍这些步骤。

设置 SQL 用户以上传数据

每个使用通过提取程序上传数据选项的流程应用程序都需要专用的 SQL Server 用户,该用户对与流程应用程序相关联的架构拥有特定访问权限。

请执行以下步骤:

步骤

操作

语法

1

创建登录。

备注:

需要在主数据库中创建登录名。

CREATE LOGIN <SQL_login_name> WITH PASSWORD = '<Password>'

2

为登录创建数据库用户。

备注:

需要在 AutomationSuite_ProcessMining_Warehouse 数据库中创建此用户。

CREATE USER <User_name> FOR LOGIN <SQL_login_name>

3

将用户分配给正确的数据库角色。

SP_ADDROLEMEMBER <Role>, <User_name>

4

为已创建的用户设置默认架构。

注意:

只有使用 Theobald Xtract Universal 加载数据时才需要执行此步骤。

ALTER USER <User_name> WITH DEFAULT_SCHEMA = <Schema>



导入模板提取

请按照以下步骤在 Theobald Xtract Universal 中导入模板提取。

步骤

操作

1

转到“ 应用程序模板 ”页面,然后打开应用程序模板的文档页面。

2

找到“ 使用 Theobald Xtract Universal 加载数据 ”部分,然后下载适用于您的应用程序模板的 XU_template_extractions_as.zip 文件。 请参阅 应用程序模板。 此 XU_template_extractions_as.zip 文件包含文件夹 destinationsextractionssources

3

将下载的XU_template_extractions_as.zip文件中的文件夹复制到 Xtract Universal 的config文件夹。 此文件夹的位置为[XU_installation_path] /config。

4

打开 Xtract Universal 设计器,然后单击其中的刷新按钮以加载所有提取内容。

备注:

您可以使用默认用户登录。

docs image
docs image

系统将显示所有提取的列表,每个提取都从 SAP 系统中提取一个表。 模板源名为 SAP ,模板目标名为 SQL Server

配置源

请按照以下步骤在 Theobald Xtract Universal 中配置 SAP 源。

步骤

操作

1

转到“ 服务器 - 管理来源 ”,然后编辑 SAP 来源。

2

填写“ 常规 ” 和“ 身份验证 ” 选项卡上的设置,以连接到 SAP 系统。

3

测试连接。

配置目标

请按照以下步骤在 Theobald Xtract Universal 中配置 SQL Server 目标。

  1. 转到“ 服务器 - 管理目标 ”,然后编辑 SQL Server 目标。
  2. 填写设置以连接到 SQL Server 目标。

配置提取脚本

请按照以下步骤配置提取脚本。

步骤

操作

1

转到“ 应用程序模板 ”页面,然后打开应用程序模板的文档页面。

2

找到 使用 Theobald Xtract Universal 加载数据 部分,然后下载应用程序模板的 extract_theobald_as.zip 文件。 此 extract_theobald_as.zip 文件包含 extract_theobald.ps1 脚本和 config.json 文件。

3

在安装了 Theobald Xtract Universal 的服务器上解压extract_theobald_as.zip文件的内容。

4

config.json中配置脚本的变量,如下所示。

变量

描述

xu_location

Xtract Universal 安装文件夹。 您可以在此文件夹中找到 xu.exe。 例如: C:\\MyFolder

xu_server

安装 Xtract Universal 的服务器的地址。 默认值为localhost

xu_port

安装 Xtract Universal 的服务器的端口。 安装的默认端口为8065

as_server

URL 中表示创建应用程序的服务器的部分。请参阅检索 SQL Server 数据库参数

as_organization

URL 中用于表示已创建应用程序的组织的部分。请参阅检索 SQL Server 数据库参数

as_tenant

URL 中用于表示已创建应用程序的租户的部分。请参阅检索 SQL Server 数据库参数

as_app_ID

已创建应用程序的应用程序 ID。

extraction_start_date

用于限制提取的开始日期。 仅在此日期筛选应用了日期筛选器的表格。 格式为 YYYYMMDD。 默认情况下无限制,开始日期 19700101指示。
备注: extraction_start_date 必须拥有值。

extraction_end_date

用于限制提取的结束日期。 仅在此日期筛选应用了日期筛选器的表格。 格式为 YYYYMMDD。 默认情况下,结束日期 20991231指示无限制。
备注: extraction_end_date 必须拥有值。

language

从源系统中提取数据所用的语言。 默认为 E

exchange_rate_type

用于货币转换的汇率类型。 默认为 M

运行提取脚本

要加载数据并将其上传以在 Process Mining 中使用,您必须运行 extract_theobald.ps1 文件。

此任务花费的时间在很大程度上取决于加载的数据量。

手动启动文件

请按照此步骤开始数据运行。

步骤

操作

1

运行 extract_theobald.ps1 文件以开始数据运行。
数据运行还会创建一个日志文件,以便在出现意外结果或使用数据上传程序上传数据失败时提供帮助。 文件extraction.log包含上次数据运行的日志。 对于每个失败的提取,系统都会显示返回代码。 有关更多信息,请参阅 Theobald Software 官方文档 “通过命令行调用” 。 当设置不正确时,错误消息中会提及。

为数据运行计划任务

除了手动运行文件外,您还可以使用 Windows 任务计划程序来计划任务,该任务会运行批处理脚本以实现自动数据刷新。

注意:在 Windows 计划程序中创建任务时,建议选择本地系统用户帐户来运行任务,并在“创建任务”窗口中选择“以最高优先级运行”。
重要提示:

如果您添加没有可用数据的间隔,仪表板将显示错误消息。

提取成功后,数据提取可能会因提取的一些错误数据而失败。 您可以使用 Theobald Xtract Universal 的 WHERE 子句筛选出此数据。 有关 WHERE 子句的更多信息,请参阅 Theobald 官方文档

备注:

如果您的 WHERE 子句使用变量(例如提取日期),则无法通过用户界面进行筛选。

故障排除

数据运行还会创建一个日志文件,以便在出现意外结果或使用数据上传程序上传数据失败时提供帮助。 文件extraction.log包含上次数据运行的日志。 对于每个失败的提取,系统都会显示返回代码。 有关更多信息,请参阅 Theobald Software 官方文档 “通过命令行调用” 。 当设置不正确时,错误消息中会提及。

针对非 HANA 系统的 CDPOS 的提取问题

在某些较旧的非 HANA 系统中,CDPOS 是集群表,可能会导致“与池表联接”错误,如下所示。



默认情况下, CDPOS表的提取包括与CDHDR表的联接,以限制需要提取的记录数。 请按照以下步骤解决此错误。
  1. 在 Xtract Universal Designer 中编辑 CDPOS 提取,以从表格中删除 CDHDR。
  2. CDHDR~UDATE between @extraction_start_date and @extraction_end_date替换为:

    CHANGENR between @CHANGENR_min and @CHANGENR_max

  3. extract_theobald.ps1中,将 &"$xu_location\xu.exe" -s "$xu_server" -p "$xu_port" -n "CDPOS" -o "extraction_start_date=$extraction_start_date" -o "extraction_end_date=$extraction_end_date" 替换为下面显示的代码。
&"$xu_location\xu.exe" -s "$xu_server" -p "$xu_port" -n "CDHDR_CSV" -o "extraction_start_date=$extraction_start_date" -o "extraction_end_date=$extraction_end_date"
CheckExtractionError('CDHDR_CSV')
$CDHDR = Import-Csv -Path "$xu_location\<app_template_specific>output\CDHDR_CSV.csv" -Delimiter "`t"
$CDHDR_sorted = $CDHDR | Sort-Object -Property CHANGENR 
$CHANGENR_min=$CDHDR_sorted.GetValue(0).CHANGENR
$CHANGENR_max=$CDHDR_sorted.GetValue($CDHDR_sorted.Count-1).CHANGENR
&"$xu_location\xu.exe" -s "$xu_server" -p "$xu_port" -n "CDPOS" -o "CHANGENR_min=$CHANGENR_min" -o "CHANGENR_max=$CHANGENR_max"&"$xu_location\xu.exe" -s "$xu_server" -p "$xu_port" -n "CDHDR_CSV" -o "extraction_start_date=$extraction_start_date" -o "extraction_end_date=$extraction_end_date"
CheckExtractionError('CDHDR_CSV')
$CDHDR = Import-Csv -Path "$xu_location\<app_template_specific>output\CDHDR_CSV.csv" -Delimiter "`t"
$CDHDR_sorted = $CDHDR | Sort-Object -Property CHANGENR 
$CHANGENR_min=$CDHDR_sorted.GetValue(0).CHANGENR
$CHANGENR_max=$CDHDR_sorted.GetValue($CDHDR_sorted.Count-1).CHANGENR
&"$xu_location\xu.exe" -s "$xu_server" -p "$xu_port" -n "CDPOS" -o "CHANGENR_min=$CHANGENR_min" -o "CHANGENR_max=$CHANGENR_max"
注意: 这是一个通用示例,您的应用程序模板的表名称可以不同。
注意: 将输出文件夹 <app_template_specific> 替换为在 extract_theobald.ps1 中为应用程序模板指定的输出文件夹。

其他提取问题

复制密钥

使用 Theobald Xtract Universal 上传数据时,可能会出现以下错误消息:
docs image
可能的原因

提取中不会检索用于表格主键的字段。

解决方案

要解决此问题,您需要检查提取过程中是否检索到了用于表格主键的所有字段。

以下是 EKKN 表中的示例。 此表的主键不完整,因为系统未检索到 ZEKKN 字段。 确保在提取时也使用此字段,才能解决此问题。
提示:

SAP 表中的主键可以通过字段名称前面显示的键符号来识别。

docs image

此页面有帮助吗?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath Logo White
信任与安全
© 2005-2024 UiPath。保留所有权利。