EBS : API to Register Table in Oracle APPS
This section will guide you how to register tables to be
used in Oracle Alerts and Flexfields with Oracle Applications. We will be
learning about Procedures of AD_DD Package like procedure REGISTER_TABLE, REGISTER_COLUMN,
DELETE_COLUMN, DELETE_TABLE,
Introduction
EBS comes with lots of seeded database tables, there
can be multiple applications in which one might be required to create a custom
table to be used. Flexfields (like KFF, DFF etc ) and Oracle Alert are the only
features or products that require the custom tables to be registered in Oracle
Apps
We can register custom application tables using a PL/SQL
procedure in the AD_DD package.
We only need to register those tables (and all of their
columns) that will be used. Application Object Library tables should you later
modify your tables. If you alter the table later, then you may need to include
revised or new calls to the table registration routines.
Alter registration steps:-
- a) a) delete the registration
- b) b) Re-register the table or column. Delete the
column registration first, then the table registration.
- c) c) Commit your changes.
Example of calling AD_DD Package
1) Register Table
BEGIN
AD_DD.REGISTER_TABLE
('FND','HARDTECH','T');
END;
2) Register Column
BEGIN
AD_DD.REGISTER_COLUMN ('FND','TEST_DESC','RESOURCE_NAME', 1,'VARCHAR2', 150, 'Y',
'N');
End;
Procedures in the
AD_DD Package
1. Procedure REGISTER_TABLE
procedure register_table ( p_appl_short_name in varchar2,
p_tab_name in varchar2,
p_tab_type in varchar2,
p_next_extent in number default 512,
p_pct_free in number default 10,
p_pct_used in number default 70);
2. Procedure REGISTER_COLUMN
procedure register_column (p_appl_short_name in varchar2,
p_tab_name in varchar2,
p_col_name in varchar2,
p_col_seq in number,
p_col_type in varchar2,
p_col_width in number,
p_nullable in varchar2,
p_translate in varchar2,
p_precision in number default null,
p_scale in number default null);
3. Procedure DELETE_TABLE
procedure delete_table (p_appl_short_name in varchar2,
p_tab_name in varchar2);
4. Procedure DELETE_COLUMN
procedure delete_column (p_appl_short_name in varchar2,
p_tab_name in varchar2,
p_col_name in varchar2);
VARIABLE
NAMES
DESCRIPTION
p_appl_short_name The application short name of the
application that owns the table
(usually your custom application).
p_tab_name The name of the table (in uppercase letters).
p_tab_type Use ’T’ if it is a transaction table (almost all
application tables), or
’S’ for a ”seed data” table (used only by Oracle
Applications
products).
p_pct_free The percentage of space in each of the table’s
blocks reserved
for future updates to the table (1–99). The sum of
p_pct_free and
p_pct_used must be less than 100.
p_pct_used Minimum percentage of used space in each data
block of the
table (1–99). The sum of p_pct_free and p_pct_used must be
less than 100.
p_col_name The name of the column (in uppercase letters).
p_col_seq The sequence number of the column in the table
(the order in
which the column appears in the table definition).
p_col_type The column type (’NUMBER’, ’VARCHAR2’, ’DATE’,
etc.).
p_col_width The column size (a number). Use 9 for DATE
columns, 38 for
NUMBER columns (unless it has a specific width).
p_nullable Use ’N’ if the column is mandatory or ’Y’ if the
column allows null
values.
p_translate Use ’Y’ if the column values will be translated
for an Oracle
Applications product release (used only by Oracle
Applications
products) or ’N’ if the
values are not translated (most application columns).
p_next_extent The next extent size, in kilobytes. Do not
include the ’K’.
p_precision The total number of digits in a number.
p_scale The number of digits to the right of the decimal
point in a
number.
Example of Using the AD_DD Package
Here is an example of using the AD_DD package to register a
flexfield table and its columns:
Though the use of AD_DD package does not require that the
table should exist first, it is always
better to create one and proceed further. Use the below
mentioned script to create the dummy
table. Use the APPS User ID to run the below mentioned
queries from TOAD or SQL*PLUS.
CREATE TABLE TEST_DESC ( RESOURCE_NAME VARCHAR2 (150),
RESOURCE_TYPE VARCHAR2 (100),
ATTRIBUTE_CATEGORY VARCHAR2 (40),
ATTRIBUTE1 VARCHAR2 (150),
ATTRIBUTE2 VARCHAR2 (150),
ATTRIBUTE3 VARCHAR2 (150),
ATTRIBUTE4 VARCHAR2 (150),
ATTRIBUTE5 VARCHAR2 (150),
ATTRIBUTE6 VARCHAR2 (150)
);