Tuesday, February 28, 2012

CUSTOM_TOP (JPL_TOP) Creation Steps in Oracle Apps (R12)

CUSTOM_TOP (JPL_TOP) Creation Steps in Oracle Apps (R12)
STEP 1:
This document gives the clear steps to create the JPL_TOP (CUSTOM_TOP) in R12 Oracle Application.  The following need to be created in R12 Oracle Application for JPL_TOP (CUSTOM_TOP).
SCHEMA NAME:       JPL
TOP NAME:                 JPL_TOP
Application:                  JPL Custom Application
Data Group:                 JPL Group
Request Group:             JPL Request Group
Menu:                            JPL_CUSTOM_MENU
Responsibility:               JPL Custom

STEP 2:
Make the directory structure for your JPL_TOP (CUSTOM_TOP) custom application files.

i)                   Login as user applmgr in linux,
ii)                Write a shell script program with following lines for directory creation,
[applmgr@jpl shell_script]$ vi jpl_top_creation.sh
cd $APPL_TOP
mkdir jpl
mkdir jpl/12.0.0
mkdir jpl/12.0.0/admin
mkdir jpl/12.0.0/admin/sql
mkdir jpl/12.0.0/admin/odf
mkdir jpl/12.0.0/sql
mkdir jpl/12.0.0/bin
mkdir jpl/12.0.0/reports
mkdir jpl/12.0.0/reports/US
mkdir jpl/12.0.0/forms
mkdir jpl/12.0.0/forms/US
mkdir jpl/12.0.0/lib
mkdir jpl/12.0.0/out
mkdir jpl/12.0.0/log


Run the Shell script program as following,
[applmgr@jpl shell_script]$ jpl_top_creation.sh
Now the directory structure was created by the above shell script program.
Screenshot:
STEP 3:
Put the Entry for JPL_TOP (CUSTOM_TOP) in $CONTEXT_FILE as following,
[applmgr@jpl appl]$ echo $CONTEXT_FILE
/u01/oracle/VIS/inst/apps/VIS_jpl/appl/admin/VIS_jpl.xml
[applmgr@jpl appl]$ vi $CONTEXT_FILE

Put the Entry as following  and Save the $CONTEXT_FILE,
<AU_TOP oa_var="s_autop" oa_type="PROD_TOP" oa_enabled="FALSE">/u01/oracle/VIS/apps/apps_st/appl/au/12.0.0</AU_TOP>
<JPL_TOP oa_var="s_jpltop" oa_type="PROD_TOP" oa_enabled="FALSE">/u01/oracle/VIS/apps/apps_st/appl/jpl/12.0.0</JPL_TOP>
Screenshot:
STEP4:
Stop all middle tier services in R12 Oracle Application.
[applmgr@jpl appl]$ cd $ADMIN_SCRIPTS_HOME
[applmgr@jpl scripts]$ adstpall.sh  apps/apps
Database and Listener should be in up status, then Run the Autoconfig as following,
[applmgr@jpl appl]$ cd $ADMIN_SCRIPTS_HOME
[applmgr@jpl scripts]$ adautocfg.sh  apps/apps





Screenshot:
Once this autoconfig completed successfully we need to check whether environment variable set correctly for $JPL_TOP.  Open the new terminal and check the $JPL_TOP (CUSTOM_TOP) as following,
[oracle@jpl ~]$ su - applmgr
Password:
[applmgr@jpl ~]$ echo $JPL_TOP
/u01/oracle/VIS/apps/apps_st/appl/jpl/12.0.0
After this, Start all middle tier services by executing following,
[applmgr@jpl appl]$ cd $ADMIN_SCRIPTS_HOME
[applmgr@jpl scripts]$ adstrtal.sh  apps/apps
STEP5:
Create Tablespace for JPL_TOP  through sqlplus as sys user  by following,
SQL> create tablespace JPL datafile '/u01/oracle/VIS/db/apps_st/data/JPL01.dbf' size 500M;
Tablespace created.
STEP6:
Create new Database user for JPL_TOP through sqlplus as sys user by following,
SQL> create user JPL identified by jpl default tablespace JPL temporary tablespace temp1 quota unlimited on JPL;
User created.
Grant the following privileges to JPL user,
SQL> grant connect, resource to JPL;
Grant succeeded.
Connect the JPL user and check the User as following,
SQL> connect jpl/jpl
Connected.
STEP7:
Oracle database user need to be registered in Oracle Application, do the following for Oracle database user Registration,
Naviate to Security-->Oracle-->Register
Database User Name = JPL
Password = JPL
Privilege = Enabled
Install Group = 0
Description = JPL Custom Application User

