Friday, March 15, 2013

D2K/RDF Reports - Some points to care of in R12

Are you developing report in R12?
Does this report contain Data Source as RDF(D2K report)?
Don't you know basic difference between 11i and R12 RDF programming?
Don't you know how to achieve Organization Security in R12 RDF?


If yes, please take care of below things,
1) For R12, download Oracle Developer Suite 10g(10.1.2.0.2) from OTN. Version upgrades on this install can be done using patches mentioned in Oracle Support Note 437878.1, although it is not mandatory.

2)If you are developing an organization security enabled RDF,
    a)use VPD(Virtual Private Database) enabled synonyms if present in query e.g, po_headers,po_lines,etc.There are still some Org-Based views
in R12 particularly HR views e.g, PER_PEOPLE_F,etc .Don't use base tables like _all tables.

    b)if it is VPD enabled SYNONYM in query, call FND SRWINIT user exit in after parameter form trigger.If it is Org-Based View in query,call FND SRWINIT user exit in before report trigger.
It was always before report trigger in 11i, where we used to call FND SRWINIT user exit.
I have seen guys working on R12 RDFs, calling FND SRWINIT user exit in before report trigger for VPD enables synonyms also, and because it does not enable org security, wrongly calling MO_GLOBAL or FND_GLOBAL.APPS_INITIALIZE apis.

    c)if it is Operating Unit security, set Operating Unit Mode for the report concurrent program using System Administration mode(Point 3 elaborates more on this).

    d)Inventory Org security in Concurrent Program Reports is enabled by passing MFG_ORGANIZATION_ID profile value as parameter and adding it
to the where clause of query.

3)R12 has the facility to access/view multiple operating units'(set at Context) data .We can set up report concurrent program to have Operating
Unit parameter using,
 System Administration -> Concurrent Programs ->Search Concurrent Program ->
 Click on Update button present in row of required concurrent program ->
 Request tab-> Operating Unit mode.
If Single is selected at Operating Unit Mode , Operating Unit parameter will automatically be added.When multiple is selected, data of all Operating Units in context will be shown in report.

4)Don't add Operating Unit parameter manually in Define Concurrent Program parameters window.It will be automatically added if Operating Unit Mode is selected as Single.