Posts

Showing posts from 2016

ADF MODEL - VIEW CRITERIA (VC)

Image
ADF View Criteria: VIEW CRITERIA is nothing but a "Where" clause to the SQL query with some special functions". It will be used to refine the query results. View Criteria Types: =============== 1. Implicit View Criteria: Renders all the areas in the VO as a filter field. (Default) 2. Named View Criteria: Selected fields are participating in the filter fields section as per the configuration.    Key Technical Term: -------------------------- What is RowMatch :             RowMatch is nothing but "in-memory row filtering" OR CACHE What is Mode : [Filtering Option]            Query/Database - Use query's where clause. [Default]            Cache - In memory filtering            Both  - Use query or memory filtering. What is Bind Variables:           Parameters applied to querie...

ADF Business Components - Part 3

Image
Business Components (continue) Creating Data Model Components: In this chapter you will learn how to expose data to a client application. ADF BC does not allow MVC applications to access entity object definitions and associations directly. Instead, you select exactly what data you want clients to be able to access by exposing it through data model components (view object definitions, view link definitions, application module definitions). The first part of this chapter shows how to create view object definitions and later in the chapter you will learn how to use view link definitions to represent relationships between your view object definitions and using application module definitions to aggregate the data and relationships that an application will need. Remember these facts about view object definitions: A view object definition is the representation of a SQL query. A view object definition includes view attributes for every column in the query result set...

ADF Business Components - Part2

Image
Entity Object & Entity Classes in Detail Entity objects Business Rules: It can do more than just be representations of data. They can also encapsulate the business rules pertaining to the data they represent.  An entity object can:     Enforce validation rules for attribute values     Calculate default values for attributes     Automatically calculate the values of transient attributes    Automatically react to data changes    Overview of Entity Classes: Entity object definitions are handled by three classes in the ADF BC library. They are referred to as the base entity classes: oracle.jbo.server.EntityImpl  Each instance represents one row in a database table. This class has all the methods needed to read, update, insert, delete, and lock rows.  oracle.jbo.server.EntityDefImpl  Instances of this class act as wrappers for the entity object definition XML files.   The class cont...

ADF Business Components - Part1

Image
ADF Business Components [Fundamentals] - My own understanding and View Introduction: ADF BC is a Java and XML based framework for developing the following : Business logic, including validation and default logic  Queries  Transaction handling Data access                It does not create a user interface, but is a pure encapsulation of business logic that communicates with a separate client application, which handles user interaction. Using ADF BC is the simplest way to design data-aware applications with JDeveloper.  The advantage of ADF BC over UI-enforced business logic is re-usability. For example, a single ADF BC layer can provide the business logic for all a company's needs. The business components can be used again and again, with multiple interfaces (a time saver). By maintaining a cache of data in memory, ADF BC reduces the number of database trips required by an application resulting in improved perfo...

Best Practices

Best Practices & Notes:  =================== please watch every day update : ------------------------------------- ADF - TABLE : Primary Key While working with table, ADF always expects a predefined primary key for the table.  We can create a primary key using DB sequence or other alternative options. If you do not have a PK for a table, during scrolling or selecting a row within the table or creating an empty row and scrolling to next set of rows, we will get a weird result. Example for Sequence PK: (Groovy Expression) (new oracle.jbo.server.SequenceImpl("TEST_SEQ",adf.object.getDBTransaction())).getSequenceNumber() Just a note: ADF - TABLE : Custom Partial Trigger We can add table selection listener programmatically with declarative component using the following snippets  of code : _getTable().addSelectionListener(new SelectionListener(){             @Override ...