Professional Documents
Culture Documents
oracleApps11iTutorial (v2) PDF
oracleApps11iTutorial (v2) PDF
oracleApps11iTutorial (v2) PDF
com
About Me
This is a complete Technical guide for Oracle Apps Beginners. The tutorial starts with
basics of ERP and slowly gets into oracle apps 11i concepts. All the concepts are
explained with practical scenarios and with simple examples. The exercises will be given
at the end of every chapter. Each & every step in the exercises is explained clearly with
screenshots. For people who are all interested in technical or programming field in
oracle apps, this material will be helpful in taking their first step towards oracle ERP. If
anything found wrong in this material please mail to my personal id, So that it helps me
to improve this material.
2
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Contents
Chapters Topic Page No.
3
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 1 Overview of ERP
4
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Entities Identified:
Dealer VENDOR
Shop Keeper OWNER
People Buying items CUSTOMER
Store Room INVENTORY
Stage 1
Daily Job:
5
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Stage 2
After a year you business is developed & you are becoming a whole sale dealer.
Changes in Business
Many branches.
Hire People for working.
Maintaining a small database for the business.
Transportation services.
Daily Job:
Stage 3
Changes in business
Workload in business
Now the owner of the business cannot go to sites (all over the world) daily.
He has to maintain a big database for his business to run continuously.
Need to manage inventory activities (how much is sold, received items etc.).
Need to maintain the employees and their benefits (Needs HR team).
Need to calculate accounting (profit & loss for worldwide business).
Asset management.
6
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Therefore, to maintain & control these kinds of situations Oracle Corporation have
created huge software known in the category of ERP (Enterprise Resource Planning) as
Oracle Applications.
To integrate all these activities and to run the business ERP is necessary.
7
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Identifying the modules
Modules Description
General Ledger (GL) In banks they will be maintaining a Balance Sheet for credits &
debits. In the same way oracle General Ledger module keep
tracking of all transactions in the business.
Inventory (INV) It is the place where your item stocks are stored. All the
Physical items/goods coming in and going out will be tracked. Thus
inventory is heart of the business.
Purchasing (PO) This module manages all the purchasing order that deals with
business. This has information about Requisition, Po, Supplier,
Shipment details of the order.
Order Management (OM) It is required to manage & control the sales order fulfillment. It
manages the order book, order entry, ATP(Available to Promise)
etc.
Account Payables (AP) It handles all the payment you have to pay to the vendors. Oracle
Payables allows invoice entry, payment entry, and payment voiding
in open accounting periods.
Account Receivables (AR) It allows you to create invoice, answers invoice related customer
queries, it runs AR reports, records and schedule collection
activities. Simply, it summarizes all the payments you need to get
from the customer.
Human Resource (HRMS) This module deals with HR activities (Related to employees etc.)
Including recruiting performance management, learning,
compensation, benefits, payroll, time management, and real time
analytics.
Asset Management It deals with the administrative cost related to business like
electricity, maintenance of building,, furniture’s etc.
Projects This module deals with the cost associated with the projects.
Which includes project costing, billing, time & expenses etc.
Work in Progress (WIP) Oracle Work in Process is a complete production management
system. Supports discrete, project, repetitive, assemble-to-
order, work order-less, or a combination of manufacturing
methods. Inquiries and reports give you a complete picture of
transactions, materials, resources, costs, and job and schedule
progress.
Cost Management Helps you effectively manage and control your cash cycle. It
provides comprehensive bank reconciliation and flexible cash
forecasting.
8
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 2 Oracle Application Technical Terms
Approver
The “external” supplier ships the goods directly to the 3rd Party customer and confirms
the shipment through the use of an Advanced Shipment Notice (ASN).
You should take a note, Oracle uses this ASN to record a receiving transaction into
inventory followed by an immediate logical shipping transaction. From these
transactions, conveyance of title takes place and the customer can be invoiced and the
supplier’s invoice can be processed.
The ATP support provides the ability to allocate from existing inventory or backorder
from expected inventory and obtain an estimated availability time once it has been
ordered for each order item.
Buyer
Buyer is a person who purchases finished goods, typically for resale, for a firm,
government, or organization.
Back Order
Backorder is a distribution term that refers to the status of items on a purchase order
in the event that some or all the inventory required to fulfill the order is insufficient to
satisfy demand.
9
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Customer
Change Order
Charge of Accounts
The account structure used to record transactions and maintaining account balance in
GL.
Deliver-to-Location
Drop Ship
General Ledger
Maintains all accounting transactions i.e. Balance sheet (Contains credits, debits to
calculate profit & loss).
I-Procurement
One of the oracle self- servicing application for ordering goods or services.
10
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Item Type
Invoice
Item
A physical quantity.
Notification
A electronic message that is involved when a specific business condition or rule is met.
Payment terms
Rules used to calculate the due date & payment date for payment of a transaction based
upon invoice date.
Pay site
Preparer
11
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Purchase Order (PO)
Pack Slip
A pack slip denotes what should be "packed" for a delivery. It may consolidate several
orders to a route, truck or customer.
In Short, a pack slip facilitates the method in which orders are consolidated/ organized
and shipped to a customer.
Pick Slip
A pick sheet denotes what items to pull from inventory. it too may be derived from
consolidated orders.
Receiver
Requestor
12
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Requisition
Responsibility
It is a pre-defined set of menus, forms & form functions assigned to each user.
Supplier/Vendor
Sales Order
The sales order, sometimes abbreviated as SO, is an order received by a customer from
a business. A sales order may be for products and/or services.
13
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 3 Overview of ERP Functional Flow (Financial Modules)
Note: This functional flow is not complete process. For understanding purpose I have
explained in simple way for beginners.
14
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 4 Essential Tools in Oracle
Oracle Reports
Oracle Forms
Workflow Builder
Toad
SQL Developer
SQL Navigator
Discoverer Reports
XML/BI Publisher
ADI: Application Desktop Integrator
Putty
Oracle reports
Oracle Reports is a tool for developing reports against data stored in an Oracle
database.
Oracle Forms
Oracle Forms is a tool (somewhat like Visual Basic in appearance, but the code inside
is PL/SQL) which allows a developer to quickly create user-interface applications
which access an Oracle database in a very efficient and tightly-coupled way.
Workflow Builder
Business process involves exchange of information between entities within and with
entities outside the organization. In e-business some these messages are
communicated through internet. For efficient exchange of information between
processes., you need to implement an efficient workflow management system. This is
done with the help of workflow builder.
15
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Toad
SQL Developer
You can use Oracle SQL Developer to connect, run, and debug PL/SQL.
SQL Navigator
Database Applications of our age are becoming exceedingly complex, so are the
databases that support them. Though all information related to meta-data can be
retrieved from dictionary tables of Oracle™, SQL Navigator provides all this in one
IDE.
Apart from getting all necessary information from Dictionary, SQL Navigator also
provides the user with an interactive view of data in all tables.
Code debugging tools offer a great deal of ease in debugging and tuning back-end
stored programs.
Discoverer Reports
16
A Guide to Oracle Apps 11i – by Dinesh Kumar S
XML/BI Publisher
Oracle XML Publisher is a template-based publishing solution delivered with the Oracle
E-Business Suite.
At runtime, XML Publisher merges the custom templates with the concurrent request
data extracts to generate output in PDF, HTML, RTF, EXCEL (HTML), or even TEXT for
use with EFT and EDI transmissions.
Oracle ADI combines a spreadsheet’s ease of use with the power of Oracle Applications,
to provide true desktop integration during every phase of your accounting cycle. You can
create budgets, record transactions, add assets, reconcile inventory, and run financial
statements and inventory reports all without leaving your spreadsheet.
Putty
PuTTY is a terminal emulator application which can act as a client for the SSH, Telnet,
rlogin, and raw TCP computing protocols.
17
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Please zoom out for viewing it.
18
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 5 Application Architecture
Form Server
Report Server
HTTP Server
Concurrent Processing
Server
Discoverer Server
Administration
Server
In this model, various servers are distributed among multiple levels, or tiers.
Tier - is a logical grouping of services, may be on single machine or spread across more
than one physical machine.
19
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Database tier
Which supports and manages the Oracle database?
Application Tier
This supports and manages the various Applications components, and is sometimes known
as the middle tier.
Desktop Tier
This provides the user interface via an add-on component to a standard web browser
Node - is referred as Machine, Each tier may consist of one or more node and each node
can potentially have more than one tier.
Each tier may consist of one or more nodes, and each node can potentially accommodate
more than one tier.
On the database tier, there is increasing use of Real Application Clusters (RAC) ,
where multiple nodes support a single database instance to give greater availability and
Scalability.
The connection between the application tier and the desktop tier can operate
successfully over a Wide Area Network (WAN). This is because the desktop and
application tiers exchange a minimum amount of information, for example field value
comparison
Differences
20
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Desktop Tier
Application Tier
21
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 6 Oracle Application Technology Layer
The Oracle Applications technology layer lies between the Oracle Applications
technology stack and the Oracle Applications product-specific modules.
The Applications DBA product provides a set of tools for administration of the Oracle
Applications file system and database. AD tools are used for installing, upgrading,
maintaining, and patching the Oracle Applications system.
The Oracle Common Modules can be used to develop inquiry applications for the HTML-
based Applications, without the need for any programming. They allow storage of
language-translated labels for all the attributes on a transaction page, thus assisting
with the provision of support for multiple languages.
22
A Guide to Oracle Apps 11i – by Dinesh Kumar S
3. Oracle Applications Utilities (AU)
The Applications Utilities (AU) component is used to maintain the Oracle Applications
system.
AU hosts a collection of files copied from other products. This allows generating on-site
classes of files such as Forms and reports.
Generating forms or reports may require access to shared PL/SQL libraries, so these
files are copied to AU_TOP as well.
Acting as a system integration hub, Oracle Workflow can apply business rules to control
objects and route them between applications and systems.
Oracle Alert (ALR) allows you to email system notifications to users when an exception
or event has occurred.
XML Publisher utilizes the XSL-FO standard to transform XML data into a formatting
object (FO).
Chapter 6
23
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 7 File Systems
An Oracle Applications Release 11i system utilizes components from many Oracle
products. These product files are stored below a number of key top-level directories on
the database and application server machines.
24
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Application Directory Structure
Data Directory
Oracle application supports linking program using tool from 2nd / 3rd version of DB.
25
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Application Directory
It contains:
Product Directory
26
A Guide to Oracle Apps 11i – by Dinesh Kumar S
COMN Directory
Admin
It is default location for concurrent manager log and output directories.
Html
OA_HTML environmental settings points to HTML Directory.
Oracle application based sign-on screen & HTML files are installed here.
Also it contains files like JSP,XML etc.
Java
JAVA_TOP points to java directory. This contains oracle application JAR files and ZIP
files.
Portal
This contains portal files. Portal is a webpage that provide access to post install task
that is necessary for application
Temp
Used for caching oracle products like reports.
Util
This contains JDE, JRE & ZIP utility.
Script
This contains application tier control scripts such as adstrtal.sh & adstpall.sh which
are located in sub directory.
27
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 8 Overview of Oracle Application Developer User Guide
Coding Standards
Setting up Application Framework
PLSQL coding Standard
Menus & Function Security
User Profiles
Flex fields
Concurrent Processing
1. Coding Standards
If you want to build custom application code that integrates with and have same look
and feel as oracle application, these standards should be followed.
The libraries & procedures that are packed with oracle application follow these
standards.
It includes:
1. Starting forms
a) TEMPLATE
b) APPSTAND
2. PLSQL Libraries
3. Development Standards
28
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Shared Objects
It relies on object referencing capabilities i.e. it allow object to reuse across master
forms.
APPSTAND Form
TEMPLATE Form
FND Menu
Property Clause
These are set of attributes that can be applied to almost any oracle form object.
29
A Guide to Oracle Apps 11i – by Dinesh Kumar S
2. Setting up Application Framework
This includes particular directory structures where you place reports, forms, programs
and other objects, as well as environment variables and application names that allow
Oracle Application Object Library to find your application components.
30
A Guide to Oracle Apps 11i – by Dinesh Kumar S
f) Initializing Parameters:
i. Use default instead of ‘:=’
g) Formatting PLSQL Code:
i. Within package define private variable first & then private procedure
then public procedures.
h) Avoid RAISE_APPLICATION_ERROR.
i) Use END_MESSAGE for exceptions.
Function
Types of functions:
i. Form function
It invokes oracle form developer forms.
ii. Sub-Function:
A function executed within a form. These functions are
associated with graphical elements or buttons.
iii. Non- Form Function:
It is also called as self service function. Some functions include
Other type of code like java, html, jsp etc on a menu
Responsibility.
Menu
Menu Entry:
31
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Responsibility
It defines application user current privileges like functions that user can access,
concurrent program user can run & application DB account connected to data group.
Form is special class of functions that differ from sub function in following ways:
1. FND_Function.Test
Tests particular function is currently accessible or not.
2. FND_Function.Query
Tests function is accessible and return information.
3. FND_Function.Execute
It executes form function that is attached only to forms.
4. FND_Function.User_function_name
It returns user function name.
5. FND_Function.Current_Form_Function
It returns function name with current form which is called.
32
A Guide to Oracle Apps 11i – by Dinesh Kumar S
5. User Profiles
It is a set of changeable options that affect the way when application runs.
AOL treats user profile as hierarchy where in user at top and next is responsibility.
FND_PROFILE
1. FND_Profile.Put
Puts value to specified user profile.
2. FND_Profile.Get
Gets current value for user profile option or NULL if data does not exits.
3. FND_Profile.Value
It is similar to GET except it returns value as a function result.
33
A Guide to Oracle Apps 11i – by Dinesh Kumar S
6. Flexfield
Types of Flexfield
a. Key Flexfield (KFF)
b. Descriptive Flexfield (DFF)
Oracle application uses KFF to represent Intelligent Keys with unique ID numbers.
ID numbers requires only one column whereas intelligent key requires multiple columns.
Key Flexfield
Key flexfield represents an intelligent key that uniquely identifies an application entity.
Each KFF has a name and specific set of valid values (Value sets).
Descriptive Flexfield
It’s a additional information, not stored in application or strictly for reference when
viewed on screen.
i. To uniquely identify an application entity with an intelligent key. Where key can
be a multi part & each one have some value.
34
A Guide to Oracle Apps 11i – by Dinesh Kumar S
7. Concurrent Processing
1. Reports
2. Batch Runs
3. Longer Transaction
Separate program that control background processing (i.e. Request) that are:
a. Initiated on demand by user
b. Scheduled
In EBS concurrent manager (CM) schedules the work, and concurrent request (CR), do
the work.
Concurrent Managers
35
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Internal Concurrent Manager
Standard Manager
Its function is to run any reports and batch jobs, which have not been defined in any
other project manager.
It includes inventory manager, CRP inquiry manager and receivables tax manager.
Concurrent Request
1. Pending
2. Running
3. Completed
4. Inactive
36
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Pending: Request waiting to be run.
Running: Request is processing.
Completed: Request is finished processing.
Inactive: Request cannot be run.
SQL script
SQL *Loader Program
Java Program
Oracle Report
PLSQL Program (Stored Procedure / Packages)
UNIX shell script
Pro *C
Perl
Value Sets
Need:
We don’t want the user to insert junk values into all fields, so oracle application
validates whether correct data is entered in fields.
Types of Validation
1) None
2) Independent
3) Dependent
4) Table
5) Special
6) Pair
7) Tran stable Independent
8) Tran stable Dependent
37
A Guide to Oracle Apps 11i – by Dinesh Kumar S
None
Validation is minimal.
Independent
The data input is based on previously defined list of values.
Dependent
The data input is checked against a defined set of values.
Table
The data input is checked against values in a table.
Special
The data input is checked against a flex-field.
Pair
The data input is checked against two flex-field specified range of values.
Translatable independent
The data input is checked against previously defined list of values.
Translatable dependent
The data input is checked against defined set of values.
You should never make these types of changes (old value set to new value set) because
you will corrupt your existing key flex-field combinations data:
. Independent to Dependent
. Dependent to Independent
. None to Dependent
. Dependent to Table
. Table to Dependent
38
A Guide to Oracle Apps 11i – by Dinesh Kumar S
. Translatable Dependent to Translatable Independent
Lookups
39
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 9 Apps Login Screen
40
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Then you can see the apps log in page. Enter the username & password.
41
A Guide to Oracle Apps 11i – by Dinesh Kumar S
If the username & password is valid, the user is redirected to a page where he/she can
see their responsibilities assigned to them by system administrator.
42
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now click on to application developer responsibility. The window will be redirected to
application developer screen.
43
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Choose any one of the function of your choice.
44
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Note: Do not close this window. If you close, the application session will be terminated.
45
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now the application developer Navigator Form is opened.
Now click any option in navigator that will open its related form.
46
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Switching Responsibility
47
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now the responsibility is changed to ‘inventory’.
48
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Oracle Application Toolbar
49
A Guide to Oracle Apps 11i – by Dinesh Kumar S
50
A Guide to Oracle Apps 11i – by Dinesh Kumar S
51
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 10 Oracle Metalink & eTRM
Metalink:
For technical assistance metalink will be useful. It also contains forums you can post
your query & any registered used will reply for your query.
URL: http://metalink.oracle.com/
52
A Guide to Oracle Apps 11i – by Dinesh Kumar S
After logging into metalink the following page you can see:
53
A Guide to Oracle Apps 11i – by Dinesh Kumar S
For quicker access uses quick find.
54
A Guide to Oracle Apps 11i – by Dinesh Kumar S
For advance search click “Advance Search” tab.
55
A Guide to Oracle Apps 11i – by Dinesh Kumar S
You can even search based on Bug number, date modified etc. or bug details.
56
A Guide to Oracle Apps 11i – by Dinesh Kumar S
For updated or new oracle patches details go to “Patches & Updates” tab.
57
A Guide to Oracle Apps 11i – by Dinesh Kumar S
eTRM:
For technical related documents like user guide, Table related information, AOL details
you can refer etrm. This is a place you can download all technical references related to
oracle apps 11i, 12i.
URL: http://etrm.oracle.com/
58
A Guide to Oracle Apps 11i – by Dinesh Kumar S
When you press the link the following page is shown:
59
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Let us go to the link 11.5.10.
60
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now let use search some tables related to “purchase” module.
61
A Guide to Oracle Apps 11i – by Dinesh Kumar S
At left side you can see the list of tables. For viewing those table details click the table
name.
62
A Guide to Oracle Apps 11i – by Dinesh Kumar S
At this page you can see the relation of PO_HEADERS_All tables with other tables.
It shows Primary & foreign key relation.
63
A Guide to Oracle Apps 11i – by Dinesh Kumar S
When we press “po.po_headers_all” , you can see the column details.
64
A Guide to Oracle Apps 11i – by Dinesh Kumar S
65
A Guide to Oracle Apps 11i – by Dinesh Kumar S
66
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 11 Designing Custom Application
Note: For Knowledge purpose you can go through this custom application creation
process.
(As I have not worked with customization, this below customization part alone is
referenced from internet.)
67
A Guide to Oracle Apps 11i – by Dinesh Kumar S
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.
Apply ADX.E.1 and add the entry to topfile.txt as a standard product top entry .
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
68
A Guide to Oracle Apps 11i – by Dinesh Kumar S
3) Create new tablespace for database objects
create tablespace FZ datafile '/u01/oracle/visdata/fz.dbf' size 10M default
storage(initial 10k next 10k)
4) Create schema
create user fz identified by fz
default tablespace fz
temporary tablespace temp
quota unlimited on fz
quota unlimited on temp;
grant connect, resource to fz;
69
A Guide to Oracle Apps 11i – by Dinesh Kumar S
8) 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 = FZ Request Group
Application = FZ Custom
Code = FZ
Description = FZ Custom Requests
We will not define any requests to add to the group at this stage, but you can add
some now if required.
70
A Guide to Oracle Apps 11i – by Dinesh Kumar S
10) Create new responsibility. One for Core Applications and One for Self
Service (SSWA)
Navigate to Security-->Responsibility-->Define
Responsibility Name = FZ Custom
Application = FZ Custom
Responsibility Key = FZCUSTOM
Description = FZ Custom Responsibility
Available From = Oracle Applications
Data Group Name = fzGroup
Data Group Application = FZ Custom
Menu = FZ Custom Application
Request Group Name = FZ Request Group
71
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Database Objects, such as tables, indexes and sequences should be created in the FZ
schema, then you need to
a) Grant all privilege from each custom data object to the APPS schema.
1. For example : logged in as FZ user
i. grant all privileges on myTable to apps;
b) Create a synonym in APPS for each custom data object
1. For example : logged in as APPS user
i. create synonym myTable for fz.myTable;
Other database objects, such as views and packages should be created directly in the
APPS schema.
72
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Database User Creation & Registration
73
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Add Application to Data Group
74
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 12 Application Object Library (AOL)
Role of AOL
75
A Guide to Oracle Apps 11i – by Dinesh Kumar S
AOL Responsibilities
System Administrator
Application Developer
Application Developer
76
A Guide to Oracle Apps 11i – by Dinesh Kumar S
System Administrator
77
A Guide to Oracle Apps 11i – by Dinesh Kumar S
78
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Apps Component Structure
79
A Guide to Oracle Apps 11i – by Dinesh Kumar S
APPLICATION SECURITY MANAGEMENT
1. Creating a user.
2. Assigning Responsibilities to the user.
Responsibility
Components of Responsibilities
80
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Define a new responsibility by ‘System administrator’ responsibility.
Navigation:
System Administrator Security Define (responsibility)
81
A Guide to Oracle Apps 11i – by Dinesh Kumar S
1. Data Group
2. Menu
It is hierarchical list of various application forms that are displayed in navigator window.
It is mandatory.
82
A Guide to Oracle Apps 11i – by Dinesh Kumar S
3. Function Security
Function:
It is a set of code that is executed only if function name is present in list maintained
within responsibility.
Types of Function
i. Form Function
ii. Non Form Function
Form Function:
Exclusions are used against a responsibility to limit its menu and function access
privileges.
It is optional.
83
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise 1 Responsibility with Mandatory Component (Menu & Data Group)
Description:
Instruction:
84
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Log in as system administrator. In Function Navigator select “Define” under
Responsibility.
85
A Guide to Oracle Apps 11i – by Dinesh Kumar S
The responsibility form opens. Now assign a name of your choice. Here I have given
responsibility name as “BSL ADMIN” .
Responsibility key name can be user’s choice. Here I have given the name as
“BSL_ADMIN_KEY”.
86
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Effective date is the date from and to which this responsibility is active.
Default from date is sysdate. You can make this responsibility effective from date of
your choice.
87
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now assign standard “Data Group” to the responsibility.
88
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Choose data group Application as “AOL”.
89
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now Choose “Menu”. Here I have chosen existing menu “Administrator Menu”.
90
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now save the responsibility you have created.
91
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now define a user and assign this responsibility.
92
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Type the password twice.
93
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now assign responsibility “BSL ADMIN” to the user.
94
A Guide to Oracle Apps 11i – by Dinesh Kumar S
IF Effective dates are given that responsibility or user is active / valid for those days
only. If it is blank it will be active till administrator deactivates it.
95
A Guide to Oracle Apps 11i – by Dinesh Kumar S
96
A Guide to Oracle Apps 11i – by Dinesh Kumar S
97
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise 2 Overview of Inventory Responsibility Menu Tree
Description:
Now we will check out the existing Inventory in detail. Here we are going to analyze
what are all the responsibility components that are assigned to inventory responsibility.
Instruction:
98
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 1: Log in as administrator. Navigate to “ Responsibility /define “
99
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step2: Press “F11” for query mode and to search a responsibility press “Ctrl + F11”.
100
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 3: Now we will analyze the “Data Group”. The Data group assigned to this
responsibility is
“Standard” and application is “Inventory”.
101
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now navigate to ORACLE/DataGroup.
102
A Guide to Oracle Apps 11i – by Dinesh Kumar S
The following application are assigned to that data group.
103
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Data groups will be created by DBA people. So no need t worry. Just know the concepts.
104
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 4: Now coming to “Menu” the default menu assigned to inventory responsibility is
“INV_NAVIGATE”.
105
A Guide to Oracle Apps 11i – by Dinesh Kumar S
The menu structure as below.
106
A Guide to Oracle Apps 11i – by Dinesh Kumar S
At left side you can see the order in which the functions are arranged. At right side you
can see the menu detail info.
Now you can see transaction is a menu & it has sub menu “Receiving” within it.
107
A Guide to Oracle Apps 11i – by Dinesh Kumar S
You can verify this in the main page (or) in Inventory Responsibility Navigator window.
108
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Inventory Navigator window.
109
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now query that transaction menu.
110
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now let us see the menu tree.
111
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now let us check out the functions associated with the menu ”INV_TRANSACTIONS”
112
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Summary
Responsibility: Inventory.
Menu: INV_NAVIGATE
Menu: INV_NAVIGATE
Sub Menu: INV_TRANSACTIONS
Now we are going to see the functions associated with sub menu.
113
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 5: Now navigate to Application / Functions.
114
A Guide to Oracle Apps 11i – by Dinesh Kumar S
115
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Go to “Property” tab to view the property of the function & its type.
116
A Guide to Oracle Apps 11i – by Dinesh Kumar S
If you go to “Form” tab you can see the complete details about the form functions.
Now you can see this particular “Form Function” is attached to the form (.fmx)
“Inventory Transactions”.
117
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise 3 Creating Customized menus for Customized Responsibility
Description:
Now we are going to create customized menu for a customized responsibility from the
existing defined menus in oracle application.
Every business have some business flow of their choice. For this exercise consider we
are going to create a normal user with limited functionality.
So, I have taken selected functions from the existing oracle application menu, to create
customized responsibility as below.
Instructions:
Prerequisites:
Assume Forms & Form Functions are already created by oracle apps DBA.
118
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Remember we should always follow the below Function Security flow:
119
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 1: Creating Customized Menu's
120
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Menu Details
121
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now search for the existing oracle application Form function.
122
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now menu tree is build after saving the menu.
123
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Menu Name: DINESH APPL DEV
User Menu Name: Dinesh_Appl_Dev
Function: Concurrent Programs (Developer Mode)
124
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Menu Tree:
125
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Menu Name: DINESH GL
User Menu Name: Dinesh_GL
Function: Open and Close Period
126
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Menu Tree:
127
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 2: Create a Main Menu by assigning these above created menus as sub menus.
128
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Menu Tree:
129
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 3: Now create a responsibility & assign the above defined main menu.
130
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 4: Now create a user & assign this responsibility.
131
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 5: Logging in as user DINI_USER
132
A Guide to Oracle Apps 11i – by Dinesh Kumar S
The home page as below:
133
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now press system Admin responsibility : User.
134
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise 4 Menu & Function Exclusion
Description:
Excluding a menu item from a responsibility will exclude all the menus and functions
nested within that menu item.
Excluding a function from a responsibility will exclude all occurrences of that function
Throughout the menu structure of the responsibility.
Instructions:
135
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Menu and Function Exclusion
136
A Guide to Oracle Apps 11i – by Dinesh Kumar S
137
A Guide to Oracle Apps 11i – by Dinesh Kumar S
System Admin:
138
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Application Developer:
139
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Menu Exclusion:
In the menu exclusion Type select the type & name of function or menu.
140
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now I have excluded the “Application Developer” Menu.
Type: Menu
Name: Dineshs_Appl_Dev
Now Log in as the user & check out u can access “Application Developer” Responsibility.
141
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Log in again & check out.
142
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Function Exclusion:
Type: Function
Name: Users
Now the menu is not excluded only the function within the menu is excluded.
Since we have only one function within the Menu, the whole menu is disabled.
143
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 13 AOL Concurrent Processing & Program
Major Features
Online Requests
We can submit requests from forms & concurrent manager takes care of work online.
Automatic Scheduling
Oracle AOL automatically schedules request based on priority and compatibility on
submitting.
Concurrent managers
Helps in managing, controlling all concurrent program transactions.
Simultaneous queuing
It helps in conflict one request with other i.e. avoids deadlock.
144
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Creating Concurrent Program
Note: Request Group & Request set will be covered in later part of the chapters.
145
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise 5 Defining a Concurrent program (Default Parameters)
Description:
We are going to define a concurrent program in this exercise. Remember if we are going
to create a procedure of function default parameters to retrieve the status of the
concurrent program. The parameters as follows:
For example:
Create or replace procedure sample (Errbuf out varchar2, Retcode out varchar2)
As
Begin
// body of the document
End;
Instruction:
Create a procedure.
Create an executable.
Attach this executable to the concurrent program (defining Concurrent pg.)
Create a request group & assign this to the user responsibility.
Now run the request.
View the status.
146
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 1: Creating a simple procedure to update the description of the user in
Apps.FND_USER table.
Navigation: Concurrent/Executable
147
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Executable Details:
148
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 3: Defining a concurrent program.
149
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 4: Now we need to define a request group & assign that to a responsibility of the
user who runs this request.
150
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 5: To the existing responsibility assign the created requested group.
151
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 6: Submit the request.
152
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now you can view the status of the request you have submitted as below.
153
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise 6 Defining a Concurrent program (with user parameters)
Description:
We are going to define a concurrent program with user parameter other than the
mandatory parameters. Here the concept is same as above exercise, but slightly varies
in defining a parameter for concurrent program. We need to create a value set for the
parameter & attach to it.
Instructions:
Create a procedure.
Create an executable.
Create a value set.
Attach this executable to the concurrent program (defining Concurrent pg.)
Now attach the value set to the parameter for validation.
Create a request group & assign this to the user responsibility.
Now run the request.
View the status.
154
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Procedure:
Executable:
155
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Value set:
Navigation:
156
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Values in value set:
157
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Entering values for validation:
158
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Concurrent Program:
159
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Defining Parameters:
160
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Defining Request group:
161
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Responsibility:
162
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Submit Request:
163
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Press Submit new request button.
164
A Guide to Oracle Apps 11i – by Dinesh Kumar S
When selecting the request name a pop up comes, that’s the “parameter” window to
substitute the user name.
Parameter:
Press “Ok”
165
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Submit the request:
Status:
Successfully completed.
166
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Expected Result:
167
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise 7 Concurrent program with report executable
Description:
In this exercise we are going to create a report as executable and attach it to the
concurrent program. All the procedures & steps for creating concurrent program is
same but when passing parameters to the reports some points to be noted i.e. token
name. The name in the parameter form of the report should be same as token name in
the parameter form in apps screen.
Instructions:
First place the created report in the reports folder in apps data structure.
Then create an executable.
Define a concurrent program & attach the executable to it.
Set the parameter along with the token name (same as parameter names in report
.rdf file)
Create a request set & submit the request.
168
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 1: Create a report and place it in following directory in apps file system.
Location: APPL_TOP/Module_name/11.5.0/Reports
Suppose if I am creating a report for purchasing module I need to place the report in
following location:
APPL_TOP/PO/11.5.0/Reports/Dini_PO_report.rdf
169
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Report name: Dini_PO_report.rdf
Application: Purchasing
Executable:
170
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Concurrent Program:
171
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Parameters
172
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Parameter form in report
Note: The Concurrent parameter “Token Name” and the “user parameter” should be
same.
173
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now save the concurrent program & run the request.
PO_RELEASE_NUM is at bottom of layout it is not shown in screen shot.
174
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Create a request group.
Assign this request group to the responsibility the user is going to execute
the concurrent program.
175
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Submit Request:
176
A Guide to Oracle Apps 11i – by Dinesh Kumar S
177
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Status:
Note:
P_CONC_REQUEST_ID (mandatory)
178
A Guide to Oracle Apps 11i – by Dinesh Kumar S
This parameter is linked with Concurrent Request ID of concurrent program.
179
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 14 AOL Table Relations
Forms
Form Functions
Menus
Responsibilities
User
Note:
In this chapter I have covered only main tables. For other tables please refer eTRM.
All the table description is referred from eTRM.
180
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Tables Description
FND_FORM Fnd_Form stores information about your registered application
forms.
FND_FORM_FUNCTIONS Fnd_Form_Functions stores information about function
grouping in forms.
Menus:
Tables Description
FND_MENUS Fnd_Menus lists the menus that appear in the Navigate
Window.
FND_MENU_ENTRIES Fnd_Menu_Entries stores information about individual
entries in the menus in FND_MENUS.
Responsibility:
Tables Description
Fnd_Responsibility stores information about responsibilities.
FND_RESPONSIBILITY Each row includes the name and description of the responsibility,
the application it belongs to, and values that identify the main
menu, and the first form that it uses.
User:
Tables Description
FND_USER Fnd_User stores information about application users
FND_USER_RESP_GROUPS Responsibilities assigned to application users
181
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Data Group:
Tables Description
FND_DATA_GROUPS Fnd_Data_Groups stores information about different data
groups
FND_DATA_GROUP_UNITS Fnd_Data_Group_Units stores information about ORACLE
database
accounts associated with various applications under different
data groups
Concurrent:
Tables Description
FND_CONCURRENT_PROCESSORS Fnd_Concurrent_Processors stores information about
immediate (subroutine) concurrent program libraries.
Each row includes the name and description of the
library.
FND_CONCURRENT_PROCESSES Fnd_Concurrent_Processes stores information about
concurrent managers. Each row includes values that
identify the ORACLE process, the operating system
process, and the concurrent manager
(QUEUE_APPLICATION_ID and
CONCURRENT_QUEUE_ID).
FND_CONCURRENT_REQUESTS Fnd_Concurrent_Requests stores information about
individual concurrent requests.
FND_CONCURRENT_PROGRAMS Fnd_Concurrent_Programs stores information about
concurrent programs. Each row includes a name and
description of the concurrent program.
FND_EXECUTABLES Fnd_Executables stores information about concurrent
program executables.
182
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Request:
Tables Description
FND_REQUEST_GROUPS Fnd_Request_Groups stores information about report
security groups.
FND_REQUEST_GROUP_UNITS Fnd_Request_Group_Units stores information about
individual reports and groups within each report security
group.
FND_REQUEST_SETS Fnd_Request_Sets stores information about report sets.
FND_REQUEST_SET_STAGES A request set is composed of one or more stages.
Information about each stage is stored in
Fnd_Request_Set_Stages.
FND_RUN_REQUESTS Fnd_Run_Requests stores information about running
reports within a report set. Each row includes values that
identify the running request, the parent request, the
request set, and information for printing the report.
Application:
Tables Description
FND_APPLICATION Applications registered with Oracle Application Object Library.
183
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Primary-Foreign Key Relations
For people who don’t have access to eTRM, I have given the relations from the eTRM
link.
Note: You can find foreign key relations between columns only for the topics we
have discussed.
Responsibility
Table: FND_RESPONSIBILITY
Data Group
Table: FND_DATA_GROUP_UNITS
184
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Request Group
Table: FND_REQUEST_GROUP
User
Table: FND_USER_RESP_GROUPS
Concurrent
Table: FND_CONCURRENT_REQUESTS
185
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Applications
Table: FND_APPLICATION
Relation Diagram
Fnd_Responsibility Fnd_User_Resp_Group
Responsibility_id
Application_id Responsibility_Application_id User_id
186
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 15 Overview of Flexfield Concepts
Flexfield Types
187
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Key Flexfield
188
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Descriptive Flexfield
Features of flexfields
Application customization.
Use of “Intelligent Keys” – composed of combination of segment values.
Value validations.
Customizing data fields.
189
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Flexfield in Oracle Application
190
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Note:
No. of columns allocated for flexfields.
KFF – 30 Segments
DFF – 15 Attributes
For KFF we can view only enabled segments in table. For example, consider
“PO_Headers_All” table below.
191
A Guide to Oracle Apps 11i – by Dinesh Kumar S
192
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Global_Attribute
Attributes are not used in tables for business, as these attributes are reserved for
future purpose by Oracle Corporation.
193
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise 8 Creating accounting Flexfield Structure
Description:
Now we are going to create a flexfield structure. Let us consider Accounting Flexfield
setup in GL. Before creating the structure we need to know some basic & essential
terms. They are as below.
Accounting Flexfield
Segment Separator
Cross-Validate Segments
Freeze Flexfield Definition
Flexfield Qualifiers
Segment Qualifiers
Structure
Freeze Rollup groups
Allow dynamic insert
Accounting Flexfield:
Segment Separator:
Segment Separator characters are used to separate different segment values with any
conflict.
Cross-Validate Segments:
Select the Cross-Validate Segments check box if you want to cross-validate multiple
segments using cross-validation rules
194
A Guide to Oracle Apps 11i – by Dinesh Kumar S
If we freeze the flexfield we cannot modify any values of the segment.
You must freeze and compile your flexfield definition before you can use your flexfield.
Flexfield Qualifiers:
The flexfield qualifier identifies the user customized segments, such that it ensures all
key segments required for application is defined or not.
Segment Qualifiers:
Structure:
Rollup groups are used to create summary accounts for reporting purposes.
We can enter new combination of segment values using flexfield value from a foreign
key form.
Instructions:
195
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 1: Log in as “GL Super User”.
Navigation:
196
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Creating “value set” for Natural account.
197
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 3: Adding values to value sets created.
Navigation: Setup/Validation/Values
198
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 4: Create flexfield structure for accounting flexfield.
Navigation: Setup/Financials/Flexfield/Key/Segments.
First Query the Flexfield title as “Accounting Flexfield”. Then add new record.
199
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now click to define segments.
200
A Guide to Oracle Apps 11i – by Dinesh Kumar S
For Company_BS:
For Account_NA:
201
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 5: Enabling other options.
Segment Separator:
You can define any of the 3 separator or a custom one. I am going to define a custom
one.
202
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Save it & “Compile” Flexfield definition.
203
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise 9 Modifying Flexfield Definition
Description:
As we know once we freeze the values of flexfield segments we cannot modify or make
any changes in it. Now we are going to see how to modify the flexfield definition.
Instructions:
204
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 1: Create a new value set as below and set the values as below.
205
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 2: Open the Accounting Flexfield “Ac_Flexfield_GL” and unfreeze the “Freeze
Flexfield Definition” checkbox.
While unfreezing it you will get the following pop up message as below.
206
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 3: Now go to the segment tab and change the value set of
segment
207
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 4: Enable checkbox of “Freeze Flexfield Definition” and compile the Accounting
Structure “Ac_Flexfield_GL”.
208
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Compile the Flexfield Definition.
209
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise 10 Enabling Descriptive Flexfield (DFF)
Description:
Now we are going to enable a DFF segment in “GL Super User” Responsibility.
DFF appears as single character & enclosed as [ ].
Instruction:
210
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 1: Navigate: Purchase Order/Purchase orders
211
A Guide to Oracle Apps 11i – by Dinesh Kumar S
You can see the GL Accounting Calendar form as below.
212
A Guide to Oracle Apps 11i – by Dinesh Kumar S
As Diagnostics is directly associated with Apps DB schema, you need to provide “Oracle
Apps Database password” to examine the form.
When the password is correct you can the following window, the details of DFF will be
populated in the pop up window.
213
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 3: To enable this DFF switch to “Application Developer” responsibility (or) to
“System Administrator” Responsibility. Here I am switching to System admin.
You will be seeing the below form and Query the DFF.
Query Details:
214
A Guide to Oracle Apps 11i – by Dinesh Kumar S
You can see the DFF details as below.
215
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Fill in the following details as below.
Number: 5
Name: Dinesh Fin calendar
Window Prompt: Dinesh Fin calendar
Column: Attribute 5
Value set: Optional (As I haven’t defined any not using it)
216
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now freeze the Flexfield definition by enabling the checkbox “Freeze Flexfield
Definition”.
217
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Next step is to “Compile” the Flexfield definition by clicking .
218
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now click the “DFF”.
You can see the DFF is enabled and the following pop window appears.
As we have free zed the Flexfield definition we need to unfreeze it & make the
changes.
219
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now save & freeze it again.
220
A Guide to Oracle Apps 11i – by Dinesh Kumar S
You can also make “Context” text field as mandatory by enabling check box of
“Required” as below.
221
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now compile the Flexfield definition.
222
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 16 Oracle User Profile Options
User profile affects the way in which user runs the application. AOL provides plenty of
choices to set user interface with the business application.
In short profile option is used to control & manage transactions & activities in oracle
application.
User High
Responsibilit
y
Application
Low
Site
User Level:
This option value affects a single application user directly.
Responsibility Level:
This affects all the application users in the responsibility.
Application level:
This directly affects the application.
Site Level:
It affects all the application that run is apps.
223
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Need of User Profile: A practical scenario to understand profile option.
Scenario 1:
Organization
In the above scenario you can see for the organization there are 4 different
departments. Every department has its own user. These users have access to their
respective departments. Suppose consider a situation when organization has to update
10,000 users responsibility. In this case if the profile option is set this job is done at
very short time. This is one simple situation, like this we can use profile option for more
complex situations.
224
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Scenario 2:
Consider the above diagram in scenario 1. Every department has users and user from
finance department cannot access details of quality department and vice versa.
Suppose consider this access security can be applied to apps users. That is when the
user logs into the apps and the profile option is set for the user, the user can be
redirected to any web page.
For example,
User A Admin
User B HR
http://apps.DineshSoft.com:8011/OA_HTML/ADMIN.jsp?OAFunc=OAHOMEPAGE
225
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Similarly, when USER B logs in.
http://apps.DineshSoft.com:8011/OA_HTML/HR.jsp?OAFunc=OAHOMEPAGE
226
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise 11 Custom Profile Option for Responsibility
Description:
We are going to create profile option for employees working in Car manufacturing
industry say Company like ford, GM etc. In this industry employees are classified on the
basis of grades. We are going classify the employees as below.
Grade Description
A0 Associate Engineer
A1 Sr. Engineer
A2 Chief Mechanical Engineer
As per the company policy when an employee buys a ford car, they will be given some
discounts based on their grade. The discounts are below.
A0 7%
A1 10%
A2 20%
Assume the Ford Company has implemented oracle apps 11i. Now we are going to create
profile options for grades and assign this profile to the responsibility. Such that the
employee who comes under particular responsibility will get discounts.
Instructions:
227
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 1: Creating responsibility for grade “A0”.
228
A Guide to Oracle Apps 11i – by Dinesh Kumar S
In the same way create responsibility for grade “A1” & “A2”.
For “A2”.
229
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 2: Create “User” and assign above created responsibility.
230
A Guide to Oracle Apps 11i – by Dinesh Kumar S
In the same way create Users for grade “A1” & “A2”.
For “A2”.
231
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 3: Define Profile options for Discount (Switch to Application Developer
responsibility).
“Server” Type.
232
A Guide to Oracle Apps 11i – by Dinesh Kumar S
“Organization” type.
“Security” type
233
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Defining Profile option.
234
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 4: Profile option assignment (Switch to System Administrator Responsibility) for
above created responsibilities.
Click “Find”.
235
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Based on the below table assign the discount values.
Grade A0:
Grade A1:
236
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Grade A2:
Now when the employee buys a car from the company automatically they will get
discount on total car cost.
237
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise 12 Custom Profile Option for User
Description:
Now we are going to create profile option for user who already has profile option set
for his responsibility. In this exercise we are going to check the hierarchy of the user
profile levels.
Instructions:
238
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 1: Creating a new user.
239
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now we are going to set for a user.
240
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now I have set the discount % as “22” which is greater than responsibility discount %.
241
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Observation:
User High
Responsibility
Application
Low
Site
Here user has highest Priority/Preferences, such that it can override profile options
set to Responsibility, Application and Site.
Thus, in this exercise we have defied same profile option for responsibility & user with
different discount value, that is user value (20) > responsibility value (22). As user is at
top level its value (22) overrides responsibility value (20).
Therefore, employees SENTHIL.M will have Discount of 22% when he buys a car from
Dinesh motors.
242
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 17 Oracle Alerts
We all know about Exception handling in Java programming. In the same way oracle
alerts helps in exception handling & controlling.
Types of Alerts
Alerts in Business
243
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise 13 Creating Periodic Alert
Description:
We are going to create a periodic alert. These alerts can be triggered daily, weekly,
monthly or yearly at particular interval of time.
Note:
This alert is no were related with any DB transaction or tracking activity.
Periodic alert will notify or report the user regardless of any activity.
Instruction:
Define
Detail
Action
Set
Things to Remember:
244
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 1: Go to Responsibility “Alert Manager”.
245
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Creating Periodic Alerts involves 4 steps.
246
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Navigation: Oracle Alerts/ Define
247
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Set “frequency” for Periodic alert.
Frequency Description
On Demand Alert is check only when user specify.
On Day of the Month Alert is checked on monthly basis on the day you specify i.e.
14th day of every month.
On Day of the Week As above it checks alert on day of week.
Every N Calendar Days Checks alerts on every day a day calendar & does not skip
holidays.
Checks oracle alerts on every business days.
Every N Business Days 1 check on business day
2 Check on non-business days.
Every Day This is same as “Every N Calendar” and days field value as 1.
Every Other Day This is same as “Every N Calendar” and days field value as 2.
Every Business Day This is same as “Every N Business” and days field value as 1.
Every Other Business Day This is same as “Every N Business” and days field value as 2.
248
A Guide to Oracle Apps 11i – by Dinesh Kumar S
On Day of the Month
249
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Every Day
Now we are going to select “On Demand” frequency for this exercise.
250
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Select Query:
251
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Sample SQL Statements:
Employee:
Statement 1:
252
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Now for our exercise we are going to use the following “SQL Select Query”.
Columns
User_Id
User_name
End_Date
Description
Employee_Id
Email_Address
253
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Select Query:
SELECT User_Id,
User_name,
End_Date,
Description,
Employee_Id,
Email_Address
INTO
&id,
&name,
&date,
&desc,
&emp_id,
&email
FROM APPS.FND_USER
254
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Verifying SQL Statement:
255
A Guide to Oracle Apps 11i – by Dinesh Kumar S
After running the statement you can see the number of rows selected in note window.
1) Inputs
2) Outputs
3) Installation
256
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Inputs Tab:
Oracle alerts automatically displays inputs unless they are implicit inputs like.
We can enter default value for these implicit inputs with maximum of 240 characters.
As our query does not contain implicit inputs all details in input tab regions are empty.
Outputs Tab:
In this region oracle alerts displays outputs used in SQL select statement without “&”
and numbering format (999.99).
Also we can mention maximum number of characters an output variable can have.
We can check the “Check for Duplicates” check box to customize the combination of
SQL statement results.
257
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Installations Tab:
In installations tab region we can specify “Oracle ID” against which we can raise an
Oracle alert.
If oracle ID is not given, oracle alerts automatically checks alert against all installations
in database which owns this alert.
Check the “Enable” check box to run alert against any Oracle ID.
258
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Creating Alert Actions:
Types of Actions:
259
A Guide to Oracle Apps 11i – by Dinesh Kumar S
I. Message Action:
260
A Guide to Oracle Apps 11i – by Dinesh Kumar S
This is similar to sending a email from yahoo or gmail or hotmail or from Outlook
Express.
Similarly, please fill the message details in the alert details form.
261
A Guide to Oracle Apps 11i – by Dinesh Kumar S
As I haven’t configured the mail setups, I cannot show the complete process. So, I have
given what are all the details you need to specify in this form.
When every detail is filled, please save it & move to alert definition window to create
“Action Sets”.
262
A Guide to Oracle Apps 11i – by Dinesh Kumar S
II. Concurrent Program:
263
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Creating an Action Set:
After creating an alert action, we should include them in “action set” to perform alert
check.
264
A Guide to Oracle Apps 11i – by Dinesh Kumar S
The following window opens. Fill in the details required.
Members Tab:
265
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Inputs Tab:
Outputs tab:
266
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise 14 Creating an Event Alert
Description:
We are going to create an event alert. These alerts are fired or triggered in any
transaction change in oracle apps database. For example, if the customer pays for his
purchase order, an alert can be set to send information regarding this to the supplier.
Instruction:
267
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 1: Go to “Alert Manager” Responsibility to define an alert.
268
A Guide to Oracle Apps 11i – by Dinesh Kumar S
In the “Alert” form go to “Event tab” for defining event alert.
269
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 2: Fill the following details in form as below:
270
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 3: Write the following query in “Select Statement” text area.
b) Before running the SQL Statement, save your work by pressing the icon.
271
A Guide to Oracle Apps 11i – by Dinesh Kumar S
c) Now run the SQL statement by clicking the icon.
Step 5: Go to the alert details & fill in the default inputs values if necessary.
(Please refer the above exercise for steps to fill these alert details, action & action set
details.)
272
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise 15 Transferring & Deleting Alert Definitions
Description:
Transferring:
We can transfer an alert definition to another database or make a copy of existing
alert.
Delete:
We can permanently delete an existing alert whether it is disabled or enabled.
Instruction:
273
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise (15-a): Transferring alert
Before transferring the alert “Query” the alert already created by pressing F11.
Now press Ctrl+ F11. You can see the existing alert.
274
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 2: Now transfer the alert by navigating to the following.
Step 3: When you click “Transfer Alert”. You can see the details of alert in “Transfer
Alert Definition” Form.
275
A Guide to Oracle Apps 11i – by Dinesh Kumar S
When you are specifying the “Database” following points should be noted.
Source Alert:
SQL * Net V1
SQL * Net V2
Username/Password@t:testing:db1
Username/Password@db1
Destination Alert:
Alert: We can assign our own name (i.e. it’s like “save as” concept in document.).
276
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 4: As I do not have second instance for my apps application I am going to use the
same instance details in database.
277
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise (15-b): Deleting an alert
278
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 2: To delete this alert navigate to the following in alert form.
279
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 3: Now query this alert, to check it’s deleted or not.
280
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 18 Oracle FNDLOAD – Generic Loader
Note:
281
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Configuration file, Entity & Parameter Details:
FNDLOAD Modes:
282
A Guide to Oracle Apps 11i – by Dinesh Kumar S
BASE Syntax:
Method 1:
FNDLOAD
APPS/APPS_DB_PASSWORD
0Y
MODE
COFIGURATION_FILE -- full Location path
TARGET_TEXT_FILE -- full Location path
ENTITY
PARAMETER
Method 2:
FNDLOAD
APPS/APPS_DB_PASSWORD@HOST
0Y
MODE
COFIGURATION_FILE -- full Location path
TARGET_TEXT_FILE -- full Location path
ENTITY
PARAMETER
Explanation:
Keyword Description
FNDLOAD FND Generic loader Keyword
APPS Application
APPS_DB_PASSWORD Application DB password
0Y Concurrent Program Flags
MODE Upload (or) Upload_Partial (or) Download
COFIGURATION_FILE $FND_TOP/patch/115/import/file_name.lct
(.LCT) $PER_TOP/patch/115/import/ file_name.lct
TARGET_TEXT_FILE This file contains definition of entity that is migrated (the
(.LDT) name of the file is user’s choice).
ENTITY Type of object in oracle application
Parameter related to entity. These details are useful to
PARAMETER
migrate the entity faster.
283
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Steps to move entity from one instance to another:
FNDLOAD
APPS/APPS_DB_PASSWORD
0Y
DOWNLOAD
COFIGURATION_FILE
TARGET_TEXT_FILE
ENTITY
PARAMETER
FNDLOAD
APPS/APPS_DB_PASSWORD
0Y
UPLOAD
COFIGURATION_FILE
TARGET_TEXT_FILE
Note:
I have given example only for concurrent program. In the same manner you try it for
other oracle application entities.
284
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Syntax based on mode:
Mode 1: Download
FNDLOAD
APPS/APPS_db_PASSWORD
0Y
DOWNLOAD
CONFIGURATION_FILE
TARGET_TEXT_FILE
ENTITY
PARAMETER
FNDLOAD
APPS/dinesh123#
0Y
DOWNLOAD
$FND_TOP/patch/115/import/ afcpprog.lct
Dinesh_cp.ldt
PROGRAM
CONCURRENT_PROGRAM_NAME = “dini_demo_cp”
APPLICATION_SHORT_NAME = “FND”
_______________________________________________________________
285
A Guide to Oracle Apps 11i – by Dinesh Kumar S
_______________________________________________________________
Mode 2: Upload
FNDLOAD
APPS/APPS_db_PASSWORD
0Y
UPLOAD
CONFIGURATION_FILE
TARGET_TEXT_FILE
Example:
FNDLOAD
APPS/dinesh123#
0Y
UPLOAD
$FND_TOP/patch/115/import/ afcpprog.lct
Dinesh_cp.ldt
_______________________________________________________________
Mode 3: Upload_Partial
FNDLOAD
APPS/APPS_db_PASSWORD
0Y
UPLOAD_PARTIAL
CONFIGURATION_FILE
TARGET_TEXT_FILE
ENTITY
PARAMETER
Example:
FNDLOAD
APPS/dinesh123#
0Y
UPLOAD_PARTIAL
$FND_TOP/patch/115/import/ afcpprog.lct
Dinesh_cp.ldt
PROGRAM
CONCURRENT_PROGRAM_NAME = “dini_demo_cp”
APPLICATION_SHORT_NAME = “FND”
_______________________________________________________________
286
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Chapter 19 SQL *Loader
Architecture:
Log File
SQL LOADER
Discard File
Database
SQL *Loader reads data from data file and data information details from control file.
If any additional parameter required, it gets from parameter file. Then it loads data
into database.
287
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Input Files:
Control File:
Control File is a text file which contains DLL instructions. It also contains table
information how data will be loaded. The information’s includes table name, Column & its
data types, Delimiters etc. Thus control file helps for data loading process for SQL
loader.
The control file has 3 main sections with 2 mandatory & 1 optional sections in the
following order below.
c) Input data:
288
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Control File Syntax:
289
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Sample Control File:
Method 1:
Method 2:
290
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Method 4: File name & path as parameter in concurrent program.
'Dinesh.dat' content
Dinesh_motors_Ltd#111***dinesh*asdfgv$*cse$%29-AUG-07##
Dinesh_motors_Ltd#222***Vishnu*asdfgv$*ece$%29-AUG-07##
Dinesh_motors_Ltd#231***sri.pk*asdfgv$*eee$%29-AUG-07##
Dinesh_motors_Ltd#561***vinush*asdfgv$*civ$%29-AUG-07##
Dinesh_motors_Ltd#423***hima.k*asdfgv$*Bio$%29-AUG-07##
Dinesh_motors_Ltd#964***shovan*asdfgv$*Mec$%29-AUG-07##
1 19 21 25 30 40 42 45 53 55
Dinesh_motors_Ltd#111***dinesh*asdfgv$*cse$%29-AUG-07##
291
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Method 6: Skip Columns
Data File:
This files stores text data which is to be loaded into the database table.
A particular data file can be in fixed record format, variable record format or stream
record format.
If the data file is within control file then data is interrupted in stream record format
with default record terminator.
If all the records in data file are of same byte length then the file is in fixed file
format.
292
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Method 1: Loading data in fixed file format
293
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise 16 Upload Data Using SQL *Loader
Description:
We are going to upload data into table “employee” using SQL * Loader. In this exercise
we are going to see the basic method to upload the data.
Instruction:
Table Structure:
294
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 1: Create a table & check the table is empty.
295
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 3: Create a data file ‘dinesh.txt’ and save it in ‘C: \’.
Step 4: Now go to command prompt & type the following command as below.
Command Syntax:
296
A Guide to Oracle Apps 11i – by Dinesh Kumar S
For our exercise the command as:
Step 5: Check the log file to see data uploaded successfully or not.
297
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Log file content:
298
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 6: Now check out the data in table ‘employee’
In SQL *PLUS:
In TOAD:
299
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Exercise 17 Upload Data Using SQL *Loader – Options
Description:
We are going to ‘Append’ some more data in existing ‘employee’ table using SQL *Loader.
Also we are going to use some more additional loading options.
Instruction:
300
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 1: Check the existing records in table ‘employee’
301
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 3: Create a data file which contains records to be appended. Input some data’s
which do not meet loading criteria.
Defective record: 1
302
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 5: Check in ‘C: \’ the files created.
303
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 7: Open the ‘dinesh.log’ file to check all records are inserted successfully or not.
304
A Guide to Oracle Apps 11i – by Dinesh Kumar S
Step 8: Check the ‘employee’ table.
In SQL *PLUS:
In TOAD:
305
A Guide to Oracle Apps 11i – by Dinesh Kumar S
REFERENCES USEFUL LINKS
Appshosting: http://www.appshosting.com/
Oracle blobs:
http://erpstuff.com/
http://www.appsbi.com/what-is-oracle-apps-erp/
http://it.toolbox.com/
http://oracle.anilpassi.com/
306
A Guide to Oracle Apps 11i – by Dinesh Kumar S
307
A Guide to Oracle Apps 11i – by Dinesh Kumar S