生成基于文件的数据导入 (File-Based Data Import,FBDI) 文件

第一步是生成基于文件的数据导入 (File Based Data Import,FBDI) 文件,供 Oracle Cloud ERP 使用。

大多数与 ERP 的批量集成都使用 FBDI 文件。FBDI 文件是一个平面数据文件,其内容类似于以下内容:

NEW,1,2018/03/01,Balance Transfer,Remote Transfer,USD,2018/03/01,A,01,000,1212,0000,000,,,,,,,,,,,,,,,,,,,,,,,,,,99.00,,,,Team A Team Batch5,,,Orange Journal5,,,,,,,,,,,,,,,,,,,,,123,,,,,,,,,,,,,,,,,,,,,,,,,,END
NEW,1,2018/03/01,Balance Transfer,Remote Transfer,USD,2018/03/01,A,01,000,4111,0000,000,,,,,,,,,,,,,,,,,,,,,,,,, ,99.00,,,,Team A Team Batch5,,,Orange Journal5,,,,,,,,,,,,,,,,,,,,,123,,,,,,,,,,,,,,,,,,,,,,,,,,END

如果源应用程序的数据文件不是 FBDI 格式,则必须使用 Oracle Integration 映射器功能 (XSLT) 将其从源格式转换为目标格式。但是,可能存在源生成的文件过大的情况,例如 500 MB。

内存中读取大文件会导致它内存不足。由于 Oracle Integration 是 PaaS 产品,因此会检查可以使用 FTP 适配器读取的文件大小。Oracle Integration 将使用 FTP 适配器在内存中读取的最大文件限制为最多 1 MB。但是,Oracle Integration 可以使用称为阶段读取的功能读取一系列块中的大型源文件。“阶段读取”是 Oracle Integration 中的地图减小功能。

由于从 FTP 服务器读取块的成本很高,因此 Oracle 建议首先将文件本地下载到 Oracle Integration ,然后再使用 Oracle Integration 流中的阶段读取

使用基于文件的数据导入 (File-Based Data Import,FBDI) 业务流程模式

下面显示了将源 ZIP 文件中的一个或多个文件转换为 FBDI 格式的 Oracle Integration 业务流程模式示例。

要从源格式转换为 FBDI 格式的逻辑流遵循以下步骤:

  1. 阅读触发器文件。
  2. 下载源数据文件。
  3. 块读取数据并将其转换为 FBDI 格式。外部循环可确保每个处理多个数据文件。
  4. 创建列表文件。
  5. 生成一个或多个属性文件并写入 ZIP 文件。
  6. 存档源文件。
  7. 归档触发器文件。

例如:


后面是 Journal-entry-1.png 的说明
插图日志的说明 - entry-1.png

读取触发器文件

读取触发器文件是计划的 Oracle Integration 集成。

根据配置的调度访问触发器文件。第一步是读取您在 FTP 服务器上放置的触发器文件。触发器文件是与源数据文件同名的零字节文件。触发器文件提供此 Oracle Integration 流中下游活动要读取的源数据文件的名称。触发器文件用于确保源应用程序在 Oracle Integration 尝试访问要读取的数据文件之前完全写入了数据文件。Oracle Integration 中的 FTP 适配器确实支持 minimum age 属性,但有时,如果记录太多,源应用程序可能会尝试附加到数据文件。由于 minimum age 不适用于此类情况,因此使用触发器文件。

  1. 开始将数据文件上载到 FTP 服务器。
  2. 等待数据文件完全写入。
  3. 将触发器文件写入 FTP 服务器上的相同位置。
    当计划的 Oracle Integration 流在服务器上看到触发器文件时,它将开始下载同名的数据文件。

下载源数据文件

下一步是将源数据文件下载到 Oracle Integration 中。

写入 Oracle Integration 流时要求源数据文件是压缩的 ZIP 文件,可能包含一个或多个源数据格式文件。

  1. 在“Oracle Adapter 端点配置向导”中,为目标 FTP 端点配置操作参数,输入基本信息,然后单击下一步以转至“操作”步骤。
  2. 选择操作中,选择下载到 ICS
  3. Download Directory Path(下载目录路径)中,输入 /fbdi/
    路径位于 Oracle Integration 服务器上,您无法访问该服务器。Oracle Integration 在需要时创建此文件夹,然后在文件夹完成后清除该文件夹。
  4. 选中 Unzip the file(解压缩文件)框。
  5. 单击下一步并完成向导的剩余步骤。

块读取和转换数据文件

使用 Oracle Integration 中的阶段读取功能以较小的块读取数据文件。

每个块都从源格式转换为 FBDI 格式,然后创建输出 FBDI 文件。图中显示的外部 for 循环可确保如果源 ZIP 文件中包含多个文件,则每个文件都将读取并转换为单独的 FBDI 格式的文件。

生成列表文件

Oracle Integration 生成列表文件以确定创建了多少 FBDI 文件。

创建属性和 ZIP 文件

在此步骤中,生成属性文件并写入 ZIP 文件。

Oracle Integration 使用 Oracle Cloud ERP 适配器将 FBDI 文件上载到 Oracle Cloud ERP 。尽管 Oracle Cloud ERP 适配器能够在内部使用 Oracle Cloud ERP 提供的 Web 服务,但它会掩盖原始 Web 服务涉及的许多复杂性。Oracle Cloud ERP 适配器期望包含 FBDI 和属性文件的 ZIP 文件上载到 Oracle Cloud ERP 。属性文件是一个清单文件,其中包含有关 Oracle Cloud ERP 适配器需要将 FBDI 文件上载到 Oracle Cloud ERPJobnameParameterlist 的信息。

归档源文件和触发器文件

源文件和触发器文件已归档,以供将来在 FTP 位置上参考。

例如,您可以使用这些文件重新提交。