Pages

Create LOV(list of Values) in OAF in over page


here we gave the some steps to dovelop lov in page 

Step 1 :- Create a New Workspace and Project
Right click Workspaces and click create new OAworkspace and name it as CSBrahmiLovDemo. Automatically a new OA Project is also created. Name the project as LovDemo and package as CSBrahmi.oracle.apps.fnd.lovdemo

Steps 2 :- Create a New Application Module (AM)
Right Click on LovDemo > New > ADF Business Components > Application Module
Name -- LovAM
Package -- CSBrahmi.oracle.apps.fnd.lovdemo.server

3. Create a New View Object (VO)
Right click on LovDemo > New >  Business Components > View Object
Name -- LovVO
Package -- CSBrahmi.oracle.apps.fnd.lovdemo.server

Note - The VO is not based on any EO so click next and go to the query section and paste the query
SELECT          *
FROM             EMP

Here we take the emp table (emp table is all ready created in over database so we use the table )

Step 4 :- Add View Object to Root UI Application Module

Step 5 :-. Create a New Page
Right click on LovDemo > New > Web Tier > OA Components > Page
Name -- LovPG
Package -- CSBrahmi.oracle.apps.fnd.lovdemo.webui

Step 6:-  Select the LovPG and go to the strcuture pane where a default region has been created
Step 7:- Right click on LovPG >New > Region(lovPLRN)
     
Step 8:-  Select lovPLRN and set the following properties:  
ID -- LovPLRN
AM Definition -- CSBrahmi.oracle.apps.fnd.lovdemo.server.LovAM
Window Title -- List of values Demo Window
Title – List of values Demo

Step 9:- Right click lovPLRN and  click new Region
ID -- MainRN
Region Style – messageComponentLayout
Note - Style is given as messageComponentlayout because we are going to create only message components that is messageLovInput item in that region

Step 10 :- Create a New Region
Right click on LovDemo > New > Web Tier > OA Components > Region
Name -- EmployeeLovRN
Package -- CSBrahmi.oracle.apps.fnd.lovdemo.webui
Region Style -- listOfValues
Scope -- Public

Note - The property Scope is the key property which makes the LOV region public and makes it usable in multiple pages

Step :- 11. Select EmployeeLovRN. Right click on EmployeeLovRN in Structure pane and click table using wizard. In the wizard choose the CSBrahmi.oracle.apps.fnd.lovdemo.server.LovAM and select the LovVO1. Click Next
Region Id -- LovRN
Region style -- table

Step 12:- . Shuttle the two attributes to the right side.That is EmployeeNumber and FullName

Step 13:-  Click next, check the mapping and then finish

Step 14:-  Select the field FullName and set the following properties:
Search Allowed -- True
Selective Search Criteria – True

Note - The first property lets users search on these values in the LOV, and the second property ensures that the users specify search criteria for at least one of these values to avoid a blind query

Attaching External LOV to Page:

Step 15:-  Click on LovPG and right click the MainRN and click new messageLovInput
External Lov -- /CSBrahmi/oracle/apps/fnd/lovdemo/webui/EmployeeLovRN
Lov Region Item -- FullName
Return Item -- item1
Criteria Item -- item1
Prompt -- Employee Name


O2C Tables


Order Management Tables(O2C).
Entered
oe_order_headers_all
 1 record created in header table
oe_order_lines_all Lines for particular records
oe_price_adjustments
 When discount gets applied
oe_order_price_attribs
 If line has price attributes then populated
oe_order_holds_all
 If any hold applied for order like credit check etc.
Booked
oe_order_headers_all
 Booked_flag=Y Order booked.
wsh_delivery_details Released_status Ready to release
Pick Released 
wsh_delivery_details Released_status=Y Released to Warehouse (Line has been released to Inventory for processing)
wsh_picking_batches
 After batch is created for pick release. 
mtl_reservations This is only soft reservations. No physical movement of stock
Full Transaction
mtl_material_transactions
 No records in mtl_material_transactions
mtl_txn_request_headers
mtl_txn_request_lines
wsh_delivery_details Released to warehouse.
wsh_new_deliveries if Auto-Create is Yes then data populated.
wsh_delivery_assignments deliveries get assigned
Pick Confirmed
wsh_delivery_details
 Released_status=Y Hard Reservations. Picked the stock. Physical movement of stock
Ship Confirmed
wsh_delivery_details Released_status=C Y To C:Shipped ;Delivery Note get printed Delivery assigned to trip stopquantity will be decreased from staged
mtl_material_transactions On the ship confirm form, check Ship all box
wsh_new_deliveries If Defer Interface is checked I.e its deferred then OM & inventory not updated. If Defer Interface is not checked.: Shipped
oe_order_lines_all Shipped_quantity get populated.
wsh_delivery_legs 1 leg is called as 1 trip.1 Pickup & drop up stop for each trip.
oe_order_headers_all
 If all the lines get shipped then only flag N
