Oracle Apps 11i: Creating a custom application

How to create custom applications in Oracle environment 11i (White Paper):

Subject: Step By Step Guide to Creating a Custom Application in Applications 11i
      Doc ID:     216589.1     Type:     WHITE PAPER
      Modified Date :     16-MAY-2008     Status:     PUBLISHED


*************************************************************
This article is being delivered in Draft form and may contain
errors.  Please use the MetaLink "Feedback" button to advise
Oracle of any issues related to this article.
*************************************************************

PURPOSE
-------
This note describes the basic steps needed to setup a Custom Application within Oracle Applications 11i.

*******************************************************************************
*******************************************************************************
IMPORTANT NOTE - This note is retained for reference only.  You should now
                 follow Note 270519.1 "Customizing an AutoConfig Environment"
                 to make changes to your system configuration
*******************************************************************************
*******************************************************************************


Creating a Custom Application in Applications 11i
-------------------------------------------------

Custom Applications are required if you are creating new forms, reports, etc.  
This allows you to segregate your custom written files from the standard seeded functionality that
Oracle Applications provide.    
Customizations can therefore be preserved when applying patches or upgrades to your environment.


1)  Make the directory structure for your custom application files.
    cd $APPL_TOP
    mkdir xxmz
    mkdir xxmz/11.5.0
    mkdir xxmz/11.5.0/admin
    mkdir xxmz/11.5.0/admin/sql
    mkdir xxmz/11.5.0/admin/odf
    mkdir xxmz/11.5.0/sql
    mkdir xxmz/11.5.0/bin
    mkdir xxmz/11.5.0/reports
    mkdir xxmz/11.5.0/reports/US
    mkdir xxmz/11.5.0/forms
    mkdir xxmz/11.5.0/forms/US
    mkdir xxmz/11.5.0/$APPLLIB
    mkdir xxmz/11.5.0/$APPLOUT
    mkdir xxmz/11.5.0/$APPLLOG

2)  Add the custom module into the environment

 Apply ADX.E.1 and add the entry to topfile.txt as a standard product top entry (follow the existing model in the file)
 Customised environment variables can be added to AutoConfig by using the filename specificed by s_custom_file,
 which is then called from the APPSORA.env file.

 If using Forms Listener Servlet, you may also need to add $CUSTOM_TOP to formsservlet.ini in $APACHE_TOP/Jserv/etc


3)  Create new tablespace for database objects
 create tablespace xxmz datafile '/emea/oracle/visuk09/visuk09data/xxmz.dbf' size 10M
default storage(initial 10k next 10k)

4)  Create schema
 create user xxmz identified by xxmz
 default tablespace xxmz
 temporary tablespace temp
 quota unlimited on xxmz
 quota unlimited on temp;
 grant connect, resource to xxmz;

5)  Register your Oracle Schema.
 Login to Applications with System Administrator responsibility
 Navigate to Application-->Register
 Application = xxmz Custom
 Short Name  = xxmz
 Basepath    = xxmz_TOP
 Description = xxmz Custom Application

6)  Register Oracle User
 Naviate to Security-->Oracle-->Register
 Database User Name = xxmz
 Password           = xxmz
 Privilege          = Enabled
 Install Group      = 0
 Description        = xxmz Custom Application User

7)  Add Application to a Data Group
 Navigate to Security-->Oracle-->DataGroup
 Data Group  = xxmzGroup
 Description = xxmz Custom Data Group
 Click on "Copy Applications from" and pick Standard data Group, then add the following entry.
 Application = xxmz Custom
 Oracle ID   = APPS
 Description = xxmz Custom Application

8)  Create custom request group
 This will act as a placeholder for any custom reports we wish to make available for the
 Custom Responsibility (which is defined at a later stage)
 Navigate to Security-->responsbility-->Request
 Group       = xxmz Request Group
 Application = xxmz Custom
 Code        = xxmz
 Description = xxmz Custom Requests

 We will not define any requests to add to the group at this stage, but you can add some now if required.

9)  Create custom menu

 This will act as a placeholder for any menu items we wish to make available for the
 Custom Responsibility (which is defined at a later stage)
 We will create two menus, one for Core Applications and one for Self Service.

 Navigate to Application-->Menu
 Menu           = xxmz_CUSTOM_MENU
 User Menu Name = xxmz Custom Application
 Menu Type      = <leave blank>
 Description    = xxmz Custom Application Menu
 Seq         = 100
 Prompt      = View Requests
 Submenu     = <leave blank>
 Function    = View All Concurrent Requests
 Description = View Requests

 Seq         = 110
 Prompt      = Run Requests
 Submenu     = <leave blank>
 Function    = Requests: Submit
 Description = Submit Requests

 Menu           = xxmz_CUSTOM_MENU_SSWA
 User Menu Name = xxmz Custom Application SSWA
 Menu Type      = <leave blank>
 Description    = xxmz Custom Application Menu for SSWA


10)  Create new responsibility.   One for Core Applications and One for Self Service (SSWA)
 Navigate to Security-->Responsibility-->Define
 Responsibility Name       = xxmz Custom
 Application               = xxmz Custom
 Responsibility Key        = xxmzCUSTOM
 Description               = xxmz Custom Responsibility
 Available From            = Oracle Applications
 Data Group Name           = xxmzGroup
 Data Group Application    = xxmz Custom
 Menu                      = xxmz Custom Application
 Request Group Name        = xxmz Request Group

 Responsibility Name       = xxmz Custom SSWA
 Application               = xxmz Custom
 Responsibility Key        = xxmzCUSTOMSSWA
 Description               = xxmz Custom Responsibility SSWA
 Available From            = Oracle Self Service Web Applications
 Data Group Name           = xxmzGroup
 Data Group Application    = xxmz Custom
 Menu                      = xxmz Custom Application SSWA
 Request Group Name        = xxmz Request Group

11)  Add responsibility to user
 Navigate to Security-->User-->Define
 Add xxmz Custom responsibility to users as required.

12)  Other considerations
 You are now ready to create your database Objects, custom Reports, Forms, Packages, etc

 Create the source code files in the xxmz_TOP directory appropriate for the type of object.  
 For example forms would be located in $xxmz_TOP/forms/US or package source code in
 $xxmz_TOP/admin/sql for example.

 Database Objects, such as tables, indexes and sequences should be created in the xxmz schema,
 then you need to
 a) Grant all privilege from each custom data object to the APPS schema.
 For example :  logged in as xxmz user
 grant all privileges on myTable to apps;

 b) Create a synonym in APPS for each custom data object
 For example :  logged in as APPS user
 create synonym myTable for xxmz.myTable;

 Other database objects, such as views and packages should be created directly in the APPS schema.


RELATED DOCUMENTS
-----------------
Oracle Applications Release 11i Developers Guide.
Oracle Applications Release 11i System Administrators Guide.

Additional Search Words
-----------------------
11i  custom customisation core apps

Leave a Reply