Tuesday, 23 November 2021

Query to Get Requisition creator name and Po creator name in oracle fusion

 1-To get requisition creator name 

 SELECT spn.display_name  req_creator_name

          FROM per_person_names_f_v spn

         WHERE     POR_REQUISITION_HEADERS_ALL.preparer_id = spn.PERSON_ID(+)

               AND TRUNC (SYSDATE) BETWEEN spn.EFFECTIVE_START_DATE(+)

                                       AND spn.EFFECTIVE_END_DATE(+)


2- To get PO creator name 

SELECT spn.display_name po_creator_name

  FROM per_person_names_f_v spn

 WHERE     po_headers_all.AGENT_ID = spn.PERSON_ID(+)

       AND TRUNC (SYSDATE) BETWEEN spn.EFFECTIVE_START_DATE(+)

                               AND spn.EFFECTIVE_END_DATE(+)

          

Sunday, 21 November 2021

PO, CMR and XLA joins in oracle fusion

 SELECT a.po_line_id,

       a.PO_HEADER_ID,

       a.PO_NUMBER,

       a.VENDOR_ID,

       a.VENDOR_SITE_ID,

       a.PO_LINE_LOCATION_ID

  FROM cmr_purchase_order_dtls a, cmr_rcv_events b, poz_suppliers_v c

 WHERE b.cmr_po_distribution_id = a.cmr_po_distribution_id

   AND a.vendor_id = c.vendor_id

   AND a.active_flag = 'Y'

   AND b.accounting_event_id = xla_transaction_entities.source_id_int_1

RCV ,CMR and XLA joins in oracle fusion

 SELECT RSH.COMMENTS

  FROM cmr_purchase_order_dtls cpod,

       cmr_rcv_events          cre,

       CMR_TRANSACTIONS        CT,

       RCV_TRANSACTIONS        RT,

       RCV_SHIPMENT_HEADERS    RSH,

       poz_suppliers_v         ps

 WHERE     cre.cmr_po_distribution_id = cpod.cmr_po_distribution_id

       AND cpod.vendor_id = ps.vendor_id

       AND cpod.active_flag = 'Y'

       AND CRE.TRANSACTION_ID = CT.TRANSACTION_ID

       AND CT.RCV_TRANSACTION_ID = RT.TRANSACTION_ID

       AND RT.SHIPMENT_HEADER_ID = RSH.SHIPMENT_HEADER_ID

       AND RSH.RECEIPT_NUM = CT.RECEIPT_NUMBER

       AND cre.accounting_event_id = xla_transaction_entities.source_id_int_1

Wednesday, 16 January 2019

Programmatically Inseration in Oracle ADF

Hello everyone
in this post we will learn how we can insert data programmatically

for this example i am using jdeveloper 11.1.2.3.0 and Departments table of HR schema

Steps
1- Create a new application and connect it with oracle HR Schema
2-Create Department and Location view objects and make sure these  objects are Entity base because only Entity base view objects are update able.
3-Create a .jsf page
4-Drag and drop two input texts and a button on .jsf page from component palette
5-Drag and drop LocationView1 on .jsf page as selectOneChoice
6-Dreate a bean and create bindings of input texts and button with bean



in the bean method you need two things
a- Iterators ID and
b-  Row Impl Classes

so for Iterators id  you need to do the following
we need access two iterators in bean
a) DepartmentView Iterator (to insert new row )
b)and LocationView Iterator (to get selected location id )



to access Iterator in bean we need iterator ID and in order to get Iterator ID we need to go
page bindings select the iterator and copy id from property Inspector


and secondly we need Row Impl to access getters and setters

   //4-get current row of location view iterator
       LocationsViewRowImpl locCRow = (LocationsViewRowImpl)locIter.getCurrentRow();
     
   //6-create new row in department view object
        DepartmentsViewRowImpl nrow = (DepartmentsViewRowImpl)vo.createRow();

So to generate RowImpl classes open view object and click on java tab and then click on Edit java option




here is the complete code that we use to insert new department






public class DepartmentInseration {

    private String deptID;
    private String deptName;


    public DepartmentInseration() {
    }

