AppBuilder

Aus mydatastreamWiki
Zur Navigation springen Zur Suche springen

Der AppBuilder (Abbildung 1) ermöglicht es dem Benutzer von mydatastream individuelle Lösungen zu entwickeln. Dazu werden aus den vorgegebenen Apps heraus (siehe Abbildung 1 oberer Teil) Elemente erstellt (siehe Abbildung 1 unterer Teil).

Hinweise: Im Portal (Dashboard) stehen die Elemente als Dashlets oder als Links im linken Navigationsmenü zur Verfügung. Wobei sich die Verlinkung auf die jeweilige Liste eines Elements bezieht und die Anzeige über Menüeinträge gesteuert wird.

Abbildung 1: AppBuilder


Auf der linken Seite in Abbildung 1 sind zudem die Menüpunkte Parameter und Grundlagen zu finden. Diese zwei Menüpunkte gehören zu den erweiterten Einstellungen des AppBuilders und werden zum Schluss in eigenen Abschnitten erklärt. Über den Menüpunkt Portal gelangt der Benutzer wieder zurück in das Portal.

Die aufgeführten Apps haben unterschiedliche Lizenzen. Welche Vorteile und Einschränkungen die jeweiligen Lizenzen unterliegen, kann auf der Seite https://www.logisoft.de/produkte/ eingesehen werden. Die folgenden Abschnitte wurden durch einen Benutzer mit der Lizenz App.Advanced erstellt.

Um dem Leser die Verbindung von AppBuilder und Apps aufzuzeigen und den Einstieg in die folgenden Abschnitte zu erleichtern werden in Abbildung 2 die wichtigsten Begriff des AppBuilders mit den Apps in Verbindung gebracht. Dabei fällt zudem auf, dass der AppBuilder (Abbildung 1) die gleiche Benutzeroberfläche wie eine App (Abbildung 2 rechts) aufweist.

Abbildung 2: Begrifflichkeiten App-Builder in Verbindung mit den Apps

Das rechte obere Bild in Abbildung 2 zeigt die App Adressen aus dem Vertriebscockpit. Das untere Bild auf der rechten Seite zeigt ein aufgerufenes Formular, dass nach dem Klick auf den Button Umsätze aus dem Bereich Formular-Buttons (Abbildung 2, Punkt 5) aufgerufen wurde.

Eine App (1) besteht aus Elementen und die Elemente bestehen aus Listen (2). Die Listen wiederrum enthalten Felder (3), Formulare (5) und Menüeinträge (4). Zudem können einer Liste Berechtigungen zugeordnet werden. Die Formulare wiederrum bestehen aus Kategorien (6) welche Detaillisten (8) und Felder (7) zugeordnet werden können.

Tabelle Apps

Die Apps (obere Tabelle aus Abbildung 1) sind von LogiSoft vordefiniert und können von dem Anwender nicht verändert werden. Fest verbunden sind die Apps mit den sogenannten Elementen (untere Tabelle). Diese Elemente sind Container für individuellen Ansichten auf die jeweilige Daten. Über der Tabelle mit den Apps (siehe Abbildung 1 oben) befinden sich folgende, auf die jeweilige App anwendbare Funktionalität:

Bei einem Klick auf den Button Bearbeiten öffnet sich ein Dialog mit den Feldern Bezeichnung, Beschreibung, Version, Sprache und Kommentar. Für diese Felder kann der Benutzer jeweils eigene Werte hinterlegen. Hier ist zudem die grundlegende Einstellung für die Sprache hinterlegt. Die festgelegte Sprache wird als Grundlage für die Übersetzung in weitere Sprachen verwendet.

Über den Button Menü werden die zur Verfügung stehenden Elemente im Menü sortiert. Die Reihenfolge hat Auswirkungen auf die Darstellungen der Menüeinträge im Portal. Ob die Elemente über einen Menüeintrag zur Verfügung stehen, muss über die Einstellungen der Elemente festgelegt werden. Daher kann es vorkommen, dass bei dem Dialog Menü nicht alle Elemente aufgeführt werden, falls der entsprechende Menüeintrag nicht über die Einstellung des jeweiligen Elements angegeben wurde. Die Einstellungen der Elemente werden in dem Abschnitt "Tabelle Elemente" erklärt.

Abbildung 3: Übersetzungs-Dialog

Über den Button Übersetzen wird ein Dialog zur Übersetzung der Ressourcen aufgerufen (Abbildung 3). Im Ersten Schritt muss die gewünschte Zielsprache ausgewählt werden. Dabei muss sich die Zielsprache von der grundlegenden Einstellung der Sprache (Siehe Punkt 1 Bearbeiten) unterscheiden, da sonst z.B. von Deutsch in Deutsch übersetzt werden müsste. Wurde eine Zielsprache ausgewählt können in der unteren Tabelle die jeweiligen Einträge übersetzt oder angepasst werden. Dabei kann dieser Prozess entweder manuell geschehen oder der Benutzer führt diesen Schritt automatisiert über den Übersetzer von google aus (siehe Button Mitte rechts in Abbildung 3).

Abbildung 4: Exportieren einer App
Abbildung 5: Importieren einer App (Die ursprünglich zu importierende App wird nicht dargestellt)

Die Buttons Importieren und Exportieren bieten die Möglichkeit die App mit ihren Elementen in einer verschlüsselten Datei zu speichern (Abbildung 4), um diesen dann in einer anderen Umgebung wieder zu importieren (Abbildung 5). Wird eine solche Datei importiert, wird die markierte App um einen Build-Stand erweitert. Nach einem Import steht dann dieser Build-Stand in der App zur Verfügung. Es ist zudem möglich auf einen älteren Build-Stand zurückzukehren (z. B. der Build-Stand unmittelbar vor dem Import).

Abbildung 6: Sichern von Apps

Sichern: Hier werden Buildstände der jeweiligen Apps gespeichert. Alle zughörigen Elemente und auch die Einstellungen der App werden in einem eigenen Buildstand abgespeichert (Abbildung 6). Dabei werden keine alten Buildstände überschrieben. Die Apps und Elemente werden bei Änderungen automatisch gespeichert und es ist nicht notwendig die Änderungen in einem neuen Build-Stand abzulegen. Die Buildstände eigenen sich dazu, um ggf. zu einem älteren Build-Stand zurückzukehren. Wird ein neuer Build-Stand durch sichern erzeugt kann der Vorgang teils mehrere Minuten dauern.

Abbildung 7: Wiederherstellen von Apps

Wiederherstellen: Hier kann auf einen der eingecheckten Build-Stände zugegriffen werden und so kann die App auf einen vorher gespeicherten Buildstand zurückgesetzt werden (Abbildung 7). Je nach Umfang des Buildstandes kann die Wiederherstellung bis zu einer Minute dauern. Nicht mehr benötigte Buildstände können gelöscht werden.

Veröffentlichen: Alle Änderungen an den Apps und den Elementen stehen den Benutzern erst nach einer Veröffentlichung zur Verfügung. Das ermöglicht es dem Benutzer erst zu einem späteren Zeitpunkt, nachdem alle Änderungen vorgenommen wurden, den neuen Stand einer App zu verteilen. Der Veröffentlichungsstatus wird in der Spalte über ein Symbol dargestellt, ein grüner Haken steht dabei für veröffentlicht und ein rotes Ausrufezeichen für nicht veröffentlicht (Abbildung 8). Sobald die App veröffentlicht wurde wird auch das Datum aktualisiert.

Abbildung 8: Status Veröffentlicht einer App über Symbole erkennbar.


Tabelle Elemente

Die untere Tabelle aus Abbildung 1 enthält die Elemente. Elemente sind Container für verschiedene Ansichten auf eine App.

Über den Button Neu kann ein neues Element angelegt werden. Der Dialog für das Erstellen eines neuen Elementes führt durch eine Reihe von Dialog-Schritten (erster Dialogschritt in Abbildung 9). Das Anlegen eines neuen Elements ist auch in einem YouTube Video von LogiSoft erklärt: Die fünf Schritte zur ersten App mit dem AppBuilder.

Abbildung 9: Neues Element im AppBuilder anlegen

In dem ersten Dialogschritt muss eine Bezeichnung angegeben werden und eine Verbindung zu einer Datenbank hinterlegt werden. Bei der Auswahl des Connectors werden die möglichen Datenverbindungen aufgeführt (Abbildung 10).

Abbildung 10: Connector Datenbank

Falls Daten zurückgeschrieben werden sollen, muss eine Zieltabelle angegeben werden (Abbildung 9 unten).

Hinweis: Werden die Daten mit Hilfe des SQL-Builder mit weiteren Tabellen verknüpft, können die Werte aus den verknüpften Tabellen nicht zurückgeschrieben werden. Die entsprechend Felder aus den weiteren Tabellen müssen als nicht editierbar definiert werden, sonst kommt es bei einem Zurückschreiben zu einem Fehler. Wenn Tabellen miteinander in Beziehung stehen sollen und zugleich ein Zurückschreiben in alle Tabellen ermöglicht werden soll, gibt es einen alternativen Weg: In einem späteren Schritt im Assistenten können Formulare erstellt und die verschiedenen Tabellen aus der Datenbank über Detaillisten dargestellt werden. Diese Detaillisten ermöglichen ein Zurückschreiben. Weitere Informationen dazu unter dem Abschnitt Assistent/Formulare.


Abfrage-Assistent

Nachdem die Pflichtangaben Name und Connector eingetragen wurden kann der Dialog-Schritt über den Button Weiter abgeschlossen werden und der Abfrage-Assistent wird aufgerufen (siehe Abbildung 11).

Abbildung 11: Der Abfrage-Assistent des App-Builders ohne ausgewählte Daten.


