Blog: How to establish a database connection after converting Oracle Forms to the web app?

DB Best has successfully completed several Oracle Forms modernization projects, making our customers happy with the new web architecture of their solutions. However, the first question that we regularly hear from our customers sounds as follows. How will the converted web application interact with the database?

The problem

When an Oracle Forms application communicates with the database server, it acts as a client by querying the database server for requested data. Oracle Forms applications manage the database connection internally. In addition to that, Oracle Forms execute queries and run SQL statements internally. To address this issue, we convert SQL code to the stored procedures.

Usually, Oracle Forms interact with the Oracle database via an intranet. However, after we modernize Oracle Forms to the web application, we need to find a secure and reliable solution to connect to the database.

The solution

Generally speaking, the Oracle Forms modernization process may be a part of a database migration project. We often find that our customers want to move off the entire Oracle stack for less expensive and more productive database platform on-premises or in the cloud.

In this case, we recommend our customers to stay out of the loop of Oracle technologies and use Web API protocol. This versatile solution works equally well with any database platform.

Oracle Forms Converter Generic approach

Here’s how the database connection looks like in the Web API code:

1
2
3
<connectionStrings>
    <add name="DALConectionString" connectionString="Data Source=(DESCRIPTION=(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.x.x)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = GEO)));User Id=username; Password=password" providerName="System.Data.OracleClient" />
</connectionStrings>

Generally speaking, we use the following Web API code to execute the database stored procedures:

1
2
3
4
5
6
7
8
[HttpPost]
[Route("api/trigger/call")]
public IHttpActionResult ExecuteStoredProcedure(TriggerCallModel triggerCallModel)
{
    if (!ModelState.IsValid)
        return BadRequest(ModelState);
    return Ok(repo.CallStoredProcedure(triggerCallModel.Name, triggerCallModel.Parameters, triggerCallModel.RecordsChangedOption, triggerCallModel.PackageName, triggerCallModel.SessionId));
}

Using the Web API protocol, your application connects to the database via https. So, you can take advantage of security and encryption that https protocol brings to all Internet users.

Summing the things up, we recommend using Web API to connect your new applications to the database. Also, consider leveraging our powerful Oracle Forms Converter to automate your modernization project.

If you are looking for a reliable partner that future proof your Oracle Forms solutions, please contact us to get started.