Offre Apex
Transcription
Offre Apex
Oracle application Express (APEX) Repousser ses limites Présentation d’Axande Apex – repousser les limites Présentation de Oracle Application Express-APEX Cycle de développement d’une application Analyse Modèle de données Développement de l’application par défaut Amélioration de l’application Graphisme, HTML et traduction de l’application Gestion des environnements de développement, de test et de production Intégration à une architecture existante APEX dans la vraie vie. Ajax dans Apex Questions ? Petite application permettant d’interroger les tables d’une application pour le support informatique Application permettant de gérer et interroger les données d’un entrepôt Application de type Intranet pour des besoins internes Application satellite gravitant autour des applications de type ERP et en particulier intégration à Oracle EBusiness Suite, pour des spécifiques Application permettant de gérer toute la partie transactionnelle et grand public d’un site internet Création: 2004 Entreprise privée – Équipe de 25 personnes Spécialisée sur les solution Oracle au niveau base de données, développement, BI et ERP Application Express est bâti avec du PL/SQL et est accédé à l’aide d’un fureteur au travers Oracle HTTP Server (Apache) et mod_plsql. Les applications sont donc générées en temps réel à partir de données stockées dans un schéma de la base de données. L’ajout et la modification d’applications ne génèrent pas plus de code, mais plutôt des ajouts ou des modifications dans le metadata stocké dans des tables Oracle. Apex supporte tout le développement : Gestion des objets base de données et des données: SQL Workshop Création d’applications : Application builder Load des données, monitoring BD : Utilities Développement rapide Permet la standardisation du code. Simplifie la maintenance. Intègre tous les éléments nécessaires. Application complète rapidement accessible. Possibilité d’améliorer toutes les composantes par la suite. Utilities Load de données d’un fichier excel SQL Workshop Requetes Application Builder Application démonstration Gestion de ma collection de films Bibliothèque des films Suivi des prêts aux amis Accès privé pour les amis Définition des traitements Lister les traitements Évaluer selon la grille (Simple, moyen, complexe) Dossiers fonctionnels Information sur les écrans, validations, navigation Traitements Définition de la sécurité Triggers , séquences et champs d’audit CREATE OR REPLACE TRIGGER CATEGORIES_BIU_TRG before update or insert on CATEGORIES for each row begin if inserting then begin select CATEGORIES_SEQ.nextval into :NEW.ID_CATEG from sys.dual; :new.USAGER_CREATION := nvl(v('G_NOM_USAGER'),0); :new.DATE_CREATION :=sysdate; end; end if; :new.USAGER_MODIFICATION := nvl(v('G_NOM_USAGER'),0); :new.DATE_MODIFICATION := sysdate; end; Fonctionnalités par défaut Sécurité par défaut Gestion des sessions Gestion des BLOB par défaut Gestion des accès BD par défaut Widgets de base : Calendrier, pop-up, tri, recherche Listes interactives Listes classiques Démonstration du développement d’une application complète en quelques minutes. Développement en équipe Export de page Verrouillage de page Gestion des sources (cvs ou autres) Sécurité Accès sécurisé « Authentication » (exemple : LDAP) Validation des code_usager et mot de passe Autorisation , accès réservé (ex: administrateur). Réutilisation d’objets Oracle Modèle de données existant Tables, procédures, packages, fonctions, etc. Ajout de nouvelles composantes Master – Detail Région dynamique “Hide and Show” Affichage des images HTML Validations Composantes partagées Listes de valeurs Processus et items d ’Application Fil d’Ariane (Breadcrumb) Onglets Barre de navigation Traduction Processus de traduction multilingues Thèmes et modèles La partie HTML peut être travaillée en parallèle par une personne spécialisée HTML dynamique HTML et CSS standard Variables dans les modèles HTML Démonstration de l’application finale Master – Detail pour les emprunts LOV partagée Régions d’audit Affichage des images des pochettes de films (utilisation pkg util) Authentification avec notre table d’usagers Autorisation pour l’administrateur seulement Application du CSS développé par le graphiste Traduction de l’application Gestion des environnements de dev, test et prod Import et export Supporting objects (Packaging) Objets à mettre en production : Images, structures, données et applications Intégration avec SQL Developper Backups DBA Oracle standard Test QA standard Environnement en mode « Runtime only » en prod Réutilisation des objets Oracle modèles de données existants Tables, procédures, packages, fonctions, etc. Intégration au site web existant Intégration au Style existant Réutilisation de fonctionnalités existantes Javascript et AJAX Webservices Fonctionnalités Oracle de base Gestion des sources Il est possible d’utiliser CVS, Sourcesafe (ou autres) pour y stocker les sources d’applications (Exports APEX) Démonstration hébergée par Axande : http://vision.axande.fr:8080/apex/f?p=118:1 (login DEMO/ demo) Démonstration hébergé par Oracle: http://apex.oracle.com/pls/otn/f?p=35234:1:161590273018990 Exemple hébergé par Axande : appel d’un Web services fournit par Google Map, depuis Apex : http://vision.axande.fr:8080/apex/f?p=120:1:201184858324225 ::: D’autres exemples sur http://www.index-internet.net/info_oracle_apex_exem Applications spécifiques (exemple, clients d’Axande) Applications commerciales : http://www.oracle.com/technology/products/database/ (sur apex.oracle.com , community and partners) - metalink.oracle.com Linux.oracle.com - Apex.oracle.com (données de 2008) - - 1,637,781 pages views - 2,093 distinct applications used in the past week - 2,947 distinct users authenticated in the past week - 224 new workspaces approved - 13,745 total workspaces AJAX (asynchronous JavaScript and XML) JavaScript utilisant le XML pour communiquer avec un serveur lors des requêtes HTTP. Exécution de la requête HTTP Résultat JavaScript : fonction helloworld_ajax <script language="javascript" type="text/javascript"> <!-function helloworld_ajax () { var get = new htmldb_Get(null, $x(pFlowId).value, 'APPLICATION_PROCESS=HELLOWORLD', $x(pFlowStepId).value); gReturn = get.get(); if (gReturn) { alert(gReturn); } } //--> </script> Attributs de Page - Entête HTML PL/SQL : processus d’application HELLOWORLD BEGIN htp.prn(‘Hello world : ‘ || sysdate); END; Exécution de la requête HTTP : Bouton de page Apex cadre bien dans une méthodologie standard Apex est un outil de développement RAD Apex s’intègre bien dans un environnement Oracle existant Apex utilise une architecture simple (Apache + PLSQL) Apex est un bon remplacement pour Forms Programme de conversion vers apex disponibles Apex est Apex est Apex est Apex est requise) entièrement web (HTML et DB ) sécuritaire de plus en plus utilisé (OTN) gratuit (Aucune License supplémentaire Questions ?