Mit Hilfe des Abfrage-Assistenten kann, aus den über den Connector zur Verfügung gestellten Tabellen, eine Abfrage erstellt werden. Hilfreich ist dabei die Suche auf der linken oberen Seite in Abbildung 11. Die Tabellen können durch Drag&Drop in die Hauptabfrage gezogen werden (siehe Abbildung 11 großer leerer Bereich rechts oben) und dort mit weiteren Tabellen verknüpft werden. Unterhalb der Diagramm-Darstellung werden die ausgewählten Spalten in Tabellenform aufgeführt. Die erstellte SQL-Anweisungen wird im Textfeld im unteren Bereich angezeigt (siehe Abbildung 12).

Abbildung 12: Der Abfrage-Assistent des App-Builders mit ausgewählten Tabellen und Spalten.

Die in Abbildung 12 ausgewählten Felder werden mittig in einer Tabelle dargestellt. Alternativ kann die SQL-Anweisung im unteren Textfeld bearbeitet werden. Anschließend bietet es sich an die Abfrage über den Button Vorschau (Abbildung 12 unten) zu testen. Dabei werden die Daten der Abfrage dargestellt (Abbildung 13). Hierbei handelt es sich nicht um die spätere Datenansicht der Benutzer, diese wird in einem späteren Schritt über den Assistenten des AppBuilders festgelegt.

Abbildung 13: Die Daten werden in der Vorschau des Abfrage-Assistent dargestellt.

Nach der Überprüfung der Daten kann der Vorschau-Dialog beendet und im Abfrage-Assistent der nächste Dialog-Schritt "Felder(Datenbank)" über den Button "Weiter" aufgerufen werden.


Felder (Datenbank)

Als nächstes werden die Abbildung 12 ausgewählten Felder angezeigt (siehe Abbildung 14).

Abbildung 14: Ausgewählten Felder bearbeiten.

In diesem Dialog-Schritt können grundlegende Einstellungen der Felder bearbeitet werden. Der Name ist von der Datenquelle vorgegeben und kann nicht verändert werden. Folgende Einstellungen können angepasst werden:

  • Bezeichnung
  • Datentyp
  • Länge: Die Länge für den Datentyp String
  • Primär-Schlüssel
  • Pflichtfeld
  • Abbildung 15: Tooltip Datenformat für Felder
    Datenformat: Die möglichen Datenformate werden beim Bearbeiten als Tooltip angezeigt (siehe Abbildung 15)
  • Steuerelement
    • Standard: Im Standard wird dem Benutzer keine Auswahl in der Benutzeroberfläche angeboten
    • Kontrollkästchen: Der Benutzer kann über eine Checkbox eine binäre Entscheidung treffen. Dafür muss das ausgewählte Feld dem Datentyp Bit entsprechen.
    • Auswahlliste: Es öffnet sich für den Benutzer eine Ausswahlliste über die im Dialog hinterlegte Werte oder alternativ von Werten aus einer weiteren Liste (Über die mit dem AppBuilder erstellten Listen siehe AppBuidler Assistent/Listen). Ein Beispiel für eine Auswahlliste mit einer Liste als Datenquelle ist in Abbildung 16 zu sehen.
      • Abbildung 18: Anzeige von "Deutschland" anstatt "DE"
        Wird die Option Auswahlliste verwendet, erscheinen die zusätzliche Einträge Wertfeld, Textfeld und Anzeigefeld. In dem Feld Wertfeld wird der zu speichernde Wert ausgewählt. Als Textfeld wird der in der Auswahl sichtbare Wert ausgewählt (siehe Abbildung 16). Zudem kann ein Anzeigefeld festgelegt werden. Für das Anzeigefeld stehen die Felder der Liste zur Verfügung. Falls beispielsweise für die Auswahl Land anstatt "DE" der Anzeigename "Deutschland" erscheinen soll , muss dieses Feld in der Liste vorhanden sein. Dazu kann über eine zusätzliche SQL-Anweisung das Feld der Liste hinzugefügt werden (Abbildung 17). Anschließend wird nach einer Auswahl das Anzeigefeld zur Anzeige des Wertes verwendet (Abbildung 18).
      • Zudem kann ein Filter festgelegt werden. So können innerhalb von Listen vorgefilterte Such- und Auswahllisten aufgerufen werden. Beispielsweise würde für die Filterung von Ansprechpartnern im Kontext zu der ausgewählten Adresse bei der Suchliste "Ansprechpartner" folgender Filter hinterlegt: "Adresse = [$Field:Adresse]"
    • Suchliste: Die Suchliste bietet die gleichen Möglichkeiten wie eine Auswahlliste (vorheriger Punkt) nur wird hier ein neuer Dialog geöffnet der zusätzlich eine Suchfunktion enthält. Über diese Suchfunktion kann die Auswahl eingegrenzt werden.
    • In einem YouTube-Video von LogiSoft wird das Steuerelement anhand eines Beispiels erklärt: Auswahl- und Suchlisten mit AppBuilder . Auf das Feld Steuerelement wird ab Minute 1:06 eingegangen.


Abbildung 16: Auswahlliste mit einer Liste als Datenquelle
Abbildung 17: Erweiterung der SQL-Anweisung, um ein Feld für das Anzeigefeld zu erhalten.


