Spotlight - Programmierbeispiel - ADF Rich Client Faces Komponente Dashboard Marcus Hammer Technical Consultant, virtual7 E-Mail: hammer@virtual7.de +++ Bitte wählen Sie sich in die Telefonkonferenz entweder mit 0800/6648515 oder aus dem Mobilfunknetz mit 069/222216106 ein. Anschließend geben Sie die Konferenz-ID: 6528260 mit dem Sicherheitscode: 121212 ein!!! +++
Agenda Vorstellung Warum Dashboards? Einsatzgebiete Beispiel Design-Patterns Die ADF Dashboard Komponente Aufbau und Nutzung Best Practice Umgebung inkl. notwendiger Komponenten (Diagramm zur besseren Visualisierung) Live- Demo Bewertung der Nutzbarkeit Fazit inkl. weitere Infos & Download des Beispielprojekts
Kurzporträt Marcus Hammer Architekt / Technical Consultant 4 Jahre ADF Erfahrung Kontakt: hammer@virtual7.de
Warum Dashboards? Grafisch ansprechende Aufbereitung aktueller oder vergangener Kennzahlen Heben wichtige Informationen hervor Ermöglichen dem User einen personalisierten Einstieg in Anwendungsteile Kann als Rahmenanwendung einer Pillar- Architektur verwendet werden (eingeschränkt)
Design Patterns Analytische Dashboards Auswertung historischer Unternehmensdaten Trend- oder Mustererkennung Was-Wenn Analyse Z.B.: Interface für Data Warehouse Operative Dashboards Auswertung von Unternehmens- oder Anwendungsdaten des aktuellen Tages Performanz Analyse Real-Time
Beispiel Analytisches Dashboard
Beispiel Operatives Dashboard
Beispiel Operatives Dashboard
ADF Dashboard Komponente Aufbau + Nutzung Organisieren von ADF Panel Boxes in einer gekachelten Ansicht (Panel Dashboard) Ausgeblendete Kacheln in Sidebar Customizing über Drag-and-Drop der PanelBoxes
ADF Dashboard Komponente Best-Practices
ADF Dashboard Properties
Deklarative Komponente Beispiel: Toolbar Aufbau (Struktur): Key Attribut zur Identifizierung Attribut zur Unterscheidung zwischen minimiert und maximiert Visuelle Komponenten
Aufbau (Struktur): Sidebar für ausgeblendete Boxes af:iterator mit UI für Darstellung Switcher für Unterscheidung zwischen enabled und disabled Elementen (Berechtigung)
Side Bar Items Teilklasse der DashboardBean
Realisierung durch Drag n Drop
Aufbau Panelbox Panelbox bezieht Inhalt aus Dashboard-Bean Eigentlicher Content wird über Region eingebettet Benutzt BTF mit Parametern in den Bindings Potentielle Panelbox muss im Dashboard vorgehalten werden
Ein-/Ausblenden von Panelboxes Panelbox bezieht Inhalt aus Dashboard-Bean Eigentlicher Content wird über Region eingebettet Benutzt BTF mit Parametern in den Bindings Potentielle Panelbox muss im Dashboard vorgehalten werden
Maximieren von Panelbox Switcher zum Unterscheiden In Maximized Facet alle potentiellen Inhalte vorgehalten Key Attribut der Panelbox (ID) als Entscheider
Problem Speicherung MDS (11.1.1.4) Panelbox muss auf rendered=false gesetzt werden zum Ausblenden Wenn man MDS einfach für das PanelDashboard aktiviert, so werden beim nächsten Start der Anwendung nur die Panelboxen im DOM Modell beachtet, die noch sichtbar sind Nachträgliches einblenden nicht möglich, da nicht mehr existent! Besser: Sichtbarkeit selbst in MDS ChangeManager ablegen und initial immer ALLES vorhalten
Problem Speicherung MDS (11.1.1.4)
Verschieben von Panelboxes Problem : Wenn nicht alle sichtbar, dann konkurriert der DropIndex mit dem ChildIndex Dropindex kennt nur die sichtbaren PanelBoxes ChildIndex auch die aktuell ausgeblendeten Man muss die Position und die Richtung der Verschiebung bestimmen, um die korrekte Position der Panelbox zu setzen Wichtig für Ablage ins MDS!
Live- Demo
Einschätzung Pluspunkte Gute Übersicht als Einstieg in Detailinformationen der Anwendung Personalisierung Intuitive Verwendung Verbesserungspotenzial Einfachere Integration von MDS (sofern nicht schon geschehen)
Fazit Nette Alternative zu Accordions oder PanelTabs zum Untergliedern von Informationen Viel Handarbeit für vollen Funktionsumfang Sehr gute Akzeptanz von Benutzern
Spotlight Nächste ADF Spotlight Session am 04.07.2014: Christian Roesch (Häcker Küchen) ADF Spotlight - Projekte & Referenzen - Darstellung von Kunden- Umsätzen auf Basis von Pipelined Functions @ADFCommunityDE Oracle ADF Community +++ Weitere Informationen bzgl. Webkonferenzdaten und Unterlagen finden Sie auf der OTN ADF Community Seite!!! +++