Receivables overview:

Accounts receivable is an asset account in the general ledger that documents money owed to a business by customers who have purchases goods or services on credit.
Accounts receivable can be contrasted with accounts payable, a liability account in the GL that documents money the business owes for the purchase of goods or services.
Accounts receivable, accounts payable and payroll are usually listed as the top three mission-critical business processes in a disaster recovery plan .

Receivables Workbenches:

Oracle Receivables provides four integrated workbenches that you can use to perform most of your day–to–day Accounts Receivable operations. You can use the Receipts Workbench to perform most of
your receipt–related tasks and the Transactions Workbench to process your invoices, debit memos, credit memos, on–account credits, chargebacks, and adjustments. The Collections Workbench lets you review customer accounts and perform collection activities such as recording customer calls and printing dunning letters. The Bills Receivable Workbench lets you create, update, remit, and manage your bills receivable.

Each workbench lets you find critical information in a flexible way, see the results in your defined format, and selectively take appropriate action. For example, in the Transactions Workbench, you can query transactions based on the bill–to or ship–to customer, currency, transaction number, or General Ledger date. You can then review financial, application, and installment information, perform adjustments, create a credit memo, or complete the transaction. All of the windows you need are accessible from just one window, so you can
query a transaction once, then perform several operations without having to find it again.

Receivables Setups in R12:
Overview of Setting Up:

During setup, you define business fundamentals such as the activities you process and their accounting distributions, your accounting structure, and various control features. Setup is also the time to define
comprehensive defaults that Receivables uses to make data entry more efficient and accurate. In addition, setup lets you customize Receivables to employ the policies and procedures that you use in your business.
You can set up Receivables a number of different ways. The following graphic shows the most complete setup scenario. If you use the Oracle Applications Multiple Organization Support feature to use multiple sets of books for one Receivables installation, please refer to the Multiple Organizations in Oracle Applications manual before proceeding. If you plan to use Oracle Cash Management with Oracle Receivables, additional setup steps are required.

Note: If you plan to use Multiple Reporting Currencies (MRC) with Receivables, additional setup steps are required. For more information, refer to the Multiple Reporting Currencies in Oracle Applications manual.

Related Product Setup Steps:

The following steps may need to be performed to implement Oracle Receivables. These steps are discussed in detail in the Setting Up sections of other Oracle product user guides.

Set Up Underlying Oracle Applications Technology 

The Implementation Wizard guides you through the entire Oracle Applications setup, including system administration. However, if you do not use the Wizard, you need to complete several other setup steps, including:

• performing system–wide setup tasks such as configuring concurrent managers and printers
• managing data security, which includes setting up responsibilities to allow access to a specific set of business data and complete a specific set of transactions, and assigning individual users to one or more of these responsibilities.
• setting up Oracle Workflow

General Ledger Setup Steps:

The following table lists steps and a reference to their location within the Applications Implementation Wizard (AIW).

  1. Define Chart of Accounts 
  2. Define Currencies 
  3. Define Calendars 
  4. Define Calendar Period Types 
  5. Define Ledger
  6. Assign Ledger to a Responsibility 


Define Chart of Accounts:
Define Segments: 
Navigation: General Ledger –> Setups –> Flexfields –> Key –> Segments.
Query With Accounting Flexfield and click on New.

Give your coa name and save.


Click on Segments.
Enter your segments names.


and save your work.

Assign Flexfield Qualifiers to Company and Accounting segments.
Select Company segment and then Click on Flexfield Qualifiers.
Select Balancing segment qualifiers and save.

 Select Accounting segment and then click on flexfield qualifiers.

Select Natural Account Segment and save.

Define Value sets:
Click on Value set.

Enter the value set Name and Size.


Save your work.

Like wise define value set for all reaming segments.
Assign Value sets to respective segments.


Save your Work.
Select Allow Dynamic inserts and Freeze Flexfield Defination and then click on Compile.

Wait until the following program are successfully completed.


Define Values:

