Search This Blog

Thursday, August 9, 2012


ADF Glossary


action binding
A binding for command components, such as buttons or links, to built-in or custom methods on the data control, or to built-in collection-level operations (such as, Create, Delete, Next, or Previous). An action binding object encapsulates the details of how to invoke a method and what parameters (if any) the method is expecting.



activity
A piece of work that is performed when an ADF Controller task flow runs, for example, a method call or view.



ADF binding filter
A servlet filter that ADF web applications use to preprocess any HTTP requests that may require access to the binding context.



ADF Business Components
A framework that simplifies the development, delivery, and customization of business applications for the Java 2 Platform. You use ADF Business Components to define associations between entity objects, view objects, and application modules to reflect the foreign keys present in the underlying tables.



ADF Controller layer
A mechanism that provides an enhanced navigation and state management model on top of JSF. This mechanism declaratively defines navigation using control flow rules.



ADF Faces Rich Client (RC)
A set of standard JSF components that include built-in Ajax functionality.



ADF Model layer
A layer that implements JSR-227 service abstraction called the data control.



application module
A transactional component that UI clients use to work with application data. It defines an updatable data model and top-level procedures and functions (called service methods) related to a logical unit of work. This unit of work is related to an end-user task.



binding context
A container object that holds a list of available data controls and data binding objects. The DataBindings.cpx files define the binding context for the application.See also data control.



bounded task flow
A specialized form of ADF Controller task flow that has a single entry point and zero or more exit points. It contains its own set of private, control flow rules, activities, and managed beans. A bounded task flow allows reuse, parameters, transaction management, and reentry. When dropped on a page, it becomes a region.



control flow
An ADF Controller activity that enables navigation between other activities in an ADF task flow. The control flow links one activity to another in a task flow.



data control
XML configuration files that describe a service. At design time, visual tools like JDeveloper can leverage that metadata to UI component to be declaratively bound to an operation or data collection.



Data Controls panel
A panel in JDeveloper that lists all the data controls that have been created for the application's business services and exposes all the collections (row sets of data objects), methods, and built-in operations that are available for binding to UI components.



entity object
An object that represents a row in a database table and that simplifies modifying its data by handling all data manipulation language operations for you. Entity objects are ADF Business Components that provide the mapping to underlying data structures.



invoke action
An action that binds to a method that invokes the operations or methods defined in an action or a method action binding during any phase of the page lifecycle. See also action binding.



iterator binding
A binding to an iterator that iterates over view object collections. There is one iterator binding for each collection used on the page. All of the value bindings on the page must refer to an iterator binding in order for the component values to be populated with data at runtime.
Contrast with variable iterator and method iterator.



list of values (LOV)
Input components that allow a user to enter values by picking from a list that is generated by a query



MDS
An application server and Oracle relational database that keep metadata in these areas: a file-based repository data, dictionary tables (accessed by built-in functions) and a metadata registry. One of the primary uses of MDS is to store customizations and persisted personalization for Oracle applications



method iterator
A binding to an iterator that iterates over the collections returned by custom methods in the data control. An iterator binding that is always related to a method action binding object. The method action binding encapsulates the details about how to invoke the method and what parameters the method is expecting. The method action binding is itself bound to the method iterator, which provides the data.



Oracle ADF
An end-to-end application framework that builds on Java Platform, Enterprise Edition standards and open-source technologies to simplify and accelerate implementing service-oriented applications.




page definition file
A file that defines the binding objects that populate the data in UI components at runtime. For every page that has ADF bindings, there must be a corresponding page definition file that defines the binding objects used by that page.


region
An ADF Controller UI component whose content is based on a task flow definition. When first rendered, the region's content is that of the first view activity in a task flow.



task flow
A set of ADF Controller activities, control flow rules and managed beans that interact to allow a user to complete a task.


unbounded task flow

A set of activities, ADF control flow rules, and managed beans that interact to allow a user to complete a task. An unbounded task flow has a single point of entry.



value binding
A binding used by ADF view UI components that display data. Value bindings range from the most basic variety that work with a simple text field to more sophisticated list and tree bindings that support the additional needs of list, table, and tree UI controls.



value iterator
An ADF Model iterator pointing to a collection that contains only one data object whose attributes are the binding container variable. Contrast with method iterator and value iterator iterator.



variable iterator
A binding to an iterator that exposes all the variables in the binding container to the other bindings. While there is an iterator binding for each collection, there is only one variable iterator binding for all variables used on the page. Contrast with method iterator and value iterator iterator.



