OgH – 30 maart 2010 Your Oracle Solutions Partner Olivier Dupont Jan Huyzentruyt Business Case: Flightcare België APEX op de luchthaven in Brussel
OgH – 30 maart 2010 Rondvraag: Handen Omhoog … Voor wie is APEX nieuw? Bij wie is APEX reeds in gebruik? Wie is technisch? - Wie is business? © 2010 iAdvise
OgH – 30 maart 2010 Objectieven: Work APEX in de praktijk bij Flightcare België Voorbeelden van soorten APEX Applicaties die diverse data en/of functionele behoeften dekken Technische invalshoek APEX is een robuust ‘framework’, maar laat ook toe ‘buiten het framework’ te denken © 2010 iAdvise
OgH – 30 maart 2010 Agenda iAdvise & Flightcare België Voorbeeld Applicaties Business voorbeelden Technische voorbeelden Conclusie Vraag & Antwoord © 2010 iAdvise
OgH – 30 maart 2010 iAdvise Opgericht in 2004 > 55 consultants, actief in diverse domeinen Sinds 2006: APEX Core Team O2U: Zuster bedrijf in Nederland Oracle Gold Partner © 2010 iAdvise
OgH – 30 maart 2010 Flightcare België Deel van grote multi-national Klein deel actief op luchthavens: Flightcare group Spanje (Barcelona, …) Italië (Rome, …) Afhandeling van Passagiersvliegtuigen Check-in, ticketing & boarding services Algemene cargo, post - & koerier diensten > 1700 Werknemers in België © 2010 iAdvise
OgH – 30 maart 2010 ICT Afdeling FCB: 1700 werknemers ICT Afdeling: 6 personen 1 manager 2 personen onderhoud apps 1 infrastructuur (pc, printer, …) 2 personen applicatie dev O.a. APEX © 2010 iAdvise
OgH – 30 maart 2010 Flightcare België - Use Cases © 2010 iAdvise Data-driven Applications Develop opportunistic and departmental productivity applications Online Reporting Build SQL-based reporting applications on existing database schemas Access Replacement Consolidate outgrown Access applications to the Oracle database with an APEX Web front end Spreadsheet Web-ification Convert spreadsheets to Web applications where they can be concurrently viewed and edited Oracle Forms Modernization Leverage SQL & PL/SQL declarative programming skills to move Forms applications to HTML / Web 2.0
OgH – 30 maart 2010 Agenda iAdvise & Flightcare België Voorbeeld Applicaties Business voorbeelden Technische voorbeelden Conclusie Vraag & Antwoord © 2010 iAdvise
OgH – 30 maart 2010 Applicaties vanuit business standpunt #1 Registratie Vluchtgegevens #2 Applicatie Portaal #3 ‘Damage On Ground’ #4 Toegangscontrole gebouwen luchthaven #5 Kwaliteitscontrole © 2010 iAdvise
OgH – 30 maart 2010 Business Voorbeelden © 2010 iAdvise #1: Registratie Vluchtgegevens
OgH – 30 maart 2010 Registratie Vluchtgegevens © 2010 iAdvise Opladen telex gegevens
OgH – 30 maart 2010 Business Voorbeelden © 2010 iAdvise #1: Registratie Vluchtgegevens #2: Applicatie Portaal
OgH – 30 maart 2010© 2010 iAdvise
OgH – 30 maart 2010 Business Voorbeelden © 2010 iAdvise #1: Registratie Vluchtgegevens #2: Applicatie Portaal #3: ‘Damage On Ground’
OgH – 30 maart 2010© 2010 iAdvise
OgH – 30 maart 2010© 2010 iAdvise
OgH – 30 maart 2010 Business Voorbeelden © 2010 iAdvise #1: Registratie Vluchtgegevens #2: Applicatie Portaal #3: Damage On Ground #4: Toegangscontrole gebouwen luchthaven
OgH – 30 maart 2010© 2010 iAdvise
OgH – 30 maart 2010© 2010 iAdvise
OgH – 30 maart 2010 Business Voorbeelden © 2010 iAdvise #1: Registratie Vluchtgegevens #2: Applicatie Portaal #3: Damage On Ground #4: Toegangscontrole gebouwen luchthaven #5: Kwaliteitscontrole
OgH – 30 maart 2010 Kwaliteitscontrole © 2010 iAdvise
OgH – 30 maart 2010 Kwaliteitscontrole © 2010 iAdvise
OgH – 30 maart 2010 Kwaliteitscontrole © 2010 iAdvise
OgH – 30 maart 2010 Agenda iAdvise & Flightcare België Voorbeeld Applicaties Business voorbeelden Technische voorbeelden Conclusie Vraag & Antwoord © 2010 iAdvise
OgH – 30 maart 2010 Applicaties vanuit technisch standpunt #1 Applicatie Authenticatie en Authorisatie #2 ‘Flight Delay Analysis’ #3 APEX als rapporteer omgeving #4 Desiderata: Wat is mijn volgende taak? © 2010 iAdvise
OgH – 30 maart 2010 Technische Voorbeelden © 2010 iAdvise #1: Applicatie Authenticatie en Authorisatie
OgH – 30 maart 2010 Applicatie Authorisatie Nood aan een generiek datamodel Typische APEX schermen voor beheer ‘security’ data Eenvoudig om te implementeren Herbruikbaar voor nieuwe applicaties Kwestie van toevoegen van (meta)data © 2010 iAdvise
OgH – 30 maart 2010 Applicatie Authorisatie: Datamodel © 2010 iAdvise GEBRUIKERS ROLLEN APPLICATIES
OgH – 30 maart 2010 Applicatie Authorisatie: Schermen © 2010 iAdvise
OgH – 30 maart 2010 Applicatie Authorisatie: Schermen © 2010 iAdvise
OgH – 30 maart 2010 Applicatie Authorisatie: Schermen © 2010 iAdvise
OgH – 30 maart 2010 Technische Voorbeelden © 2010 iAdvise #1: Applicatie Authenticatie en Authorisatie #2: ‘Flight Delay Analysis’
OgH – 30 maart 2010© 2010 iAdvise
OgH – 30 maart 2010© 2010 iAdvise
OgH – 30 maart 2010 Shortcut Menu’s Hoe hebben we dit geïmplementeerd? Uitgangspunt: Algemene, herbruikbare oplossing Twee dingen nodig Welke ‘regions’ staan op de APEX pagina? Mechanisme om de regio’s te tonen/verbergen © 2010 iAdvise
OgH – 30 maart 2010 Shortcut Menu’s: welke regions? Maak gebruik van de APEX Dictionary Views: SELECT region_name, region_id, authorization_scheme FROM apex_application_page_regions WHERE page_id = p_page_id AND application_id = p_app_id AND upper(template) = upper(p_page_template) ORDER BY display_sequence; © 2010 iAdvise
OgH – 30 maart 2010 Shortcut Menu’s: toon/verberg Maak gebruik van APEX JavaScript API $x_ByClass(pClass, pNd, pTag) -> haalt alle regio’s op van zelfde klasse $x_HideAllExcept(pNd,pNdArray) -> verberg alle regio’s, behalve x $x_Show(pNd) -> toon alle regio’s © 2010 iAdvise
OgH – 30 maart 2010 Shortcut Menu © 2010 iAdvise
OgH – 30 maart 2010 Shortcut Menu © 2010 iAdvise
OgH – 30 maart 2010 Technische Voorbeelden © 2010 iAdvise #1: Applicatie Authorisatie #2: ‘Flight Delay Analysis’ #3: Apex en Rapportering
OgH – 30 maart 2010© 2010 iAdvise
OgH – 30 maart 2010© 2010 iAdvise
OgH – 30 maart 2010 Technische Voorbeelden © 2010 iAdvise #1: Applicatie Authorisatie #2: ‘Flight Delay Analysis’ #3: Apex en Rapportering #4 Desiderata: Wat is mijn volgende taak?
OgH – 30 maart 2010© 2010 iAdvise
OgH – 30 maart 2010 Problematiek “Desiderata” Nood aan ‘Portable Web browser’ Geen software kan geïnstalleerd worden Mozilla Firefox, Portable Edition Zonder ‘muis’ Moet werken op terminals zonder infrastructuur Opgelost door een ‘JavaScript Page Listener’ © 2010 iAdvise
OgH – 30 maart 2010© 2010 iAdvise
OgH – 30 maart 2010 JavaScript Page Listener (1/2) Onload JavaScript function init() { if (document.addEventListener) { // code for Moz document.addEventListener("keydown",keydown,false); } else if (document.attachEvent) { //code for IE document.attachEvent("onkeydown", keydown); } else { document.onkeydown= keydown; } © 2010 iAdvise
OgH – 30 maart 2010 JavaScript Page Listener (2/2) Identify the keys (JavaScript Key Codes) function keydown(e) { var n =e.keyCode; if (n == 120) { // when F9 is pressed doSubmit(‘SAVE’); } else if (n == 115) { // when F4 is pressed doSubmit(‘CANCEL’); } if (!e) e= event; return 1; } © 2010 iAdvise
OgH – 30 maart 2010 Agenda iAdvise & Flightcare België Voorbeeld Applicaties Business voorbeelden Technische voorbeelden Conclusie Vraag & Antwoord © 2010 iAdvise
OgH – 30 maart 2010 Aantal Gegevens APEX-omgeving 51 apex applicaties bestaande uit 750 pagina’s Gemiddeld 20 pagina’s per applicatie 1 grote applicatie (> 100 pagina’s): ‘beheer klachten’ +/ pagina oproepen per week Gemiddeld per dag 1 Top Applicatie 2000 hits per dag (‘Desiderata’) © 2010 iAdvise
OgH – 30 maart 2010 Conclusie Instrument om snel in te spelen op specifieke vragen van de business Flexibel platform Denk “outside the box” Diverse integratie mogelijkheden: “Alles wat in HTML kan, kan je in APEX realiseren” “Alles wat je met de Oracle databank kan, gemakkelijk in APEX te gebruiken” © 2010 iAdvise
OgH – 30 maart 2010 Q&A © 2010 iAdvise
OgH – 30 maart 2010 Dank U Blogs: Meer APEX info op: © 2010 iAdvise