Navigation: General Ledger –> Setups –> Flexfields –> Key –>Values.
Enter the below information and click on find button.


Enter the company values names and save your work.


Like wish define values for all reaming segments.

Define Currencies:
Navigation: General Ledger –> Setup –> Currencies –> Define.
Enter information and save.


Define Calendar Period Types:
Navigation: Setup –> Financials –> Calendars –> Types.
Enter the information and save.


Define Calendar:
Navigation: Setup –> Financials –> Calendars –> Accounting.



Save.
Define Ledger  :
See this post for how to define Ledger in R12.

Assign Ledger to a Responsibility:

Navigation: System Administrator –> Profile –> Systems.


Click on find.

Assign Ledger to GL Responsibility.


Save.

Oracle Inventory Setup Steps:

  • Define Operating Unit.
  • Define Inventory Organizations
  • Define Items 


Define Operating Unit:

See my blog how to define Operating unit in R12.

Define Inventory Organization:

Navigation: Inventory –> Setup –> Organizations –> Organizations.
Click on New.


Enter information in the required fields.


Save your work and click on othres.

click on Accounting information.


Enter the required information and save.


Click on Others and select the inventory information.


Under Inventory Parameters tab enter the following information.



Under Costing Information tab enter the following information.


Under Revision and Lot Serial And LPN enter the required information.


Under the other accounts tab enter the required information.

Save your work.

Define Items:
Navigation: Inventory –> Items –> Master items.
Enter the name and description.

Go to Tolls and click on copy from.

Enter Finished good and then click on Apply and done button.

Receivable Setups:

  • Define System Options
  • Define Transaction Flexfield Structure
  • Define Sales Tax Location Flexfield Structure
  • Define AutoCash Rule Sets
  • Define Receivables Lookups
  • Define Invoice Line Ordering Rules
  • Define Grouping Rules
  • Define Application Rule Sets
  • Define Payment Terms
  • Define AutoAccounting
  • Open or Close Accounting Periods
  • Define Transaction Types
  • Define Transaction Sources
  • Define Collectors
  • Define Approval Limits
  • Define Remittance Banks
  • Define Receivables Activities
  • Define Receipt Classes
  • Define Receipt Sources
  • Define Payment Methods
  •  Define Statement Cycles
  • Define System Profile Options
  • Define Salespersons
  • Define Customer Profile Classes
  • Define Customers
  • Define Remit–To Addresses
Define System Options: 
Define your accounting, discount, tax, and invoice system options to control how Receivables works. System options determine your accounting method, set of books, accounting flexfields, whether you use header or line–level rounding, and control the default operation of the AutoInvoice and Automatic Receipt programs.
System options also control how Receivables calculates tax on your transactions. You must specify a tax method, choose a Location Flexfield Structure, indicate whether to compound tax, select the address validation to use, and define tax defaults and rounding options. As you can set up your system to calculate Sales Tax, Value Added Tax, or Canadian Tax, we recommend that you carefully review the appropriate implementing tax essay before defining your system options.
Navigation: Receivables –> Setups –> System –> System Options.

Enter the required information in respective fields.


Define Transaction Flexfield Structure:

Transaction flexfields are descriptive flexfields that AutoInvoice uses to identify transactions and transaction lines. Receivables lets you determine how you want to build your transaction flexfield structure and what information you want to capture.

There are four types of transaction flexfields:

