Presentation is loading. Please wait.

Presentation is loading. Please wait.

Oracle Financials – APEX Presented by : Ian Drever Chitra Kanakaraj The University of Waikato.

Similar presentations


Presentation on theme: "Oracle Financials – APEX Presented by : Ian Drever Chitra Kanakaraj The University of Waikato."— Presentation transcript:

1 Oracle Financials – APEX Presented by : Ian Drever Chitra Kanakaraj The University of Waikato

2 Presentation Contents  Business Requirements  Design Considerations  Configuring Oracle Financials to link to Application Express  Configuring Oracle Financials to link to a page within an Application Express application  How this works in practice  Questions

3 Business Requirements  The University decided to implement Oracle Projects to manage costing and billing for research and other projects.  The Research Office had developed a comprehensive stand alone Microsoft Access database to control Research at the university.  Oracle Financials was to be the prime source for research project information  APEX would provide additional information associated with managing research projects  Ownership of the APEX application would remain with the Research Office  A large number of staff may require access to research project information

4 Design Considerations  The user must be able to open the APEX project details from within an open project in Oracle Projects  Single sign on is required  Access would be required to Project Information without requiring access to Oracle Projects  Oracle Projects would provide the base source data  APEX would store additional data  Oracle Projects would capture transactional and revenue costing  APEX would not update Oracle Projects data

5 Configuring Oracle Financials to link to Application Express

6  Create the Profile under the Application Developer Responsibility  Name – “Oracle Application Express Launcher” Step 1: Create a profile for launching Application Express

7 Step 2:Set the site for the for the profile created in Step 1.  Responsibility – System Administrator  Menu Option: Profile -> System and search for the ‘Oracle Application Express Launcher’.  Set the value at the Site Level as: “http:// : /pls/apex”

8 Step 3: Create a function  Responsibility: System Administrator  Menu Option: Application ->Function  Create Function: APEX_LAUNCH  User Function Name: Projects: Options: APEX_LAUNCH

9 Step 4: Set the function properties  Set the Property type to “SSWA plsql function”

10 Step 5: Create a line for the APEX_LAUNCHER on the Web Enabled PL.Sql page Web Enabled PL/SQL page  Menu Option: Security -> Web PL/SQL  Search for the APEX_LAUNCHER function  Set the Type column to“Package”

11 Step 6: Create a menu entry for APEX.  Menu Option: Application->Menu  Add a line for the LAUNCH APEX prompt

12 Step 7: Create a menu option line for APEX on the PA_IMP_SUPERUSER_GUI menu

13  Compile the package APEX_LAUNCHER in the EBS database (APPS) This package has the procedure APEX_LAUNCH. Process flow in the procedure is as follows  This package: o Sets the url using FND_PROFILE.value('LAUNCH_APEX'); o Passes the application id and the page id 111 in the url o Sends a COOKIE using OWA_COOKIE.send procedure with a name and a value parameter. Use this value parameter to pass the username and password for the APEX login authentication. o Opens a new window using the UnilinkURL.  In the APEX application on page 101 (i.e. logon page), create a process (on load before header) to read the OWA_COOKIE sent from the above procedure and set the USERNAME and PASSWORD. Use the APEX login API wwv_flow_custom_auth_std.login to login the APEX application.  The code is based on this white paper: http://www.oracle.com/technology/products/database/application_express/p df/Extend_Oracle_Applications_11i.pdf http://www.oracle.com/technology/products/database/application_express/p df/Extend_Oracle_Applications_11i.pdf

14 PROCEDURE apex_launch( application IN NUMBER, page IN NUMBER DEFAULT 1, request IN VARCHAR2 DEFAULT NULL, item_names IN VARCHAR2 DEFAULT NULL, item_values IN VARCHAR2 DEFAULT NULL) is user_key VARCHAR(100); apex_launcher_profile varchar2(2000); unilink_user varchar2(30); unilink_url varchar2(150); BEGIN -- replace the FND_GLOBAL.user_name with unilink_user unilink_user := 'UNILINK'; unilink_url :='http:// /pls/htmldb/f?p=114:111:::NO::P101_USERNAME,P101_PASSWORD,P101_FILE_NUMBER,P101_USER_ID:unilink,un ilink,,'||FND_GLOBAL.user_id; BEGIN SELECT encrypted_user_password INTO user_key from fnd_user where user_name = unilink_user; EXCEPTION WHEN OTHERS THEN user_key := ''; END; apex_launcher_profile := FND_PROFILE.value('LAUNCH_APEX'); if apex_launcher_profile IS NULL Then htp.p ('Please contact System Administrator. '); htp.p ('Profile - LAUNCH_APEX is null') ; return; end if;

