Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 3 Herzlich willkommen – DevDay 2016 Oracle Application Express Schnelles, einfaches und funktionsstarkes Entwickeln von Datenbank-Anwendungen Costantinos Bourboulas Master Principal Sales Consultant Core Technology Juni, 2016 Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Oracle Application Express (APEX) Rapid Web Application Development Framework Entwicklung Webbasierender Applikationen, Verbreitung durch Browser oder Mobile Visualisierung und Pflege von Datenbank-Daten Anwenden gewohnter SQL Kenntnisse und Nutzen von Eigenschaften der Oracle Datenbank Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Entwicklungs- und Einsatz-Optionen Lokal • Installation auf Notebook/PC, mit Oracle Express Edition (XE) oder voller Oracle Datenbank • Autarkes Arbeiten Im Hause • Typischerweise IT als ServiceAnbieter und -Betreiber • Abteilungen verantwortlich für die eigentlichen Applikationen Cloud.oracle.com • • • • Internet-Applikationen Benutzer-Akzeptanz und -Training “Prototyping” & Konzepte testen Consulting entwickelt Anwendungen, die vom Kunden im Hause oder in der Cloud eingesetzt werden Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Oracle Application Express HTML DB 1.5 APEX 2.1 First Release Oracle XE HTML DB 1.6 APEX 2.2 Themes APEX 3.1 APEX 4.0 Interactive Reports Packaged Applications 2004 2005 HTML DB 2.0 SQL Workshop 2006 2007 APEX 3.0 Flash Charts PDF Printing Access Migration 2009 2008 APEX 3.2 Oracle Forms to APEX Conversion APEX 4.2 Websheets Dynamic Actions Plug-Ins Team Development 2010 2011 APEX 4.1 Data Upload Error Handling ROWID Mobile HTML5 Packaged Apps 2012 2015 APEX 5.0 Page Designer Universal Theme Modal Dialogs Statement of Direction: “Oracle continues to invest in the development and support of Oracle Application Express and new versions of Application Express will be released approximately once a year”. http://www.oracle.com/technetwork/testcontent/apex-sod-087560.html Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Oracle Application Express (Oracle APEX) • Anwendungsentwicklung im Browser – Desktop- und Mobile-Applications – Responsive Layouts: "State Of the Art" • Bestandteil der Oracle-Datenbank – Oracle Enterprise Edition (Support) – Oracle Standard Edition (Support) – Oracle XE (Community) • Unterstützte Datenbank-Versionen – 10gR2, 11gR1/R2, 12c Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Application Express: Architektur • APEX-Engine läuft in der Datenbank – Seiten-Processing und Rendering – Webserver übernimmt nur Kommunikation • APEX ist Metadaten-getrieben – Keinerlei Code-Generierung – Seiten-Rendering anhand Metadaten • Nutzung aller Datenbankfunktionen – Spatial, XML, JSON, Multimedia, PL/SQL – Backup & Recovery, HA, Parallel, In-Memory Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Strukturierte Informationen über APEX-Anwendungen Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | APEX Advisor: Praktische Nutzung der Metadaten Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Oracle Application Express (APEX) 3-Tier Architektur Apache OHS Schemas ORDS Oracle APEX Web Logic Server WLS Browser Mid Tier Oracle Datenbank Datenbank Tier Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | APEX-Webserver: Möglichkeiten Browser / Client • Oracle REST Data Services (aka "APEX Listener") – Java (JEE) basiert: Läuft im Java-Container – Zusätzliche Features APEX Webserver • Apache mit mod_plsql • ORDS • HTTP Server mit mod_plsql • DB Embedded Gateway – Derzeit noch am häufigsten installiert – Apache = Oracle HTTP Server (OHS) – Eigenes Oracle HOME • Embedded PL/SQL Gateway – Oracle Listener als HTTP-Server – XDB Protokollserver Oracle Datenbank Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | APEX: Unabhängige Arbeitsbereiche Workspace „Portfolio" User "ADMIN" Application"A" Workspace „Admin" Workspace „Reisen" User "ADMIN" Application„X" User "ADMIN" User "HUGO" Application„T" User "HUGO" Application„V" User "DEV" Schema „Finanz" Schema „HR" Schema „Reisen" Schema „Marketing" Table "A" Table "B" View "D" Table „G" Package "A" View "C" Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Package „Z" APEX-Workspaces am Beispiel • Demoserver apex.oracle.com – Mehr als 10.000 Workspaces Und Datenbankschemas – Mehr als 30.000 Anwendungen – Mehr als 7 Mio Page Views pro Woche • Oracle-Interne APEX-Instanz apex.oraclecorp.com – Mehr als 2.000 Workspaces – Mehr als 5.000 Anwendungen – Produktive Nutzung von APEX durch Fachabteilungen bei Oracle Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Workspace Homepage nach dem Login Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | APEX-Anwendungen Komponenten und Möglichkeiten Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Anwendungen erstellen mit APEX • Arbeiten mit den Assistenten im Application Builder • Fertige Komponenten für Standardaufgaben verfügbar – Static HTML, Berichte, Formulare, tabellarische Formulare Kalender, Diagramme, Custom PL/SQL – Authentifizierung, Autorisierung, Prozesse, Validierungen, Computations – Templates, Themes Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Bearbeiten von Seiten: Page Designer • Alle Seitenbestandteile an einer Stelle bearbeiten • Arbeiten wie mit einer IDE – Komponenten Drag & Drop – Property-Editor – Struktur-Baum – Syntax Highlighting – Undo / Redo – Clientseitige Validierungen IM BROWSER…. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | APEX-Komponenten: Interaktive Berichte Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Interaktive Berichte: Personalisierung out-of-the-box • Zusätzliche Filter (AND, OR, SQL) • Gruppierungen und Aggregate • Formatierungen (Einfärben) und Diagramme • Pivot-Funktion • Email-Subscription, Download als CSV, XLS, PDF, … • Flashback Query für den Endanwender • Speichern der personalisierten Berichte Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | APEX-Komponenten: Diagramme • Vorgefertigte Diagrammtypen – Balken, Torten, Kreis, 2D, 3D – Line, Point, Scatter, Dial • Vorgehensweise – SQL Abfrage als Datenquelle – Chart-Parameter festlegen – Rendering übernimmt APEX Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Zusätzliche Diagramme • Packaged Application "Sample Charts" • Zusätzliche Diagramme – D3.js (Treemap, Bubble, Sunburst) – Dashboard (Badges, Slide-Listen) – Gantt-Charts auf HTML5-Basis • Implementiert als "APEX Plugins" – Nutzung in eigenen Anwendungen – Plugin Export / Import Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | APEX-Komponenten: Formulare • Verschiedene Formulartypen verfügbar – Tabelle oder View, SQL Query, Procedure, Webservice – Report and Form, Tabellarisches Formular – Modulare Dialoge • Auch komplett "manuell" erstellbar – Für ausgefallene Anforderungen – Eingabefelder erzeugen – Formularlogik als PL/SQL Prozess Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Weitere APEX-Komponenten • Kalender-Komponente – Basierend auf "jQuery Full Calendar" – Drag & Drop, Download als ICAL oder CSV • Tree Region – Darstellung hierarchischer Informationen – SQL Query als Datenquelle – Parent und Child-Spalten Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Layout der APEX-Anwendung • Themes und Templates – Templates bestimmen Aussehen einer Komponente – Zusammengehörige Templates ergeben ein Theme (Look & Feel) • Eigene Themes & Templates – Gemeinsame Komponenten – HTML, CSS, Javascript und Webdesign-Kenntnisse hilfreich Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Universal Theme (42) • Ein Theme für alle Anwendungen! – Templates mit Template Options konfigurierbar – Look & Feel mit Theme Styles und Theme Roller änderbar – Kein Eingriff in HTML und CSS mehr nötig – Packaged Application "Universal Theme Sample Application" Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Universal Theme Roller Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | APEX Erweiterbarkeit: Plug-Ins • Plug-Ins können für APEX-Komponententypen geschrieben werden – Region Plugins, Item Plugins (Formulare), Process-Type Plugins, Authentication Plugins, Authorization Plugins • Viele nützliche Plug-Ins in den Packaged Applications – Sample Charts, Sample Geolocation Showcase, P-Track und andere ... – Mehr als 150 Community-Plugins verfügbar apex-plugin.com • Beispiele: – D3 Chart Plugins, Map Plugins – Super LOV Plugin, RSS Reader und viele mehr Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | In "Sample Chart" enthaltene Plug-Ins Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Mobile Development mit Application Express • Universal Theme als Responsive Theme ausgelegt – Optimale Ausnutzung aller Displays • Darüber hinaus "mobile" Application Type – Tablet und Smartphones – Basiert auf jQuery Mobile – Look & Feel wie native Anwendungen – Ab APEX 4.2 verfügbar Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Packaged Applications Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Packaged Applications: Anwendungen out-of-the-box! Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Packaged Applications in APEX • Im Lieferumfang enthaltene, vorgefertigte Anwendungen • „Productivity Applications“ – – – – Lösen konkrete, fachliche Anforderungen, sofort nutzbar Änderungen erst nach "Unlock" möglich Automatische Upgrades und Support, solange "locked" Beispiele: P-Track, Standards Tracker, Data Reporter • „Sample Applications“ – Demonstration bestimmter Features – Standardmäßig "unlocked", kein Support, keine automatischen Upgrades – Beispiele: Geolocation Showcase, Sample Charts, Universal Theme Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Ausblick auf Apex 5.1 Die wichtigsten neuen Eigenschaften => https://apexea.oracle.com/ Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Interactive Grid • Interactive Report - erweitert durch die Möglichkeit, Daten direkt zu manipulieren • Master-Detail-Detail-… Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Oracle JET Charts • Komponente des Oracle Javascript Extension Toolkit – Open Source (JavaScript, CSS3 and HTML5) • Einfache Migration bestehender “AnyChart” Objekte Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Mehr Information Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Oracle Application Express: Bücher Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | APEX Community • Deutschsprachige Application Express Community http://blogs.oracle.com/apexcommunity_deutsch • Mehr als 75 APEX Blogs http://www.odtug.com/apex • APEX auf Twitter @oracleapexnews, #orclapex • The "official" APEX LinkedIn Group https://www.linkedin.com/groups/Oracle-Application-Express-APEX-Official-8263065 • APEX OTN Diskussionsforum https://community.oracle.com/community/database/developer-tools/application_express Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 5 Safe Harbor Statement The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |