EBS中发布WEBSERVICE接口的方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在Oracle EBS二次开发中,PL/SQL程序是开发人员使用频率最高的开发语言,同时也是大家最容易掌握的工具之一了,而我们也很希望将自己编写的PL/SQL 程序发布为Web服务来提供给客户端程序使用,同时也可以实现和外围系统的集成,有了irep_parser这个工具,我们就可以将自己编写的PL/SQL 程序发布到Oracle Integration Repositoy中。Oracle Integration Repositoy中集成接口的来源都是Oracle,客户化的程序发布上去的为Custom:
下面描述如何将PL/SQL程序接口发布到Oracle Integration Repositoy中作为集成接口供第三方程序集成调用
一、给EBS系统打补丁
参考如下安装文档:
安装文档.docx
二、添加客户化应用到Product Family
客户化应用设置好之后,它没有归属于任何的产品家族,如我的客户化应用CUX,因此发布在客户化应用下的集成接口在Oracle Integration Repositoy中无法方便的查看,如下图:
如果客户化集成接口是组织到自己的应用下就需要先注册一个产品家族,下面将CUX Developer(CUX) 应用注册到CUX Developer(cux_pf)这个产品家族下作为例子进行演示:
1,添加产品家族 CUX Developer(cux_pf)
--添加产品家族
begin
-- Call the procedure
ad_pa_insert_package.insert_ad_pm_product_info(x_product_abbreviation => 'cux_pf',
x_pseudo_product_flag => 'N',
x_product_family_flag => 'Y',
x_application_short_name => NULL,
x_product_name => 'CUX Developer',
x_product_family_abbreviation => NULL,
x_product_family_name => NULL,
x_aru_update_date => to_char(SYSDATE,'YYYY-MM-DD HH24:MI:SS'), x_currdate => to_char(SYSDATE,'YYYY-MM-DD HH24:MI:SS'),
x_last_updated_by => -1,
x_created_by => -1);
COMMIT;
end;
2,注册CUX Developer(CUX)应用到产品家族中
--注册CUX应用到产品家族中
begin
-- Call the procedure
ad_pa_insert_package.insert_ad_pm_product_info(x_product_abbreviation => 'cux',
x_pseudo_product_flag => 'N',
x_product_family_flag => 'N',
x_application_short_name => 'CUX',
x_product_name => 'CUX Developer',
x_product_family_abbreviation => NULL,
x_product_family_name => NULL,
x_aru_update_date => to_char(SYSDATE,'YYYY-MM-DD HH24:MI:SS'),
x_currdate => to_char(SYSDATE,'YYYY-MM-DD
HH24:MI:SS'),
x_last_updated_by => -1,
x_created_by => -1);
COMMIT;
end;
3,关联CUX Developer应用到产品家族CUX Developer下
--关联CUX应用到产品家族CUX Developer下
begin
-- Call the procedure
ad_pa_insert_package.insert_ad_pm_prod_family_map(x_product_abbreviat ion => 'cux',
x_product_family_abbreviation => 'cux_pf',
x_aru_update_date => to_char(SYSDATE,'YYYY-MM-DD HH24:MI:SS'),
x_currdate => to_char(SYSDATE,'YYYY-MM-DD
HH24:MI:SS'),
x_last_updated_by => -1,
x_created_by => -1);
COMMIT;
end;
执行完成后通过下面2条SQL验证是否添加成功,查出3条数据表示添加成功。
SELECT * FROM ad_pm_product_info x WHERE x.product_name LIKE 'CUX%'; SELECT * FROM ad_pm_prod_family_map m WHERE m.product_abbreviation LIKE 'cux%';
完成后如果应用下有集成接口可以看到如下的产品家族信息:
三、按照集成接口标记规范编写PL/SQL程序
按照业务逻辑的要求编写PL/SQL程序,除了需要在PL/SQL程序的声明中按照集成接口标记的要求添加标记注释之外,其它和一般的程序没有任何区别,如下是一个用来实现查询PMP中WBS计划的程序:
CREATE OR REPLACE PACKAGE CUX_PMP_PKG6 AS
/* $Header: $ */
/*#
* This package using PMP application cux developer
* @rep:scope public
* @rep:product cux
* @rep:lifecycle active
* @rep:displayname cux pmp application6
* @rep:compatibility S