Thursday, April 10, 2014

Oracle Applications Forms R12


Components involved??

Oracle forms server works based on 3 Tier Architecture. A tier is a logical collection of services running on more than one machine.



Client Tier:
 The client browser connects to the form server using the forms client Applet which is running on the local machine. Forms client applet is a collection of Java Archive files (JAR).
Application Tier:
Application tier mainly has 2 components web listener and forms server.

·         Forms server :
o   Maintains all user interfaces and database connection for thin client.
o   Caches data which is needed by forms thin client.
o   Uses HTTP, HTTPS and TCP/IP protocols to communicate with the thin client.
·         Web Listener
o   Sends and receives request for the browser which is running the Jinitiator.
Database Tier:
·         Stores all the data required for the forms thin client.
How it works??
1.       Browser sends request to HTTP Listener.
2.       Web server receives the request.
o   If request is referring to a static file then the file will be retrieved from storage.
o   If request is referring to CGI Script then
§  Static CGI : Retrieve from storage and execute the file.
§  Dynamic CGI : Checks for the available server from load balancing server. Load balancing server basically monitors the current load in all forms server. Forms server runs a thin client of load balancing server to keep the load balancing server informed about the load.
3.       HTTP Listener sends a HTML page to the browser.
o   HTML file has a tag <APPLET> which contains all the information including form server name to be used.
4.       Browser requests for Java Applet to HTTP Listener.
5.       HTTP Listener sends Applet in JAR Files as they can be downloaded more quickly.
6.       Browser receives the JAR files and uses the JVM JInitiator to execute the JAR file.
7.       Browser signs off as the JVM takes care of the Java Applet.
8.       Applet connects to the forms listener which starts a Forms Runtime Engine.
9.       Forms listener passes the command line parameters and any form builder parameters to Forms Runtime Engine.
10.   Forms listener signs off as the Applet is now directly connected to Forms Runtime Engine.
11.   Java applet passes the form information with the required parameters to the Forms Runtime Engine.
12.   Forms Runtime Engine interacts with the database tier to open a database connection to get the data.
Client browser and JRE Version
Below table lists out the JRE version for the corresponding client browser and the information is available in the Oracle support “Deploying JRE (Native Plug-in) for Windows Clients in Oracle E-Business Suite Release 12 (Doc ID 393931.1)”. Also any form related issues are addressed in the same Oracle Doc ID.
64 Bit version
Browser Version
Windows 8(64 Bit)
Windows 7 (64 Bit)
IE 10
JRE 1.6.0_37 (64-bit) and higher
JRE 1.7.0_10 (64-bit) and higher
JRE 1.6.0_32 (64-bit) and higher
JRE 1.7.0_10 (64-bit) and higher
IE 9
Not Certified
JRE 1.6.0_32 (64-bit) and higher
JRE 1.7.0_10 (64-bit) and higher
IE 8
Not Certified
JRE 1.6.0_32 (64-bit) and higher
JRE 1.7.0_10 (64-bit) and higher

 32 Bit Version
Browser
Version
Windows 7
(64-bit)
1
Windows 7
(32-bit)
Windows Vista
(32-bit)
Windows XP
(32-bit)
IE 10
JRE 1.6.0_03 and higher
JRE 1.7.0_10 and higher
JRE 1.6.0_03 and higher
JRE 1.7.0_10 and higher
Not Certified
Not Certified
IE 9
JRE 1.6.0_03 and higher
JRE 1.7.0_10 and higher
JRE 1.6.0_03 and higher
JRE 1.7.0_10 and higher
JRE 1.6.0_03 and higher
JRE 1.7.0_10 and higher
Not Certified
IE 8
JRE 1.6.0_03 and higher
JRE 1.7.0_10 and higher
JRE 1.6.0_03 and higher
JRE 1.7.0_10 and higher
JRE 1.6.0_03 and higher
JRE 1.7.0_10 and higher
JRE 1.6.0_03 and higher
JRE 1.7.0_10 and higher
IE 7
Not Certified
Not Certified
JRE 1.6.0_03 and higher
JRE 1.7.0_10 and higher
JRE 1.6.0_03 and higher
JRE 1.7.0_10 and higher
IE 6
Not Certified
Not Certified
Not Certified
JRE 1.6.0_03 and higher
JRE 1.7.0_10 and higher