• Line Transaction Flexfield
• Reference Transaction Flexfield
• Link–To Transaction Flexfield
• Invoice Transaction Flexfield
You must define the Line Transaction Flexfield if you use AutoInvoice. You can use the Line Transaction Flexfield to reference and link to other lines because the Line Transaction Flexfield is unique for each
transaction line. AutoInvoice always uses the Line Transaction Flexfield structure for both the Link–to and Reference information when importing invoices. You must explicitly define the Link–to, Reference,
and Invoice Transaction Flexfield structures only if this information is to be displayed on a custom window.
Receivables gives you the option of displaying Invoice Transaction Flexfield information in the reference column of invoice lists of values.
Use the System Profile Option AR: Transaction Flexfield QuickPick Attribute to select the Invoice Transaction Flexfield segment that you want to display. For example, if you want to be able to reference the
order number for imported invoices when using an invoice list of values, you must assign the transaction flexfield segment that holds the order number to the AR: Transaction Flexfield QuickPick Attribute
profile option. The order number will now display in the reference column of invoice lists of values.
Line Transaction Flexfield:
Use columns INTERFACE_LINE_ATTRIBUTE1–15 and INTERFACE_LINE_CONTEXT to define the Line Transaction Flexfield. Line Transaction Flexfields are unique for each record in the interface table and therefore can be used as record identifiers.
Reference Transaction Flexfield:
Reference Transaction Flexfields have the same structure as the Line Transaction Flexfields.
Transactions 4 – 235 Reference Transaction Flexfields are used to apply a credit memo to an invoice or associate an invoice to a specific commitment. 
For example, to refer a credit memo to a specific invoice, use the REFERENCE_LINE_ATTRIBUTE1–15 and REFERENCE_LINE_CONTEXT columns of the credit memo to enter the Line Transaction Flexfield of the invoice. To refer an invoice to a specific commitment, use the REFERENCE_LINE_ATTRIBUTE1–15 and REFERENCE_LINE_CONTEXT columns of the invoice to enter the Line Transaction Flexfield of the commitment.
Link–To Transaction Flexfield:
Link–To Transaction Flexfields also have the same structure as the Line Transaction Flexfield. Use Link–To Transaction Flexfields to link transaction lines together in the interface table. For example, you might want to import tax and freight charges that are associated with specific transaction lines. If you want to associate a specific tax line with a specific transaction line, use the LINK_TO_LINE_ATTRIBUTE1–15 and LINK_TO_LINE_CONTEXT columns of the tax line to enter the Line Transaction Flexfield of the invoice.
Invoice Transaction Flexfields:
Create a new flexfield with a similar structure as the Line Transaction Flexfield, but only include header level segments. For example, if the Line Transaction Flexfield structure has four segments and the last two segments contain line level information, define your Invoice Transaction Flexfield using the first two segments only. Segments included in the Invoice Transaction Flexfield should be included in the AutoInvoice grouping rules.
Define Sales Tax Location Flexfield:
Receivables uses the customer shipping address to determine the sales tax rate on transactions for all customers in the country that you define in the Systems Option window as your home country. Proceed to the next step if you are not charging your customers tax based on their shipping address.
Following are the seeded Sales Tax Location Flexfield structures:
• Country
• State and City
• Province and City
• City
• Province
• State, County and City
Use the Key Flexfield Segments window to select the seeded Sales Tax Location Flexfield structure, or to set up a new structure, that you want Receivables to use to determine your sales tax rates and to validate
your customer addresses.
You can confirm that the required segments are enabled by navigating to the Segments Summary window. Navigate back to the Key Flexfield Segments window to freeze your flexfield structure by checking the
Freeze Flexfield Definition check box and then compiling the flexfield.
Note: When you define tax system options in the System Options window, use the list of values in the Location Flexfield Structure field to select the same Sales Tax Location Flexfield structure that you selected in the Key Flexfield Segments window.

Navigation: Receivables –> Setup –> Financials –> Flexfield –> Key –> Segments.

Query with Sales Tax Location Flexfield
 Enter the required information in respective filelds.


Save your work.
Like wise we can define other sales tax location flexfields,

Define AutoCash Rule Sets:

If you are using AutoCash, define your AutoCash rule sets before defining system parameters or customer profiles classes. AutoCash rules determine the sequence of application methods Receivables uses when applying receipts imported using AutoLockbox to open debit items.

Navigation: Receivables –> Setup –> Receipts –> Autocash rule sets.

Define Receivables Lookups:
Receivables provides several default lookups which are used throughout the application to provide validated default values and list of values choices. You can add or update these to customize your list of values and speed data entry. For example, you can define additional reasons for creating credit memos or enter the names of each freight carrier used by your business.

