Blog: Introducing the all-new Oracle Forms Converter

A public sector organization from the US faced a problem with an outdated Oracle Forms-based solution. They had thousands of users but couldn’t keep the existing system running at an optimized quality and usability level. Their first option was to create a completely new web-based application to make their Oracle Forms run on the web. However, we at DB Best came up with a second, more cost-effective option that also saved time. We offered to migrate their Oracle database to SQL Server together with transferring their Oracle Forms to an up-to-date JavaScript code as single-page applications (SPA) running on the web.

To reassure them of the quality of our solutions, we started with a trial engagement and convert one of the most complex forms as a proof of concept (POC). As a result, our Oracle Forms conversion process achieved nearly 100% conversion for these forms!

Oracle Forms Conversion with DB Best

Background on Oracle Forms Conversion

DB Best has over 4 years’ experience with converting Oracle Forms. We have seen it all, starting with basic objects migration for our first clients through continuous growth to the point where we finally cover all their migration needs. Now, we know all the pitfalls and workarounds for the process and this knowledge helps us successfully complete massive migrations for US and EU enterprises.

Migration flow step by step

Our client has the Oracle Forms desktop system running on Oracle Database, correspondingly. They have a range of Oracle Forms interacting with the database within their private intranet network.

During the migration session, we applied our Oracle Forms Converter to migrate the existing forms to the web pages view. The Oracle Forms Converter transforms each form into a single page application (SPA) with modern architecture using ReactJS JavaScript library. Facebook maintains the ReactJS libraries, so it’s designed to work great with any browser and mobile solutions.

Once the Oracle Forms are transferred into SPAs, we connect them to the clients existing Oracle Database through a Web API. And, we use the stored procedures previously uploaded to the DB to run the commands. The following diagram will help to better understand the process:

The new Oracle Forms Converter for an even easier switch

Our latest version of the Oracle Forms Converter offers new levels of performance and accuracy using our converter and emulator technology.

The converter changes FMB forms and PLL files to XML and provides JS code for each of the forms and libraries. As for databases, the Oracle Forms Converter takes the embedded SQL scripts in the forms and converts them into stored procedures for greater maintainability and performance.

As for the emulator, it allows for previously converted JavaScript files to open and run, replicating the logic of the Oracle Forms solution. The emulator is the component whereby we applied the core updates bringing crucial improvements to the whole migration platform. Technically, we created a completely new emulator by switching from AngularJS to ReactJS.

We think our clients will appreciate the advantages of the latest Oracle Forms Converter tool which include:

1) Near 100% of accuracy in automation conversion of the source code: Now, we can automatically convert components and get high-quality results with no extra manual effort.

2) Performance boost: Boost in tool performance as we have only minor elements to convert by additional actions due to the code in ReactJS.

3) Smart recognition of the database schemas: The tool now identifies tables and other types of objects as well as taking the inheritance of objects into account.

4) Improved data type mapping: We also improved the mapping to target data types.

5) Asynchronous procedure: An asynchronous procedure call is available as required according to the modern web application standards.

6) Parameters recognition: The system now recognizes the three types of parameters: in, out, in out. This contributes to advanced migration flow.

7) Node.js package manager (NPM) packages: We created the NPM packages for the visual and logical aspects of the app. This way, we achieved unification, modularity, and the ability to reuse updates for all apps.

8) Refactoring: With refactoring, we can run Unit tests for greater quality and usability.

9) GUI addition: We also added the GUI for better transparency for our migration team and with our clients. Previously, we managed all migration through CLI only.

10) Repeatability: Finally, we managed to provide our clients with converted code which is almost identical to the source code in Oracle Forms. It is clean, clear, and easy to manage.

Converter of Oracle Forms by DB Best

We still have some limitations to overcome

Standing still is like moving backward. And we at DB Best are striving to progress daily. Even when we come up with something epic and fundamental, we always have a plan for enhancement. The same thing applies with the migration platform and Oracle Forms Converter tool where we still have work to do. With future releases, we plan to address these issues with the following strategies:

Web-connected limitations

This one is obvious. If your Oracle Forms solution uses desktop DLLs, Java, OLE-based (Object Linking and Embedding) modules, or commands that make direct calls to the underlying operating system, you are going to need to evaluate these features and look for alternative ways to implement them for web-based solutions. For example, if the Oracle Forms solution needs data from files on the server, you would want to look at using web-based cloud storage instead. In some cases, we’ve come up with replacement code for popular extensions.

Oracle Forms functionality constraints

Oracle has packed Oracle Forms with tons of features over the years. Unfortunately, not all these features are covered completely in Oracle’s documentation. Our team has 100% coverage of the reports of the thousands we have converted over the years. But we are sure that we are missing something. Fortunately, the architecture of our Oracle Forms converter is easy to extend, so we have you covered.

Limited performance for cloud-based deployment

Oracle designed Oracle Forms back in the day of client-server architecture. Oracle Forms did little to cache local data and was instead always going back to the database to get data to support the application. With the converted forms, performance is as good, if not better, when running inside of the on-premises data center. However, performance for real web-based solutions is ok, although not what you would expect with modern applications. Our development team is looking at ways to reduce the calls currently made to the database through data caching to match the on-premises performance.

Experience fast and accurate migration with DB Best

In the use case of our client from the US public sector, we successfully transferred the most complicated of their Oracle Forms modules to the web. Eventually, the customer found no differences in the flow of the original Oracle Form and the converted web-form. And, we currently partner to go on with the migration and build a completely web-based system.

The same magical switch to the modern environment may happen to your system. DB Best is ready to contribute to your outdated system update. Feel free to consult with us on the best way to optimize the migrating your solution. Start switching to the modern environment today!