Tuesday, April 8, 2014

WebADI as Automation Tool


Overview
WebADI is a web based browser application which helps in integrating the desktop applications MS Word, MS Excel and MS Projects with Oracle E-Business. WebADI increases the productivity as the user need not change the user interface which are familiar to the user. Scope of this blog is to highlight 2 scenarios which helped users in reducing manual tasks using WebADI.

Advantages of WebADI

·         Data exchange between the server and client application happens through HTML.
·         MS Excel features like writing formulas, generating graphs and altering data can be used.
·         Data values can be validated against Oracle EBS.
·         Need not install any software in the client machines.
·         Multiple sheets also supported from R12.
·         Supports Single Sign on.

Web ADI Profile Options
·         BNE Allow Set Parameters:  If set to “NO” then users will not be able to use the upload parameters window.
·         BNE Disable: Set to “Yes” to disable Web ADI functionality.
·         BNE Document Lifetime: Specifies the time frame the Web ADI spreadsheet can be reused again to connect to E-Business Suite.

Scenario 1
Problem Description:
Client was using Oracle Financial 11i version for all of their core financial business process. Testing team was having issue with adding the list of responsibility after every clone. Testing team users hardly have 2 or 3 responsibilities in production compared to the development environment where they have around 30 responsibilities. Issue was not only with the testing team but with the complete development team.
Solution:
1.       Define Integrator using the package BNE_INTEGRATOR_UTILS.CREATE_INTEGRATOR
2.       Associate Form Functions with Integrator. Web ADI will check if the user has access to the form functions using package BNE_SECURITY_UTILS_PKG
3.       Create interface using BNE_INTEGRATOR_UTILS.CREATE_INTERFACE_FOR_API to attach a PLSQL procedure which calls the FND_USER_RESP_GROUPS_API to load the responsibility.
4.       Create Interface Columns for every parameter used in the PLSQL procedure.
5.       Define the layout for the user with the required information like “Responsibility Name”, “Start Date”.
6.       Define the mapping to map the columns between the Spreadsheet and the PLSQL procedure.
7.       Save the work.
Result:
Users can now maintain an excel sheet with the list of responsibilities with the “Start Date” and “End date”.  After every clone users can run the webADI to get back their responsibilities in no time (reduces manual/repeated task).

Scenario 2
Problem Description:

Client is a big online transaction company where we have around 30 Order types in sales order. Every month there will be some changes on the order process program, OM Order workflow or the reports which are sent to customers. Functional users have to take the pain of creating sample orders for all the 30 order types to make sure the existing business functionality is not disturbed due to the change in the code done by technical team.
Solution:
1.       Define Integrator using the package BNE_INTEGRATOR_UTILS.CREATE_INTEGRATOR
2.       Associate Form Functions with Integrator. Web ADI will check if the user has access to the form functions using package BNE_SECURITY_UTILS_PKG
3.       Create interface using BNE_INTEGRATOR_UTILS.CREATE_INTERFACE_FOR_API to attach a PLSQL procedure which calls the custom package to validate and load the data in the Sales Order interface.
a.       PLSQL procedure will move the data to the staging table.
b.      After successful validation of the data. Add a new row in excel with “Record Type” as “I” to call the standard oracle order import process.

4.       Define the layout.
5.       Define the mapping to map the columns between the Spreadsheet and the PLSQL procedure.
6.       Save the work.
Result:

Functional user team work was reduced by 80% as they were able to create the orders using the webADI and check the business process much quickly.