PITSS Tech Blog

News zu Java, PL/SQL, Entwicklung & Technologiewechsel

Q&A Oracle APEX: Get your dream application

More than 200 participants in our webcast „Get your dream application with Oracle APEX“ confirm our feelings. For this overwhelming interest and great feedback, we would first like to thank you and Carsten Czarski from Oracle

 
Symplicity and a powerful UI are the most attractive arguments for using low-code environments like APEX. But is it enough to make the switch from an older, complex application? 
 
Almost 75% of the IT decision makers and developers participating in the webcast could imagine APEX as a follow-up technology, but many still doubt the „how“
 
To give more answers, we pick up all your questions and add answers from Carsten Czarski and our powerful APEX-Team. 

List of questions to APEX Development

Where can I get the best information for APEX development if an AD with LDAP is to be connected?
In the online help of the shared components “Authentications“ you’ll see an entry for concepts and parameters of integrating an Active Directory.
What structure and size an APEX application should have?
 It depends on different requirements on the application. How frequent do you see patches in your application, how many developers take care of the application, what are typically customizations, how many different types of business areas the application cover, etc. 
What kind of access my DBA needs to provide in order to start using APEX?
To setup APEX in your database, the DBA needs to have SYSDA rights. 
What is the procedure to take an existing Oracle Form and convert to APEX form?
Follow our proven migration methodology based on the steps: Analysis, Preperation, Migration, Finetuning and Rollout.
We have Forms application with 600 forms and many reports. I am more curious at first about UI transformation. Forms use different UI paradigms based on multiple document interfaces. Obviously APEX is different and conversion of 600 forms into 600 pages is a silly idea. What common practises exist for UI transformation?
This addresses a very good point. From our experience there are two major ways to transform the user interface. On one hand you like to position the APEX UI from a business process perspective. Due to the fact that long living Oracle Forms applications are more feature oriented rather than process oriented, we help to identify used business processes in the running Oracle Forms application. On the other hand, customers want to lighten the user interface. We idenfity fragments of blocks/items/canvases which could be separated on different pages without interfering with lack of business logic and add additional functionality, like e.g. breadcrumbs to not lose context relevant information.
Is it possible to develop mobile apps with oracle APEX? If yes, how?
You have to use the universal scheme, which supports responsive design. You do not develop native apps and with pure APEX only, the app has to be online.
Is it cost effective and scalable as per requirement?
APEX is part of each Oracle database product and therefore covered by the database licence. In the same way, you could scale the database you could scale your APEX environment. 
Is APEX suited for team development ? (30 developers on same application)
In generell yes, but you have to follow some organisational rules. First of all would we advice to split the application into smaller APEX application.

As an example, the APEX Application Builder is itself developed in APEX, consists of 2500 pages and is developed by 10-15 persons. The AppBuilder is divided into ca. 10 smaller subapps.
In such a big development team you should think about different responsibilities, UI, backend, JS, shared components, business areas. At least, you could lock pages for a developer, to avoid working in parallel on the same page.

A team of 30 developers for one application is a big team, especially if you remind, that APEX developers with the low code principles are very efficient. 

How do I show customers that APEX is bullet-proof in the vulnerability test?

You could use a different set of security options, e.g. using HTTPS, rely on autorisation and authentication, controlling the session state, use hash values to avoid URL hacking, etc. 

 

How to run a pdf report in Oracle APEX?

You could use an interactive grid or interactive report to generate PDF documents with ORDS or you could integrate classic report engines like Jasper, BIRT, AOP, PL/PDF or BI Publisher and even Oracle Reports to generate the output.

How do I implement Dashboards in Oracle APEX?

You could use components like charts, carts and other similar objects on your page. 

How do I implement “non-base table items” in APEX?

If you use the non-base table item in a kind of computed column you could assign a similar function as a computation to the APEX element. If you want to have an element without binding this to a column of a select statement, you could bind the element to a PL/SQL procedure to react on any input.

How to handle themes, should you change them and why? What are the implications of changing themes in regards to future APEX upgrades?

This depends on the type of changes you’d like to adopt. If you only need to change CSS relevant parts, use the themeroler to change it. With this you stay in support of any new releases. If you have to change the HTML template, we advice to copy an existing template and adjust this. If a theme is updated by Oracle, you won’t benefit from them. 