Screenshot:
STEP8:
Oracle Schema need to be registered in Oracle Application, do the following for Schema Registration,
Login to Applications with System Administrator responsibility
Navigate to Application-->Register
Application = JPL Custom Application
Short Name = JPL
Basepath = JPL_TOP
Description = JPL Custom Application








Screenshot:
STEP9:
Add Application to a Data Group as following,

Navigate to Security-->Oracle-->DataGroup

Data Group = JPL Group
Description = JPL Custom Data Group
Click on "Copy Applications from" and pick Standard data Group, then add the following entry.
Application = JPL Custom Application
Oracle ID = APPS
Description = JPL Custom Application





Screenshot:
STEP10:
Create custom request group.
This will act as a placeholder for any custom reports we wish to make available for the Custom Responsibility.
Navigate to Security-->responsbility-->Request

Group = JPL Request Group
Application = JPL Custom
Code = JPL
Description = JPL Custom Requests

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

Screenshot:
STEP11:
Create custom menu.
This will act as a placeholder for any menu items we wish to make available for the Custom Responsibility. We will create two menus, one for Core Applications and one for Self Service.
Navigate to Application-->Menu

Menu = JPL_CUSTOM_MENU
User Menu Name = JPL Custom Application
Menu Type =
Description = JPL Custom Application Menu

Seq = 10
Prompt = Submit Concurrent
Submenu = Concurrent
Function =
Description = Submit Concurrent


Seq = 20
Prompt = Concurrent
Submenu = Concurrent Menu - Application Developer GUI
Function =
Description = Concurrent

Screenshot:

**********************************************************Menu = JPL_CUSTOM_MENU_SSWA
User Menu Name = JPL Custom Application SSWA
Menu Type =
Description = JPL Custom Application Menu for SSWA
Seq = 10
Prompt = Oracle Application Manager
Submenu =  OAM Workflow Manager
Function =
Description =
Screenshot:

STEP12:
Create new responsibility. One for Core Applications and One for Self Service (SSWA)
Navigate to Security-->Responsibility-->Define

Responsibility Name = JPL Custom
Application = JPL Custom
Responsibility Key = JPLCUSTOM
Description = JPL Custom Responsibility
Available From = Oracle Applications
Data Group Name = JPL Group
Data Group Application = JPL Custom
Menu = JPL Custom Application
Request Group Name = JPL Request Group



Screenshot:

Responsibility Name = JPL Custom SSWA
Application = JPL Custom
Responsibility Key = JPLCUSTOMSSWA
Description = JPL Custom Responsibility SSWA
Available From = Oracle Self Service Web Applications
Data Group Name = JPL Group
Data Group Application = JPL Custom
Menu = JPL Custom Application SSWA
Request Group Name = JPL Request Group





Screenshot:
STEP13:
Now you can add responsibility to user

Navigate to Security-->User-->Define









Screenshot:
Add JPL Custom responsibility to users as required.

STEP14:
Other considerations:
You are now ready to create your database Objects, custom Reports, Forms, Packages, etc.

Create the source code files in the JPL_TOP directory appropriate for the type of object. For example forms would be located in $JPL_TOP/forms/US or package source code in $JPL_TOP/admin/sql
For example,
Database Objects, such as tables, indexes and sequences should be created in the JPL schema, and then you need to

a) Grant all privilege from each custom data object to the APPS schema.
For example:
login as JPL user
grant all privileges on myTable to apps;
b) Create a synonym in APPS for each custom data object
For example:
login as APPS user
create synonym myTable for JPL.myTable;



**********************************************************************************************************************
Author
J. Lingesan
**********************************************************************************************************************

Steps to recover Applications context file if it is corrupted or deleted accidentally

The Applications context file can be retrieved by running the adclonectx.pl script.
To retrieve the Applications tier context file,

  • perl /clone/bin/adclonectx.pl retrieve
  • On being prompted for the context file to be retrieved, select the option of retrieving the
          Applications tier context file that has been lost and retrieve it to the default location specified
          by the script.
The above command can be used only when INST_TOP the is still intact. In case that has also been lost
accidentally, the Applications tier context file may be retrieved as follows:
  • Execute the following command on the Database tier: perl /appsutil/clone/bin/adclonectx.pl retrieve
  • On being prompted for the context file to be retrieved, select the option of retrieving the
          Applications tier context file that has been lost.
  • While confirming the location for the context file, set it to any existing directory with write permission.
  • Once the context file has been generated in the specified location, move it to the location specified
          for the context file in the context variable 's_contextfile'.
To retrieve the Database tier context file,
  • Execute the following command on the Database tier: perl /appsutil/clone/bin/adclonectx.pl retrieve
  • On being prompted for the context file to be retrieved, select the Database tier context file and
          retrieve it to the default location specified by the script.