In times of higher individuality, we often see the necessity to adapt the Oracle E-Business Suite (EBS) solution to the demands of our customers. Working with an unsuitable solution is frustrating, cumbersome and often hinders business. Other reasons for customizing the EBS include:
- A portion of the EBS workflows might not fit to a company employee’s habits
- EBS lacks in a functionality
- UI design of the EBS is too complicated
- A customer needs to click through a lot of UIs to do a simple task
As you can see there are several reasons for customizing EBS, to make it fit even more to your business and help you to easily adjust and use your data efficiently!
Customizing the EBS UI is traditionally done in Oracle Application Framework (OAF) or Forms which is a time consuming and often expensive task. This can be changed with Oracle Application Express (APEX). APEX is a rapid application development tool which is shipped for free with the Oracle Database and is easy to integrate into the EBS for customizations. This includes both, Single-Sign-On and mimic the look and feel of EBS in APEX by templates. Thereby a user of EBS doesn’t recognize a switch between technology and it feels fully integrated. APEX development is done in a backend which is accessed with a Web Browser. This can be thought of like a Content Management System for Web Applications on an Oracle Database. The APEX developer uses the Backend to define Web Pages with several inputs from forms, tabular reports or different diagrams. APEX also supports a strong and customizable security mechanism for authentication and authorization. This feature allows us integrate APEX into the EBS with SSO in a simple way. Designing Webpages in APEX is declarative and even programming intensive functionalities like AJAX or partial page refreshes can be implemented in APEX by dynamic actions with low coding. Several wizards to create input masks or reports further shorten development time. The provision of Restful Webservices is also possible in a declarative way, including features like security. This can be used in addition to the EBS Integrated SOA Gateway to provide APIs in a simple way.
The architecture of APEX is shown in figure 1
APEX runs inside the Oracle Database. The http(s) access from the client’s web browser is handled by Oracle REST Data Services (ORDS) which is mainly a Web Archive deployed into a Web Container like Glassfish or Tomcat. The ORDS also handles REST calls defined in APEX. When APEX is the tool of choice for EBS customizations it could either be installed in the EBS database or one can create a database link from the APEX hosting database to the Apps Schema of the EBS.
The architecture of APEX is shown in figure 2
Figure 2: EBS APEX Integration (SSO)
In figure 2 you can see a high-level overview of the SSO architecture. The user that is logged into the EBS frontend has a cookie that is saved in the browser of the user. This cookie is accessible to all applications that are running on the same root domain, but under a different subdomain. This means that Oracle Apex which is hosted on the same root domain but on a different subdomain can access the Session Cookie of EBS and use it to identify the EBS user who just switched from the EBS application to Oracle Apex. Oracle Apex uses that session information to validate it against the EBS session tables. This allows us to identify the user and fetch all the important information from EBS like permissions, Application ID, User Profile Options, Org ID, etc. This process is used as an Authorization process in Oracle Apex. The Apex application will ensure that this process runs every time the user interacts with a page, which means the check happens on every page visit. This will not affect the time it takes to load the page by a significant amount, but it will mean that the user will be logged out of Apex as soon as the EBS session expires. To accommodate for this Oracle Apex can use a “heartbeat” to ensure that if the user is active in Oracle Apex the session will be kept alive.
To conclude, I summarize the advantages of customizing the EBS with APEX:
- Line of business can be involved into the customization process due to the declarative nature of APEX: Design UI first and implement logic later
- Faster time to market due to shorter development cycles in APEX as compared to ADF/Forms.
- Easy and fast creation of reports with smart diagrams
- Existing APEX customization can be changed in an easy and fast way
- APEX has proven in a lot of successful agile projects over years
- APEX is completely free to use in a licensed Oracle Database
- APEX comes with a large set of features to create modern Web Pages like different input forms or reports and diagrams. These features are extended by the Oracle APEX team in short cycles.
- APEX functionalities can be extended by third party plug ins
Reach out to us, to get in touch with your Apps Associates Expert for EBS customization!
Sven Böttcher is a Practice Manager for Custom Development, Business Intelligence and Integration at Apps Associates GmbH located in Germany. He has implemented multiple APEX Solutions, Application Integrations, Data Warehouses and BI Systems across different industries. Sven has over 10 years’ experience in Software development and project management.