view accessor
An ADF Business Components object that points from an entity object attribute (or view object) to a destination view object or shared view instance in the same application workspace. The view accessor returns a row set that by default contains all the rows from the destination view object.



view object
An ADF Business Components object that represents a SQL query and simplifies working with its results. The SQL language is used to join, project, filter, sort, and aggregate data into the shape required by the end-user task being represented in the user interface.

OAF - Change standard logo, background color

Customizing Your Web Pages
The following steps explain how to customize certain aspects of your Oracle Self-Service Web Applications pages.

To add your company logo:
You can replace the default Oracle logo with your own corporate logo. Your logo will then appear on every page.

1. Create a GIF file containing your corporate logo and name it FNDLOGOS.gif.
2. Place the file in the directory as defined in the Web Listener.
If you have a multilingual install, you must also copy this file into the other language location.

To change the background color:
You can replace the background on every page with your own choice of background color and texture.

1. Create a JPEG file containing your background and name it ICXBCKGR.jpg.
2. Place the file in the directory as defined in the Web Listener.
If you have a multilingual install, you must also copy this file into the other language location.

Saturday, October 1, 2011

R12 Oracle Receivables Navigation Paths

Window Name Navigator Path

Account Details Collections->Account Details
Account Overview Collections->Account Overview
Accounting Calendar Setup->Financials->Calendars-> Periods
Accounting Distributions Control->AutoInvoice->Interface Lines. Choose Accounting button.
Accounting Periods Accounting->Open/Close Periods

Aging Collections->Aging
Aging Buckets Setup->Collections->Aging Buckets

Alternate Name Receipt Matches Receipts->Alternate Name Matches

Approval Limits Setup->Transactions->Adjustment Limits
Approve Adjustments Control->Adjustments->Approve Adjustments

Assign Flexfield Security Rules Setup->Financials->Flexfields-> Descriptive->Security->Define
Assign Key Flexfield Security Rules Setup->Financials->Flexfields-> Descriptive->Security->Define
Assign Security Rules Setup->Financials->Flexfields-> Descriptive->Security->Define

AutoCash Rule Sets Setup->Receipts->AutoCash Rule Sets
AutoInvoice Grouping Rules Setup->Transactions->AutoInvoice ->Grouping Rules
Automatic Accounting Setup->Transactions-> AutoAccounting


Bank Charges Setup->Receipts->Bank Charges
Banks Setup->Receipts->Bank

Category Codes Setup->Transactions->Item-> Category->Define->Category
Category Sets Setup->Transactions->Item-> Category Define->Default Sets

Collectors Setup->Collections->Collectors
Completed Requests Control->Requests->View
Concurrent Requests Summary Control->Concurrent
Conditions Setup->Tax->Groups. Choose Conditions button.
Confirmation Action Setup->Transaction->Confirmation Action
Conversion Rate Types Setup->Financials->Currencies-> Rates->Types
Copy Transactions Transactions->Copy
Correspondence Collections->Correspondence
Countries and Territories Setup->System->Countries
Cross Validation Rules Setup->Financials->Flexfields-> Key-> Rules
Currencies Setup->Financials->Currencies-> Define

Customer Accounts Collections->Customer Account
Customer Calls Collections->Record A Call
Customer Interface Interfaces->Customer
Customer Merge Customers->Merge
Customer Profile Classes Customers->Customer Profile Classes
Customers Quick Customers->Customer Quick
Customers Standard Customers->Customer Standard
Customers Summary Customers->Customer Summary

Daily Rates Setup->Financials->Currencies-> Rates->Daily
Default Category Sets Setup->Transactions->Item-> Category->Define->Sets
Define Organization Setup->System->Organization
Define Security Rules Setup->Financials->Flexfields-> Descriptive->Security->Define
Descriptive Flexfield Setup->Financials->Flexfields-> Descriptive->Segments
Distribution Sets Setup->Receipts->Distribution Sets
Document Sequences Application->Document->Define
Document Transfer Summary Transactions->Document Transfer Summary
Dunning History Collections->Account Details. Choose Dunning History button.
Dunning Letter Sets Setup->Print->Dunning Letter Sets
Dunning Letters Setup->Print->Dunning Letters
Exceptions Setup->Tax->Groups. Choose Exceptions button.
Format Programs Setup->Receipts->Format Programs

