通过oracle数据库调用odi包或接口的任何方式

Any way to call odi package or interface through the oracle database

我需要通过数据库参数过程执行 odi package/mapping,同时我需要在过程中捕获 package/Mapping 状态(Failed/Passed)。

ODI 版本:12c

我已经尝试了提到的代码,它显示了附加的错误消息:

您可以分两步完成:

  1. 创建一个 plsql 过程,它将 运行 shell script/line 命令
  2. line命令会调用地图的ODI场景

你可以通过reading this达到第一点。

PL/SQL 执行命令行的过程:

create or replace procedure host( cmd in varchar2 )
as
status number;
begin
dbms_pipe.pack_message( cmd );
status := dbms_pipe.send_message( 'HOST_PIPE' );
if ( status <> 0 ) then raise_application_error( -20001, 'Pipe error' );
end if;
end;
/

第二点它写在 ODI 文档中,在第 7.3.2 Executing Scenario from command line 章。