Oracle EBS 基础概念:弹性域-注册表和列

用户客制开发的表通常不需要注册到EBS中,依然可以正常使用。
但如果需要使用预警审计值集功能,则需要将客制化的表注册到EBS里。
在应用开发员→用户产品→数据库→表中可以查看到已经注册到EBS中的表,但该模块不能添加,如果需要注册,需要使用EBS提供的API:AD_DD

例子:( 建表 -> 注册 -> 执行 -> EBS查看是否注册成功)

–建测试表

 create table employee_test(
   employee_id  number not null primary key,
   employee_name varchar2(30),
   employee_description varchar2(50)
);

–注册表和列

begin
--注册表
--('应用产品','表名','T自动扩展/S非自动扩展','下一区','自由','已使用')
AD_DD.REGISTER_TABLE('XXE','EMPLOYEE_TEST','T',2,10,40);

--注册字段
--('应用产品','表名', '字段名',序号,'类型',字段宽度,是否为空,是否可以转换)
AD_DD.REGISTER_COLUMN('XXE','EMPLOYEE_TEST','employee_id',1,'NUMBER',10,'N','N');
AD_DD.REGISTER_COLUMN('XXE','EMPLOYEE_TEST','employee_name',2,'varchar2',30,'N','N');
AD_DD.REGISTER_COLUMN('XXE','EMPLOYEE_TEST','employee_description',3,'varchar2',50,'N','N');

--注册主键
--('应用产品','键名','表名','描述','S','Y审计','Y启用');
AD_DD.REGISTER_PRIMARY_KEY('XXE','employee_id','EMPLOYEE_TEST','EMPLOYEE_TEST','S','Y','Y');

--注册主键字段
--AD_DD.REGISTER_PRIMARY_KEY_COLUMN('应用产品','键名','表','字段',序列)
AD_DD.REGISTER_PRIMARY_KEY_COLUMN('XXE','employee_id','EMPLOYEE_TEST','employee_id', 1);
commit;
end;

–EBS查看是否注册成功,路径:应用开发员→用户产品→数据库→表
(略)

–删除注册信息

DECLARE
  CURSOR cur_table IS
    SELECT at.table_name
      FROM all_tables at
     WHERE at.table_name IN ('EMPLOYEE_TEST') AND at.owner = 'APPS';

  CURSOR cur_col(p_table_name IN VARCHAR2) IS
SELECT c.column_name,c.data_type,c.data_length,c.nullable,c.table_name
      FROM dba_tab_columns c
     WHERE c.table_name = p_table_name;
     
  l_application_short_name VARCHAR2(30) := 'XXE';
BEGIN
  FOR t IN cur_table
  LOOP
    FOR c IN cur_col('EMPLOYEE_TEST')
    LOOP
      ad_dd.delete_column(l_application_short_name,t.table_name,c.column_name);
    END LOOP;
    
    ad_dd.delete_table(l_application_short_name,t.table_name);
  END LOOP;
  commit;
END;

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值