Wird der Dialog Felder durch einen Klick auf den Button Weiter beendet (Abbildung 14) öffnet sich der erste Dialogschritt des Assistenten (siehe nächster Abschnitt)


Assistent/Listen

Der Assistent (Abbildung 19) leitet den Benutzer Schritt für Schritt durch die Erstellung oder Bearbeitung eines Elements. Die Tabelle Felder ist nicht zu verwechseln mit den Feldern(Datenbank) aus dem vorherigen Abschnitt. Die Tabelle Felder(Datenbank) aus dem vorherigen Abschnitt kann über den Button Felder(Datenbank) am unteren Rand erneut aufgerufen werden (siehe Abbildung 19 unten). Die im Assistenten angezeigte Tabelle Felder enthält die Einträge welche letztendlich in der Liste angezeigt werden sollen (können bei Bedarf aber auch ausgeblendert werden, wenn die Felder z.B. nur für eine Filterung verwendet werden sollen).

Die Tabelle Listen oben Links in Abbildung 19 muss mindestens eine Liste enthalten. Diese Tabellen-Liste ist zentral bei dem Assistent-Dialog. Wird an dieser Stelle eine Liste ausgewählt, hat diese Auswahl Auswirkungen auf alle weiteren Tabellen des AppBuilder Assistenten.

Eine Liste braucht zwingend Felder, welche über den Button Hinzufügen ausgewählt werden können. Die in dem Dialog Hinzufügen verfügbaren Felder entsprechen den Feldern, welche von der Datenbank zur Verfügung gestellt werden (siehe Felder (Datenbank)).

Abbildung 19: App-Builder Assistent


Sobald die gewünschten Felder hinzugefügt wurden, kann eine Vorschau über die Tabelle Listen erzeugt werden. Die Vorschau kann über das Symbol mit der Lupe aufgerufen werden. Wird in der Tabelle Listen eine zweite Liste angelegt, enthält diese Liste wiederum eigene Felder und Berechtigungen.


Tabelle Listen

In Abbildung 20 sind zwei verschiedene Listen zu sehen, wovon die zweite Liste ausgewählt ist. Die jeweils ausgewählte Liste hat Auswirkungen auf die Tabelle Berechtigungen und die Tabelle Felder.

Abbildung 20: AppBuilder Assistent mit zwei Listen.


Insgesamt sind für die Tabelle Listen folgende Einstellungsmöglichkeiten vorhanden:

  • Liste bearbeiten (Symbol: Stift)
  • Liste löschen (Symbol: Mülleimer)
  • Liste duplizieren (Symbol: Zwei Rechtecke)
  • Ereignisse (Symbol: Blitz): Zu bestimmten Ereignissen wie z.B. "Nach Neuanlage eines neuen Datensatzes" können SQL-Anweisungen hinterlegt werden. Weitere Infos zu dem Ereignisfeld sind in dem YouTube-Video: Ereignisse und Standardwerte mit dem AppBuilder speziell ab Minute 1:15 vorhanden.
  • Abbildung 21: Export der Liste als CSV-Datei (Ansicht App)
    Aktionen (Symbol: Hand): Zu den Listen können Aktionen z. B. in Form von SQL-Anweisungen definiert werden. Diese Aktionen können dann in der jeweiligen App über einen Button oder das Kontextmenü ausgeführt werden. Weitere Aktionen sind die Ausführung eines Links (Abbildung 23) und der Export der Liste als CSV-Datei (Abbildung 21). Zusätzlich können die Berechtigungen für die Ausführung einer Aktion festgelegt werden und eine Sicherheitsfrage hinterlegt werden, welche vorab bei sensiblen Aktionen ausgelöst wird und zudem einen individuellen Text ermöglicht wie z.B.: "Möchten Sie den Datensatz wirklich löschen?". Soll eine Aktion nur für bestimmte Datensätze zur Verfügung stehen, kann das in dem Feld SQL-Bedingung definiert werden.
  • Bedingte Formatierung (Symbol: Farb-Fächer): Mit Hilfe der bedingten Formatierung können anhand von SQL-Bedingungen (Abbildung 22) folgende Formatierungen vorgenommen werden
    • Einfärbung der Zeile
    • Einfärbung des Feldwertes
    • Symbol vor dem Feldwert
    • Symbol nach dem Feldwert
Abbildung 22: Neuer Eintrag für die bedingte Formatierung

Die bedingten Formatierungen werden in der Tabellenansicht, Kachelansicht und Listenansicht dargestellt (Abbildung 24). Gibt es mehrere Bedingungen können diese über die Reihenfolge der Tabelleneinträge priorisiert werden (Abbildung 22 im Hintergrund).

Abbildung 23: Hyperlinks und SQL-Befehle über die das Funktionsmenü und das Kontextmenü aufrufen.
Abbildung 24: Bedingte Formatierung in der Tabellenansicht (Ansicht App).


