CM/EBIA
Einführung in CM/EBIA
CM/EBIA ist ein ConSol CM-Add-on, mit dem Reports direkt im Web Client erstellt werden können. Die erstellten Reports werden über Dashboard-Widgets für die Benutzer veröffentlicht.
Die folgende Abbildung zeigt, wie CM/EBIA in ConSol CM integriert ist:
Abbildung 26: Architektur von ConSol CM mit CM/EBIA
Konzepte, Begriffe und Definitionen
Konzept |
Andere Begriffe |
Definition |
---|---|---|
CM/EBIA |
|
Name des ConSol CM-Add-ons, mit dem Reports direkt im Web Client erstellt werden können |
Metabase |
|
Drittanbieter-Software, die in CM/EBIA eingesetzt wird |
Frage |
|
Diagramm oder Tabelle zur Visualisierung bestimmter Daten |
Dashboard |
|
Logische Zusammenstellung von Fragen auf einer Seite, angereichert mit globalen Filtern, Überschriften und Text |
Sammlung |
|
Ordnerartige Struktur, die Diagramme, Dashboards und Pulses enthält. Sammlungen können durch Rollenberechtigungen geschützt werden. |
Pulse |
|
Nachricht mit einer oder mehreren Fragen. Wird in regelmäßigen Abständen an die Benutzer verschickt, um diese über aktuelle Metriken zu informieren. |
Widget |
|
Element, das auf dem ConSol CM Web Client-Dashboard angezeigt wird. Widgets können Diagramme und Tabellen enthalten, die standardmäßig auf die Laufzeitdaten von ConSol CM zurückgreifen. Mit CM/EBIA kann ein Widget auch CM/EBIA-Fragen, die auf DWH-Daten zurückgreifen, enthalten, was deutlich mächtigere Analysen ermöglicht. |
Zweck und Verwendung
Das ConSol CM-Add-on CM/EBIA ermöglicht es, Reports direkt im Web Client zu erstellen. CM/EBIA verwendet die lizenzierte Enterprise-Version der Drittanbieter-Software Metabase, die über SSO integriert ist. Der Zugriff erfolgt über das Menüelement Analysen, das für alle Benutzer mit allgemeinen Administratorberechtigungen oder CM/EBIA-Administratorberechtigungen angezeigt wird. Mit dem Link Vollständige Applikation öffnenin der eingebetteten CM/EBIA-Applikation können Sie CM/EBIA in einem eigenen Tab öffnen, um auf die gesamte Funktionalität, einschließlich der Administration, von CM/EBIA zuzugreifen.
Die erstellten Reports werden den regulären Benutzern über Dashboard-Widgets zugänglich gemacht.
Meistens werden für das Reporting mit CM/EBIA die Daten der DWH-Datenbank verwendet. Dazu wird auf der DWH-Datenbank ein Cube erstellt, der die Daten in einem für das Reporting gut geeigneten Format enthält, siehe Cubes.
CM/EBIA muss separat lizenziert werden.
Verfügbare Reports in CM/EBIA
CM/EBIA ermöglicht die Definition von Reports, die Daten aus einer Datenbank analysieren. Es gibt vier Arten von Reports:
- Frage:
Eine Frage ist ein einzelnes Diagramm oder eine Tabelle zur Visualisierung bestimmter Daten. - Dashboard:
Ein Dashboard besteht aus mehreren Fragen. Sie können Überschriften, Text und Filter hinzufügen, um das Dashboard attraktiver zu gestalten. - Pulse:
Ein Pulse ist eine Nachricht, die eine oder mehrere Fragen enthalten kann. Sie wird in regelmäßigen Abständen über E-Mail oder Slack versendet, um die Benutzer über aktuelle Metriken zu informieren. - Sammlung:
Eine Sammlung kann Fragen, Pulses und Dashboards enthalten. Der Zugriff auf Sammlungen kann über Berechtigungen, die in der CM/EBIA-Administration vergeben werden, eingeschränkt werden.
Grundlegende Aufgaben
Erstellen von Reports in CM/EBIA
Gehen Sie folgendermaßen vor, um einen Report zu erstellen:
- Klicken Sie auf Stelle ein Frage.
- Wählen Sie den Modus:
- Einfache Frage: Ermöglicht die Erstellung einer Frage, die auf einer einzelnen Tabelle basiert. Sie können die Daten über die graphische Benutzeroberfläche filtern und zusammenfassen. Ideal für Einsteiger.
- Benutzerdefinierte Frage: Ermöglicht die Erstellung einer Frage, die auf mehreren Tabellen basiert. Sie können die Tabellen verknüpfen und die Daten dann über die graphische Benutzeroberfläche filtern und gruppieren.
- Native Abfrage: Ermöglicht die Erstellung einer Frage, die auf einer SQL-Abfrage basiert. Nur für Experten.
- Folgen Sie den Anweisungen auf der graphischen Benutzeroberfläche, um die Frage zu erstellen. Sie können folgende Funktionen verwenden:
- Filter: Filtern Sie nach dem Inhalt bestimmter Spalten, um nur einen Teil der Tabellendaten in Ihrem Report zu verwenden.
- Zusammenfassen: Verwenden Sie Anzahlen, Summen, Durchschnittswerte usw. von bestimmten Tabellenspalten in Ihrem Report.
- Visualisierung: Wählen Sie die Art des Diagramms für den Report. CM/EBIA schlägt automatisch passende Arten vor.
- Einstellungen: Passen Sie das Diagramm an, indem Sie die Daten, die Anzeige und die Drill-through-Optionen ändern.
- Nach dem Speichern des Reports können Sie ihn direkt zu einem Dashboard hinzufügen.
- Bearbeiten Sie das Dashboard, das für die Benutzer veröffentlicht werden soll, indem Sie mehrere Fragen, eine Überschrift und Textfelder zur Darstellung des Inhalts hinzufügen.
Wenn das Dashboard fertig ist, müssen Sie ein Widget erstellen, um es für die Endbenutzer zu veröffentlichen.
Veröffentlichen von Reports als Dashboard-Widgets
Sie können die Reports über generische Widgets (siehe HTML-Widgets) auf dem Web Client-Dashboard veröffentlichen.
Verwenden Sie die Methoden der Klasse metabaseService, um die Reports im Widget-Visualisierungsskript zu referenzieren:
- getDashboard(String pId, String pAttributes)
Gibt einen iframe-Tag mit dem Dashboard nach ID zurück - getQuestion(String pId, String pAttributes)
Gibt einen iframe-Tag mit der Frage nach ID zurück - getCollection(String pId, String pAttributes)
Gibt einen iframe-Tag mit der Sammlung nach ID zurück - getMetabaseIframe(String pReturnToURI, String pAttributes)
Gibt einen iframe-Tag mit der CM/EBIA-Applikation nach bestimmten Parametern zurück (kann für den Zugriff auf die komplette CM/EBIA-Applikation verwendet werden) - getMetabaseURL(String pReturnToURI)
Gibt die URL mit dem Authentifizierungs-Token, der als Wert für den Parameter src im iframe-Tag verwendet wird, zurück
Die folgenden Parameter werden in den obigen Methoden verwendet:
-
pId
ID des Dashboards, der Frage oder der SammlungSie können die ID von Fragen und Dashboards in der URL sehen, wenn Sie die CM/EBIA-Applikation in einem eigenen Tab öffnen (Link Vollständige Applikation öffnen auf der Seite Analysen).
- pAttributes
Attribute des iframe-Tags, siehe https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe#Attributes - pReturnToURI
Teil der URL, die für iframesrc verwendet wird (z. B. "/dashboard/ 5", "/question/7")
Das folgende Beispiel zeigt, wie mit der Methode getDashboard() ein CM/EBIA-Dashboard in einem Widget dargestellt wird.
def render(String pParams) {
return """
${metabaseService.getDashboard("3", 'height="700px"')}
""" as String
}
Allgemeine Details über Widget-Visualisierungsskripte finden Sie in Skripte des Typs Widget-Visualisierung.
Erweiterte Aufgaben
Installieren und Einrichten von CM/EBIA
CM/EBIA muss separat lizenziert werden.
Der erste Schritt zur Verwendung von CM/EBIA ist die Installation und Einrichtung der Metabase-Applikation:
- Laden Sie die JAR-Datei von Metabase herunter: https://downloads.metabase.com/enterprise/latest/metabase.jar.
- Starten Sie die Metabase-Applikation mit folgendem Startbefehl:
java -jar metabase.jar
Sie können folgende Variablen setzen:
- -DMB_SESSION_COOKIE_SAMESITE: None, Lax oder Strict. Wenn Metabase in einer anderen Domäne installiert ist als ConSol CM, müssen Sie None verwenden.
- -DMB_JETTY_PORT: Der Port der Metabase-Applikation. Der Standardport ist 3000.
- Öffnen Sie die Metabase-Applikation. Sie läuft standardmäßig auf Port 3000. Erstellen Sie ein Administratorkonto. Sie können die Datenbankverbindung in diesem Schritt oder später hinzufügen.
- Gehen Sie zu Einstellungen -> Lizenz und Abrechnung, geben Sie den von ConSol bereitgestellten Lizenzschlüssel ein und klicken Sie auf Aktivieren.
- Gehen Sie zu Einstellungen -> Allgemein. Der Wert der ConSol CM-System-Property cmas-analytics, metabase.url muss mit dem Wert in Site-URL übereinstimmen, z. B. https://localhost:8080/analytics.
- Gehen Sie zu Authentifizierung -> JWT. Setzen Sie JWT Authentifizierung auf Aktiviert. Geben Sie die URL des ConSol CM-Systems in JWT Identitäts-Provider URI ein, z. B. https://localhost:8080/analytics?auth=metabase. Fügen Sie den Wert in Vom JWT-Signaturschlüssel verwendeter String in die ConSol CM-System-Property cmas-analytics, metabase.secret.key ein.
- Gehen Sie zu Einbettung. Geben Sie die URL des ConSol CM-Systems im Feld Vollständige App-Einbettung ein.
- Geben Sie die URL der Metabase-Applikation in die ConSol CM-System-Property cmweb-server-adapter, csrf.domain.white.list ein.
Im nächsten Schritt werden die Datenbanken hinzugefügt. Dies sind die Datenbanken, deren Daten für die Erstellung von Analysen in CM/EBIA verwendet werden. Normalerweise ist das die DWH-Datenbank mit einigen vorkonfigurierten Cubes.
Es ist ebenfalls möglich, die ConSol CM-Produktivdatenbank mit CM/EBIA zu verknüpfen. Das wird allerdings nicht empfohlen und sollte vorher mit dem ConSol CM-Support abgesprochen werden.
Gehen Sie folgendermaßen vor, um eine Datenbank hinzuzufügen:
- Öffnen Sie die CM/EBIA-Administration.
- Gehen Sie zu Datenbanken und klicken Sie auf Datenbank hinzufügen.
- Geben Sie die Informationen zu Ihrer Datenbank ein und klicken Sie auf Speichern.
CM/EBIA nutzt die Enterprise-Version des Drittanbieter-Produktes Metabase. Daher muss das ConSol CM-System Internet-Zugriff haben, um das Token zu validieren, das Zugang zu den erweiterten Metabase-Funktionen ermöglicht. Weitere Details finden Sie unter https://www.metabase.com/docs/latest/enterprise-guide/activating-the-enterprise-edition.html.
Verwalten der Berechtigungen
Es gibt zwei reguläre ConSol CM-Berechtigungen, die Zugriff auf die CM/EBIA-Applikation erteilen:
- System administrieren (Vollzugriff)
- EBIA Vollzugriff
Eine dieser beiden Berechtigungen ist erforderlich, um den Link Analysen sehen, und Fragen und Dashboards in CM/EBIA erstellen zu können.
Reguläre Benutzer, d. h. Benutzer, die das Dashboard mit den Reports sehen können, werden automatisch in CM/EBIA in der Benutzergruppe Alle Nutzer angelegt. Standardmäßig erhalten sie Zugang zur ganzen Datenbank, d. h. sie können SQL-Abfragen ausführen und die Daten inspizieren. Wenn das nicht erwünscht ist, müssen Sie die Berechtigungseinstellungen in CM/EBIA ändern:
- Öffnen Sie die Administrationsseite und gehen Sie zu Berechtigungen.
- Setzen Sie unter Sammlungsberechtigungen die Berechtigung Sammlung ansehen in der Spalte Alle Nutzer.
- Entziehen Sie unter Datenberechtigungen den Datenzugriff und die SQL-Abfragen in der Spalte Alle Nutzer.
Die Benutzer können die Dashboard-Widgets noch sehen, aber sie haben keinen Zugriff auf die zugrundeliegenden Daten und können den Dashboard-Inhalt nicht ändern. Diese Konfiguration wird in den meisten Fällen empfohlen. Sie können den Benutzern, die Fragen erstellen dürfen, die Berechtigung EBIA Vollzugriff zuweisen.
Konfigurieren der Anzeige der CM/EBIA-Administration
Die CM/EBIA-Seite kann in der Seitenanpassung konfiguriert werden. Der entsprechende Abschnitt heißt analyticsPage. Er hat drei Attribute:
- adminLinkVisible:
Legt fest, ob der Link Admin angezeigt wird. Standardwert: true. - iframeHeight:
Legt die Höhe des iFrame mit der CM/EBIA-Applikation fest. Standardwert: 1000 - navigationLinksVisible:
Legt fest, ob die Links Startseite, Frage erstellen und Vollständige Applikation öffnen angezeigt werden. Standardwert: true
Anpassen von CM/EBIA
Folgende Einstellungen, die in der CM/EBIA-Administration gemacht werden können, haben sich als hilfreich erwiesen.
Abschnitt Allgemein:
-
Nutzen Sie in Sprechende Tabellen- und Feldnamen die Einstellung Ersetze nur Unterstriche und Bindestriche durch Leerzeichen, um zu verhindern, dass CM/EBIA versucht, die Spaltennamen zu interpretieren und zu verschönern.
Abschnitt Sprache:
- Ändern Sie die Einstellungen unter Zeitzone der Abfragen nicht. Verwenden Sie stattdessen die Standardeinstellung der Datenbank.
- Für deutsche Umgebungen: Ändern Sie das Format für Datum, Zeit, Dezimalzahlen und die Währung.
Abschnitt Datenmodell:
- Bearbeiten Sie die Anzeigenamen Ihrer Cubes und meistgenutzten Tabellen und Spalten, um benutzerfreundliche Bezeichnungen bereitzustellen. Dies betrifft sowohl die Bezeichnungen für die Tabellen und Tabellenspalten bei der Erstellung von Fragen, als auch die für die Endbenutzer angezeigten Bezeichnungen.