Autoinvoice
wsh_delivery_details Released_status=I Need to run workflow background process.
ra_interface_lines_all
 Data will be populated after wkfw process.
ra_customer_trx_all
 After running Autoinvoice Master Program for
ra_customer_trx_lines_all specific batch transaction tables get populated
Price Details
qp_list_headers_b To Get Item Price Details.
qp_list_lines
Items On Hand Qty
mtl_onhand_quantities TO check On Hand Qty Items.
Payment Terms
ra_terms Payment terms
AutoMatic Numbering System
ar_system_parametes_all you can chk Automactic Numbering is enabled/disabled.
Customer Information
hz_parties Get Customer information include name,contacts,Address and Phone
hz_party_sites
hz_locations
hz_cust_accounts
hz_cust_account_sites_all
hz_cust_site_uses_all
ra_customers
Document Sequence
fnd_document_sequences Document Sequence Numbers
fnd_doc_sequence_categories
fnd_doc_sequence_assignments
Default rules for Price List
oe_def_attr_def_rules Price List Default Rules
oe_def_attr_condns
ak_object_attributes
End User Details 
csi_t_party_details To capture End user Details
Sales Credit Sales Credit Information(How much credit can get)
oe_sales_credits

Attaching Documents 
fnd_attached_documents Attched Documents and Text information
fnd_documents_tl
fnd_documents_short_text
Blanket Sales Order
oe_blanket_headers_all Blanket Sales Order Information.
oe_blanket_lines_all

Processing Constraints
oe_pc_assignments Sales order Shipment schedule Processing Constratins
oe_pc_exclusions
Sales Order Holds
oe_hold_definitions Order Hold and Managing Details.
oe_hold_authorizations
oe_hold_sources_all
oe_order_holds_all
Hold Relaese
oe_hold_releases_all Hold released Sales Order.
Credit Chk Details
oe_credit_check_rules To get the Credit Check Againt Customer.
Cancel Orders
oe_order_lines_all Cancel Order Details.


Purchase Order Steps


Step 1: Requisition

When the company/person wants to purchase any item a Requisition is created

Step 2: RFQ (Request For Quotation)

Once Requisition is approved then the company/person will Request for Quotation (RFQ) specifying the required item, quantity.... etc and send them to the vendors who can supply the item

Step 3: Quotation

Once the vendor receives the RFQ then he will prepare the Quotation and send it back to the company/person

Step 4: Purchase Order (PO)

After receiving different quotations from different vendors company/person will go through the quotations and approves the quotation that is best suited/reliable for the company/person.
Based on the approved quotation Purchase Order is generated to the vendor. Now the vendor will supply the item.

Step 5: Receipts

Once the Item is shipped the vendor will raise the Receipt to the company/person.

Step 6: Invoice

Based on the receipt Invoice is generated. For this invoice the company/person will make Payments.

oaf interview questions

                  OAF interview questions and answers



Q) What is BC4J ?
A )Business Components for Java is JDeveloper's programming framework for building multitier database applications from reusable business components
Q) What are the methods in controller?
   A)   3 types methods they are
1. ProcessRequest,
2.processFormRequest
3. processFormData
Q) When is the processRequest method called?
A) processRequest method is called when the page is getting rendered onto the screen and a region is displayed.
Q) When is processFormRequest method called?
A) ProcessFormReques(PFR)t method is called when we perform some action on the screen like click of submit button or click on Go or any action perform on the page the result is displayed is called PFR
Q) What are all the methods in CO?}
 A)processForRequest
processRequest
Q )When a page renders which method in CO fires?
A)        processRequest
Q) Where will you write your business logic?
A)        Entity object (EO)
Q) How do you catch the button event on ProcessFormRequest Method?
A) if (pageContext.getParameter(.EVENT_PARAM). equals("update")) Here update is the event.
1.     What is an EO?
a. Map to a database table or other data source
b. Each entity object instance represents a single row
c. Contains attributes representing database columns
d. Fundamental BC4J object through which all inserts/updates/deletes interact with the database
e. Central point for business logic and validation related to a table
f. Encapsulates attribute-level and entity-level validation logic
g. Can contain custom business methods

2. What is a VO?
a. Represent a query result
b. Are used for joining, filtering, projecting, and sorting your business data
c. Can be based on any number of entity objects
d. Can also be constructed from a SQL statement


3. What are the methods in controller?
ProcessRequest and processformrequest

4. What is a Controller?
Controller is the java file and can be associated to a complete OAF page or to a specific region.
There are several tasks you will do routinely in your code.
 Handle button press and other events
 Automatic queries
 Dynamic WHERE clauses
 Commits
 JSP Forwards
The logic for accomplishing all these tasks is written in controller

5. When is the processRequest method called?
PR method is called when the page is getting rendered onto the screen


6. When is processFormRequest method called?
PFR method is called when we perform some action on the screen like click of submit button or click on lov


7. What is extension?
Extension is when you take an already existing component ex an OAF page or a region and then add some more functionality to it without disturbing the original functionality.