Wird eine Liste neu hinzugefügt oder bearbeitet können folgende Einstellungen bearbeitet werden:

  • Aktivieren/Deaktivieren von Neu, Bearbeiten und Löschen für die Liste. Werden diese Optionen ausgewählt muss zudem eine Zieltabelle angelegt werden, damit das Zurückschreiben der Daten funktionieren kann. Was dabei beachtet werden muss ist in dem Video: "Neu, Bearbeiten, Löschen aktivieren mit dem AppBuilder" zu sehen.
  • Layout (Tabelle, Liste, Kacheln, Karte): Die Bedeutung der jeweiligen Layouts sind in dem Wiki-Eintrag zu den Apps zu finden.
  • Abbildung 25: Inline-Bearbeitung eines Feldes innerhalb einer Liste
    Inline-Bearbeitung: Die Felder in einer Liste können direkt in der Liste bearbeitet werden, ohne vorher den Bearbeiten-Dialog aufzurufen (Abbildung 25).
  • SQL-Filter können verwendet werden, um in Verbindung mit Parametern den Benutzerzugriff einzuschränken. Dazu kann der Editor, der über den Button am unteren Rand des Dialogs verfügbar ist, verwendet werden. In einem Video von LogiSoft wird dieses Feld anhand eines Beispiel-Videos erklärt. Auf das Feld SQL-Filter wird ab Minute 1:20 eingegangen. Für den Eintrag muss SQL-Syntax verwendet werden.


Tabelle Berechtigungen

Die Tabelle Berechtigungen verwaltet die Rollen, über die auf die Listen zugegriffen werden darf. Dabei ist folgende Funktionalität vorhanden:

  • Hinzufügen (Symbol: Plus) - Hier können bestehenden Rollen hinzugefügt werden (Rollen siehe Benutzer/Rollen)
  • Bearbeiten (Symbol: Stift) - Hier kann festgelegt werden welchen Zugriff (Neu, Bearbeiten, Löschen) die Rollen ermöglichen.
  • Löschen (Symbol: Mülleimer) - Hier können bestehende Berechtigungen aus der Tabelle gelöscht werden.


Tabelle Felder

Die Tabelle Felder verwaltet alle Felder welche in der Benutzeransicht als Spalten erscheinen sollen.

Für die Tabelle Felder sind folgende Funktionen vorhanden:

  • Hinzufügen (Symbol: Plus)
  • Bearbeiten (Symbol: Stift)
  • Löschen (Symbol: Mülleimer)
  • Reihenfolge ändern (Symbol: Pfeile)

Wir ein Feld neu hinzugefügt oder bearbeitet, können folgende Einträge vorgenommen werden:

  • Bezeichnung
  • Ausblenden: Gibt an ob die Spalte in der Liste ausgeblendet werden soll.
  • Sortier-Reihenfolge: Hier muss eine Nummer beginnend bei 1 eingetragen werden, um so die Reihenfolge der Sortierung zu bestimmen. Je kleiner die Nummer desto höher ist die Priorisierung bei der Sortierung. Wird dort z. B. eine 1 eingetragen wird die Liste zuerst nach dieser Spalte sortiert, dann nach der Spalte mit dem Eintrag 2 usw.
  • Sortierung: Gibt die Art der Sortierung an (Absteigend/Aufsteigend)
  • Gruppier-Reihenfolge: Analog zu der Sortier-Reihenfolge nur das hier die Reihenfolge der Gruppierung fesgelegt wird.
  • Aggregat-Funktion: Hier kann eine Funktionen ausgewählt werden, welche auf die Daten der Spalte angewendet wird und deren Ergebnis im Fußbereich der Tabelle angezeigt wird. Zur Verfügung stehen die Funktionen: Summe, Minimum, Maximum, Durchschnitt und Anzahl.
  • Editierbar: Binäre Einstellung ob die Felder der Spalte bearbeitet werden dürfen.
  • Funktion: Der Eintrag Funktion ist eine spezielle Angabe um zusätzliche Ansichten oder Funktionalitäten über die Benutzeroberfläche bereitzustellen. Aktuell existieren zwei Gruppen von Feldern:
    • Felder, um das Einbinden der Kartenansicht zu ermöglichen: Karte.Strasse, Karte.Land, Karte.Postleitzahl, Karte.Ort, Karte.Breitengrad, Karte.Längengrad
    • Felder, um das Einbinden von URL-Schemes für Telefon und E-Mail zu ermöglichen: Anruf.Telefonnummer, EMail.Adresse. URL-Schemes ermöglichen es direkt aus dem Browser heraus z.B. das Email-Programm aufzurufen, falls es sich um eine Mail-Adresse handelt und mit dem entsprechenden URL-Scheme versehen wurde.
    • Felder, um das Einbinden der Kalenderansicht zu ermöglichen: Kalender.Startdatum, Kalender.Enddatum, Kalender.Text (Anzeigetext im Kalender), Kalender.Farbe (Anzeigefarbe im Kalender)
  • Linkfeld: Hier stehen Felder zur Auswahl welche über die Benutzerschnittstelle als Link ausgegeben werden. Das Feld muss daher eine URL aufweisen damit der Link in der Benutzerschnittstelle auch korrekt aufgerufen werden kannn.


