Skip to main content

JDR_UTILS

JDR_UTILS

JDR_UTILS.LISTDOCUMENTS
Use this API to list of all OA Framework the documents in a path/module. This script is very handy, as it provides a list of all the desired documents/extensions/personalizations in one go.
DECLARE
BEGIN
jdr_utils.listdocuments('/oracle/apps/per', TRUE);
END;
The script above will produce a list of all the MDS Documents in HRMS plus all the BC4J extensions done to HRMS module will be listed here too. Surely you can run this for whatever module/application you desire.
Notes on jdr_utils.listdocuments
First parameter of this API can take the full path or partial path of the MDS** Page. Second parameter being TRUE will direct the API to list all Child Documents underneath that tree path
You can use this API to know all the objects that have been extended/personalized in any specific module. For this, simply dump the output in a file and grep for customizations
BC4J extensions [or call them substitutions] will be visible too, as the substitutions are stored as Personalization itself. For example, if iRecruitment Application Module has been extended, then a command similar to below will show the extended AM for VisitorAM
DECLARE
BEGIN
jdr_utils.listdocuments
('/oracle/apps/per/irc/candidateSelfService/server/',TRUE);
END;

JDR_UTILS.LISTCUSTOMIZATIONS
List of all the Personalizations/Extensions/Contents for a specific object. For example, as below, I wish to know the various levels at which a specific object has been personalized or extended.
DECLARE
BEGIN
jdr_utils.listcustomizations
(p_document => '/oracle/apps/per/irc/candidateSelfService/webui/RegCreateAccountPG');
END;
Notes on jdr_utils.listcustomizations
To get an exact full path of the document, first use jdr_utils.listdocuments

JDR_UTILS.PRINTDOCUMENT
List of all the Personalizations/Extensions for a specific object. For example, as below, I wish to see the name of the new AM Java Class that substitutes the standard VisitorAM.
DECLARE
BEGIN
jdr_utils.printdocument
(p_document => '/oracle/apps/per/irc/candidateSelfService/server/customizations/site/0/VisitorAM');
END;
The result below shows to me that xxVisitorAM is the new Java AM Class that substitutes the standard VisitorAM class
Another example for jdr_utils.printDocument is to see the content of Site Level personalization on a specific page
DECLARE
BEGIN
jdr_utils.printdocument
(p_document => '/oracle/apps/per/irc/candidateSelfService/webui/customizations/site/0/RegCreateAccountPG');
END;
The result of this command indicates which fields/regions/beans have been hidden or effected by personalization

DELETE A DOCUMENT OR DELETE A PERSONALIZATION OR DELETE AN EXTENSION OR A SUBSTITUTION
The title says it all. Once you have found the exact name of the document with its full path [using jdr_utils.listdocuments], you can then delete the same by using command below. For example to delete the Application Module substitution, use command
DECLARE
BEGIN
jdr_utils.deletedocument(p_document => '/oracle/apps/per/irc/candidateSelfService/server/customizations/site/0/VisitorAM');

END;

Comments

Popular posts from this blog

Workflow Important Debug Queries

deq_time is not always populated in WF_DEFERRED. The best way to monitor is to check if there are any READY events select msg_state,count(*) from applsys.aq$wf_deferred  group by msg_state; For getting Item_Type and Display name for Runnable processes. SELECT WFA_ACT.ITEM_TYPE ITEM_TYPE ,   WFA_ACT.NAME PROCESS_NAME ,   WFA_ACT.DISPLAY_NAME DISPLAY_NAME FROM wf_activities_vl wfa_act WHERE wfa_act.runnable_flag = 'Y' AND wfa_act. type            = 'PROCESS' AND sysdate BETWEEN wfa_act.begin_date AND NVL(wfa_act.end_date, sysdate); Query to find records that are pending in each of the workflow agent listener queues SELECT 'select ''' || t.component_name || ' (queue_table: ' || p.queue_table ||        ')''||'' Count: ''||count(*) c from ' || p.owner || '.' || .queue_table ||        ' where deq_time is null and nvl(delay,enq_time)<sy...

How to setup and use AME - Approval Management Engine

Approval Management Engine - AME For Purchase Requisition Approvals Purchase Requisitions can be routed for approval using the AME Approval Management Engine. This whitepaper describes how to setup AME for use with requisition approvals, and shows how a requisition approval list is built based on the AME setup. Approvers in the AME based approver list are assigned to the requisition based on the AME rules setup for the Purchase Requisition Approval transaction. Similar setup can be done for Requester Change Order Approval and for Internal Requisition Approval, although those are not specifically covered in this whitepaper. The screenshots provided are based on 11i.AME.B, and some of the navigation details are specific to 11i.AME.B. However, most of the details provided are applicable to 11i.AME.A and higher including R12. Assign AME Roles and Responsibilities AME responsibilities in 11i.AME.A are assigned directly to the users. However, In R12 or 11i.AME.B and higher, AME respons...

HRMS Payroll

Payroll Introduction Processing payroll is a very typical and fundamental business requirement across enterprises. If we have human resource, we will have to pay them. This sounds pretty simple. When we have 10 odd employees working in our firm, and we write checks for them; this can be done with the help of a spreadsheet and it won’t take a lot of time or resource to get something of this sort to be done. But let's think about a big enterprise. Processing payroll for a big enterprise is a gigantic task to do. It takes a lot of preparation just for the payroll processing and again a lot of post execution steps to make sure all the data are accurate and stored for further usage. Do we simply write checks? What exactly do we do in the entire payroll process? We do a lot of stuff, like calculating an employee's salary, calculating the amount to be paid per pay period. Determining how to pay, by check or by direct deposit into a bank? ...