The ability to define multiple organizations and the relationships among them within a single installation of Oracle Applications is called multi organization or Multi-org. Multi Org is the future used to store the data of multiple organizations in a single Database instance.
Basic Business Needs:

  • Use a single installation of any Oracle Applications product to support any number of organizations, even if those organizations use different sets of books.
  • Define different organization models.
  • Support any number of legal entities within a single installation of Oracle Applications.
  • Secure access to data so that users can access only the information that is relevant to them.
  • Sell products from a legal entity that uses one set of books and ship them from another legal entity using a different set of books, and automatically record the appropriate intercompany sales by posting intercompany accounts payable and accounts receivable invoices.
  • Purchase products through one legal entity and receive them in another legal entity.

Basically the different entities in multi-org are:

  • Business Group (BG)
  • Sets of Books (SOB)
  • Legal entities (LE)
  • Operating units (OU)
  • Inventory organizations (IO)

Organization Structure Example:

Business Group (BG):
The business group represents the highest level in the organization structure, such as the consolidated enterprise, a major division, or an Operation Company. A BG is used to secure human resources information like generation of employee numbers, generation of applicants, position flex fields, Job flexfields, Grade Flex field, Fiscal year, etc.
Set of Books (SOB):
A SOB is a collection of Currency, Calendar and Chart of Accounts (COA). Oracle General Ledger is used to secure Journal transactions (such as journal entries and balances) of a company by set of books. For each organization of the Business Group we need to define a set of Book. A company which operates in separate cities or separate line of businesses may separate their accounting transactions across units through separate Set of Books. A Business Group can have one or more set of Books.
Legal entities (LE):
A legal entity represents a legal company for which you prepare fiscal or tax reports. You assign tax identifiers and other legal entity information to these types of organizations. Separate Legal Entities may share same set of Books.

Operation Unit (OU):
An operating unit is a division or a Business unit of the legal entity. At this level we are going to maintain the information of sub‐ledgers. We are going to maintain the ledgers at Legal Entity level. Receivable, Payables, Assets, etc. are comes under Operation Unit level. Each user sees information only for their operating unit. Responsibilities are linked to a specific operating unit by the MO: Operating Unit profile option.

Inventory organizations (IO):
An inventory organization represents an organization for which you track inventory transactions and balances, and manufactures or distributes products. Examples include manufacturing plants, warehouses, distribution centers, and sales offices. The following products and functions secure information by inventory organization: Inventory, Bills of Material, Engineering, Work in Process, Master Scheduling/MRP, Capacity, and purchasing receiving functions. To run any of these products or functions, you must choose an organization that is classified as an inventory organization.

 Find the URL of the Application in the database:

Option 1:

select HOME_URL from icx_parameters;

Option 2:

Select PROFILE_OPTION_VALUE
From   FND_PROFILE_OPTION_VALUES
WHERE  PROFILE_OPTION_ID =
       (SELECT PROFILE_OPTION_ID
        FROM FND_PROFILE_OPTIONS
        WHERE PROFILE_OPTION_NAME =’APPS_FRAMEWORK_AGENT’)
        AND LEVEL_VALUE=0;

 

What is Function?

A function is a part of an application’s functionality that is registered under a unique name for the purpose of assigning it to, or excluding it from, a responsibility.

What are the Function Types?

There are two types of functions:
a] Form (Form Function)

  •   A form function (form) invokes an Oracle Forms form.
  •   Form functions appear in the Navigate window and can be navigated to.

b] Subfunction (Non–Form Function)

  •   A non–form function (subfunction) is a securable subset of a form’s functionality: in other words, a function executed from within a form.
  •   Subfunctions are frequently associated with buttons or other graphical elements on forms.

Forms vs. Subfunctions?

  • Forms appear in the Navigate window and can be navigated to. Subfunctions do not appear in the Navigate window and cannot be navigated to.
  • Forms can exist on their own. Subfunctions can only be called by logic embodied within a form; they cannot exist on their own.
  • A form as a whole, including all of its program logic, is always designated as a function. Subsets of a form’s program logic can optionally be designated as subfunctions if there is a need to secure those subsets.

Advantages of Form Functions

If you want to open the Form in different modes without creating the copies, we can create a Form Function and pass the parameters based on the requirement. The parameter, which is passed in the form function, must be already defined in the form while designing the Form. A menu can be assigned to more than one Responsibility. If you want to restrict some of the Forms from a particular responsibility, we can include Form Function of those Forms in Menu Exclusions of the Responsibility.

What are the standard function types?

  • FORM                                    — Oracle Applications form functions are registered with a type of FORM.
  • SUBFUNCTION                   — Subfunctions are added to menus
  • JSP                                        — JSP functions
  • WWW                                     –PL/SQL functions
  • WWK                                      –PL/SQL functions that open a new window
  • WWR or WWL                      –used for some products in the Oracle Self–Service Web Applications
  • WWJ                                      –OA Framework JSP portlet
  • SERVLET                              –Servlet functions
  • DBPORTLET                        –Database provider portlet
  • WEBPORTLET                    –Web provider portlet
Oracle Application has a file system as shown in the below picture for the APPL_TOP Directory.

GL_TOP: (APPL_TOP/GL/11.5.0) is one of the Module Directory of Oracle Applications. It consists of a release directory (i.e. 11.5.0) under which Forms, Reports, BIN, LIB, SQL, etc.,
Forms/US: Forms directory to store all .FMX (Compiled) Form files of a specific module.
Reports/US: Reports directory to capture all the .RDF (Compiled) Report files of a specific module directory. US is a language specific directory.
BIN: Contains executable code of concurrent programs written in a programming language such as C, Pro*C, Fortran, SQL *LOADER or an operating system script.
LIB: Contains compiled object code (.OBJ files) of your concurrent programs.
SQL: Contains concurrent programs written in SQL*Plus and PL/SQL scripts.
HTML: Contains all .HTML, .HTM web files.
LOG: Contains all .LOG files of concurrent programs.
OUT: Contains output files from concurrent program.
Message: Holds your application message files for Message dictionary.

SELECT DECODE (fpov.level_id,
               10001, ‘Site’,
               10002, ‘Appl’,
               10003, ‘Resp’,
               10004, ‘User’,
               ‘Unkown’
              ) “Level”,
       DECODE (fpov.level_id,
               10002, fa.application_name,
               10003, fr.responsibility_name,
               10004, fu.user_name,
               ‘-‘
              ) “Location”,
       fpov.profile_option_value “Value”
  FROM apps.fnd_profile_option_values fpov,
       apps.fnd_profile_options fpo,
       apps.fnd_profile_options_tl fpot,
       apps.fnd_responsibility_tl fr,
       apps.fnd_user fu,
       apps.fnd_application_tl fa
 WHERE fpov.profile_option_id = fpo.profile_option_id
   AND fpo.profile_option_name = fpot.profile_option_name
   AND fpov.level_value = fr.responsibility_id(+)
   AND fpov.level_value = fu.user_id(+)
   AND fpov.level_value = fa.application_id(+)
   AND fpot.user_profile_option_name = ‘<Profile Option Name>‘;