Monday, December 29, 2014

ADF UI Label Property Settings

ADF UI Label Property Settings


Every Web developer who is working at an ADF UI level would faced this dilemma,question of whether to set UI-oriented property values on the Model (entity object or view object definition) level or the UI View (component) level.This is the most common question faced often when developing
with these frameworks.

A useful rule-of-thumb which i have followed and was suggested as best practice during my development cycle is given below:
i) Property values that are likely to serve most purposes should be defined on the entity object definition level. 

ii) By the above way, all view object definitions and UI components based on that entity object definition will inherit the properties. 

iii) You can then specialize (override) those properties, if needed, in the view object
definition level. The view object definition can serve many UI components, so a single view
object definition setting can affect many places in the UI. 

iv) The last place to override these properties is on the UI component level.

Hope this rule of thumb helps you while developing your ADF application :-)

Key Payment Terminology in Oracle Payables

Key Concepts related to Payments in Oracle Payables


This post gives a brief overview on the key concepts related to payments which were added in Payables starting from R12 and similarly carried over to Fusion Applications.

Someone who would have worked on 11i Payables could be confused on seeing these terms and concepts used.But once we get the specific understanding on the same it would very easy to relate to on the payment.

Key terms can be summarized as follows:

i) Document Payable
ii) Payment Process Request ( sometimes abbreviated and referred to as PPR)
iii) Payee
iv) Payment Instruction
v) Payment Process Profile
vi) Payment Process Request Template
vii) Payment Format
viii) Payment Method

Let us discuss in detail about the above mentioned terms

Document Payable
A document which is to be paid by a company/organization through payables.This company/organization would generally be referred to as Payer.Examples which could be used from the documents which we create in Payables is a Payables Invoice or Scheduled Payment of the invoice.

Payment Process Request
It is a process by which group of invoices are selected and paid ie. processed for payment.This is similar to 11i Payment Batch, it is famously abbreviated as PPR and also referred to a Pay Run.So if any one is using the term Pay Run or PPR in reference to payments they are referring to Payment Process Request.Well as the name suggests technically PPR is a request raised from a source product to Oracle Payments.So PPR which is initiated from the source product during the invoice selection process contains many documents payable to be paid.During the course of the payment process life cycle these documents payable in payment process request are built into payments.

Payee
Well Payee is nothing but an organization/company/person which is being paid.Supplier,Customer or Employee are examples to whom payment is made.

Payment Instruction
Payment instruction is a collection of payments which have the payment information that is formatted.Payment instruction can be printed on to checks or a file which is transmitted to a payment system for processing and disbursement.

Payment Process Profile
Payment Process Profile is a payment attribute which is assigned to a document payable, having the information on handling of documents payable,payments and payment instructions.
Payment Process Profile has instructions on payment information formatting and transmission.

Following information is available on payment process profile:


  • Payment instruction formatting information
  • Transmission information
  • Payment grouping
  • Payment sorting details
  • Payment limits
Payment Process Request Template
This template is like a blueprint that simplifies and expedites pay runs by preselecting applicable payment data like the header information,payment selection criteria, processing instructions and how validation failures are handled.

Payment Format
Payment format is a set of instructions/rules that specify on how payment instruction is formatted and converted into a format which is readable by payment system.These are registered and maintained in Oracle XML Publisher in R12 whereas maintained in BI Publisher in Fusion Applications.

Payment Method
Payment Method is an attribute which is attached to a document payable which indicates on how a payer makes a payment to payee (supplier,employee or customer).Example are checks, wire transfer etc.

Sunday, December 7, 2014

ADF af:popup contentDelivery attribute

ADF af:popup contentDelivery attribute


This component is available in JDeveloper 11g ADF Faces Rich Client, I personally like how it works and how it looks. In this post I will discuss on how the contentDelivery Property determines the contents of Popup.

Actually, pop-up functionality is created in two steps:


1) First we set up the contents of af:popup component
















2) Put af:showPopupBehavior component on whatever action component where you want to show a popup.












Important - af:popup should have the same Id value as af:showPopupBehavior component, this will allow to open pop-up when action component is pressed.

The contentDelivery attribute of an af:popup component controls the popup initialization time and how does the data get refreshed within the popup.


How does the contentDelivery property on af:popup works,contentDelivery defines when data on the page are refreshed from the Model layer. The default value is “lazy,” which means that the contents will be refreshed only when the popup first displays. The value “lazyUncached” signifies that the data should not be stored between displays; the values will be refreshed each time.Another value, “immediate,” causes the popup to be loaded when the base page is loaded even before the popup is displayed.


Typical Use Case which we use to test this property is to have a Table with a view menu on the top.When a specific record in the table is selected and the view menu is pressed then the popup will show the specific details of the record selected in the table.


i) contentDelivery - lazy


During contentDelivery lazy the contents will be refreshed only when the popup first displays, so first the record selected in the table was of Lex and even after David was selected the contents of the popup is still not refreshed and only shows Lex.




















ii) contentDelivery - lazyUncached

During contentDelivery - lazyUncached the data should not be stored between displays; the values will be refreshed each time.So every time the record is selected in table the content of popup is refreshed.

















iii) contentDelivery - immediate

During contentDelivery - immediately the popup data is loaded when the base page is loaded even before the popup is displayed.So the popup always shows the first record of the table in the popup and it does not get refreshed during multiple selections of records in table.