Oracle Apps Search

Thursday, January 14, 2010

Approvals Management Engine

In this section I would be covering,

1. What is AME
2. AME prior to AME.B and post AME.B and how AME is enabled


What is AME:

I think everyone of us know AME mean Approvals Management Engine, but if you are new to this then its good to know the architecture of AME.

Approvals Management Engine(AME) is a self service web application which lets users define business rules governing who should approve the transaction that originate in other oracle applications like SSHR.


AME prior to AME.B, post AME.B and how AME is enabled:

AME Responsibilities in AME.A are assigned directly to the users. However in 11i.AME.B or R12 and higher, AME responsibilities are assigned indirectly to users through roles. The roles are assigned to the users by the SYSADMIN user using the User Management Responsibility. Once the roles are assigned, the AME responsibilities are automatically available to the users without specifically assigning the AME responsibilities to the users.

here are the steps to assign the roles,

1. Login as SYSADMIN user ( or a user that has full User Management Functionality).
2. Switch the Responsibility to User Management and Navigate to the Users function as below,


3. Query for the user ‘SYSADMIN’ in our case, and click on the Update action,




4. In the Update User page click on the Assign Roles button,




5. In the Search Window, Query for ‘Approval%’, and following five roles will be displayed,
  • Approvals Management Administrator
  • Approvals Management Business Analyst
  • Approvals Management System Viewer
  • Approvals Management System Administrator
  • Approvals Management Process Owner
6. Select only the “Approvals Management Administrator” and “Approvals Management Business Analyst” roles.

7. After selecting both the roles, provide the justification for the role and the effective date as below,


8. After completing this action, you can query back the user and verify list of roles being attached to the user.

9. Now switch the responsibility to Functional Administrator.
Functional Administrator --> Home

10. Click on Create Grant under the Grants tab

11. Enter a Grant Name and provide an effective date as below,

12. Navigate to Security Context region and select the Grant Type as ‘Specific User’

13. In the Grantee field select the user associated.

14. In the Data Security Field select ‘AME Transaction Types’ as the Object.

15. Clicking ‘Next’ will take you to the ‘Select object Data Context’ page.

16. You have a Default Value of ‘All Rows’ in the Data Context Type, leave it as it is, and navigate further.

17. In the ‘Object Parameter and Select Set’ Page, enter ‘AME Calling Applications’ as the Value in the Set field.

18. Clicking Next will take you to the Review Page.

19. Verify the Information and Submit the Transaction.

20. Now switch the Responsibility to System Administrator and Navigate to System Profiles.

21. Query for the Profile ‘AME: Installed’ at the required level and set the value to ‘Yes’ as below



Save the Data.


Friday, January 8, 2010

Oracle Framework Learnings

Invoke AM method using Parameters:

OAApplicationModule am = pageContext.getApplicationModule(webBean);
Serializable[] parameters = {userName, password};
am.invokeMethod("initDetails", parameters);

Passing different types of parameters to Application Modules(AM):

OAApplicationModule am = pageContext.getApplicationModule(webBean);
class[] paramTypes = { String.class, Boolean.class};
am.invokeMethod("Test", paramValues, paramTypes);

To execute Query and set Where Clause:

setWhereClause("userName = :1 AND password = :2");
setWhereClauseParams(null);
setWhereClauseparam(0, pUserName);
setWhereClause(1, password);
executeQuery();

Disabling a Button or any Item:

We have various bean for the items that we wish to act upon either disabling or modifying any property like rendered property to TRUE or FALSE. Herein is an example,

OASubmitButtonBean saveT = (OASubmitButtonBean)webBean.childRecursive("SaveBtn");
-- SaveBtn is the ID of the submitButton item.

SaveBtn.setDisabled(TRUE);

Forward immediately to the Current Page:

oaPageContext.forwardImmediatelyToCurrentPage(null, TRUE, null);

Disabling OAFooter and Privacy Statement in the OAF page:

Generally sometimes client would like to replace Oracle Privacy ststement with his own and we can personalize according to client needs of modifying/Disabling the OAFooter and Privacy statement as below,

For this First, make sure that the Personalize Page Link exist on top of all OA Pages, if not please set the following profile options to enable it,

Personalize%Self%Serv%Def% : Yes

Now, after doing that we shall proceed to Disable/Modify the OA Footer:

1. Open an OA Page, where would you like to Disable/Modify the OA Footer.
If you need to disable/Modify for all the OA Pages, open any existing OA Page as below


2. Click on the Personalize Page button at the top of the Page, and choose the context of the Personalization as below,



Check the corresponding options if you want to implement the change at the Responsibility or Site level. Here we have considered at the Site Level


3. Now, you could see the highlighted copyright and a pencil icon across it, clicking on it we can personalize the OAFooter/Copyright content as needed, please click on it


4. Modify the Rendered Property to False to Disable and modify the Additional Text for modifying the Content.




If you are representing at the site level, then make sure that the property is Inherit at the Responsibility Level, though it Disbaled at the Site level, if its enabled at the Responsibility level, the OA Footer can still be visible.

Click on Apply to make the Changes and Return to the Application to view the changes as below,

the same can be done for Diabling the Privacy statement.

Wednesday, January 6, 2010

Oracle Forms FAQ

FORMS60_PATH setup:

Generally at client side, there could be a big hassle extractingthe forms executable file fmx from the form, due to wrong pointer of FORMS60_PATH. The FORMS60_PATH should be pointing to $AU_TOP/forms/US; $AU_TOP/resource as below

FORMS60_PATH=$FORMS60_PATH:$AU_TOP/forms/US:$AU_TOP/resource

export $FORMS60_PATH

And generate the fmx with the following command,

f60gen module=XXXXXXX.fmb userid=apps/apps module_type=FORM batch=NO compile_all=YES


Print This Post