Wenn in Abbildung 20 auf den Button nächster geklickt wird, wir der nächste Tab im Assistenten aufgerufen: Assistent/Formulare (siehe nächster Abschnitt).


Assistent/Formulare

Abbildung 27: Beispiel Detailansicht

Um einen Bezug zu der Benutzeransicht herzustellen ist an dieser Stelle Abbildung 26 eingefügt. Die Abbildung zeigt eine mit dem AppBuilder erstellten Liste aus der App Vertriebscockpit.

Abbildung 26: Liste von der App Vertriebscockpit wie sie dem Benutzer angezeigt wird.

Ein Formular ist z.B. die Detailansicht einer Liste. In Abbildung 26 ist zu erkennen, dass die erste Zeile ausgewählt ist. Wird nun über das Kontextmenü oder den Button Details die Detailansicht (Abbildung 27) aufgerufen, ist dort das im AppBuilder definierte Formular zu finden.

Abbildung 28: AppBuilder Assistent Formulare

In Abbildung 28 im unteren Bereich sind die Detaillisten aufgeführt. Die Detaillisten können Listen von anderen Elementen in ein Formular einbinden. Zu dem Thema Detaillisten wurde von LogiSoft ein Video veröffentlicht: Master-Detail mit dem AppBuilder. Wobei als Master die Liste eines Elements verstanden wird (z. B. eine Liste wie in Abbildung 26) und Detail als eine Detailliste verstanden wird die in ein Formular eingebettet ist (z. B. Abbildung 27).

Grundsätzlich kann pro Element nur in eine Zieltabelle (Zieltabelle siehe Abbildung 9, Abschnitt Elemente) zurückgeschrieben werden, aber über die Detaillisten können weitere Listen eingebunden werden, um so in die jeweilige Liste zurückzuschreiben. Die in Abbildung 27 dargestellten Ansprechpartner können also bearbeitet werden obwohl es sich um eine andere Tabelle handelt als in dem Feld Zieltabelle des Master-Elements angegeben.

Tabelle Formulare

Die Tabelle Formulare hat folgende Optionen:

  • Neu (Symbol: Plus)
  • Bearbeiten (Symbol: Stift)
  • Aufwärts/Abwärts (Symbol: Pfeile): Beeinflusst die Reihenfolge, in der die Buttons angezeigt werden
  • Löschen (Symbol: Mülleimer): Nur vorhanden, wenn das Formular "Benutzerdefiniert" ist
  • Duplizieren (Symbol: Rechtecke): Nur vorhanden, wenn das Formular "Benutzerdefiniert" ist.
  • Vorschau (Symbol: Lupe): Anzeige der Formulare in einer Vorschau. In der Vorschau können so die Details aufgerufen werden und die Kategorien sowie die Detaillisten angezeigt werden.

Wird ein Formular bearbeitet oder neu angelegt stehen folgende Felder zur Verfügung;

  • Bezeichnung: Die Bezeichnung zusammen mit dem Icon definieren den Button der den Zugriff auf das Formular, z.B. aus dem Portal heraus, darstellt.
  • Beschreibung: Optional
  • Größe: Die Größe des Fensters in dem das Formular geöffnet wird.
  • Abbildung 29: Mehrfachänderung
    Mehrfachänderung: Kann bei benutzerdefinierten Formularen aktiviert werden, um mehrere Datensätze gleichzeitig zu bearbeiten (siehe Abbildung 29). Werden die Reihen ausgewählt und bearbeitet, werden die Änderungen in diesem Feld für alle ausgewählten Reihen übernommen.
  • Icon: Siehe erster Punkt (Bezeichnung). Die grafische Darstellung des Formulars.


Tabelle Kategorien

Mittels der Kategorien können die Formulare übersichtlich gestaltet werden (Abbildung 30). Die Kategorien werden durch die in Abbildung 30 zu sehenden horizontalen grauen Balken dargestellt, welche die zugeordneten Felder und Detaillisten beinhalten. Die Kategorien können zudem über das das rechte Symbol innerhalb von dem grauen Balken ein- und ausgeklappt werden.

Abbildung 30: Formular mit mehreren Kategorien (graue einklappbare horizontale Balken)


Die Tabelle Kategorien hat folgende Optionen:

  • Neu (Symbol: Plus)
  • Bearbeiten (Symbol: Stift)
  • Löschen (Symbol: Mülleimer)
  • Aufwärts/Abwärts (Symbol: Pfeile): Bestimmt die Position innerhalb eines Formulars.