Navigation: Receivables –> Setup –> System –> Quickcodes –> Receivables.

Define lookups as you like.

Define Invoice Line Ordering Rules:

If you are using AutoInvoice, define invoice line ordering rules to specify how you want to order and number transaction lines after AutoInvoice groups them into invoices, debit memos, and credit memos. Receivables provides many attributes that you can use to define your line ordering rules.

Navigation: Receivables –> Setup –> Transactions –> Autoinvoice –> Line Ordering rule.

Define Grouping Rules:

If you are using AutoInvoice, define grouping rules to indicate how you want to group transaction lines imported by AutoInvoice. For example, to include specific transaction lines on a single transaction, certain attributes must be identical. Receivables provides many attributes that you can use to define your grouping rules.

Navigation: Receivables –> Setup –> Transactions –> Autoinvoice –> Grouping Rule.


Define Application Rule Sets:

Define Application Rule Sets to control how Receivables reduces the balance due for your open debit items when you apply payments using either the Applications window or Post QuickCash. You can define your own application rule sets, assign them to transaction types, and specify a default rule set in the System Options window.

Navigation: Receivables –> Setup –> Receipts –> Application Rule sets.

Define Payment Terms:

Define payment terms to determine the payment schedule and discount information for customer invoices, debit memos, and deposits. You can also define proxima payment terms to pay regular expenses such as telephone bills and credit card bills that occur on the same day each month and create split payment terms for invoice installments that have different due dates.

Navigation: Receivables –> Setup –> Transactions –> Payment terms.


Define AutoAccounting:

Define AutoAccounting to specify the general ledger accounts for transactions that you enter manually or import using AutoInvoice. AutoAccounting uses this information to create the default revenue, receivable, freight, tax, unearned revenue, unbilled receivable, finance charges, bills receivable accounts, and AutoInvoice clearing (suspense) accounts.

Navigation: Receivable –> Setup –> Transactions –> Auto Accounting.


Like wise we should also define reaming auto accounting types.

Open or Close Accounting Periods:

Navigation: Receivables –> Control –> Accounting –> Open/Close Periods.

Define Transaction Types:

Define the transaction types that you assign to invoices, debit memos, commitments, chargebacks, credit memos, on–account credits, and bills receivable. Receivables uses transaction types to default payment term,
account, tax, freight, creation sign, posting, and receivables information. Receivables provides two predefined transaction types: Invoice and Credit Memo.

Navigation: Receivables –> Setup –> Transaction –> Transaction Types.

Define Transaction Sources:

Define the transaction sources that you assign to invoices, debit memos, commitments, credit memos, on–account credits, and bills receivable. Receivables uses transaction sources to control your transaction and transaction batch numbering, provide default transaction types for transactions in batch, and to select validation options for imported transactions. Receivables provides the following predefined transaction sources: MANUAL–OTHER, DM Reversal, and Chargeback.
Navigation: Receivables –> Setup –> Transaction –> Sources.
 Define Collectors:

Define collectors to assign to your customers through credit profile class assignments. Collectors can use the Collections windows and Receivables collection reports to keep apprised of a customer’s past due items. Receivables provides a predefined collector called DEFAULT.

Navigation: Receivables –> Setup –> Collections –> Collectors.



 Define Approval Limits:

Define approval limits to determine whether a Receivables user can approve adjustments or credit memo requests. You define approval limits by document type, dollar amount, reason code, and currency.
Approval limits affect the Adjustments, Submit AutoAdjustments, and Approve Adjustments windows as well as the Credit Memo Request Workflow.

Navigation: Receivables –> Setup –> Transactions –> Approval Limits.


Define Remittance Banks:

Proceed to the next step if you already defined your remittance banks in Oracle Payables. Define all of the banks and bank accounts you use to remit your payments. You can define as many banks and bank accounts as you need and define multiple currency bank accounts to accept payments in more than one currency.

Define Receivables Activities

