Documentos de Académico
Documentos de Profesional
Documentos de Cultura
This chapter provides you with information you need to register tables to be used in Oracle Alerts and Flexfields with
Oracle Applications. We will be learning about Procedures in the AD_DD Package, Procedure
REGISTER_TABLE, Procedure REGISTER_COLUMN, Procedure DELETE_TABLE, Procedure DELETE_COLUMN
and Example of Using the AD_DD Package.
{mosgoogle}
Introduction
Though Oracle Applications comes with thousands of seeded database tables, there can be numerous applications in
which one might be required to create a custom table to be used. In most of the applications all you need is to create a
table in a schema and use it directly in your applications. Flexfields and Oracle Alert are the only features or products
that require the custom tables to be registered in Oracle Applications (Application Object Library) before they can be
used.
You register your custom application tables using a PL/SQL procedure in the AD_DD package.
Therefore you only need to register those tables (and all of their columns) that will be used with flexfields or Oracle Alert.
You can also use the AD_DD API to delete the registrations of tables and columns from Oracle 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. To alter a registration you should first delete the registration, and then re-register the
table or column. Remember, you should delete the column registration first, then the table registration. You should
include calls to the table registration routines in a PL/SQL script. Though you create your tables in your own application
schema, you should run the AD_DD procedures against the APPS schema. You must commit your changes for them to
take effect.
The AD_DD API does not check for the existence of the registered table or column in the database schema, but only
updates the required AOL tables. You must ensure that the tables and columns registered actually exist and have the
same format as that defined using the AD_DD API. You need not register views.
Procedures in the AD_DD Package
1. Procedure REGISTER_TABLE
2. Procedure REGISTER_COLUMN
3. Procedure DELETE_TABLE
http://www.exforsys.com Powered by Joomla! Generated: 15 February, 2006, 22:55
Free Training
4. Procedure DELETE_COLUMN
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
p_tab_type
http://www.exforsys.com Powered by Joomla! Generated: 15 February, 2006, 22:55
Free Training
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
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
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
p_next_extent
p_precision
p_scale
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)
);
BEGIN
AD_DD.REGISTER_TABLE ('FND','TEST_DESC','T');
END;
BEGIN
AD_DD.REGISTER_COLUMN ('FND', 'TEST_DESC','RESOURCE_NAME', 1, 'VARCHAR2', 150, 'Y', 'N');
AD_DD.REGISTER_COLUMN ('FND', 'TEST_DESC','RESOURCE_TYPE', 2, 'VARCHAR2', 100, 'Y', 'N');
AD_DD.REGISTER_COLUMN ('FND', 'TEST_DESC','ATTRIBUTE_CATEGORY', 3, 'VARCHAR2', 40, 'Y', 'N');
AD_DD.REGISTER_COLUMN ('FND', 'TEST_DESC','ATTRIBUTE1', 4, 'VARCHAR2', 150, 'Y', 'N');
AD_DD.REGISTER_COLUMN ('FND', 'TEST_DESC','ATTRIBUTE2', 5, 'VARCHAR2', 150, 'Y', 'N');
AD_DD.REGISTER_COLUMN ('FND', 'TEST_DESC','ATTRIBUTE3', 6, 'VARCHAR2', 150, 'Y', 'N');
AD_DD.REGISTER_COLUMN ('FND', 'TEST_DESC','ATTRIBUTE4', 7, 'VARCHAR2', 150, 'Y', 'N');
AD_DD.REGISTER_COLUMN ('FND', 'TEST_DESC','ATTRIBUTE5', 8, 'VARCHAR2', 150, 'Y', 'N');
AD_DD.REGISTER_COLUMN ('FND', 'TEST_DESC','ATTRIBUTE6', 9, 'VARCHAR2', 150, 'Y', 'N');
END;
{mosgoogle}
Do not forget to COMMIT after running the above steps.
The table is now ready to be used in Oracle Alerts or Flexfields.
Frequently asked questions
1. What is the use of AD_DD package?
2. Why do we need to register the table with oracle applications?
3. Will my table get deleted if I use Delete table procedure of AD_DD package?
4. Do I need to register all the columns of a table?
5. How can I see the code of AD_DD Package?