WebADI_数据验证1_建立基于PLSQL返回FND Message验证(案例)

20150606 Created By BaoXinjian

一、摘要


WebADI做数据验证除了在Interface Attribue通过Date/Table/Flex做简单的验证外,更多的数据逻辑验证会在Procedure API中操作

在Procedure API中,直接通过Raise Exception Error的方式,WebADI会自动接收,并显示在Excel中

 

二、一个简单的验证


1. 在Integrator中设置接收错误信息为FND Message

2. 创建的一个Procedure,验证Employee Type是否为空值,如果是空值,则提示错误

create or replace package body apps.bxj_webadi_employee_pkg
is
   procedure bxj_webadi_emp_main (p_dep_org_id        number,
                                  p_dep_org_name      varchar2,
                                  p_dep_deptno        number,
                                  p_dep_dname         varchar2,
                                  p_dep_loc           varchar2,
                                  p_emp_empno         number,
                                  p_emp_ename         varchar2,
                                  p_emp_type          varchar2,
                                  p_emp_job           varchar2,
                                  p_emp_mgr           number,
                                  p_emp_account_id    number,
                                  p_emp_hiredate      date,
                                  p_emp_sal           number,
                                  p_emp_comm          number,
                                  currency_code       varchar2,
                                  accounting_date     date,
                                  segment1            varchar2,
                                  segment2            varchar2,
                                  segment3            varchar2,
                                  segment4            varchar2,
                                  segment5            varchar2)
   is
   begin
/* 添加数据验证条件,如果Employee Type为空,WebADI记录验证失败 */ if (p_emp_type is null) then raise_application_error (-20001, 'Employee Type Is Null'); end if; insert into bxj_webadi_dept values (p_dep_org_id, p_dep_org_name, p_dep_deptno, p_dep_dname, p_dep_loc); insert into bxj_webadi_emp (empno, ename, type, job, mgr, account_id, hiredate, sal, comm, deptno) values (p_emp_empno, p_emp_ename, p_emp_type, p_emp_job, p_emp_mgr, p_emp_account_id, p_emp_hiredate, p_emp_sal, p_emp_comm, p_dep_deptno); exception when others then raise_application_error (-20002, SQLCODE||SQLERRM); end; end bxj_webadi_employee_pkg;

2. 输入测试数据,并且upload

3. Employee Type为空的那天记录,系统提示上传不成功

 

Thanks and Regards

posted on 2012-11-21 13:48  东方瀚海  阅读(384)  评论(2编辑  收藏  举报