Define Receivables Activities to provide default accounting information when you create adjustments, discounts, finance charges, miscellaneous cash transactions, and bills receivable. Receivables also uses Receivables Activities to account for tax if you calculate tax on these activities.

Navigation: Receivables –> Setup –> Receipts –> Receivable Activities.

Like wise we should define reaming receivable actives also.

Define Receipt Classes:

Define receipt classes to specify whether receipts are created manually or automatically. For manual receipts, you can specify whether to automatically remit it to the bank and/or clear your accounts. For automatic receipts, you can specify a remittance and clearance method, and whether receipts using this class require confirmation.

Navigation: Receivables –> Setup –> Receipts –> Receipts Class.


Click on Bank accounts.
Enter information in respective fields.


Save your work.

Define Payment Method:

Define the payment methods to account for your receipt entries and applications and to determine a customer’s remittance bank information. When defining payment methods, you must enter a receipt class, remittance bank information, and the accounts associated with your payment receivables type. You can also specify accounts for confirmation, remittance, factoring, bank charges, and short–term debt.

Navigation: Receivables –> Setup –> Receipts –> Receipts Class.



Define Statement Cycles: 

Define statement cycles to control when you create customer statements. You assign statement cycles to customers in the Customer Profile Classes window.

Navigation: Receivables –> Setup –> Print –> Statement Cycle.


Define profile options: 

Define profile options to provide default values for some Receivables operations, specify how Receivables processes data, and control which actions users can perform.

Navigation: Administrator –> Profile –> Systems.

During your implementation, you set a value for each Receivables user profile option to specify how Receivables controls access to and processes data. Receivables lets you govern the behavior of many of
the windows that use profile options.

Profile options can be set at the following levels:
• Site: This is the lowest profile level. Site level profile option values affect the way all applications run at a given site.
• Application: These profile option values affect the way a given application runs.
• Responsibility: These profile option values affect the way applications run for all users of a given responsibility.
• User: These profile option values affect the way applications run for a specific application user. The values you enter for options at the User level supersede the values that your system administrator has entered for you for these options.

Each of these user profile options affect the behavior of Receivables in different contexts. In Receivables, operations that profile options can affect include receipt application, the entry of adjustments, the creation
and remittance of automatic receipts and taxes, and posting to your general ledger.
You may also have additional user profile options on your system that are specific to applications other than Receivables.

To change profile options at the Site, Application, or Responsibility level, choose the System Administrator responsibility, then navigate to the Personal Profile Values window. Query the Profile Name field to
display the profile options with their current settings, make your changes, then save your work. You can change profile options at the user level in the Personal Profile Values window. To do this, navigate to the Personal Profile Values window, query the profile option to change, enter a new User Value, then save your work. Generally, your system administrator sets and updates profile values at each level.

Attention: For any changes that you make to profile options to take effect, you must either exit, and then reenter Receivables, or switch responsibilities.

   
Define Salespersons:

Define salespersons to allocate sales credits to invoices, debit memos, and commitments. If you do not want to assign sales credits for a transaction, you can enter No Sales Credit. If AutoAccounting depends on salesperson, Receivables uses the general ledger accounts that you enter for each salesperson along with your AutoAccounting rules to determine the default revenue, freight, and receivable accounts for transactions.

Define Customer Profile Classes:

Define customer profile classes to categorize customers based on credit, payment terms, statement cycle, automatic receipt, finance charge, dunning, and invoicing information. When you initially set up your customers, you assign each customer to a profile class. To customize the profile class for a specific customer, use the Customer Profile Classes window.

Navigation: Receivables –> Customers –> Profile Classes.

In Profile Class window enter the following information.



In Profile class Amount tab enter the following information.


Save your work.

Define Customers:

Define customers and customer site uses to enter transactions and receipts in Receivables. When you enter a new customer, you must enter the customer’s name, profile class and number (if automatic customer numbering is set to No). You can optionally enter customer addresses, contacts, site uses and telephone numbers. You must enter all the components of your chosen Sales Tax Location Flexfield when entering customer addresses in your home country.