How much can I take advantage of when migrating an application from oracle forms and report to APEX?
There are a couple of reasons on different levels. You could get rid of Oracle Weblogic Server and his licence costs, you could adopt new Layout-Components based on HTML, CSS and JS, you get more resources to support the application, you could run your app on mobile devices without code change, you get rid of running, deploying and maintaining Java on clientside, the “new-feature-list-per-release” is larger then in Forms, it’s easier to get integrated into other applications, you could easy define Unit Tests, etc.
How complicated is it to convert traditional Oracle FORMS to APEX app?

This depends on your development pattern you use in Oracle Forms. With an analysis we could identify very fast and failure free all obstacles, the save on investment and all remaining effort per Form module.

How Can I install APEX in an Oracle Express Local Machine?

No difference to other Oracle database products. Follow https://www.oracle.com/tools/downloads/apex-v191-downloads.html for Downloading and instructions for installation.

How could I control the order of dynamic actions?
You can influence the order by assigning a sequence number to the dynamic action. 
Can we convert forms 6i to APEX? How efficient and how many customers have done so far?

Yes, there is no dependency to a specific Forms Version. There are a huge amount of customers in this situation, because with APEX you could transform your Client-Server Application into a modern WebApp without investing into WLS.

Best practises to call APEX from Forms and vice versa?
The question addresses two different points. Either you like only starting one app from the other. In both cases you could use a simple URL-call to the other app. More relevant is the ongoing communication between two running instances of each app. 

From an architectural point of view there are two very different approaches to achieve this. On one hand you could communicate on the client side based on JavaScript and on the other side you could communicate on the backend based on advanced queueing. In both scenarios both APEX and Forms could create and receive JS and AQ.

Is APEX suitable for large business?

This is no longer an issue. Even the updates and changes from the latest releases, like Faceted Search, Dynamic Actions, support of different master/detail scenarios, allow us to use APEX for large enterprise applications.

Is it better to rewrite existent forms applications or migrate them to APEX?

From our perspective, that is not really a question. Independent from the migration from Forms to APEX a migration in general provides the following advantages vs rewriting the code:

  • Rewriting code and developing a fresh application often underestimate the errors, which occurs during the development.
  • Projects for new software development often underestimate the time and cost perspective
  • Rewriting needs to create a requirement specification, which is time consuming, failure effective, and difficult to realize.
  • While rewriting an application you could step into the risk, to miss necessary requirements.
  • Register new requirements considering the business process from a theoretical point of view. The existing app is business proved and you could focus on changes only. 

The code we generate for APEX follows APEX best practices and looks hand made. The existing Forms Application is the best requirement document and after our preparation phase we could generate a very good starting point for the APEX development. New features and requirements could then be developed in APEX.

How could I read data from another database e.g. MSsql?
There are two different opportunities. Either you configure your Oracle Database, in which APEX or the rest of your application data exist to use Oracle heterogeneous Services and create a database link to your MSsql server or you setup a web service Layer on top of your MSsql server and consume these Services in APEX. 
We use Oracle Designer and have added features, via forms library, that auto-generate journaling inquiry and our standard menu options/icons. Can these be implemented with Apex via a plug-in, library, or template?
There are two options. On one hand you could create a master application with components for LOVs, navigation, security, etc and inherit these components on your single pages. All object types, which could not referenced from a master application, like e.g. a region to search for a customer based on specific values, could be covered by PlugIns. 
How to implement file download on APEX Application? The file is located on the OS filesystem. Maybe plugin?
You could use a basic APEX component for this task, but there is a PlugIn with more capabilities, like “Drag&Drop”, Client-upload, etc available.
Can a page be imported to another application in the same workspace or different workspace?

Page exports are (at least currently) limited to the same app in the same workspace. If you plan on using page exports to transfer changes from Dev to Test or Prod, make sure that Workspace IDs are identical on all these systems. When creating a workspace, you can provide the workspace ID – so you can look up the workspace from PROD and create the DEV Workspace with the same ID. Then also make sure that Application IDs are equal on Dev and Prod. Once that all is in place, you can transfer pages from one environment to the other.

Will I be able to create Forms layout on remote database tables using DBLink. Can we develop APEX applications over DB Link to other databases?

Yes – APEX runs inside the Oracle Database. Your Form simply executes SQL and PL/SQL. And when your APEX components can execute a „select * from EMP“, it can also execute a „select * from emp@dblink“

Would like to see a demo of some of our forms converted to APEX

Use our Webinar Special!

Any question left?

Could you find all the answers to your questions on this page? If not, we will be happy to be there for you personally and clarify all open points. Just fill out the form below and we will get back to you as soon as possible.