Freight Carriers Setup->System->QuickCodes-> Freight
Freight Transactions->Transactions. Choose the Freight button.
Or Transactions->Transactions->Line Items. Choose the Freight button.

GL Accounts Setup->Financials->Combinations
Group Constraints Setup->Tax->Groups. Choose Group Constraints button.

Interface: Customer Interfaces->Customer
Interfaces: AutoInvoice Interfaces->AutoInvoice
Interface Exceptions Control->AutoInvoice->Interface Exceptions
InterfaceFreightLines Control->AutoInvoice->Interface Lines. Choose Freight button.
Interface Lines Control->AutoInvoice->Interface Lines
Interface Tax Lines Control->AutoInvoice->Interface Lines. Choose Tax button.
Inventory Delete Items Setup->Transactions->Item->Delete Items

Invoice Line Ordering Rules Setup->Transactions->AutoInvoice ->Line Ordering
Invoicing and Accounting Rules Setup->Transactions->Rules

Item Status Codes Setup->Transactions->Item->Status
Item Tax Rate Exceptions Setup->Tax->Exceptions

KeyFlexfieldSecurityRules Setup->Financials->Flexfields->Key ->Security->Define

Line Errors Control->AutoInvoice->Interface Lines. Choose Errors button.

Lockbox Transmission History Receipts->Lockbox->Transmission History
Lockboxes Setup->Receipts-> Lockbox->Lockbox
Lockbox Transmission Data Receipts->Lockbox->Maintain Transmission Data
Submit Lockbox Processing Interfaces->Lockbox

Memo Lines Setup->Transactions->Memo Lines
Open/Close Accounting Periods Accounting->Open/Close Periods

Payment Methods Setup->Receipts->Receipt Classes
Payment Programs Setup->Receipts->Receipt Programs
Payment Terms Setup->Transactions->Payment Terms

Period Rates Setup->Financials->Currencies-> Rates->Period
Period Types Setup->Financials->Currencies-> Rates->Type

Print Accounting Reports Reports->Accounting
Print Dunning Print->Documents->Dunning
Print Invoices Print->Documents->Invoices
Print Statements Print->Documents->Statements

Quick Codes Demand Class Setup->System->QuickCodes-> Demand Class
Quick Find by Alternate Name Customers->Quick Find by Alternate Name

Receipt Batches Summary Receipts->Receipts Summary
Receipt Batches Receipts->Batches
Receipt Classes Setup->Receipts->Receipt Classes
Receipt Sources Setup->Receipts->Receipt Sources
Receipts Summary Receipts->Receipts Summary
Receipts Receipts->Receipts
Clear/Risk Eliminate Receipts->Clear/Risk Eliminate

Receivables Activities Setup->Receipts->Receivable Activity
Receivables Lookups Setup->System->QuickCodes-> Receivable

Remit-To Addresses Setup->Print->Remit To Addresses
Remittances Summary Receipts->Remittances
Remittances Receipts->Remittances

Request Sets (User Mode) Control->Requests->Set
Requests Submit Control->Requests->Run

Print Accounting Reports Reports->Accounting
Print Collection Reports Reports->Collections
Print Listing Reports Reports->Listing
Print Other Reports Reports->Other

Resource Setup->Transactions->Salespersons
Revenue Accounting and Sales Credits Control-> Accounting -> Revenue Accounting

Run AutoInvoice Interfaces->AutoInvoice
Run Customer Interface Interfaces->Customer
Run General Ledger Interface Interfaces->General Ledger
Run Revenue Recognition Control->Accounting->Revenue Recognition
Run Tax Rate Interface Interfaces->Tax Rate

Sales Credits Control->AutoInvoice->Interface Lines.Choose Sales Credits button.
Sales Tax Rates Setup->Tax->Sales Tax Rates

Scheduler Collections->Scheduler

Segment Values Setup->Financials->Flexfields-> Descriptive->Values
Set of Books Setup->Financials->Books
Setup Details Setup->System->Setup Details
Shorthand Aliases Setup->Financials->Flexfields->Key ->Aliases

Standard Memo Lines Setup->Transactions->Memo Lines
Standard Messages Setup->Print->Standard Messages
Statement Cycles Setup->Print->Statement Cycles

System Options Setup->System->System Options
Profile User Values Control->Profile Options