    public String insertNewDepartn() {
        // 1- get bindings
        BindingContainer container=BindingContext.getCurrent().getCurrentBindingsEntry();
        //2-get department view iterator
        DCIteratorBinding deptIter = (DCIteratorBinding)container.get("DepartmentsView1Iterator");
        //3- get location view iterator to get selected location id
        DCIteratorBinding locIter = (DCIteratorBinding)container.get("LocationsView1Iterator");
        //4-get current row of location view iterator
       LocationsViewRowImpl locCRow = (LocationsViewRowImpl)locIter.getCurrentRow();
     
        //5-get department view object from deptIter
        ViewObject vo=deptIter.getViewObject();
        //6-create new row in department view object
        DepartmentsViewRowImpl nrow = (DepartmentsViewRowImpl)vo.createRow();
        //7-set values
        nrow.setDepartmentId(Integer.valueOf(this.getDeptID()));
        nrow.setDepartmentName(this.getDeptName());
        //8-get location id from loaction view current row
        nrow.setLocationId(locCRow.getLocationId());
        vo.insertRow(nrow);
     
        deptIter.getDataControl().commitTransaction();
        //to show popup
        FacesContext context = FacesContext.getCurrentInstance();
        context.addMessage(null, new FacesMessage("Data saved...."));
     
        return null;
    }

    public void setDeptID(String deptID) {
        this.deptID = deptID;
    }

    public String getDeptID() {
        return deptID;
    }

    public void setDeptName(String deptName) {
        this.deptName = deptName;
    }

    public String getDeptName() {
        return deptName;
    }

    public void setLocatonID(String locatonID) {
        this.locatonID = locatonID;
    }

    public String getLocatonID() {
        return locatonID;
    }
}


Please Feel Free To Ask if you Face any Difficulty 
Like and share to help others
Thanks


Date 17-01-2019

Monday, 14 January 2019

Groovy Examples in ADF (column sum using Groovy)

Hello everyone
In this post i'll show you how we can add total of a column in table using Groovy

To show total we need
1- create transient attribute in employees view object and set Type BigDecimal
2-write the following groovy in expression
object.getRowSet().sum('Salary')



3-create a .jsf page and drag and drop employees view object on .jsf page as table
To show footer you need to do the following steps

from structure window right click on salary column go to Facets-Column and select Footer from small window



4-create attribute value
to create attribute value we need to go page bindings
click on green plus button
from insert Item window select AttributeValues and click ok




5-create attribute binding
when we click on OK a new window will appear name as create attribute Binding
select data source and attribute according to following image and click ok


6- finally we need to assign footer value
go back to page Design tab
from component palette  drag and drop output text on footer
select output text and write expression according to image










Please Feel Free To Ask if you Face any Difficulty 
Like and share to help others
Thanks

Date 15-01-2019

Saturday, 12 January 2019

Groovy Examples in ADF (count and sum examples using groovy)

Hello everyone
In this post i will show you how to perform count and sum using groovy



Note:- For this post i am using Department and Employees tables of HR Schema (oracle database 11g)

Examples
1-count employees department wise (adf.object.EmployeesView.count("EmployeeId"))
2-department wise employees salary sum (adf.object.EmployeesView.sum("Salary"))


1-count employees department wise
    As we know there is relationship  between Departments and Employees table (DepartmentID refer in Employees Table)
this relation in ADF is known as View Link 
so by using this view link we can access EmployeesViewObjecs attributes in DepartmentViewObject
we just need accessor name to access attributes
to get accessor name we need to perform the following setps

1-open view link definition file
2-click on Edit accessors
3- copy the employees view object accessor name




4-go to Departments view object and create a new transient attribute
5-and append  adf.object (it means the current object ) before accessor name and .count  (count is the mehtod name) after accessor name
following is the complete groovy
     adf.object.EmployeesView.count("EmployeeId")





2-department wise employees salary sum
    Secondly if you want department wise salary sum
   you need to perform the following steps
   1-perform first 3 steps that describe above
   2-create transient attribute in Department view object and set Type BigDecimal
   2- write the following groovy in Expression of transient attribute

    adf.object.EmployeesView.sum("Salary")



Please Feel Free To Ask if you Face any Difficulty 
Like and share to help others
Thanks
Date 12-01-2019

Groovy Examples in ADF (current date , current date and time)

Hello everyone
today i will show you some Groovy Examples


Note:- For this post i am using Department and Employees tables of HR Schema (oracle database 11g)
         
Examples
1- to get current date   (adf.currentDate)
2- to get current date and time   (adf.currentDateTime)




1- to get current date
    to get current date using groovy you need to perform the following steps
    i) create a transient attribute with Date datatype in Departments view object.
    ii) write the following groovy in Expression  (adf.currentDate)




1- to get current date and time 
    to get current date and time using groovy you need to perform the following steps
    i) create a transient attribute with Date datatype in Departments view object.
    ii) write the following groovy in Expression  (adf.currentDateTime)    






Please Feel Free To Ask if you Face any Difficulty 
Like and share to help others
Thanks
Date 12-01-2019


Query to get Business unit (ORGANIZATION_ID) Detail in oracle Fusion

  SELECT HAO.ORGANIZATION_ID AS BUSINESS_UNIT_ID,         HAOT.NAME,         HAO.BUSINESS_GROUP_ID,         HAO.EFFECTIVE_START_DATE,       ...