WebADI_WebADI常用代码ad_dd.register_table / column(案例)


WebADI_WebADI常用代码ad_dd.register_table / column(案例)

20150901 Created By BaoXinjian

一、摘要


用户开发的表通常不需要注册到EBS中,依然可以正常使用,如何需要使用预警、审计或值集功能

则需要将客制化的表注册到EBS里,在应用开发员 -> 用户产品 -> 数据库 -> 表中可以查看到已经注册到EBS中的表

但该模块不能添加,如果需要注册,需要使用EBS提供的API

二、AD_DD Package语法


1. 注册表语法

--(1). 语法
EXECUTE AD_DD.REGISTER_TABLE('所有者','表名','T自动扩展/S非自动扩展','下一区','自由','已使用')

--(2). 例子 EXECUTE AD_DD.REGISTER_TABLE('CVT','CVT_WF_DEMO','T',2,10,40);

2. 注册行语法

--(1). 语法
EXECUTE AD_DD.REGISTER_COLUMN('所有者','表名', '字段名',序号,'类型',字段宽度,是否为空,是否可以转换)

--(2). 例子
EXECUTE AD_DD.REGISTER_COLUMN('CVT','CVT_WF_DEMO','DOCUMENT_ID',1,'NUMBER',38,'N','N');
EXECUTE AD_DD.REGISTER_COLUMN('CVT','CVT_WF_DEMO','DOCUMENT_AMOUNT',2,'NUMBER',38,'Y','N');
EXECUTE AD_DD.REGISTER_COLUMN('CVT','CVT_WF_DEMO','DOCUMENT_SUBMITER',3,'NUMBER',38,'Y','N');
EXECUTE AD_DD.REGISTER_COLUMN('CVT','CVT_WF_DEMO','DOCUMENT_APPROVER',4,'NUMBER',38,'Y','N');
EXECUTE AD_DD.REGISTER_COLUMN('CVT','CVT_WF_DEMO','DOCUEMNT_TEXT',5,'VARCHAR2',100,'Y','N');
EXECUTE AD_DD.REGISTER_COLUMN('CVT','CVT_WF_DEMO','DOCUMENT_NUMBER',6,'VARCHAR2',10,'N','N');
EXECUTE AD_DD.REGISTER_COLUMN('CVT','CVT_WF_DEMO','LAST_UPDATE_DATE',7,'DATE',9,'N','N');
EXECUTE AD_DD.REGISTER_COLUMN('CVT','CVT_WF_DEMO','LAST_UPDATED_BY',8,'NUMBER',38,'N','N');
EXECUTE AD_DD.REGISTER_COLUMN('CVT','CVT_WF_DEMO','CREATION_DATE',9,'DATE',9,'N','N');
EXECUTE AD_DD.REGISTER_COLUMN('CVT','CVT_WF_DEMO','CREATED_BY',10,'NUMBER',38,'N','N');

3. 注册主键

--(1). 语法
EXECUTE AD_DD.REGISTER_PRIMARY_KEY('所有者','键名','表名','描述','S','Y审计','Y启用');

--(2). 例子
EXECUTE AD_DD.REGISTER_PRIMARY_KEY('CVT', 'DOCUMENT_NUMBER_PK', 'CVT_WF_DEMO','DOCUMENT_NUMBER_PK', 'S', 'Y','Y');

4. 注册主键字段

--(1). 语法
EXECUTE AD_DD.REGISTER_PRIMARY_KEY_COLUMN('所有者','键名','表','字段',序列)

--(2). 例子
EXECUTE AD_DD.REGISTER_PRIMARY_KEY_COLUMN('CVT', 'DOCUMENT_NUMBER_PK', 'CVT_WF_DEMO', 'DOCUMENT_NUMBER', 6);

三、案例


1. 通过API注册表和表栏位

BEGIN
  --注册表
  AD_DD.REGISTER_TABLE('FND','BXJ_WEBADI_EMP','T',2,10,40);
  --注册栏位
  AD_DD.REGISTER_COLUMN('FND','BXJ_WEBADI_EMP','EMPNO',1,'NUMBER',4,'Y','N');
  AD_DD.REGISTER_COLUMN('FND','BXJ_WEBADI_EMP','ENAME',2,'VARCHAR2',10,'Y','N');
  AD_DD.REGISTER_COLUMN('FND','BXJ_WEBADI_EMP','TYPE',3,'VARCHAR2',10,'Y','N');
  AD_DD.REGISTER_COLUMN('FND','BXJ_WEBADI_EMP','JOB',4,'VARCHAR2',9,'Y','N');
  AD_DD.REGISTER_COLUMN('FND','BXJ_WEBADI_EMP','MGR',5,'NUMBER',4,'Y','N');
  AD_DD.REGISTER_COLUMN('FND','BXJ_WEBADI_EMP','ACCOUNT_ID',6,'NUMBER',5,'Y','N');
  AD_DD.REGISTER_COLUMN('FND','BXJ_WEBADI_EMP','HIREDATE',7,'DATE',9,'Y','N');
  AD_DD.REGISTER_COLUMN('FND','BXJ_WEBADI_EMP','SAL',8,'NUMBER',7,'Y','N');
  AD_DD.REGISTER_COLUMN('FND','BXJ_WEBADI_EMP','COMM',9,'NUMBER',7,'Y','N');
  AD_DD.REGISTER_COLUMN('FND','BXJ_WEBADI_EMP','DEPTNO',10,'NUMBER',2,'Y','N');
END;

2. 查看你所注册的表信息

3. 之后可以再WebADI中使用该表作为Interface Table