8. What is personalization?
Oracle Apps Framework has an OA Personalization Framework associated with it so that you can personalize any OAF page in an Oracle E-business Suite application without changing the basic or underlying code of that OA Framework page, Oracle Application Framework makes it very easy to personalize the appearance of the page or even the personalization of data displayed on to an OA Framework page.

9. What are levels of personalization?
1. Function Level
2. Localization Level
3. Site Level
4. Organization Level
5. Responsibility Level
6. Admin-Seeded User Level
7. Portlet Level
8. User Level
2.     1) What is BC4J?

Business Components for Java is JDeveloper's programming framework for building multitier database applications from reusable business components. These applications typically consist of:

• A client-side user interface written in Java and/or HTML.
• One or more business logic tier components that provide business logic and views of business objects.
• Tables on the database server that store the underlying data.

2.What are all the components of BC4J?
3.     Following are the components of BC4J:
4.     
• Entity Object - EO encapsulates the business logic and rules. EO’s are used for Inserting, Updating and Deleting data from the database table. E0 is also used for validating the records across the applications.
5.     
• View Object - View object encapsulates the database query. It is used for selecting data. It provides iteration over a query result set. VO’s are primarily based on EO’s. It can be used on multiple EO’s if the UI is for update.
6.     
• Application Module - Application Modules serve as containers for related BC4J components. The pages are related by participating in the same task. It also defines the logical data model and business methods needed.

2) What is an EO?
EO encapsulates the business logic and rules.EO’s are used for Inserting, Updating and Deleting data. This is used for validating across the applications. We can also link to other EO’s and create a Association object.

3) What is an VO?
View object encapsulates the database query. It is used for selecting data. It provides iteration over a query result set.VO’s are primarily based on Eo’s. It can be used on multiple EO’s if the UI is for update. It provides a single point of contact for getting and setting entity object values. It can be linked together to form View Links.

4) What is an AO?
An association object is created where we link EO’s. For example take the search page where we link the same EO to form a association between the manager and employee. Every employee should have a manager associated. But if it President then no there is no manager associated. This is a perfect example to understand the AO.

5) What is an VL?
A view link is an active link between view links. A view link can be created by providing the source and destination views and source and destination attributes. There are two modes of View link operation that can be performed. A document and Master/Detail operation.

6). What is UIX?
UIX is an extensible, J2EE-based framework for building web applications. It is based on the Model-View-Controller (MVC) design pattern, which provides the foundation for building scalable enterprise web applications.

7). Where the VO is located in the MVC architecture?
VO is located in the View Layer in MVC which is responsible for presenting the data to the user.

9) Which package should include EO and AO.
The EO and AO will be present in the schema.server package.

10) What is the difference between inline lov and external lov.
Inline lov is a lov which is used only for that particular page for which it was created and cannot be used by any other page.
7.     
External lov is a common lov which can be used by any page. It is a common component for any page to use it. It can be used by giving the full path of the lov in the properties section “External LOV” of the item.

1) what is a Javabean?
JavaBeans is an object-oriented programming interface that lets you build re-useable applications or program building blocks called components that can be deployed in a network on any major operating system platform.

2) What is query Bean?
QueryBean is used to execute and return the results of a query on behalf of the QueryPortlet application.

3) what is the difference between autocustomization criteria and result based search?
Results based search generates search items automatically based on the columns on the results table.
In Autocustomization search we need to set what all fields are required to display as a search criteria.

4) what is MDS?
MDS is MetaData Service. When a web page is broken into small units like buttons,fields etc they are stored in a database. These are not stored as binary files but as data in tables. The data are present in JDR tables. MDS provides service to store & return page definitions. MDS collects those definitions in components/fields in a meaningful manner to build a page.

5) What is XML?
XML is a markup language for documents containing structured information.
Structured information contains both content (words, pictures, etc.) and some indication of what role that content plays (for example, content in a section heading has a different meaning from content in a footnote, which means something different than content in a figure caption or content in a database table, etc.).

6) What is the difference between customization and extension?
Customization is under direct user control. The user explicitly selects between certain options. Using customization a user can:
    Altering the functionality of an application
    Altering existing UI
    Altering existing business logic

Extension is about extending the functionality of an application beyond what can be done through personalization. Using extension we can:

    Add new functional flows
    Extend or override existing business logic
    Create New application/module
    Create New page
    Create New attribute
    Extend/Override defaults & validations

7) What is Personalization?
Personalization enables you to declaratively tailor the UI look-and-feel, layout or visibility of page content to suit a business need or a user preference. Using Personalization we can:

    • Tailor the order in which table columns are displayed.
    • Tailor a query result.
    • Tailor the color scheme of the UI.
    • Folder Forms
    • Do Forms Personalization
   
8)Can you extend every possible Application Module?
Answer: No..Root AM cannot be extended.

9) What is rootAM?
The application module which is associated with the top-level page region (the pageLayout region) is root application module.