Wird eine Kategorie neu angelegt oder bearbeitet stehen folgende Felder zur Verfügung:

  • Bezeichnung: Wird in dem Formular angezeigt (siehe Abbildung 30)
  • Beschreibung: Optional
  • Aufklappen: Bestimmt ob die Kategorie beim Öffnen des Formulars geöffnet oder geschlossen ist
  • Position: Gibt die Position der gesammten Kategorien an. Standardmäßig werden die Kategorien untereinander dargestellt, alternativ können die Kategorien auch nebeneinander dargestellt werden
  • Anordung: Gibt die Anordung von Feldbeschriftung und Wert der Datensätze innerhalb der Kategorie an. In Abbildung 31 ist die Anordnung der oberen Kategorie nebeneinander und die der unteren Kategorie untereinander
  • Registrierkarte: Kategorien mit dem gleichen Wert in dem Feld Registrierkarte werden in einer Registrierkarte zusammengefasst (Abbildung 31 oben: Registrierkarten Ansprechparter und Details)


Abbildung 31: Darstellung der Kategorien innerhalb von einem Formular


Tabelle Felder

Eine Liste muss mindestens ein Feld enthalten. Eine Ausnahme besteht, wenn eine Detailliste vorhanden ist, dann darf die Tabelle Felder auch leer sein. Die Felder können immer nur einer Kategorie zugeordnet sein. Wenn ein Feld aus der Datenbank bereits einer Kategorie hinzugefügt wurde, kann dieses Feld keiner weiteren Kategorie hinzugefügt werden.

Die Tabelle Felder hat folgenden Optionen:

  • Hinzufügen (Symbol: Plus)
  • Bearbeiten (Symbol: Stift)
  • Löschen (Symbol: Mülleimer)
  • Aufwärts/Abwärts (Symbol: Pfeile): Ändern der Reihenfolge eines Feldes innerhalb von einem Formular

Wird ein Feld hinzugefügt oder bearbeitet können folgende Einstellungen vorgenommen werden:

  • Bezeichnung: Wird als Bezeichnung in dem Formular angezeigt
  • Sichtbar: Bestimmt ob das Feld in dem Formular angezeigt wird
  • Editierbar: Bestimmt ob die Felder in der Spalte bearbeitet werden dürfen
  • Reihen: Anzahl der verfügbaren Reihen in einem Eingabe-Feld. Nummerischer Wert > 1
  • Tooltip: Ein kurzer Text, der angezeigt wird wenn mit der Maus über das Feld gehovert wird


Tabelle Detaillisten

Die Tabelle Detaillisten kann weitere Listen einbinden. In Abbildung 27 sind zum Beispiel die Ansprechpartner als Detailliste eingebunden. Durch das Einbinden von weiteren Listen, welche eine Zieltabelle für das Zurückschreiben der Daten enthalten muss, kann somit über mehrere Tabellen hinweg in den Datenbestand zurückgeschrieben werden. Im Beispiel von Abbildung 27 können so die Daten der Ansprechpartner bearbeitet werden.

Die Tabelle Detaillisten hat folgende Optionen:

  • Hinzufügen (Symbol: Plus)
  • Bearbeiten (Symbol: Stift)
  • Löschen (Symbol: Mülleimer)
  • Aufwärts/Abwärts (Symbol: Pfeile): Ändern der Reihenfolge einer Detailliste in einem Formular. Die Detaillisten erscheinen innerhalb einer Kategorie immer unter den Felder (siehe vorheriger Abschnitt). Sollen die Detaillisten über den Felder erscheinen oder auch zwischen zwei Feldern kann das über mehrere Kategorien realisiert werden.


Wird eine Detaillisten hinzugefügt oder bearbeitet können folgende Felder bearbeitet werden:

  • Bezeichnung: Die Bezeichnung wird groß im Kopfbereich des Formulars dargestellt.
  • Detaillisten: Auswahl der Liste, welche über den AppBuilder innerhalb von einem Element definiert wurde. Bei der Auswahl der Liste öffnet sich ein Dialog, welcher alle vorhandenen Listen zur Auswahl anbietet. Die integrierte Suche kann dabei helfen die gewünschte Liste zu finden.
  • Filterfeld 1-5: Die Filterfelder ermöglichen es die Felder mit dem übergeordneten Datensatz zu verknüpfen. Wird ein Feld ausgewählt, welches den Datensatz der übergeordneten Liste mit der Detailliste verbindet, kann so eine Beziehung hergestellt werden. Über die zusätzlichen Filterfelder können zusätzlich weitere Filter definiert werden. Es sind maximal 5 Filterfelder möglich.
  • Layout: Über die Auswahlliste Layout kann die Ansicht auf die Daten bestimmt werden. In dem Beispiel aus Abbildung 27 wurde z.B. die Kachelansicht verwendet.


Assistent/Menü

Der letzte Tab im Assistenten ist der Tab Menü, welcher nur die Tabelle Menü enthält (Abbildung 32). Dort kann die ausgewählte Liste (siehe Abschnitt Assistent/Liste) dem linken Navigationsmenü und dem Dashboard zur Verfügung gestellt werden. Im Folgenden wird sich nur auf das linke Navigationsmenü bezogen, aber dem Dashboard steht dieser Eintrag ebenfalls zur Verfügung.

Abbildung 32: AppBuilder Assistent Menü