15 unilink_url := apex_launcher_profile||'/pls/htmldb/f?p=114:111:::NO::P101_USERNAME,P101_PASSWORD,P101_FILE_NUMBER,P101_USER_ID:unilink,unilink,,'|| FND_GLOBAL.user_id; -- FND_GLOBAL.user_name gives the login user name for the ESB system -- in order to pass the valid Apex Unilink user_name a constant value is used. OWA_UTIL.mime_header('text/html', false); OWA_COOKIE.send (name=>'APEX_APPS_'||application, value=> unilink_user||':'||'unilink', path=>'/', domain=>'.waikato.ac.nz' ); OWA_UTIL.http_header_close; htp.p(' <!-- history.go(-1); var v_win; v_win = window.open("'||unilink_url|| '",' || '"",' || '",width=800,height=600,scrollbars,resizable"); v_win.moveTo ((screen.width/2) - ' || (800 / 2) || ', (screen.height/2) - ' || (600 / 2) || '); v_win.focus(); //--> '); exception when others then htp.p(SQLERRM); END;

16  Set up Page 111 in Apex, this is used by the launcher on Oracle Financials:  Create a blank page in APEX application that needs to be integrated with Oracle EBS, e.g. P111.  Edit page attribute and set the Security - Authentication to ‘Page is Public’.  Create a branch in this page, as follows: Branch Type Branch to Page Accept Processing (not common) Branch Point On Load: Before Header Action – Page 101 (This is my login page id) Unconditional Branch

17 APEX 101 page - before header process DECLARE c OWA_COOKIE.cookie; a wwv_flow_global.vc_arr2; BEGIN c := OWA_COOKIE.get('APEX_APPS_'||:APP_ID); a := htmldb_util.string_to_table(c.vals(1)); :P101_USERNAME := a(1); :P101_PASSWORD := a(2); IF :P101_PASSWORD IS NOT NULL THEN wwv_flow_custom_auth_std.login( P_UNAME => :P101_USERNAME, P_PASSWORD => :P101_PASSWORD, P_SESSION_ID => v('APP_SESSION'), P_FLOW_PAGE => :APP_ID||':1' ); END IF; EXCEPTION WHEN OTHERS THEN :P101_USERNAME := 'Unilink'; END; Add a process in the 101 Page.

18 Demonstration  Or how it works in practice  Clicking on the APEX Unilink menu item will open the required application in APEX

19 APEX Research Application

20 Questions?

21  The Earth has at least two moons, the latest is a 3- miles-wide (5-km) satellite.  It takes 770 years to complete a horseshoe-shaped orbit around the Earth.  The moon is called Cruithne and will remain in a suspended state around Earth for at least 5,000 years. How many moons does the Earth have?

22 Configuring Oracle Financials to link to a page within an Application Express application

23 Prerequisites  Set the responsibility to “Project Implementation Superuser”

24 Step 1: Open a project from the Projects menu option

25 Step 2: Access the Help>Diagnostics>Custom Code>Personalize menu option.

26 Step 3: Update the PA_PAXPREPR_PROJECT function  Add a line for the Trigger event – Initialize Unilink Menu and Global Variables  Set the Trigger Event to WHEN_NEW_FORM_INSTANCE  Add the responsibilities that you want to access the link

27 Step 4: Set the function actions  Add line for the Type ‘Menu’  Enter the Menu Label as ‘APEX UNILINK’

28 Step 5: Create a line for Call APEX UNILINK in the PA_PAXPREPR_PROJECT  Set the conditions for the “Call APEX Unilink” function  Set the Trigger Event to SPECIAL9  Add the responsibilities

29  Set the Type to “BUILTIN”  Set Builtin Type to Launch a URL Step 6: Set the Action argument

30  Argument ='http:// /pls/htmldb/f?p=114:111:::NO::P101_USERNAM E,P101_PASSWORD,P101_FILE_NUMBER,P101_USER_ID:unilink,unilink,'||:PROJECT_FOLDER.SEGMENT1_MIR||','||FND_GLOBAL.user_id  Note: Include the = sign in the argument since we are passing the segment1 value through the url.  The above oracle EBS form personalization is done by using the example given in the following link http://www.scribd.com/doc/46650/Examples-of-Oracle-EBS-Form- Personalization

31 Practical Application  Or how it works in practice  Clicking on the APEX UNILINK menu option will open the required application page in APEX for the project linked to Oracle Projects.

32 APEX Project Page

33 References & Credits “Oracle Applications Express The Fast Way to Extend Oracle Applications 11i By Rod West, Cabot Consulting” “ORACLE EBS 11I, VERSION 11.5.10 « FORM PERSONALIZATION » Auteur : Joël Asselin Date de création : Octobre 20, 2006 “

34 Questions?


Download ppt "Oracle Financials – APEX Presented by : Ian Drever Chitra Kanakaraj The University of Waikato."

Similar presentations


Ads by Google