Tax Accounting Setup->Tax->Codes. Choose Tax Accounting button.
Tax Authorities Setup->Tax->Authorities
Tax Codes and Rates Setup->Tax->Codes
Tax Transactions->Transactions->Tax Choose the Tax button.
Or
Transactions->Transactions->Line Items.
Tax Exemptions Setup->Tax->Exemptions
Tax Groups Setup->Tax->Groups
Tax Locations and Rates Setup->Tax->Locations
Tax Options Setup->Tax->GL Tax Assignments

Territories Setup->Transactions->Territories

TransactionBatchesSummary Transactions->Batches Summary
Transaction Batches Transactions->Batches
Transaction Overview Collections->Transaction Overview
Transaction Sources Setup->Transactions->Sources
Transaction Summary Transactions->Transaction Summary
Transaction Types Setup->Transactions->Transaction Types
Transactions Transactions->Transactions
Transactions Summary Transactions->Transactions Summary

Transmission Formats Setup->Receipts->Lockbox Transmission

Units of Measure Classes Setup->System->UOM->Class
Units of Measure Setup->System->UOM->UOM
Viewing Requests Other->Requests->View

Friday, September 30, 2011

loading and passing parameters to messages using resource bundle in ADF page


Load a property file using message resource bundle feature inbuilt within the core tag .

Typical example would be to refer to a message value(Login Message), labels etc..

Approach 1 :

f:loadBundle basename="XX_GLOBAL" var="globalres"
Sample as how to refer to the value in a property file using the core tag is
af:outputText value="#{globalres.loginmessage}"

Calling a property file using resource bundle from Backing bean.

public class MyUtilBean {
public String getMessage(String loginmessage) {
FacesContext context = FacesContext.getCurrentInstance();
ResourceBundle bundle = context.getApplication().getMessageBundle();
ResourceBundle resourceBundle = ResourceBundle.getBundle(bundle,Locale.ENGLISH);
String text = resourceBundle.getString(loginmessage);
return text;
}
}

 

Approach 2 :

String resoureBundle= "view.MyBundle";
ResourceBundle resources= BundleFactory.getBundle(resoureBundle);
String msg=null;
if(resources != null)
{
       msg= resources.getString("loginmessage");
}

Approach 3 :

FacesContext fc = FacesContext.getCurrentInstance();
ResourceBundle resources= fc.getApplication().getResourceBundle(fc,"MyBundle");
bundle.getString("loginmessage");


Approach 4 :  (Passing Parameters to the Resource Bundle entires)
 
oracle.jbo.common.StringManager.getString ("view.MyBundle", "loginmessage","No Match Found", new String[] {Param1Value, Param2Value .......});

Thursday, September 29, 2011

OAF - Calling Database sequence

Calling a Database sequence.
Traditional way of calling a sequence was to create a View object with a "select sequence.nextval as seqvalue from dual" and call something like below.

OAViewObject vo = (OAViewObject)am.findViewObject("sequencename");
OARow row = (OARow) vo.first();
Number seqvalue = row.getAttribute("seqvalue"));

But instead oracle provides a direct API to get the value of the sequence and can be used as below.

// Calling from within an Application Module.
OADBTransaction trx = getOADBTransaction();
Number seqnum = transaction.getSequenceValue("sequencename");

//Calling from controller
OAApplicationModule am = (OAApplicationModule)pageContext.getApplicationModule(webBean);
OADBTransaction transaction = (OADBTransaction)am.getOADBTransaction();
Number seqvalue= transaction.getSequenceValue("sequencename");

OAF - String to SQL Date

Convert the String object to java.sql.Date object using stringToDate() function from oracle.apps.fnd.framework.OANLSServices class like below.

java.sql.Date getClientSysdate(){
OADBTransaction trx =
(OADBTransaction)getApplicationModule().getTransaction();
OANLSServices nls = trx.getOANLSServices();
oracle.jbo.domain.Date serverDate = trx.getCurrentDBDate();

java.util.Date javaClientDate = nls.getUserDate(serverDate);
long longDate = javaClientDate.getTime();
return new java.sql.Date(longDate);
}

Wednesday, August 4, 2010

Tips to refine ADF code.

Tips to refine ADF code for better performance.

1. Page definition actions to be removed rather execute the VO in the backing bean.

2. Refresh condition for the iterators to be set to false in the Page definition. Make it to true in the backing bean only when that iterator is executed.

3. Get the AM instance from the VO rather than using createRootApplicationModule() method.

4. Use generic method for iterator execution.

5. Remove unnecessary bindings from pagedef, backing bean.

Samples to follow...