Wenn die gewünschte Liste unter dem Tab Assistent/Listen ausgewählt wurde, kann anschließend zu dem Tab Menü gewechselt werden. Im Tab Menü kann über den Button Neu ein neuer Menü-Eintrag erzeugt und dem Menü-Eintrag ein Titel und ein Icon zugewiesen werden. Es können grundsätzlich mehrere Menüeinträge erstellt werden, in der Regel ist ein einzelner Menüeintrag ausreichend.

Über die Vorschau (Button Vorschau in Abbildung 32) sind die Änderungen an dem Menü nicht ersichtlich, die Vorschau stellt lediglich die Ansicht auf die Listen inkl. der Formulare dar. Um die Änderungen am Menü zu sehen muss die App veröffentlicht werden (siehe Abschnitt Apps). Anschließend kann das Portal geöffnet werden und in dem linken Navigationsmenü ist jetzt der entsprechende Menüeintrag vorhanden. Zudem ist der Menüeintrag als Dashlet für das Dashboard verfügbar und kann auf dem Dashboard platziert werden (siehe Dashboard).

Parameter

Über die Parameter kann die Datenansicht für Benutzer eingeschränkt werden. Anders als bei den Benutzer-Rollen können bei den Parametern konkrete Identifikatoren aus dem Datenbestand verwendet werden. Wie z.B. in Abbildung 33 die Vertreternummer. Über einen Parameter, der im AppBuilder angelegt werden kann, kann geprüft werden, ob die dort angegebene Vertreternummer mit dem angemeldeten Benutzer übereinstimmt. Nur bei einer Übereinstimmung werden die Daten dem Benutzer angezeigt.

Abbildung 33: Beispiel Parameter anhand der Vertreternummer

Um die Vertreternummer zu berücksichtigen muss zuerst ein neuer Parameter im AppBuilder angelegt werden (Abbildung 34).

Abbildung 34: Neuen Parameter im AppBuilder anlegen: Vetreternummer


Dieser Parameter kann anschließend innerhalb der Elemente weiterverwendet werden. Dazu wird im Assistenten des AppBuilders die Bearbeitung einer Liste geöffnet und dort der Editor aufgerufen (Siehe Abbildung 35).

Abbildung 35: Parameter im App-Builder verwenden.

In dem Editor muss SQL-Syntax verwendet werden. Die unteren Tabellen innerhalb des Editors helfen dabei die gewünschten Platzhalter und Felder zu übernehmen (Abbildung 36). im oberen Bereich wird die SQL-Anweisung zusammengesetzt.

Abbildung 36: Platzhalter und Feld in SQL-Anweisung verwenden, um den Zugriff einzuschränken.

Für das Beispiel Vertreternummer wird der festgelegten Platzhalter aus der linken Tabelle übernommen und das Feld aus dem Datenbestand aus der rechten Tabelle. Der SQL-Filter sieht dann wie folgt aus:

@Benutzer.Parameter.Vertreternummer=Vertreter

Die Parameter, welche im App-Builder angelegt werden, stehen automatisch in der Benutzerverwaltung zur Verfügung. Abschließend kann ein bestimmter Benutzer in der Benutzerverwaltung aufgerufen werden, um dort den Parameter-Wert einzutragen (Abbildung 37 - Wert Vertreternummer).

Abbildung 37: Parameter bei Benutzer hinterlegen

Durch diese Anpassungen kann der entsprechende Benutzer ausschließlich Daten mit der Vertreternummer "v0001" aufrufen. Datensätze mit einer anderen Vertreternummer werden dem Benutzer nicht mehr angezeigt (Abbildung 38).

Abbildung 38: Anzeige der Datensätze mit entsprechender Vertreternummer.

Das Anlegen und das Verwenden eines Parameters wird in folgendem HowTo-Video von LogiSoft erklärt:
https://www.youtube.com/watch?v=nllN2vfu3pw


Grundlagen

Unter dem Menüpunkt Grundlagen werde die individuellen API-Keys für "google Maps" und für "google Translate" eingetragen.

Um einen Api Key von den Google Dienste zu erhalten müssen folgende Schritte durchgeführt werden:

  1. Die Google Cloud Konsole aufrufen und anmelden (ggf. neues Konto erstellen)
  2. Auf der linken Seite den Menüpunkt API -> Anmeldedaten auswählen
  3. Den Button "+ Anmeldedaten erstellen" auswählen.
    1. API-Schlüssel erstellen
  4. Zur Sicherheit die Verwendung des Schlüssels einschränken (siehe Abbildung 39)
    1. Unter Website Einschränkungen die Domain https://*.mydata.stream/* eintragen (siehe Abbildung 39 mittig)
    2. Unter API-Einschränkungen den Schlüssel auf 2 APIs einschränken: Geocoding API und Maps JavaScript API (siehe Abbildung 39 unten)
Abbildung 39: Sicherheitseinstellung des Google Api Keys


Anschließend kann der API-Key (oben rechts in Abbildung 39) in die Tabellen des AppBuilders unter dem Menüpunkt Grundlagen eingetragen werden. Weitere Informationen zu der Erstellung eines Google Api-Keys sind auf den Hilfe-Seite von Google abrufbar.