Navigation: Receivables –> Customers –> Standard.

Define Remit–To Addresses: 

Define remit–to addresses to inform your customers where to send payments. Associate each remit–to address with one or more state, country, and postal code combinations.
For example, if you want your customers in California and Nevada to send their payments to a specific address, enter the remit–to address and associate the states CA and NV with this address. Remit–to addresses are assigned based on the bill–to address on the transaction.

Navigation: Setup –> Print –> Remit-to-addresses.

Click on Create Remit to addresses.


Enter the required information 


Click on Apply.

Enter the country name in the same page and then click on the GO.

Click on the Receipts form Create button.



Enter the following information and click on Apply button.

The ledger is a basic concept in Release 12. The ledger replaces the 11i concept of a set of books. It represents an accounting representation for one or more legal entities or for a business need such as consolidation or management reporting. Companies can now clearly and efficiently model its legal entities and their accounting representations in Release 12. This seems to be a major area in getting success of the shared service center and single instance initiatives where many or all legal entities of an enterprise are accounted for in a single instance, and data, setup, and processing must be effectively secured but also possibly shared.

Now, legal Entities can be mapped to entire Ledgers or if you account for more than one legal entity within a ledger, you can map a legal entity to balancing segments within a ledger.
While a set of books is defined by 3Cs

  1. chart of accounts
  2. functional currency
  3. accounting calendar,

The addition in this list the ledger is defined by a 4th C: the accounting method.

This 4th C allows you to assign and manage a specific accounting method for each ledger. Therefore, when a legal entity is subject to multiple reporting requirements, separate ledgers can be used to record the accounting information.
Accounting Setup Manager is a new feature that allows you to set up your common financial setup components from a central location.

General Ledger Setup Flowchart

While you can set up your Oracle General Ledger application in many different ways, and defer optional set up steps until you are ready to use the corresponding functionality, we recommend you use the order suggested in the following flowchart: Some of the steps outlined in this flowchart and setup checklist are Required and some are Optional. You need to perform Optional steps only if you plan to use the related feature or complete certain business functions.

The following setup steps are a high level overview of the setup steps related to Oracle
General Ledger and Accounting Setup Manager. 



Leger is created in 5 stages
1. Create Legal Entity.
2. Define Leger.
3. Define Accounting Options.
4. Assign Legal entities to your Ledger .

5. Assign Balancing Segment Values to respective Legal entities. 


Navigation: General Ledger –> Setup –> Financials –> Accounting Setup Manager –> Accounting Setups.


  • Create legal entity
Click on Create Accounting Setup and then click on Create Legal entity.

Click on Apply and then click on Next.

  • Define Leger



Click on Next and then Finish.

  • Define Accounting Options

Click on Define Accounting Options and click on update.


 Click on Next, and assign Retained earnings Account.

  
  Click on Next, Nextand Finsh.

Assign Legal entities to your Ledger.

Click on Add Legal Entity.
  
 Click on Add Legal entity.

 Add your Legal entity and click on Apply.


  • Assign Balancing segment values to legal entities

Click on the update Balancing Segment Values


Click on Add Balancing Segment Value.


Assign Balancing segment values to these legal entities.


Click on Apply and then click onComplete.


 Once you complete ledger we are getting the following Warning.


 Click on Yes.

 Ofter click on the yes we are getting the following confirmation. 


Click on Return to Accounting Setups.

An organization that uses Oracle subledgers, such as Oracle Cash Management, Order Management and Shipping Execution, Oracle Payables, Oracle Purchasing, Oracle Receivables, and related products. It may be a sales office, a division, or a department. Operating units are not associated with legal entities. 

Operating units are assigned to ledgers and a default legal context. Information is secured by operating unit for these applications using responsibilities. Each user can access, process, and report on data only for the operating units assigned to the MO: Operating Unit or MO: Security Profile profile option. 

The MO: Operating Unit profile option only provides access to one operating unit. 

