ApEx : Application Express d'Oracle

Le développement d'application

Avant de débuter réellement le développement, il faut tout d'abord effectuer un peu d'administration Oracle.

Un peu d'administration

Administration des schémas

Tout d'abord, nous pouvons commencer par l'administration des schémas de la base de données:
Un schéma c'est un utilisateur Oracle, muni de droits et d'un ou plusieurs tablespaces pour stocker les données.
Il faut donc prévoir de créer un schéma par application.
Pourquoi effectuer cela ? Pour stocker les données dans les schémas, nous avons deux solutions:

Administration des Workspaces

Enfin, dernier point avant de débuter le développement des applications, c'est l'administration d'ApEx lui-même et de ce que l'on appelle les Workspaces (les espaces de travail).
Il faut distinguer deux types de workspace: Le workspace administrateur concerne tout ce qui est configuration et administration de l'environnement ApEx et des autres workspaces. Généralement, ce que l'on fait, c'est que l'on affecte des schémas à un workspace, puis un workspace à un développeur. Cela permet de superviser l'ensemble des workspaces, de définir dans quel workspace seront développées les applications (grâce aux schémas) et de surveiller l'activité qui s'effectue sur les bases (nombre de connexion, de consultations, statistiques, etc.).
Le ou les workspaces développeur permettent de gérer les applications et les données des schémas. C'est donc dans un workspace développeur que l'on peut créer ses applications et exploiter ses données.

La création des applications

Après la partie administration, nous allons voir comment développer les applications.

Donc, ce qu'il faut bien comprendre, c'est qu'une application est une structure hiérarchique du point de vue "fonctionnalités".

Générallement, lorsque l'on souhaite créer une application, il faut tout d'abord définir son "squelette", c'est-à-dire que l'on imagine l'application dans sa globalité, puis on la découpe en pages et ensuite on la complète petit à petit avec des éléments afin de créer une fonctionnalité. Lorsque la fonctionnalité est terminée, on enchaîne sur une autre fonctionnalité en ajoutant des éléments qui vont interagir entre eux, soit sur la même page, soit sur une page différente.

Il existe également des fonctionnalités communes aux pages, ceci permettant de retrouver le même objet peu importe l'endroit où l'on se situe (par exemple un menu, une barre de navigation, etc.).

Enfin, toutes ces fonctionnalités sont développées à l'aide de deux vues:

Les langages de programmation

Les langages de programmation qui peuvent être utilisés pour développer des applications avec ApEx sont:

Pour gérer ces différents langages entre eux, ApEx possède l'avantage de n'attribuer ces langages qu'à certaines fonctionnalités.
C'est-à-dire qu'ApEx réserve des endroits particuliers pour placer du PL/SQL par exemple, mais à cet emplacement ne pourra pas être mis du javascript et inversement. Les fonctionnalités sont alors cloisonnées spécifiquement à leur langage.
Les langages
Figure 8 – Un emplacement spécifique pour chaque langage

Pour communiquer entre eux, ces langages utilisent des évènements. Par exemple, un évènement javascript (tel que l'appui d'un bouton) peut déclencher l'appel à une procédure PL/SQL pour mettre à jour le contenu d'une table.