The MO: Security Profile provides access to multiple operating units from a single responsibility. You can define operating units from the Define Organization window in Oracle HRMS or from Accounting Setup Manager in General Ledger.

For further reference: Visit Google.com and search for “Oracle Multiple Organization Manual”. download the pdf file for detailed information on multiple ORG.

Prerequisites for defining operating unit:

 1. Define Location.
 2. Define Business Group.
 3. Define Ledger.

 Navigation: HRMS –> Work Structures –> Organization –> Description.

Click on New.


Type your operating unit name, type ,location and organization classification.

   
Click on Others.

Selecoperating unit information.

   
Enter the Primary Ledger nameLegal entity name and Operating unit short code

The focus of the document is for consultants who are new to Oracle Forms and needs a kick-start on the concepts for better understanding of the subject.
Let’s start understanding the basic but important concepts in Forms.
What is Form :It is a developmental tool that is used for designing data entry and query screens. It is a front-end tool that runs in a Graphical User Interface (GUI).
GUI Concepts:
These concepts holds good for any user-interface.
To develop an effective GUI there are 4 basic stages:
  1. Define User Requirements
  2. Plan the User Interface
  3. Build the User Interface Elements (Create/Modify elements/functionality)
  4. User Feedback (Holds Key on the functionality and basis of the requirement)
Let’s move on to Forms Developer
How many components in Forms?
There are 3 components involved in the application development
  1. Form Builder
  2. Form Compiler
  3. Form Runtime
Form builder consists of following tools to perform a specific task
  1. Object Navigator
  2. Layout Editor
  3. Property Palette
  4. PL/SQL Editor
  5. Menu Editor
  6. Object Library

Object Navigator: It’s a hierarchal representation of all objects.
Layout Editor: It provides a virtual representation of the application user interface.
Property Palette: Each object in the form module has a property associated to it. Developer can view/set properties for one/multiple object.
PL/SQL Editor: Programmatically to enhance the functionality and appearance of an application.
Menu Editor: Create menu as per applications requirement and can add various functionality to various menu options.
Object Library: Creation of objects on some default specification. Storing some standard objects that can be re-used in other forms/menu.
Blocks: Logically related interface items are grouped into functional units called Blocks.
Types of Block:
Data Block: It is associated with or bound, to a database table or view or a set of stored procedures.
Control Block: It is not associated with any database table but items that will control the behavior of the application.
Let’s move on to the next scheme of things…
Canvas: It is a surface inside a window on which we place the interface that end user interacts.
Types of Canvas:
  1. Stacked Canvas
  2. Content Canvas
  3. Horizontal Toolbar
  4. Vertical Toolbar
  5. Tab Canvas

Let’s discuss briefly about the triggers in this section, for more information you can look through the Forms Builder Help Topics.
Note: The hierarchy of Objects in a form is
Form
Block
Record
Item
What is Triggers: These are program units which enhance the functionality of a form/application.
The following triggers can be used to enhance the functionality of the form:
What are Types of triggers in Oracle Form?

Block Processing Triggers: It fires in response to events related to record management in block.
e.g., When_Create_Record,When_Clear_Block,…
Interface Event Triggers: It fires in response to events that occur in form interface.
e.g., When_Button_Pressed,When_Checkbox_Changed,…
Master-Detail Triggers: It fires automatically when defined master-detail relationship between blocks. (Master-Detail relationship discussed further in the document)
e.g.,On_Checkdelete_Master,On_Clear_Details,…
Message Handling Triggers: It fires to issue appropriate error and information messages in response to runtime events.
e.g.,On_Error,On_Message,..
Navigational Triggers: It fires in response to Navigational Items.
e.g., Pre_Form, Post_Form, When_New_Form_Instance, When_New_Block_Instance,..
Query Time Triggers: It fires before/after the operator/application executes a query.
e.g.,Pre_Query,Post_Query,…
Transactional Triggers: It fires in response to wide variety of events that occur as a form interacts with data source.
e.g.,On_Delete,On_Update,..
Validation Triggers: It fires when it validates data in an item/record.
e.g.,When_Validate_Item,When_Validate_Record,..
Mouse Event Triggers: It fires for a mouse event.
e.g.,When_Mouse_Enter,When_Mouse_Click,..
Key Triggers: It has one to one relationship with specific Keys.
e.g.,Key F1,Key Enter,..
There are lot number triggers that can be used, please use as per the requirement with reference to Form Builder Help Topics.
What is Master- Detail Relationship? or What is Parent -Child Relationship?
Master- Detail Relationship : It is an association between two datablocks.One block is called Master Block and other Detail block. The relationship signifies that there is a primary key to foreign key relationship between the tables on the blocks associated.
What are Properties associated with blocks in a master-detail relationship?
Isolated : If you delete master records, associated detail records are not deleted from the database.
Non-Isolated: You cannot delete master records if the associated detail records exist in database.
Cascading: If you delete master records then automatically detail records will be automatically deleted from the database.
Windows : It is a container for all visual objects that make up a form, including canvases.
There are 2 types of Windows:
Document Window : It typically display the main canvases and work areas of the application where most data entry, and data retrieval is performed. It always remains within the application window frame.
Dialog Window: are free-floating, windows typically used for modal dialogs that require immediate user interaction.
Modality of the window depends on the functionality required i.e., Modal or Modeless.
Alert : It is a modal window that displays message to inform user about some application condition. E.g., STOP,CAUTION,NOTE,…
Invoking an alert : show_alert(alert_name)
Return number;
What is Record Group: It is an internal form builder structure that has column/row structure similar to database table. Static and Query based record groups can be used on the functionality of the form.
What is List of Values (LOV) : It is a pop-up window that provides end user selection list. LOV’s can be invoked programmatically or statically based on the record group. It can be positional based or automatic display.
The most important features of LOV are it provides auto-reduction and search features due to which user can locate specific values easily.
Let’s get to items on canvas which holds the key points.
Boilerplate Text Tool is used to create or edit a graphics text in the form. Graphics text is a static text in the form. E.g. Labels for items
Text Item Tool is used to create text item. It is an interface control that displays and allows editing of a text. It can be single or multi-line format.
Display Item tool are similar to text items but display items only store and displayed fetched or assigned values.
Buttons is a tool to execute commands or initiate buttons. E.g., OK ,CANCEL,..
Types : Text and Iconic Buttons
List Item is a list of text elements. A list item displays a fixed number of elements.
Types: Tlist,Pop List, Combo Box
Checkbox: It is a control that has 2 states i.e., checked or unchecked. It is used to indicate whether a certain condition is true or false.
Radio Button/Box : It is a logical set of options.
Editors: are used to edit item values in form. There are three editors that can be used at run time: Default editor, System Editor, User Named Editor
Property Class: Form builder provides a facility to create a named list of common properties and their values. This object is known as property class. Once you create a property class, you can base other objects on it. It is similar to the OOPS concept in programming languages.
Visual attribute : is a list of font, color and pattern properties and their values. This visual attribute can be attached to various objects to define object’s visual attributes.
Below is the list of tables that are populated when any Forms Personalization is done

FND_FORM_CUSTOM_RULES
FND_FORM_CUSTOM_SCOPES
FND_FORM_CUSTOM_ACTIONS
FND_FORM_CUSTOM_PARAMS
FND_FORM_CUSTOM_PROP_VALUES
FND_FORM_CUSTOM_PROP_LIST

You can FNDLOAD utility to move one instance to another.

Or export and import this records from one instance to other. But make sure the sequences are altered 🙂

The below script list all the forms in Oracle Applications that have been customized using Forms Personlization:

select distinct a.form_name , a.enabled, c.USER_FORM_NAME, d.APPLICATION_NAME 
from FND_FORM_CUSTOM_RULES a,
     FND_FORM b,
     FND_FORM_TL c,
     fnd_application_tl d
where enabled = ‘Y’
and a.form_name = b.form_name
and b.form_id = c.form_id
and b.application_id = d.application_id

order by application_name;