Scheer BPaaS · Scheer BPaaS ist per Cloud verfügbar, also aus dem Internet aufrufbar. Dadurch...
Transcript of Scheer BPaaS · Scheer BPaaS ist per Cloud verfügbar, also aus dem Internet aufrufbar. Dadurch...
1 Grundlagen
1
Scheer BPaaS Process Apps 4.1 | Handbuch Version 3 | 23.05.2016
1 Grundlagen
2
Inhalt 1 Grundlagen ..................................................................................................................................................................... 6
1.1 Anwendungsfälle für Scheer BPaaS ................................................................................................................ 6
1.2 Browserunterstützung ......................................................................................................................................... 7
1.3 Tutorial 1: Eine erste App erstellen ................................................................................................................. 8
1.4 Loginseite / Landing Page anzeigen ............................................................................................................ 17
1.5 Startseite / Kachel-Dashboard anzeigen ..................................................................................................... 18
1.6 Projektkacheln anlegen .................................................................................................................................... 19
1.7 App-Projektkachel anlegen ............................................................................................................................. 20
1.8 Kacheln anzeigen, bearbeiten und löschen ................................................................................................ 23
1.9 Kacheln filtern ...................................................................................................................................................... 24
1.10 Passwort ändern ................................................................................................................................................. 25
1.11 Von Scheer BPaaS abmelden ......................................................................................................................... 26
2 Prozesse modellieren ................................................................................................................................................. 27
2.1 Assembly Line - das Fließband-Konzept ..................................................................................................... 27
2.2 Scheer BPaaS Editor verwenden .................................................................................................................... 31
2.3 Strukturieren von Projekten ............................................................................................................................ 33
2.4 EPKs modellieren ................................................................................................................................................ 34
2.4.1 Elemente generieren mittels Sidebar .................................................................................................. 34
2.4.2 Elemente generieren mittels Kontextmenü ....................................................................................... 36
2.4.3 Elemente generieren mittels Ziehpunkt .............................................................................................. 37
2.4.4 Elemente vergrößern und verkleinern ................................................................................................ 38
2.4.5 Elemente verbinden und Verbindungen löschen ............................................................................ 39
2.4.6 Kantenverlauf beeinflussen..................................................................................................................... 40
2.4.7 Elemente markieren ................................................................................................................................. 41
2.4.8 Elemente kopieren und einfügen ......................................................................................................... 42
2.4.9 Elemente löschen ...................................................................................................................................... 45
2.4.10 Arbeitsschritte rückgängig machen ..................................................................................................... 47
2.4.11 Arbeitsschritte wiederherstellen ............................................................................................................ 48
2.4.12 Elemente ausrichten ................................................................................................................................. 49
2.4.13 Elemente in den Vorder- oder Hintergrund legen.......................................................................... 52
2.4.14 Modelle exportieren ................................................................................................................................. 53
1 Grundlagen
3
2.4.15 Modelle importieren ................................................................................................................................ 55
2.4.16 Modellimport bei Profilwechsel ............................................................................................................. 57
2.4.17 Elemente öffnen ........................................................................................................................................ 58
2.4.18 BPMN-Modelle importieren ................................................................................................................... 59
3 EPK-Elemente verwenden ......................................................................................................................................... 62
3.1 E-Mail-Element ................................................................................................................................................... 62
3.1.1 Platzhalter verwenden ............................................................................................................................. 64
3.1.2 Mailempfänger und Inhalte dynamisch ermitteln ............................................................................ 65
4 Formulare modellieren .............................................................................................................................................. 66
4.1 Feldelemente im Formular-Editor verwenden ........................................................................................... 69
4.1.1 Eingabefeld – einzeilig ............................................................................................................................. 69
4.1.2 Eingabefeld – mehrzeilig ........................................................................................................................ 71
4.1.3 Auswahlfeld ................................................................................................................................................ 71
4.1.4 Ankreuzfeld ................................................................................................................................................. 74
4.1.5 Radiobutton ................................................................................................................................................ 75
4.1.6 Datumsfeld .................................................................................................................................................. 77
4.1.7 Klickbares Bild / Icon ................................................................................................................................ 79
4.1.8 Schaltfläche (Button) ................................................................................................................................ 81
4.1.9 Suchfeld ....................................................................................................................................................... 83
4.1.10 Editor für Quellcode ................................................................................................................................. 85
4.1.11 Blockelement .............................................................................................................................................. 86
4.1.12 Formular-Element ..................................................................................................................................... 88
5 Apps konfigurieren ..................................................................................................................................................... 90
5.1 Suchübersicht konfigurieren ........................................................................................................................... 90
5.1.1 Suchfelder konfigurieren ......................................................................................................................... 90
5.1.2 Instanztabelle konfigurieren ................................................................................................................... 91
5.1.3 Suche starten .............................................................................................................................................. 91
5.1.4 Unbeabsichtigtes Filtern verhindern .................................................................................................... 92
5.2 Userdaten (Systemfelder) ermitteln............................................................................................................... 93
5.3 EPKs schachteln .................................................................................................................................................. 96
5.4 EPKs und Apps dokumentieren ................................................................................................................... 101
5.5 Technisches ........................................................................................................................................................ 102
5.5.1 Hashtags für Modelle oder Formularelemente verwenden ........................................................ 102
1 Grundlagen
4
5.5.2 Ausgabemeldungen fürs Debugging verwenden (in 3 Varianten) ........................................... 104
5.6 EPK-Verzweigungen mit XOR konfigurieren ............................................................................................ 106
5.6.1 Übersicht logischer Operatoren.......................................................................................................... 110
6 App ausführen ............................................................................................................................................................ 111
6.1 Funktionen mit Kanten in die EPK einbinden ........................................................................................... 111
6.2 Eine App-Kachel definieren ........................................................................................................................... 111
6.3 Daten in Instanzen und im Container speichern ..................................................................................... 114
6.3.1 Daten einer Instanz speichern ............................................................................................................. 114
6.3.2 Daten im Container speichern ............................................................................................................ 115
6.3.3 Daten des Containers anzeigen .......................................................................................................... 116
7 Weiterführende Konfiguration ............................................................................................................................... 118
7.1 Eigenes Bildmaterial verwenden .................................................................................................................. 118
7.2 Werte eines Auswahlfeldes dynamisch ermitteln .................................................................................... 123
7.3 Inhalte in andere Sprachen übersetzen ..................................................................................................... 125
7.3.1 Modellierungen übersetzen ................................................................................................................. 125
7.3.2 Ausgabemeldungen übersetzen ........................................................................................................ 127
7.4 Metainformationen einblenden ................................................................................................................... 130
7.4.1 Aktuellen Prozessschritt einblenden .................................................................................................. 130
7.4.2 Informationen zur Erstellung und Änderung einblenden ........................................................... 131
7.5 Navigation zwischen Prozessschritten konfigurieren ............................................................................. 132
7.6 CSS-Konfigurationen ....................................................................................................................................... 135
7.6.1 CSS-Elementinformationen ermitteln und zuweisen .................................................................... 135
7.6.2 CSS-Konfigurationen anlegen ............................................................................................................. 139
7.6.3 CSS-Konfigurationen zuweisen ........................................................................................................... 140
7.6.4 CSS-Konfiguration projektgenau für mehrere EPKs ...................................................................... 141
7.6.5 CSS-Konfiguration für eine EPK .......................................................................................................... 141
7.6.6 CSS-Konfiguration für ein Formular ................................................................................................... 142
7.6.7 CSS-Konfiguration für ein einzelnes Formularfeld per CSS Zusatzklasse ............................... 146
7.6.8 Widget-Tabelle für CSS-Einstellungen .............................................................................................. 149
8 Berechtigungskonzept mit Rollen ......................................................................................................................... 152
8.1 Allgemeine Hinweise ....................................................................................................................................... 152
8.2 Konfigurationshinweise: .................................................................................................................................. 153
8.3 Rollenspezifische Suchfilter einstellen ........................................................................................................ 160
1 Grundlagen
5
8.4 Rollenspezifische Schreib-/Leserechte einstellen .................................................................................... 162
9 Bekannte Einschränkungen .................................................................................................................................... 165
10 Vermerk ................................................................................................................................................................... 166
1 Grundlagen
6
1 Grundlagen
1.1 Anwendungsfälle für Scheer BPaaS
Scheer BPaaS steht für Business Process as a Service der Scheer GmbH und ist eine webbasierte Lösung zur
Geschäftsprozessmodellierung und –ausführung. Scheer BPaaS ermöglicht maßgeschneiderte und schnell
anpassbare Lösungen zur einfachen Digitalisierung von Geschäftsprozessen:
Scheer BPaaS ist per Cloud verfügbar, also aus dem Internet aufrufbar. Dadurch muss lokal am Rechner nichts
anderes als ein aktueller Webbrowser installiert sein. Je nach Verwendungszweck kann die generierte Anwendung
zur Ausführung auf Desktop, Tablet oder Smartphone optimiert werden. Die Stärken von Scheer BPaaS liegen darin,
dass Prozesse nicht nur modelliert sondern direkt als Process App ausführbar gemacht werden können. Die
Beschreibung einer Abfolge von Datenerfassungs- und Anzeigeformularen führt dazu, dass eine Webanwendung
entsteht. Die Formulare mit der dahinterliegenden Geschäftslogik sind direkt im Browser aufrufbar. Klassische
Workflow-Szenarien lassen sich mit Scheer BPaaS genauso abbilden wie die Vernetzung externer Systeme.
Die Umsetzung der Prozesse in ausführbare Apps erfolgt in vier Schritten:
1. Scheer BPaaS starten 2. Prozess modellieren 3. Modell testen 4. App verwenden
1 Grundlagen
7
1.2 Browserunterstützung
Scheer BPaaS bietet eine Vielzahl an Interaktionsmöglichkeiten mit seiner Benutzeroberfläche („Rich
Internet Application“) und nutzt HTML5. Während das bloße Anordnen von Elementen keine großen
Anforderungen an den Browser stellt (Modellierung), ist für das Ausführen von Process Apps ein
leistungsstarker, moderner Browser mit Unterstützung von JavaScript erforderlich.
Modellierung Process Apps
Chrome 40 oder aktueller X X
Firefox 38 oder aktueller X X
Internet Explorer 10 X
Internet Explorer 11 X X
Microsoft Edge X X
Safari 8 oder aktueller X X
Scheer BPaaS 4.1 kann zwar mit Internet Explorer 10 aufgerufen werden. Empfehlenswert ist aber die
Verwendung von Internet Explorer 11 oder seinem Nachfolger Edge, da der Support seitens Microsoft
eingestellt wurde und zukünftige Versionen von Scheer BPaaS den IE10 auch nicht mehr unterstützen
werden.
Es gibt eine Reihe weiterer Webbrowser, mit denen Scheer BPaaS aufgerufen werden kann, aber der
Support der Scheer GmbH beschränkt sich auf die in der Tabelle gelisteten Browser.
Üblicherweise sind Browser so eingestellt, dass sie die Informationen aufgerufener Seiten im Browser-
Cache speichern. Dadurch kann die Internetseite beim nächsten mal schneller aufgerufen werden.
Beim Arbeiten mit einer neuen Scheer BPaaS-Version achten Sie bitte darauf, dass Ihr Browser-Cache
geleert ist. Die aktuelle Version erkennen Sie nach dem Einloggen an der Quick-Info im ?-Icon.
Damit das neue Coding auf jeden Fall greift, sollten Sie
■ in Chrome rechts oben im Hub unter Einstellungen > Erweiterte Einstellungen die Browserdaten löschen
■ im Firefox im Menü Chronik die neueste Chronik löschen
■ im Internet Explorer im Menü Extras den Browserverlauf löschen
■ in Edge rechts oben im Hub auf das Symbol Verlauf klicken und den Gesamtverlauf löschen
■ Auf dem Mac mit Safari verwenden Sie die Tastenkombination "cmd" + "alt" + "E".
Die Abfrage, ob Sie den Cache wirklich löschen wollen, bestätigen Sie mit ENTER.
1 Grundlagen
8
1.3 Tutorial 1: Eine erste App erstellen
Wenden Sie die vier Schritte an und erstellen Sie eine erste App zur Erfassung von Mailadressen. Die App
soll in einem neuen Projekt Mailadressen gespeichert werden, und außer der Mailadresse sollen auch Vor-
und Nachname der Person gespeichert werden. Die App wird später verwendet, um eine Adresse für den
Mailversand auszuwählen.
lfd.Nr. Aktion
Schritt 1: Scheer BPaaS starten
1.1 Rufen Sie in Ihrem Browser die Adresse scheer-bpaas auf und melden Sie sich an:
1.2 Auf der Startseite klicken Sie auf das Plus-Zeichen.
Mittels Drag & Drop legen Sie ein neues Projekt für die Modellierung an.
1 Grundlagen
9
lfd.Nr. Aktion
1.3 Überschreiben Sie den Vorschlagswert mit einem passenden Projektnamen,
z.B. Mailadressen.
1.4 Im Kachel-Dashboard sehen Sie nun die blaue Profilkachel und eine grüne Projektkachel.
Klicken Sie erneut auf den Plus-Button und ziehen Sie ein Neues App Projekt aus der Liste.
1 Grundlagen
10
lfd.Nr. Aktion
1.5 Im sich öffnenden zweistufigen Process App Wizard bestätigen Sie das Projekt mit Weiter.
1.6 Überschreiben Sie den Vorschlagswert mit einem passenden Namen, z.B. Mailadressen
1.7 Als Ergebnis sehen Sie nun das rote App-Projekt Mailadressen mit den zugehörigen dunkelroten
Kacheln zur Neuanlage und zum Suchen von App-Instanzen (Datensätzen).
Klicken Sie auf die App-Projekt-Kachel.
Der BPaaS-Editor startet in einem neuen Browser-Tab.
Dadurch wird festgelegt, dass
die neue Process App im
Projekt Mailadressen liegt.
1 Grundlagen
11
lfd.Nr. Aktion
Schritt 2: Prozess modellieren
2.1 Modellieren Sie das App-Projekt in der Weise, dass die Daten zu Vorname, Nachname und
Mailadresse eingegeben werden können. Dazu öffnen Sie das Referenzmodell (Doppelklick).
2.2 Ebenso öffnen Sie das Formular.
2.3 Durch Anklicken des Text Elements können Sie den Feldnamen überschreiben und weitere
Feldeigenschaften festlegen, beispielsweise ob es sich um ein Pflichtfeld handelt oder nicht.
Zusätzliche Formularfelder ziehen Sie aus der Sidebar Neue Elemente.
1 Grundlagen
12
lfd.Nr. Aktion
2.4 Modellieren Sie die Felder für Vorname, Nachname und obligatorische Mailadresse.
Verwenden Sie ein Blockelement als Überschrift.
Der Name des Blockelements ist für den App-Anwender nicht sichtbar.
Tragen Sie den Inhalt als HTML-Code direkt im Feld ein:
2.5 Alle Elemente sind frei verschiebbar.
Einen Gesamteindruck erhalten Sie, indem Sie das Modell mit dem Play-Button ausführen:
2.6 Navigieren Sie im BPaaS Editor zurück zum App-Projekt und öffnen Sie das Suchmodell.
1 Grundlagen
13
lfd.Nr. Aktion
2.7 Öffnen Sie die Konfiguration der Suchübersicht. Dort können Sie die zuvor erfassten Formularfelder
suchen und aus der Trefferliste in die Suchübersicht ziehen.
Die Felder beider Formulare sind somit verlinkt.
Eine Änderung etwa des Feldnamens wirkt sich auch auf das andere Formular aus.
2.8 Alle hier konfigurierten Felder können vom App-Anwender verwendet werden, um innerhalb der
Instanztabelle zu suchen. Klicken Sie die Instanztabelle an, um festzulegen, welche Felder in der
Tabelle sichtbar sein sollen. Die Einstellung erfolgt durch Anklicken von Spaltenmodell konfigurieren.
1 Grundlagen
14
lfd.Nr. Aktion
2.9 Die Voreinstellungen der Spaltenkonfiguration können Sie überschreiben:
Zusätzliche Zeilen fügen Sie über den Plus-Button ein. Überzählige Zeilen können Sie über den Minus-
Button löschen, bis auf die erste Zeile. Die Spaltenreihenfolge kann über die Pfeil-
Buttons geändert werden.
Nach dem Speichern und erneutem Aufruf sehen Sie, dass der Feldname als Spaltenname
übernommen wurde. Sie können vom Feldnamen abweichende Spaltennamen vorgeben.
Schritt 3: Modell testen
3.1 Sie können das Suchmodell mit dem Play-Button abspielen:
3.2 Ändern Sie beispielsweise den Spaltennamen wieder in Email, damit er mit dem Suchfeld
übereinstimmt. Beim Abspielen wird nur das aktuelle Modell getestet.
Der Neu-Button zum Anlegen von Instanzen verzweigt auf das Referenzmodell und kann vom
Suchmodell aus nicht getestet werden:
1 Grundlagen
15
lfd.Nr. Aktion
3.3 Durch Drücken der F12–Taste öffnen sich im Browser die Entwicklerwerkzeuge.
Die Console enthält die bei Programmausführung geschriebenen Logs.
An dieser Stelle werden auch eventuelle Warnungen und Fehlermeldungen ausgegeben.
Die Ausgabe in der Console kann vor dem nächsten Abspielen gelöscht werden.
Schritt 4: App verwenden
4.1 Ausgehend von der Startseite (Kachel-Dashboard) rufen Sie die Suche auf.
1 Grundlagen
16
lfd.Nr. Aktion
4.2 Legen Sie eine neue Instanz an.
Nicht ausgefüllte Pflichtfelder werden verprobt:
4.3 Nach dem Speichern und dem Wechsel zurück zur Suche erscheint eine erste Instanz:
Der Zähler bei der Suchübersicht-Kachel wird aktualisiert:
Die Suche nach Instanzen startet automatisch, nachdem die Eingabe durch Drücken von ENTER oder
Klicken außerhalb des Eingabefeldes abgeschlossen wurde.
Durch Anklicken in der Suchübersicht können bestehende Instanzen editiert werden.
1 Grundlagen
17
1.4 Loginseite / Landing Page anzeigen
Die Internetadresse zum Aufruf von Scheer BPaaS in der Cloud sieht folgendermaßen aus:
Scheer BPaaS Produktivsystem Automatische Auflösung
scheer-bpaas.de https://scheer-bpaas.de/oauth/nd/welcome/landing.html
Die Internetadresse führt automatisch zur Loginseite, der Scheer BPaaS Landing Page.
Hier die Darstellung am Beispiel von Google Chrome:
Anwender ohne Zugangsdaten können sich Registrieren [4] und dadurch den Systemadministrator mit der Anlage
eines Scheer BPaaS-Nutzerkontos beauftragen. Die mit Stern gekennzeichneten Felder sind erforderlich, damit das
Benutzerkonto eingerichtet werden kann. Die wesentlichen Angaben sind Vor- und Nachname, E-Mail-Adresse und
Passwort.
Zum Einloggen verwenden Sie die Zugangsdaten, die Sie vom Systemadministrator erhalten haben. Nach Eingabe
von E-Mail [1] und Passwort [2] können Sie sich Anmelden [3]. Sollten Sie Ihr Passwort vergessen haben, können Sie
durch Klick auf das Symbol [5] veranlassen, dass Sie ein neues Passwort an Ihre E-Mail-Adresse zugesendet
bekommen.
Mittels Landesflaggen [6] können Sie in eine andere Sprache umschalten.
Die Links zum Impressum [7], zu weiteren Informationen über Scheer BPaaS [8] und zur Kontaktaufnahme [9] führen
zu den entsprechenden Seiten im Internet.
[1]
[2]
[3]
[4]
[5]
[6]
[7] [8] [9]
Zum Registrieren
erforderliche Angaben
1 Grundlagen
18
1.5 Startseite / Kachel-Dashboard anzeigen
Nach dem Einloggen befinden Sie sich auf der Startseite, dem sogenannten Kachel-Dashboard.
Bei einem neu angelegten Scheer BPaaS-User mit nur einem hinterlegten Berechtigungsprofil enthält die
Startseite anfangs nur eine einzige Kachel [1].
Mittels Plus-Button [2] können Sie Projekt-Kacheln anlegen, und mit dem Filter-Symbol [3] können Sie die
Anzahl angezeigter Kacheln einschränken. Insgesamt gibt es vier verschiedene Typen von Kacheln:
Profilkachel Projektkachel App-Projektkachel Startkachel
Neue Profilkacheln
können nur dadurch
entstehen, dass der
Systemadministrator
dem Anwender
zusätzliche
Berechtigungsprofile
zuweist.
Organisatorische
Klammer (ein „Raum“)
über App-Projekte und
modellierte Prozesse.
Ein Profil kann mehrere
Projekte beinhalten.
Organisatorische
Klammer für eine
vorkonfigurierte App.
Jedes App-Projekt ist
einem Projekt
zugeordnet. Zu einem
App-Projekt gehören
zwei Startkacheln.
Eine App kann gestartet
werden über den Aufruf
der Startkachel zur
Neuanlage eines
Vorgangs (Instanz) oder
auch über die Kachel zur
Suche nach Vorgängen.
Der Systemadministrator hinterlegt bei einem Profil einen NameSpace. Über den NameSpace
können die gespeicherten Objekte in der Datenbank gefunden werden. Unterschiedliche
NameSpaces gehören zu unterschiedlichen Profilen. Sinn der Profile ist es, Datenmengen voneinander
abzugrenzen. Je nach Aufgabenbereich bekommen die Anwender unterschiedliche Profile zugewiesen.
[1]
[3] [2]
1 Grundlagen
19
1.6 Projektkacheln anlegen Zum Modellieren in Scheer BPaaS benötigen Sie ein Neues Projekt.
lfd.Nr. Aktion
1 Klicken Sie den Plus-Button an.
2 Ziehen Sie ein Neues Projekt auf die Startseite.
3 Tragen Sie einen aussagekräftigen Namen ein und erläutern Sie das Projekt durch eine
Beschreibung. Wählen Sie ein Profil aus, zu dem das Projekt gehören soll.
Nach dem Speichern und Schließen steht die
Projektkachel mit den angegebenen Werten
zur Verfügung
.
Falls Sie das Projekt individueller gestalten wollen, können Sie die Standard-Adresse für das
Hintergrundbild verändern und durch eine andere Bild-URL ersetzen.
1 Grundlagen
20
1.7 App-Projektkachel anlegen Die rote App-Projektkachel erleichtert das Anlegen von Apps: sie enthält bereits zwei dunkelrote
Startkacheln einer einfachen aber lauffähigen App. Meistens ist es leichter, die vorkonfigurierte App zu
erweitern statt innerhalb der grünen Projektkachel eine neue App zu erstellen.
lfd.Nr. Aktion
1 Klicken Sie den Plus-Button an.
2 Ziehen Sie ein Neues App-Projekt auf die Startseite.
3 Es öffnet sich der Process App Wizard zur Anlage einer App in zwei Schritten:
Im Schritt 1 wählen Sie das Projekt, zu
dem das App-Projekt gehören soll.
Gehen Sie Weiter zum nächsten Schritt.
1 Grundlagen
21
lfd.Nr. Aktion
4 Im Schritt 2 tragen Sie einen aussagekräftigen Namen ein.
Erläutern Sie das App-Projekt durch eine Beschreibung:
Im Allgemeinen reicht es aus, wenn Sie für Process App „Neuanlage“ die Voreinstellungen
übernehmen.
Sie können aber auch die Eintragungen beim Ausführungsmodell und Initialisierungsmodell
überschreiben und damit ein vom Standard abweichendes App-Verhalten konfigurieren.
5 Bei Process App „Suche“ gibt es ebenfalls Voreinstellungen, die üblicherweise genauso
übernommen werden:
1 Grundlagen
22
lfd.Nr. Aktion
6 Die Verwaltungsmodelle können Sie normalerweise so eingestellt lassen wie sie sind.
Änderungen an Verwaltungsmodell, Organisationsmodell und Benutzerverwaltung sind dann
relevant, wenn die App rollen- bzw. userspezifisch ausgeführt werden soll. Näheres dazu wird im
Kapitel Berechtigungskonzept mit Rollen behandelt.
7 Bei Erweiterte Einstellungen kann im Feld Name der Kollektion ein Namensraum in der Datenbank
definiert werden, in dem die mit der App modellierten Instanzen gespeichert werden.
Das Ändern des Namens zu einem späteren Zeitpunkt, wenn bereits Instanzen angelegt wurden,
führt dazu, dass die App geleert wird. Ab dem Zeitpunkt werden nur diejenigen Instanzen
angezeigt, die nach der Änderung neu angelegt werden. Der Name kann auch wieder auf den
alten Wert geändert werden. Dann erscheinen in der App wieder die alten statt der neuen
Instanzen.
8 Nach dem Speichern steht die hellrote App-Projektkachel mit den zwei zugehörigen Startkacheln
zur Verfügung.
1 Grundlagen
23
1.8 Kacheln anzeigen, bearbeiten und löschen Profilkachel Projektkachel App-Projektkachel Startkachel
Bei Profilkacheln gibt es
keine Anzeige von
Details. Sie sind für
einen Scheer BPaaS-
User nicht veränderbar.
Insbesondere können
sie nicht
gelöscht werden.
Per Quick-Info [1]
wird das Profil
angezeigt, zu dem ein
Projekt gehört:
Bei App-Projekten
werden Profil und
Projekt angegeben:
Bei Startkacheln verweist
der Info-Button auf das
App-Projekt:
Mit dem nächsten
Symbol [2] kann
eine Kachel gelöscht
werden. Bevor das
Löschen erfolgt, muss
eine Sicherheitsabfra-ge
bestätigt werden.
Beim Aufruf von
[3] sind die Ein-
stellungen änderbar.
Bei Startkacheln gibt es
zusätzlich ein Augen-
Symbol [4]. Durch
Anklicken öffnet sich ein
neuer Tab im Browser.
Es wird das
EPK Referenzmodell
beziehungsweise das
EPK Suchmodell
angezeigt.
Das Umbenennen der App-Projektkachel wirkt sich nicht auf die Startkacheln aus. Man muss die
Namensänderung manuell nachziehen, indem man Referenz- und Suchmodell innerhalb des App-
Projektes ändert..
Die Zugehörigkeit eines Projektes zu einem Profil ist im Nachhinein nicht mehr änderbar.
Die Zugehörigkeit eines App-Projektes zu einem Projekt ist ebenfalls nicht änderbar.
Falls Sie Projektkacheln individueller gestalten wollen, können Sie die Standard-Adresse für das
Hintergrundbild verändern und durch eine andere Bild-URL ersetzen.
Projektkachel App-Projektkachel Startkachel Neuanlage Startkachel Suche
[1] [2] [3] [4]
1 Grundlagen
24
1.9 Kacheln filtern Im Laufe der Projekte kann sich die Startseite schnell mit Kacheln füllen:
Der Filterbutton [1] bietet die Möglichkeit einer Freitextsuche [2] und außerdem die Filterung nach
Kacheltyp [3] oder Profilen [4]. Das Filtern ist spätestens dann von Nutzen, wenn nicht mehr alle Kacheln
auf die Startseite passen:
Die Filteroptionen bei Typ wirken alternativ (logisch ODER verknüpft, Operator OR). Genauso verhält es
sich, wenn die Häkchen bei mehreren Profilen gesetzt werden können. Die Kombination aus Filterkriterium
Freitextsuche, Typ und Profil wirkt wiederum additiv (logisch UND-verknüpft, Operator AND).
[1]
[2]
[3]
[4]
1 Grundlagen
25
1.10Passwort ändern
Das vom Administrator vorgegebene Kennwort ist normalerweise änderbar. In der Regel hat ein Scheer
BPaaS-User mindestens ein Profil, von dem aus er das Passwort ändern kann.
lfd.Nr. Aktion
1 Loggen Sie sich in Scheer BPaaS ein.
2 Klicken Sie Ihre Profilkachel an. Daraufhin bekommen Sie einen Startraum angezeigt
mit einer Passwort-Änderungswolke:
3 Klicken Sie die Wolke an und führen Sie die erforderlichen Änderungen durch:
1 Grundlagen
26
1.11 Von Scheer BPaaS abmelden Zum Abmelden von Scheer BPaaS gibt es mehrere Möglichkeiten:
Option Aktion
1 Verwenden Sie den Logout-Button, dann wird die laufende
Session in allen Tabs beendet und die Login-Seite angezeigt.
2 Alternativ können Sie den Browser-Tab schließen.
3 Oder Sie schließen das Browserfenster.
Wenn Sie für eine Scheer BPaaS Session gleichzeitig mehrere Tabs geöffnet haben, und Sie loggen
sich in einem der Tabs aus, dann sind Sie auch in den anderen Tabs ausgeloggt.
Beim Versuch, in einem Tab mit abgelaufener Session zu arbeiten, erscheint ein Anmeldedialog:
Wenn Sie mehrere Browserfenster öffnen und sich parallel in Scheer BPaaS einloggen, sind die
Sessions unabhängig voneinander. Wenn Sie sich von einer Session ausloggen oder ein Fenster
schließen, können Sie im verbleibenden Fenster weiter arbeiten.
Vermeiden Sie die Bearbeitung ein und desselben Modells in parallelen Browser-Sessions, da hier
keine Synchronisation stattfindet. Die Änderungen, die durch eine andere Session hervorgerufen
wurden, erscheinen erst, wenn Sie in Ihrer aktuellen Session eine Auffrischung herbeiführen,
beispielsweise durch Verwendung der Navigationspfeile.
Abgesehen vom selbst herbeigeführten Logout gibt es in Scheer BPaaS auch ein automatisches
Logout. Eine Session läuft ab, wenn über längere Zeit keine Eingabe erfolgte.
Das Zeitintervall wird anwenderübergreifend vom Systemadministrator festgelegt.
2 Prozesse modellieren
27
2 Prozesse modellieren
2.1 Assembly Line - das Fließband-Konzept Die Modellierung der Prozesse erfolgt im Scheer BPaaS Editor mittels Ereignisgesteuerter Prozessketten (EPK), also
einer Abfolge von Ereignissen (Zuständen) und Funktionen (Bearbeitungsschritten).
Die Ausführung des Modells ist mit einer Fließbandverarbeitung vergleichbar, engl. assembly line.
Bei der konventionellen Fließbandverarbeitung durchlaufen „Container“ eine Fertigungsstraße. In früheren Zeiten
handelte es sich um Schalen, in denen das zu montierende Produkt, z.B. eine Kamera, transportiert wurde. Das
Fließband-Konzept findet heute noch Anwendung, etwa bei Batterien:
Die Fertigungsstraße ist eine Abfolge von Fließbändern und Bearbeitungsstationen:
■ Container mit Halbfertigerzeugnissen durchlaufen die Fertigungsstraße.
■ An den Bearbeitungsstationen werden Teile entnommen, bearbeitet, befüllt oder
durch andere Teile ergänzt und nach einer festgelegten Vorschrift weitergeleitet.
■ Ein anfangs leerer Container enthält am Ende ein fertiges Produkt.
© Siemens Pressebilder
2 Prozesse modellieren
28
Eine in Scheer BPaaS modellierte ereignisgesteuerte Prozesskette kann als virtualisierte Fertigungsstraße aufgefasst
werden.
Fertigungsstraße In Scheer BPaaS modellierte EPK
Container auf Fließband Ereignis (Zustand)
Bearbeitungsstation Prozessschritt, z.B. eine Funktion mit Worker oder Formular
Container Datencontainer
Werkstück Instanz (Vorgang) / Tabelleneintrag in der Datenbank
Jeder (Daten-)Container verfügt über mehrere Datenbereiche:
Fertigungsstraße In Scheer BPaaS modellierte EPK
Laufzettel Tracking
Laufzettel, auf dem alle bisherigen Bearbeitungsstationen und
die nächste Bearbeitungsstation vermerkt sind.
Bauplan,
Dokumentation
Workspace
Bereich, um Informationen abzulegen:
• Vorgaben
• Rahmenbedingungen
• Konfigurationseinstellungen
• temporäre Zwischenergebnisse
• Ergebnisse
Fehlerprotokoll, Prüfliste
Debugging
Sonderinformationsbereich, in den Arbeitsschritte
Informationen schreiben, die beim Debugging von Abläufen
hilfreich sein können.
2 Prozesse modellieren
29
Vorteile virtueller Fließbänder:
Aktion Beispiel
Ausgangssituation
Stationen können
ergänzt werden
Stationen können
ersetzt werden
2 Prozesse modellieren
30
Aktion Beispiel
Stationen können
vertauscht werden
Viele der von Scheer BPaaS bereitgestellten Funktionalitäten sind nicht programmiert sondern intern mit EPKs
modelliert. Die Modellierung erfolgt wie eingangs erwähnt mithilfe des Scheer BPaaS Editors.
2 Prozesse modellieren
31
2.2 Scheer BPaaS Editor verwenden Durch das Anklicken einer Projektkachel öffnet sich der Scheer BPaaS Editor, in dem Sie Prozesse
modellieren können. Der Editor wird in einem eigenen Tab des Browsers geöffnet [1]. Die Startseite bleibt im
bisherigen Tab immer noch verfügbar [2]. Der Name der Projektkachel , z.B. Mailadressen, wird außer im Browsertab
auch im Scheer BPaaS Editor [3] angezeigt:
[3] Der Raumbezeichner wird durch Anklicken editierbar:
Die Änderung des Raumbezeichners wirkt sich auch auf die Projektkachel im Startraum aus, sobald dort ein Refresh
herbeigeführt wurde. Umgekehrt wirkt sich eine Namensänderung in der Projektkachel auf den Raumbezeichner
aus, sobald der Raum erneut aufgerufen wird.
[4] Navigationspfeile zum Durchlaufen von Datenobjekten („Räume“)
[5] Ausloggen aus Scheer BPaaS
[6] Suche nach Datenobjekten. Gefundene Treffer werden in einer Liste angezeigt und können per Drag & Drop in
den aktuellen Raum gezogen werden.
[7] Hilfeseite zum Abruf von Informationen
[8] Modell bearbeiten: es können Raumattribute geändert und Übersetzungen für Mehrsprachigkeit hinterlegt
werden.
[9] Play-Button zum Ausführen des Modells
[10] Schalter zum Ein- und Ausblenden der Elementpalette („Sidebar“)
[11] Aufruf des Kachel-Dashboards (Startseite / Projektübersicht)
[2]
[1]
[5]
[8]
[3] [6] [4]
[9]
[10]
[11] [7]
2 Prozesse modellieren
32
Beim Anklicken einer App-Projektkachel statt einer Projektkachel öffnet sich ebenfalls der Editor. Der
Unterschied zwischen den Kacheln besteht darin, dass eine neu angelegte App-Projektkachel bereits
vordefinierte Räume zum Anlegen und Suchen von Instanzen beinhaltet. Eine neu angelegte Projekt-
kachel ist dagegen leer. Sie kann mit einem oder mehreren App-Projekten gefüllt werden.
In der Sidebar Neue Elemente werden die jeweils zum aktuellen Raum passenden Elementtypen
angezeigt. Im EPK-Modell erscheinen daher EPK-Elemente zur Auswahl, und in einem Formular eine
Vielzahl an Formularelementen.
Wenn Sie die Freitextsuche verwenden, bekommen Sie die Treffer unabhängig vom Elementtyp
angezeigt. Beim Drag&Drop eines Elementes prüft BPaaS, ob das gewählte Element zulässig ist.
Scheer BPaaS lässt es beispielsweise nicht zu, wenn Sie versuchen, ein Formularfeld in eine EPK zu ziehen.
Beim Loslassen verschwindet das gezogene Element.
2 Prozesse modellieren
33
2.3 Strukturieren von Projekten
Projekte können durch Unterprojekte übersichtlicher strukturiert werden:
lfd.Nr. Aktion
1 Ziehen Sie aus dem Bereich Neue Elemente das Element Unterprojekt in die Arbeitsfläche.
2 Dort wo Sie den Cursor loslassen wird das neue Element angelegt.
Den generierten Elementschlüssel Unterprojekt-CqCs können Sie im Feld Name
überschreiben:
3 Öffnen Sie das angelegte Unterprojekt durch Doppelklick. Dort können Sie weitere Unterprojekte
anlegen oder mit einer EPK-Modellierung starten.
Mithilfe der Navigationspfeile können Sie zwischen dem Projekt und seinen Unterprojekten hin
und her wechseln.
Jedes Unterprojekt führt dazu, dass auch auf der Startseite eine zusätzliche Kachel angelegt wird.
Die Kachel wird nicht automatisch sondern erst nach einem Refresh auf der Startseite sichtbar.
2 Prozesse modellieren
34
2.4 EPKs modellieren
2.4.1 Elemente generieren mittels Sidebar Eines der wichtigsten Verfahren zur Beschreibung von Prozessen sind Ereignisgesteuerte Prozessketten (EPK). EPKs
können Sie modellieren, indem Sie im Scheer BPaaS-Editor das EPK Modell aus der Elementpalette in die Arbeitsfläche
ziehen. Dadurch wird eine eigenständige Kopie der Vorlage erzeugt. Modellieren Sie beispielsweise in einem neuen
Projekt Systemvernetzung.
lfd.Nr. Aktion
1 Das neue EPK-Element erhält automatisch einen Schlüssel, beispielsweise EPK Modell-pavT:
2 Überschreiben Sie im Feld Name den Schlüssel z.B. mit Geschäftspartner lesen und ausgeben. Mit ENTER
als Eingabe bewirken Sie die Speicherung. Den gleichen Effekt hat das
Anklicken eines anderen Feldes.
3 Wechseln Sie durch Doppelklick in den Raum Geschäftspartner lesen und ausgeben.
Daraufhin paßt sich die Elementpalette an. Es werden die für EPKs passenden Elemente angezeigt:
Ereignis, Funktion, Verzweigungen (Konnektoren) und weitere Elemente.
2 Prozesse modellieren
35
lfd.Nr. Aktion
4 Erzeugen Sie per Drag & Drop eine der EPK-Konvention entsprechende Abfolge von
Ereignissen und Funktionen.
Rechts von der Elementpalette [1] befindet sich eine zweite Sidebar [2], in der die Eigenschaften des
jeweils ausgewählten Elementes editierbar sind.
Sidebars können über die dreieckigen Schalter eingeklappt oder ausgeklappt werden.
Dadurch haben Sie eine bessere Übersicht beim Modellieren in der Arbeitsfläche.
5 Beim Anklicken eines Elementes erscheinen Anfasser („Indikatoren“):
ein Winkelsymbol in der Ecke rechts unten zum Verändern der Größe
ein zentraler Ziehpunkt zum Verbinden von Elementen
Beispiele für Anfasser bei Ereignis, Funktion und Verzweigung:
Bei Elementen, die nicht mit anderen Elementen über Kanten verbunden werden können, erscheint
kein zentraler Ziehpunkt. Ein EPK-Modell kann nur dann mit einem anderen Element verbunden
werden, wenn es sich unterhalb eines anderen EPK-Modells befindet.
Ein EPK-Modell auf oberster Ebene hat keinen Ziehpunkt:
Ein EPK-Modell innerhalb eines anderen EPK-Modells ist über den Ziehpunkt verknüpfbar.
Lösen Sie die Maustaste, wenn sich der Ziehpunkt über dem zu verbindenden Element befindet.
[1] [2]
2 Prozesse modellieren
36
2.4.2 Elemente generieren mittels Kontextmenü EPK-Elemente lassen sich auch per Kontextmenü statt per Drag&Drop erzeugen. Wie schon zuvor bleibt es Ihnen
überlassen, ob Sie die Sidebars auf- oder zugeklappt lassen.
lfd.Nr. Aktion
1 Rufen Sie innerhalb des EPK-Modells das Kontextmenü auf.
Im Untermenü zu Neu wählen Sie das gewünschte Element aus, z.B. ein Ereignis.
2 Das Ereignis wird generiert und Sie können das Verfahren wiederholen, z.B. mit einer Funktion:
3 Verschieben Sie das Element an die gewünschte Stelle.
Im Nachgang können Sie Elemente markieren und Sidebars einblenden.
2 Prozesse modellieren
37
lfd.Nr. Aktion
4 Das Kontextmenü bietet Ihnen automatisch die passenden Elemente an, wenn Sie es auf einem
Element aufrufen statt auf der leeren Arbeitsfläche. Das Nachfolger-Element wird
automatisch mit seinem Vorgänger verbunden:
2.4.3 Elemente generieren mittels Ziehpunkt Das folgende Verfahren ist eine Kombination aus Drag&Drop und Kontextmenü. Voraussetzung ist, dass ein erstes
Element vorhanden ist, beispielsweise ein Start-Ereignis:
lfd.Nr. Aktion
1 Ziehen Sie den zentralen Ziehpunkt außerhalb des Elementes und
lassen Sie die Maustaste los. Daraufhin öffnet sich ein Popup-Fenster
mit den jeweils passenden Nachfolgeelementen:
2 Ziehen Sie anschließend das gewünschte Nachfolgeelement aus dem
Popup. Das Nachfolger-Element wird automatisch mit dem vorherigen
Element verknüpft und das Popup wieder geschlossen.
3 Eine Wiederholung des Verfahrens führt kontextabhängig zu
anderen Popups.
Zieht man von einem Element den zentralen Ziehpunkt („ConnectIndicator“) nach unten, wird eine
Liste mit möglichen Nachfolgern angezeigt. Zieht man den ConnectIndicator nach oben oder zur
Seite, wird eine Liste mit möglichen Vorgängern angezeigt. Die Richtung der Kanten wird jeweils
automatisch korrekt ermittelt.
2 Prozesse modellieren
38
2.4.4 Elemente vergrößern und verkleinern Am Beispiel des Ereignis-Elements wird gezeigt, wie Abmessungen verändert werden können. Die Darstellung des
Funktions-Elements dient nur zum Größenvergleich:
lfd.Nr. Aktion
1 Klicken Sie in ein Element, dessen Abmessungen vergrößert werden sollen..
Dadurch werden Anfasser („Indikatoren“) sichtbar:
2 Klicken Sie auf den Indikator rechts unten.
Ziehen Sie den Indikator bis zur gewünschten Stelle.
Eine rot gestrichelte Linie vermittelt währenddessen die Elementgröße nach der Änderung.
3 Lassen Sie die Maustaste los. Das Element wird so weit angepasst, dass seine Ecke rechts
unten an der neuen Stelle positioniert ist.
4 Ganz analog können Elemente verkleinert werden:
2 Prozesse modellieren
39
2.4.5 Elemente verbinden und Verbindungen löschen
Die Elemente einer EPK werden durch Pfeile („Kanten“) miteinander verbunden. Die Kanten legen fest, in welcher
Reihenfolge die Prozesskette durchlaufen wird.
lfd.Nr. Aktion
1 Klicken Sie in ein Element, von dem aus die Kante starten soll.
Dadurch werden Anfasser („Indikatoren“) sichtbar:
2 Klicken Sie auf den zentralen Indikator.
Ziehen Sie den Indikator bis auf das zu verbindende Element und lassen Sie die Maustaste los.
Dadurch wird eine Kante erzeugt:
3 Eine nicht mehr benötigte Kante löschen Sie mittels Kontextmenü auf der Kante:
4 Die Kante wird gelöscht, die Elemente bleiben unverändert:
2 Prozesse modellieren
40
2.4.6 Kantenverlauf beeinflussen
lfd.Nr. Aktion
1 Der Pfadalgorithmus sucht die kürzeste Verbindung zwischen zwei Elementen.
Das gilt für beide Richtungen.
2 Markieren Sie die Kante durch Anklicken.
Bei gedrückter Steuerungstaste (STRG) ist es sogar möglich,
mehr als eine Kante zu markieren.
3 Durch das Anklicken erscheinen Knotenpunkte, die Sie beliebig verschieben können.
4 Knotenpunkte verschwinden, indem Sie an eine beliebige Stelle der Arbeitsfläche klicken.
2 Prozesse modellieren
41
2.4.7 Elemente markieren Das Markieren von Elementen ist immer dann erforderlich, wenn eine Operation auf mehrere Elemente gleichzeitig
angewendet werden soll. Dabei kann es sich um ein Verschieben handeln, um das Löschen oder auch um das
Ausrichten von Elementen. Zum Markieren mehrerer Elemente halten Sie die STRG-Taste gedrückt, während Sie die
gewünschten Elemente anklicken.
lfd.Nr. Aktion
1 Klicken Sie ein Element an:
2 Halten Sie die Steuerungs -Taste gedrückt, während Sie weitere Elemente anklicken:
Ein bereits markiertes Element wird durch erneutes Anklicken entmarkiert.
Wenn Sie die STRG-Taste loslassen und woanders hinklicken, etwa auf einen leeren Bereich der
Arbeitsfläche, wird die Auswahl aufgehoben.
3 Wenn Sie alle Elemente eines Raumes markieren möchten,
verwenden Sie das Kontextmenü auf einem leeren Bereich der
Arbeitsfläche:
Wenn mittels Kontextmenü alle Elemente markiert wurden, ist es anschließend möglich, einzelne
Elemente bei gedrückter STRG-Taste aus der Auswahl zu entfernen.
2 Prozesse modellieren
42
2.4.8 Elemente kopieren und einfügen Der Eintrag Kopieren im Kontextmenü erscheint nur dann, wenn Sie das Kontextmenü über einem Element
aufrufen.
lfd.Nr. Aktion
1 Kontextmenü mit Eintrag Kopieren:
Ein nicht markiertes Element wird durch Aufruf des Kontextmenüs markiert.
Das Element wird beim Ausführen von Kopieren lediglich in die Zwischenablage kopiert. Rein
äußerlich ändert sich nichts im Editor.
2 Zum Einfügen des Elementes aus der Zwischenablage rufen Sie das Kontextmenü auf einem
leeren Bereich der Arbeitsfläche auf. Drei Varianten stehen zur Auswahl:
3 Nach dem Einfügen ist nicht mehr ersichtlich, auf welche Art das Element eingefügt wurde:
Die Unterschiede beim Einfügen werden nachfolgend beschrieben.
2 Prozesse modellieren
43
2.4.8.1 Element als Kopie einfügen ■ Beim Einfügen eines Elementes als Kopie entsteht ein neues Element mit gleichen Daten.
■ Auch die Hashtags (Schlagworte) der Kopiervorlage werden in das neue Element übernommen.
■ Änderungen am neuen Element haben keinerlei Auswirkung auf die Kopiervorlage.
Die Kopiervorlage wird also dupliziert und beide Elemente sind unabhängig voneinander.
Vorlage Vorlage und Kopie
Das Einfügen als Kopie wird verwendet, wenn man ein neues Element benötigt, das fast dieselben Eigenschaften
wie ein bestehendes Element hat, sich aber im Namen unterscheidet.
2.4.8.2 Element als Kopie mit Verschlagwortung einfügen Es gilt dasselbe wie beim Einfügen als Kopie
■ Beim Einfügen eines Elementes als Kopie entsteht ein neues Element mit gleichen Daten.
■ Auch die Hashtags (Schlagworte) der Kopiervorlage werden in das neue Element übernommen. Beim Einfügen
erscheint allerdings ein Popup zur Erfassung zusätzlicher Schlagwörter.
■ Änderungen am neuen Element haben keinerlei Auswirkung auf die Kopiervorlage.
Die Kopiervorlage wird dupliziert und beide Elemente sind unabhängig voneinander.
Popup Vorlage und Kopie
Das Einfügen als Kopie mit Verschlagwortung wird beispielsweise verwendet, wenn man ein Element gleichen
Namens benötigt, das aber in der Suchfunktion unterscheidbar sein soll.
2 Prozesse modellieren
44
2.4.8.3 Element als Verknüpfung einfügen ■ Beim Einfügen eines Elementes als Verknüpfung entsteht äußerlich ein neues Element in der
Anwendungsoberfläche. In der Datenbank referenzieren aber beide Elemente denselben Datensatz.
■ Änderungen am neuen Element haben direkte Auswirkung auf die Kopiervorlage.
Die Elemente sind also abhängig voneinander.
Verknüpfung und Verlinkung sind gleichbedeutend
Vorlage Vorlage und Kopie
Vorlage Vorlage mit 3 unterschiedlichen Kopien, nach
Umbenennung der Elemente
Das Einfügen als Verknüpfung wird verwendet, wenn ein und dasselbe Element an unterschiedlichen Stellen der
App vorkommen soll. Klassischerweise verlinkt man ein Formularfeld, das beim Erfassen von Stammdaten
verwendet wird, auf die Suchseite. Nachträgliche Änderungen am Namen oder anderen Eigenschaften wirken sich
sofort an allen übrigen Stellen aus, an denen das Feld verwendet wird.
2 Prozesse modellieren
45
2.4.9 Elemente löschen lfd.Nr. Aktion
Durch Aufrufen des Kontextmenüs über einem Element erscheint der Eintrag Löschen:
Ein Element, das nur von der Arbeitsfläche gelöscht wird, ist in der Datenbank noch enthalten. Es
kann über die Suchfunktion gefunden und neu verlinkt werden. Elemente, die von der
Arbeitsfläche und aus der Datenbank gelöscht werden, sind nicht mehr suchbar.
Wenn Sie sicher sind, dass Sie ein Element nicht mehr benötigen, dann löschen Sie es aus der
Datenbank. Das hat den Vorteil, dass beim Verwenden der Suchfunktion die Liste der
Suchergebnisse überschaubar bleibt.
1 Als Beispiel seien drei unterschiedliche Kopien einer Vorlage vorhanden:
2 Das Element Kopie wird von der Arbeitsfläche gelöscht.
Das Element Kopie mit Hashtags wird von der Arbeitsfläche und Datenbank gelöscht.
Die Suche nach Kopie findet demzufolge nur noch das eine Element Kopie, das zwar auf der
Arbeitsfläche nicht mehr sichtbar aber in der Datenbank noch enthalten ist:
2 Prozesse modellieren
46
lfd.Nr. Aktion
3 Löschverhalten bei verlinkten Elementen:
Wenn Sie von zwei verknüpften Elementen eines von der Arbeitsfläche löschen, bleibt das andere
erhalten.
Wenn Sie aber zum Löschen den Menüeintrag Element von Arbeitsfläche und von der
Datenbank löschen verwenden, dann wird auch das andere Element mit gelöscht.
Suchergebnis, nachdem das Element Verlinkung von der Arbeitsfläche gelöscht wurde:
Verlinkte Elemente erscheinen in der Suchliste immer nur mit einem einzigen Eintrag, da sie in
der Datenbank nur einmal vorhanden sind.
4 Das Löschen aus der Datenbank bewirkt, dass alle Verknüpfungen mit gelöscht werden.
Falls ein Element in verschiedenen EPKs verlinkt ist, erscheint vor dem Löschen aus der
Datenbank eine Sicherheitsabfrage:
Die Meldung enthält einen oder ggf. mehrere Links zu dem Raum, in dem das zu löschende
Element sich befindet. Durch Anklicken öffnet sich der Raum in einem neuen Browser-Tab.
Ein versehentliches Löschen von der Arbeitsfläche können Sie über das Kontextmenü wieder
rückgängig machen, sofern es nicht zu lange her ist.
2 Prozesse modellieren
47
2.4.10 Arbeitsschritte rückgängig machen Beim Modellieren vorgenommene Änderungen wie das Einfügen, Verschieben, Vergrößern, Editieren und teilweise
auch das Löschen von Elementen sowie das Ziehen von Kanten können Sie per Kontextmenü sukzessive rückgängig
machen.
lfd.Nr. Aktion
1 Beim Öffnen des Scheer BPaaS Editors mit einem bestehenden Modell gibt es noch keine
Aktionen, die revidiert werden könnten:
2 Sobald Sie Änderungen vornehmen, werden die einzelnen Arbeitsschritte chronologisch
gespeichert. Beispielsweise können Sie folgende Aktionen vornehmen:
■ die Funktion Partner eingeben von der Arbeitsfläche löschen
■ eine neue Funktion generieren per Drag&Drop
■ die Funktion umbenennen in Kontaktdaten erfassen
■ eine Beschreibung und Hashtags eintragen
■ eine Kante ziehen
■ die Funktion verschieben
■ die Funktion vergrößern
■ die Kante verschieben
2 Prozesse modellieren
48
lfd.Nr. Aktion
Den aktuell revidierbaren Schritt können Sie sich als Quick-Info anzeigen lassen:
Das Löschen von Elementen aus der Datenbank kann nicht rückgängig gemacht werden.
2.4.11 Arbeitsschritte wiederherstellen Ein rückgängig gemachter Arbeitsschritt kann wiederhergestellt werden, sofern zwischenzeitlich kein neuer
Arbeitsschritt stattgefunden hat. Ansonsten können Sie beliebig oft innerhalb der Arbeitsschritte zum Rückgängig
machen und Wiederherstellen wechseln.
lfd.Nr. Aktion
1 Den aktuell wiederherstellbaren Schritt können Sie sich als Quick-Info anzeigen lassen:
2 Die Liste wiederherstellbarer Arbeitsschritte wird gelöscht, sobald Sie einen neuen Arbeitsschritt
vornehmen. Der neue Arbeitsschritt wird der Liste revidierbarer Arbeitsschritte hinzugefügt.
Sowohl die Liste revidierbarer als auch die Liste wiederherstellbarer Arbeitsschritte werden
gelöscht, wenn Sie im Scheer BPaaS Editor zu einem anderen Raum navigieren.
2 Prozesse modellieren
49
2.4.12 Elemente ausrichten Das Kontextmenü mit dem Eintrag Ausrichten erscheint, wenn Sie mindestens zwei Elemente markiert haben und das
Menü über einem der markierten Element öffnen. Für die automatisierte Ausrichtung von Elementen gibt es acht
verschiedene Möglichkeiten:
Hier im Beispiel ist das App-Projekt Mailadressen zu sehen, bei dem die typischerweise enthaltenen Elemente um
ein Unterprojekt und zwei CSS-Elemente ergänzt wurden.
2 Prozesse modellieren
50
Die Ausrichtungsoptionen wirken sich auf die markierten Elemente folgendermaßen aus:
lfd.Nr. Aktion
1 Linksbündig:
2 Horizontal zentrieren:
3 Rechtsbündig:
4 Oberkante:
2 Prozesse modellieren
51
lfd.Nr. Aktion
5 Vertikal zentrieren:
6 Unterkante:
7 Horizontal verteilen:
8 Vertikal verteilen:
Beim Horizontalen und Vertikalen Verteilen werden die Elemente so ausgerichtet, dass die
Abstände zwischen den Elementberandungen gleich groß sind. Die Verteilung orientiert sich
nicht an den Mittelpunkten der Elemente.
2 Prozesse modellieren
52
2.4.13 Elemente in den Vorder- oder Hintergrund legen Das über einem markierten Element aufgerufene Kontextmenü enthält zwei Einträge zum Festlegen der Vorder-
und Hintergrund-Eigenschaft:
Die beiden Optionen spielen nur dann eine Rolle, wenn sich Elemente überlagern sollen.
Durch Verändern der Größe eines Elementes wird dieses automatisch im Vordergrund dargestellt. Durch Aufruf des
Kontextmenüs kann das Element in den Hintergrund gesetzt werden.
2 Prozesse modellieren
53
2.4.14 Modelle exportieren Ein wichtiges Werkzeug zum Sichern Ihrer Entwicklungen ist das Exportieren von Modellen. Der Umfang des
Modellexports richtet sich danach, ob Sie den Export auf oberster Ebene starten, also nach Aufruf der Projektkachel,
oder an beliebiger Stelle weiter unten. Auf diese Weise können Sie gezielt ein bestimmtes EPK-Modell oder Formular
exportieren, um die Exportdatei klein zu halten. Der Export umfaßt alle Räume einschließlich desjenigen, von dem
aus der Export gestartet wird.
Zum Exportieren aller Projekt-Inhalte gehen Sie folgendermaßen vor:
lfd.Nr. Aktion
1 Rufen Sie das Projekt auf und wählen Sie den Eintrag Exportiere Modell.
2 Starten Sie den Modellexport durch Exportieren:
2 Prozesse modellieren
54
lfd.Nr. Aktion
3 Markieren Sie das Ergebnis mit STRG+A (Mac: Befehlstaste+A)
und kopieren Sie es in die Zwischenablage mit STRG+C (Mac: Befehlstaste+C)
4 Öffnen Sie Ihren Texteditor, fügen Sie die Zwischenablage ein (STRG/Befehlstaste+V)
und speichern Sie den Inhalt lokal auf Ihrem Rechner als Sicherung.
Der Inhalt der Datei ist in JSON geschrieben (JavaScript Object Notation). Statt der Dateiendung *.json
kann aber zum Sichern der Exporte genauso gut *.txt verwendet werden.
Um eine vollständige Sicherung zu erhalten wiederholen Sie die vorherigen Schritte für jedes Ihrer
Projekte.
2 Prozesse modellieren
55
2.4.15 Modelle importieren Eine durch Modellexport erstellte Sicherung können Sie folgendermaßen in Scheer BPaaS importieren:
lfd.Nr. Aktion
1 Rufen Sie das Projekt auf, zu dem die gesicherten Modelle gehören sollen, und
wählen Sie den Eintrag Importiere Modell.
2 Öffnen Sie die Sicherungsdatei im Texteditor.
Markieren und Kopieren Sie den Inhalt in die Zwischenablage.
3 Fügen Sie den Inhalt aus der Zwischenablage im Importfenster ein.
2 Prozesse modellieren
56
lfd.Nr. Aktion
4 Rufen Sie Analysieren auf. Bei korrekten Importdateien erscheint kurzzeitig die Meldung.
Für den Fall, dass die Sicherung zwei Elemente mehr beinhaltet als die aktuelle Version, sieht das Ergebnis
der Analyse beispielsweise so aus:
Das Analysieren ist zwar nicht zwingend erforderlich um den Import zu starten. Es bietet Ihnen aber die
Sicherheit, dass die Importdatei zumindest formal in Ordnung ist.
Beispielsweise bei einer unvollständigen Importdatei erscheint kurzzeitig die folgende Meldung:
5 Rufen Sie Importieren auf.
Es erscheint eine Zwischenmeldung:
Sie wird in der Regel mit folgendem Resultat abgeschlossen:
Anschließend ist wieder der importierte Inhalt zu sehen.
2 Prozesse modellieren
57
lfd.Nr. Aktion
Für das Importieren ist es unerheblich, ob Sie an oberster Stelle im Projektraum stehen, oder ob Sie den
Import in einem der weiter unten angelegten Räume aufrufen.
Formal fehlerhafte Importdateien können nicht importiert werden:
Es kann vorkommen, dass Sie eine Raumstruktur, also ein Modell mit mehrerenElementen, durch Export
sichern. Wenn Sie die Raumstruktur um neue Elemente A, B, C ergänzen und anschließend die Sicherung
importieren, dann sind die Elemente A, B, C nicht mehr vorhanden.
Wenn Sie nicht sicher sind, welchen Entwicklungsstand eine Sicherung enthält, kann es daher sinnvoll sein,
vor dem Einspielen der Sicherung das aktuelle Modell zu exportieren.
2.4.16 Modellimport bei Profilwechsel Beim Import einzelner EPKs oder Formulare in ein Projekt, in dem die Elemente noch nicht enthalten sind, müssen
Sie den obersten Raum der Importdatei suchen und an die gewünschte Stelle verlinken.
Beispiel:
lfd.Nr. Aktion
1 Sie haben sich ein eigenes Suchmodell erstellt und exportiert.
2 In der Exportdatei steht am Anfang der Name des obersten EPK-Elementes:
2 Prozesse modellieren
58
lfd.Nr. Aktion
3 Sie wechseln in ein anderes Projekt, in dem die EPK noch nicht enthalten ist.
Das ist der Fall, wenn das Projekt zu einem anderen Profil gehört.
Die Analyse bestätigt, dass die EPK im neuen Projekt noch nicht vorhanden ist:
4 Nach dem Importieren ist die EPK zunächst nicht sichtbar.
Sie finden Sie über die Elementsuche und können sie an die gewünschte Stelle verlinken.
2.4.17 Elemente öffnen Ein markiertes Element können Sie nicht nur durch Doppelklick sondern auch über das Kontextmenü öffnen. Über
den Zurück-Button verlassen Sie das Element und gelangen zum vorherigen Raum.
2 Prozesse modellieren
59
2.4.18 BPMN-Modelle importieren Das Importieren von BPMN-Modellen erfolgt ähnlich zum Importieren von Scheer BPaaS-Modellen.
lfd.Nr. Aktion
1 Rufen Sie das Projekt auf, zu dem das BPMN-Modell gehören sollen, und
wählen Sie den Eintrag Importiere BPMN Modell.
2 Es öffnet sich ein PopUp. Ziehen Sie Ihre BPMN-Datei in den markierten Bereich:
2 Prozesse modellieren
60
lfd.Nr. Aktion
3 Damit wird die Beschreibung des BPMN-Modells übernommen und Sie können Importieren.
4 Kurzzeitig erscheint normalerweise eine Erfolgsmeldung:
Im Anschluss wird eine zusätzliche Schaltfläche Modell öffnen eingeblendet:
5 Das BPMN-Modell wurde beim Importieren so gut wie möglich in eine EPK transformiert.
Mittels Modell öffnen wechseln Sie zum importierten BPMN-Modell.
2 Prozesse modellieren
61
lfd.Nr. Aktion
6 Sie können die EPK nach Belieben anordnen, editieren oder um Elemente ergänzen.
7 Abschließend verlinken Sie die neue EPK, damit Sie sie später leichter wieder finden:
Leider sind Prozessbeschreibungen durch BPMN und EPKs nicht zu 100% kompatibel. Für manche
Beschreibungen in der BPMN-Welt gibt es keine Entsprechungen in EPKs.
Gegebenenfalls können dann nur Teile der BPMN in Scheer BPaaS importiert werden.
Formal fehlerhafte Importdateien können gar nicht importiert werden:
3 EPK-Elemente verwenden
62
3 EPK-Elemente verwenden
Nachdem das Generieren von EPK-Elementen bereits in 2.4 vorgestellt wurde, sollen nun EPK-Elemente im
einzelnen vorgestellt werden.
3.1 E-Mail-Element
Element
Bedeutung Bestandteil eines Geschäftsprozesses kann es sein, dass ein Genehmiger darüber informiert
werden soll, dass ein neuer Vorgang zur Genehmigung ansteht, oder dass ein Vorgang mit
einem bestimmten Ergebnis abgeschlossen ist.
Das E-Mail-Element ermöglicht den serverbasierten Versand von E-Mails. Anders als bei
Verwendung des mailto-Kommandos muss hierfür am Endgerät des Anwenders (lokal) kein
Mailprogramm verfügbar sein.
Verknüpfung Eingang: keiner
Ausgang: Funktion
Beispiel
Konfiguration
3 EPK-Elemente verwenden
63
Name
Bezeichnung des Elementes innerhalb der Modellierung.
Beschreibung
Ein Kommentarfeld für den Modellierer. Sein Inhalt wird nicht nach außen für den Anwender sichtbar.
Hashtags
Möglichkeit zur Kennzeichnung mit einem eigenen Schlüsselbegriff.
Betreff
Definition der Betreffzeile, die in der E-Mail angezeigt werden soll.
Im Betreff kann ein Platzhalter stehen, der zur Laufzeit mit einem Wert aus dem Container aufgelöst wird.
Inhaltsvorlage
Definition der Vorlage, die den Inhalt der E-Mail beschreibt.
Platzhalter werden zur Laufzeit mit Werten aus dem Container aufgelöst.
Empfänger
Die Empfänger der E-Mail können als Liste angegeben werden. Erlaubt sind mehrere Empfänger, die
entweder durch Komma oder Zeilenumbruch getrennt in das Eingabefeld eingetragen werden.
Empfänger in Kopie
Die Empfänger , die die E-Mail in Kopie (CC) erhalten, können hier aufgelistet werden. Erlaubt sind mehrere E-
Mailadressen, die entweder durch Komma oder Zeilenumbruch getrennt in das Eingabefeld eingetragen
werden.
3 EPK-Elemente verwenden
64
3.1.1 Platzhalter verwenden Das E-Mail-Element bietet die Möglichkeit, Platzhalter zu verwenden, die beim Versand der E-Mail durch Inhalte
aus Formularen oder Daten aus dem Container ersetzt werden.
Die Definition eines Platzhalters erfolgt durch Einschließen des Parameters in ein Doppelkreuz/Raute (#).
Die Inhaltsvorlage kann Formularfelder referenzieren:
Nach erfolgreicher Ausführung des Prozessschrittes, werden die Platzhalter durch entsprechende Inhalte ersetzt
und es erfolgt der Versand der E-Mail:
3 EPK-Elemente verwenden
65
3.1.2 Mailempfänger und Inhalte dynamisch ermitteln In Projekten existiert oftmals die Anforderung, Empfängerlisten oder den Inhalt einer E-Mail dynamisch zu
ermitteln. Anwender mit Programmierkenntnissen können dann die nachfolgenden Elemente verwenden.
Konfiguration
Funktion: Ermittlung der Empfänger
Hinterlegen Sie hier eine Funktion zur Ermittlung der Empfänger, beispielsweise aus einem anderen System.
Funktion: Ermittlung der Empfänger in Kopie
Hinterlegen Sie hier eine Funktion zur Ermittlung der Empfänger in Kopie, beispielsweise bei Ermittlung von
Vertretern.
Funktion: Ermittlung des E-Mail-Inhalts
Hinterlegen Sie hier eine Funktion zur Ermittlung des gesamten Inhalts einer E-Mail
WorkerGroupId
Hier ist der Wert backend eingetragen und darf nicht geändert werden. Er steuert, dass die Funktionalität auf
dem Server (Backend) ausgeführt wird. Nur so kann der Server die Mails versenden.
4 Formulare modellieren
66
4 Formulare modellieren
Beim Durchlaufen eines Geschäftsprozesses gibt der Anwender die erforderlichen Daten über Eingabemasken ein.
Im einfachsten Fall reicht schon ein einziges Formular. Etwa im folgenden Beispiel, wenn es darum geht, Kontaktdaten
zu erfassen.
lfd.Nr. Aktion
1 Erstellen Sie in Ihrem Projekt eine neue EPK Kontaktdatenerfassung,
wahlweise per Kontextmenü oder per Drag & Drop
2 Wechseln Sie in das EPK-Modell und modellieren Sie den Geschäftsprozess:
■ Formulare hängen stets an Funktionen
■ Ereignisse sind Zustandsbeschreibungen und folglich ohne Formulare
■ Die Verbindung muss vom Formular zur Funktion gerichtet sein
4 Formulare modellieren
67
lfd.Nr. Aktion
3 Wechseln Sie in das Formular und konfigurieren Sie die benötigten Felder,
wahlweise per Kontextmenü oder per Drag & Drop
4 Ziehen Sie die Elemente an die gewünschte Stelle, einspaltig, zweispaltig oder ganz frei:
4 Formulare modellieren
68
lfd.Nr. Aktion
5 Testen Sie das Formular mittels Play-Button. Pflichtfelder sind farblich unterlegt:
Ein Formular muss eine Schaltfläche enthalten, damit man das Formular verlassen kann und das
nächste Formular aufgerufen wird, sofern vorhanden.
6 Fügen Sie ein Process App Element ein, wenn Sie die App per Kachel von der Startseite aufrufen
möchten. Näheres zur Konfiguration von Process App Elementen erfahren Sie in Kapitel 6.2.
Nachfolgend werden die verschiedenen Feldelemente behandelt.
Die Feldeigenschaften werden anhand des Formularelements erklärt.
Beim Responsiven Formular gibt es dieselben Feldelemente. Der Unterschied besteht darin, dass
Felder in Responsiven Formularen ihre Position an das verwendete Medium Laptop, Tablet oder
Smartphone anpassen. Felder eines Formularmodells sind dagegen fest positioniert und auf kleinen
Bildschirmen nur durch Scrollen zu erreichen.
4 Formulare modellieren
69
4.1 Feldelemente im Formular-Editor verwenden
4.1.1 Eingabefeld – einzeilig
Element
Bedeutung Feld zur Eingabe von Zeichenketten aller Art ohne Zeilenumbruch.
Default Standardmäßig leer.
Ein im Feld eingetragener Wert wird als Vorbelegung verwendet.
Eine Begrenzung der Anzahl Zeichen kann mittels Validierungsausdruck eingestellt werden.
Beispiel
Konfiguration
Name
Feldbezeichnung, die im Formular angezeigt wird.
Beschreibung
Ein Kommentarfeld, dessen Inhalt dem Anwender als Quick-Info angezeigt wird.
Hashtags
Kennzeichnung mit einem eigenen Schlüsselbegriff. Das führende Hash-Zeichen # („Raute“) wird automatisch
eingefügt. Durch Leerzeichen getrennt können mehrere Hashtags angegeben werden.
CSS Zusatzklassen
Möglichkeit zur feldgenauen Layoutanpassung, siehe 7.6.7
Obligatorisch
Kennzeichnung als Pflichtfeld
Nur lesbar
Das Feld ist gegen Editieren geschützt
Feld fokussieren
Das Feld ist eingabebereit und wird optisch hervorgehoben
4 Formulare modellieren
70
Name im Feld anzeigen
Der Feldbezeichner wird durch die Eingabe überschrieben
Eingabe verstecken
Statt der eingegebenen Zeichens sind nur Punkte sichtbar
Validierungsausdruck
Mittels regulärer Ausdrücke können Sie die Eingabe inhaltlich und formal prüfen. Beispiele:
[0-9] Nur Zahlen mit den Ziffern null bis neun werden als Eingabe akzeptiert.
^.{2,10}$ Limitiert die Anzahl eingebbarer Zeichen auf mindestens 2 und maximal 10.
^[A-Za-z0-9]{0,5}$ Nur max. 5 Buchstaben und Ziffern werden akzeptiert. Keine Leerzeichen,
Umlaute oder Sonderzeichen.
Feldname im Container
Legt fest, unter welchem Namen das Formularfeld im Datencontainer gespeichert wird. Beim Öffnen des
Formulars wird das Feld mit dem Wert aus dem Container gefüllt, sofern vorhanden.
Wenn bei Feldname im Container nichts eingestellt ist, wird der Feldbezeichner (Name) zum Speichern im
Container verwendet.
Bei gleichzeitiger Verwendung der Option Name im Feld anzeigen bleibt der Feldbezeichner so
lange im Eingabefeld sichtbar, bis der Anwender eine Eingabe vorgenommen hat oder ein vom
Leerstring verschiedener Wert aus dem Container gelesen wurde.
Zwei verschiedene Formularfelder, bei denen derselbe Feldname im Container hinterlegt ist, greifen
auf denselben Wert im Container zu.
Wert in Instanz speichern
Legt fest, ob Feldname und Wert des Containers im für Instanzen vorgesehenen Bereich der Datenbank
gespeichert werden soll.
4 Formulare modellieren
71
4.1.2 Eingabefeld – mehrzeilig
Element
Bedeutung Feld zur Eingabe von Zeichenketten aller Art mit Zeilenumbrüchen, ansonsten ganz analog
zum Eingabefeld – einzeilig.
Die Konfigurationsmöglichkeiten Eingabe verstecken und Validierungsausdruck gibt es
allerdings nicht.
Default Standardmäßig leer.
Ein im Feld eingetragener Wert wird als Vorbelegung verwendet.
Beispiel
4.1.3 Auswahlfeld
Element
Bedeutung Durch Anklicken öffnet sich eine Liste möglicher Optionen zur Auswahl.
Man muss sich für eine der angebotenen Alternativen entscheiden.
Alternative Bezeichnungen sind Select Box oder Dropdown Liste.
Default Ein im Auswahlfeld eingestellter Wert wird als Vorbelegung verwendet.
Der Leereintrag muss bei Bedarf von Hand in die Optionsliste aufgenommen werden.
Beispiel
Konfiguration
Name
Feldbezeichnung, die im Formular angezeigt wird.
4 Formulare modellieren
72
Beschreibung
Ein Kommentarfeld, dessen Inhalt dem Anwender als Quick-Info angezeigt wird.
Hashtags
Kennzeichnung mit einem eigenen Schlüsselbegriff. Das führende Hash-Zeichen # („Raute“) wird automatisch
eingefügt. Durch Leerzeichen getrennt können mehrere Hashtags angegeben werden.
Ein Hashtag darf für mehrere Formularfelder verwendet werden:
CSS Zusatzklassen
Möglichkeit zur feldgenauen Layoutanpassung, siehe 7.6.7
Mögliche Werte
Eine Liste der im Auswahlfeld möglichen Optionen. Jeder Wert steht in einer eigenen Zeile. Es können auch
Wertepaare aufgelistet werden, getrennt durch Semikolon <value>;<label>. Dann wird der erste Wert als
Schlüssel im Datencontainer gespeichert und der zweite Wert findet Verwendung zum Anzeigen für den
Anwender. Ein Label-Eintrag eines Auswahlfeldes darf somit kein Semikolon enthalten.
Für die Wertepaare in Auswahlfeldern können auch Zahlen verwendet werden, so dass der Anwender zwar
einen Texteintrag auswählt aber im Hintergrund eine Berechnung stattfinden kann.
Obligatorisch
Kennzeichnung als Pflichtfeld
4 Formulare modellieren
73
Nur lesbar
Das Feld ist gegen Editieren geschützt. Ein möglicher Anwendungsfall wäre, dass man ein bestehendes
Formular kopiert für einen Anwenderkreis, der nur Leseberechtigung haben soll.
Ein eingestellter Schreibschutz wirkt sich unmittelbar aus, auch für Sie als Modellierer. Wenn Sie in dem
Auswahlfeld einen anderen Wert als Saarbrücken voreinstellen möchten, müssen Sie zunächst die Einstellung
für Nur lesbar rückgängig machen. Erst dann können Sie einen anderen Wert selektieren und den
Schreibschutz wieder einstellen.
Feld fokussieren
Das Feld wird optisch hervorgehoben
Feldname im Container
Legt fest, unter welchem Namen das Formularfeld im Datencontainer gespeichert wird. Beim Öffnen des
Formulars wird das Feld mit dem Wert aus dem Container gefüllt, sofern vorhanden.
Wenn bei Feldname im Container nichts eingestellt ist, wird der Feldbezeichner (Name) zum Speichern im
Container verwendet.
Zwei verschiedene Formularfelder, bei denen derselbe Feldname im Container hinterlegt ist, greifen
auf denselben Wert im Container zu.
Containername für mögliche Werte
Tragen Sie hier die Referenz auf ein im Container definiertes Datenobjekt ein, das die möglichen Werte des
Auswahlfelds enthält. Das Konfigurationsfeld Mögliche Werte lassen Sie in dem Fall frei.
Ein Beispiel ist in Fehler! Verweisquelle konnte nicht gefunden werden. beschrieben.
Wert in Instanz speichern
Legt fest, ob der Feldname und sein Wert im Container im für Instanzen vorgesehenen Bereich der
Datenbank gespeichert werden soll.
4 Formulare modellieren
74
4.1.4 Ankreuzfeld
Element
Bedeutung Feld zum Aktivieren oder Deaktivieren einer einzelnen Option.
Das Ankreuzfeld wird auch als Check Box bezeichnet.
Default Je nachdem wie beim Modellieren im Formulareditor die Check Box angeklickt wurde
bekommt der Anwender eine Check Box mit oder ohne Häkchen angezeigt.
Zum (De-)Aktivieren der Check Box klicken Sie auf das Kästchen oder den Text.
Beispiel
Konfiguration
Name
Die Feldbezeichnung ist zugleich die Option, die im Formular angezeigt wird.
Beschreibung
Ein Kommentarfeld, dessen Inhalt dem Anwender als Quick-Info angezeigt wird.
Hashtags
Möglichkeit zur Kennzeichnung mit einem eigenen Schlüsselbegriff.
CSS Zusatzklassen
Möglichkeit zur feldgenauen Layoutanpassung, siehe 7.6.7
Obligatorisch
Kennzeichnung als Pflichtfeld
Nur lesbar
Das Feld ist gegen Editieren geschützt
Element fokussieren
Das Feld wird optisch hervorgehoben
Bild anzeigen (URL)
Die Option muss nicht zwingend ein Text sein sondern
kann auch als Grafik per URL eingebunden werden.
4 Formulare modellieren
75
Feldname im Container
Legt fest, unter welchem Namen das Formularelement im Datencontainer gespeichert wird. Beim Öffnen des
Formulars wird das Element mit dem Wert aus dem Container gefüllt, sofern vorhanden.
Wenn bei Feldname im Container nichts eingestellt ist, wird der Feldbezeichner (Name) zum Speichern im
Container verwendet.
Wert in Instanz speichern
Legt fest, ob das Formularelement und sein Wert (true oder false) im für Instanzen vorgesehenen Bereich der
Datenbank gespeichert werden soll.
4.1.5 Radiobutton
Element
Bedeutung Aus einer Liste von Optionen kann immer nur eine einzige ausgewählt werden.
Beim Erstellen eines neuen Radiobuttons ist es möglich, alle Optionen frei zu lassen.
Zum (De-) Aktivieren des Radiobuttons klicken Sie in den Kreis. Sobald eine Option angeklickt
ist, können Sie zwar die Option noch wechseln. Es ist aber nicht mehr möglich, alle Optionen
frei zu lassen.
Default Eine beim Modellieren aktivierte Option wird dem Anwender vorgeschlagen.
Beispiel
Konfiguration
Name
Feldbezeichnung, die im Formular angezeigt wird.
Beschreibung
Ein Kommentarfeld, dessen Inhalt dem Anwender als Quick-Info angezeigt wird.
Hashtags
Möglichkeit zur Kennzeichnung mit einem eigenen Schlüsselbegriff.
CSS Zusatzklassen
Möglichkeit zur feldgenauen Layoutanpassung, siehe 7.6.7Fehler! Verweisquelle konnte nicht gefunden
erden.
4 Formulare modellieren
76
Mögliche Werte
Eine Liste der möglichen Optionen. Jeder Wert steht in einer eigenen Zeile. Es können auch Wertepaare
aufgelistet werden, getrennt durch Semikolon <value>;<label>. Dann wird der erste Wert als Schlüssel im
Datencontainer gespeichert und der zweite Wert findet Verwendung zum Anzeigen für den Anwender. Ein
Label-Eintrag für Radiobuttons darf somit kein Semikolon enthalten.
Für die Wertepaare von Radiobuttons können auch Zahlen verwendet werden, so dass der Anwender zwar
einen Texteintrag auswählt aber im Hintergrund eine Berechnung stattfinden kann.
Horizontal ausrichten
Damit können die Optionen nebeneinander aufgelistet werden:
Obligatorisch
Kennzeichnung als Pflichtfeld
Nur lesbar
Das Feld ist gegen Editieren geschützt
Element fokussieren
Das Feld wird optisch hervorgehoben
Feldname im Container
Legt fest, unter welchem Namen das Formularelement im Datencontainer gespeichert wird. Beim Öffnen des
Formulars wird das Element mit dem Wert aus dem Container gefüllt, sofern vorhanden.
Wenn bei Feldname im Container nichts eingestellt ist, wird der Feldbezeichner (Name) zum Speichern im
Container verwendet.
Containername für mögliche Werte
Tragen Sie hier die Referenz auf ein im Container definiertes Datenobjekt ein, das die möglichen Werte des
Radiobuttons enthält. Das Konfigurationsfeld Mögliche Werte lassen Sie in dem Fall frei.
Ein Beispiel ist in Fehler! Verweisquelle konnte nicht gefunden werden. beschrieben.
Wert in Instanz speichern
Legt fest, ob das Formularelement und sein Wert im für Instanzen vorgesehenen Bereich der Datenbank
gespeichert werden soll.
4 Formulare modellieren
77
4.1.6 Datumsfeld
Element
Bedeutung Feld zur direkten oder kalendergestützten Eingabe eines Datums.
Default Standardmäßig ist das Feld leer, außer es wird vom Modellierer vorbelegt.
Über den Heute-Button kann der Anwender das Tagesdatum eintragen.
Beispiel
Intern wird das Datum als Anzahl Millisekunden seit dem 01.01.1970 gespeichert.
Ein weiter in der Vergangenheit liegendes Datum hat demnach intern ein negatives
Vorzeichen.
Konfiguration
Name
Feldbezeichnung, die im Formular angezeigt wird.
Beschreibung
Ein Kommentarfeld, dessen Inhalt dem Anwender als Quick-Info angezeigt wird.
Hashtags
Möglichkeit zur Kennzeichnung mit einem eigenen Schlüsselbegriff.
CSS Zusatzklassen
Möglichkeit zur feldgenauen Layoutanpassung, siehe 7.6.7
4 Formulare modellieren
78
Obligatorisch
Kennzeichnung als Pflichtfeld
Nur lesbar
Das Feld ist gegen Editieren geschützt
Element fokussieren
Das Feld ist eingabebereit und wird optisch hervorgehoben
Name im Feld anzeigen
Der Feldbezeichner wird durch die Eingabe überschrieben
Feldname im Container
Legt fest, unter welchem Namen das Formularelement im Datencontainer gespeichert wird. Beim Öffnen des
Formulars wird das Element mit dem Wert aus dem Container gefüllt, sofern vorhanden.
Wenn bei Feldname im Container nichts eingestellt ist, wird der Feldbezeichner (Name) zum Speichern im
Container verwendet.
Wert in Instanz speichern
Legt fest, ob das Formularelement und sein Wert im für Instanzen vorgesehenen Bereich der Datenbank
gespeichert werden soll.
4 Formulare modellieren
79
4.1.7 Klickbares Bild / Icon
Element
Bedeutung Durch Anklicken eines Bildes kann ein anderer Prozess gestartet werden. Dabei kann es sich
um ein Programm oder Modell handeln oder eine Kombination aus beidem.
Wahlweise kann eine Überschrift (Blockelement) verdeutlichen, dass ein klickbares Bild
vorliegt.
Default Standardmäßig passiert nichts, solange der Anwender nicht auf das Bild klickt.
Beispiel
Konfiguration
Name
Elementbezeichnung, die aber nach außen nicht in Erscheinung tritt.
Beschreibung
Ein Kommentarfeld, dessen Inhalt dem Anwender als Quick-Info angezeigt wird.
Hashtags
Möglichkeit zur Kennzeichnung mit einem eigenen Schlüsselbegriff.
CSS Zusatzklassen
Möglichkeit zur feldgenauen Layoutanpassung, siehe 7.6.7
Bild aktiv (URL)
Internetadresse zum gewünschten Bild, das im Standardfall zu sehen ist.
Bild inaktiv (URL)
Hier kann ein abweichendes Bild hinterlegt werden, das nur dann sichtbar ist, nachdem der Anforderer das
Standard-Bild angeklickt hat. Durch das Anklicken des Standardbildes wird ein neuer Prozess gestartet. Der
bisherige Prozess ist vorübergehend inaktiv.
4 Formulare modellieren
80
Bild nicht klickbar (URL)
Hier kann ein drittes Bild hinterlegt werden, das nur dann angezeigt wird,
wenn die Option Nur lesbar eingestellt ist.
Wenn Sie beim Klickbaren Bild verschiedene URLs hinterlegen, dann achten Sie darauf, dass die
referenzierten Bilder dieselben Abmessungen haben. Damit vermeiden Sie Bildverzerrungen, denn
der für das Klickbare Bild aufgezogene Rahmen gilt für alle seine Bildreferenzen gleichermaßen.
Feldname im Container für aktives / inaktives / nicht klickbares Bild
Für alle drei möglichen Bilder kann ein Speicherort im Container angegeben werden. Unter einem frei
definierbaren Feldnamen wird gespeichert, ob das Bild angeklickt wurde oder nicht.
Umgekehrt ist es damit möglich, boolesche Werte von Instanzen mit Bildern zu visualiseren.
Bild aktiv / inaktiv anzeigen
Wenn diese Option aktiv ist, wechselt das Bild nach Anklicken zu dem im Feld Bild inaktiv (URL) hinterlegten
Bild. Andernfalls wird nach dem Anklicken das bestehende Bild weiterhin angezeigt.
Ausblenden
Damit bleibt das Element im Formular enthalten, ist aber nicht mehr sichtbar.
Diese Option ist nützlich, wenn das Element gerade nicht benötigt wird und die darin getroffenen relativ
komplexen Einstellungen nicht verloren gehen sollen.
Nur lesbar
Das Bild wird noch angezeigt, allerdings ist es nicht mehr anklickbar.
Falls bei Bild nicht klickbar (URL) eine Internetadresse hinterlegt ist, wird das zugehörige Bild eingeblendet.
Ziel bei Klick (URL)
Hier kann eine Internetadresse hinterlegt werden, die beim Anklicken des Bildes geöffnet wird.
Ziel bei Klick in neuem Tab ausführen
Wenn diese Option aktiv ist, wird die Zielseite in einem neuen Tab geöffnet.
Andernfalls wird die Internetadresse im aktuell aktiven Tab angezeigt.
Funktion: vor Modellausführung
Durch Anklicken des Zahnrads öffnet sich ein Editor.
Das hier hinterlegte Coding wird direkt nach dem Anklicken des Bildes und noch vor dem Starten
eines eventuell hinterlegten Modells ausgeführt.
Modell ausführen
Hier besteht die Möglichkeit ein anderes Modell aus dem aktuellen Scheer BPaaS Projekt einzuhängen.
Funktion: nach Modellausführung
Durch Anklicken des Zahnrads öffnet sich ein Editor.
Das hier hinterlegte Coding wird ganz am Schluss ausgeführt, erst nach der Ausführung eines eventuell
hinterlegten Eintrags bei Modell ausführen.
Die Testmöglichkeiten des Formulars im Play-Modus sind eingeschränkt.
Das Zusammenspiel mehrerer Apps mit der zugehörigen Fensterverwaltung können Sie nur
zuverlässig vom Kachel-Dashboard aus testen.
4 Formulare modellieren
81
4.1.8 Schaltfläche (Button)
Element
Bedeutung Schaltflächen sind nötig um ein Formular zu verlassen und zum nächsten Prozessschritt zu
gelangen. Sie werden außerdem verwendet zum Aufruf von Programmen.
Default Bei einer neu generierten Schaltfläche ist keinerlei Funktionalität hinterlegt.
Buttons müssen jeweils passend konfiguriert werden.
Beispiel
Konfiguration
Name
Beschriftung des Schalters
Beschreibung
Ein Kommentarfeld, dessen Inhalt dem Anwender als Quick-Info angezeigt wird.
Hashtags
Möglichkeit zur Kennzeichnung mit einem eigenen Schlüsselbegriff.
CSS Zusatzklassen
Möglichkeit zur feldgenauen Layoutanpassung, siehe 7.6.7
Nur lesbar
Schaltfläche wird gegen Anklicken geschützt
Element fokussieren
Der Schalter wird optisch hervorgehoben.
Indem man woanders hinklickt, wird der Fokus wieder vom Schalter entfernt.
Formular schließen
Damit wird erreicht, dass das Formular geschlossen wird, so dass ein neues Formular angezeigt werden kann.
Instanz speichern
Falls aktiv, dann werden die Instanzdaten in die Datenbank geschrieben, so dass die Daten später auch
wieder abgerufen werden können. Es werden nur diejenigen Daten persistiert, bei deren Formularelementen
das Kennzeichen Wert in Instanz speichern gesetzt war.
Falls inaktiv, dann werden keine Formulardaten dauerhaft gespeichert, unabhängig davon, ob bei den
Formularelementen Wert in Instanz speichern gesetzt war oder nicht.
4 Formulare modellieren
82
Zur Suche
Bewirkt einen Rücksprung zur Suchübersicht.
Wird verwendet von der Schaltfläche Zurück zur Suche beim Erfassen einer neuen Instanz.
Neue Instanz öffnen
Diese Option wird beim Neu-Button in der Suchübersicht verwendet.
Im Feld Modell ausführen hinterlegen Sie das Referenzmodell, das zum Öffnen der neuen Instanz aufgerufen
werden soll. Ob die Instanz gespeichert wird, hängt davon ab, ob der Anwender den im Referenzmodell
hinterlegten Speichern-Button anklickt.
Validierung durchführen
Die bei einem Formularelement hinterlegte Validierung wird erst auf Knopfdruck ausgeführt.
Beim Speichern-Button ist sie deswegen aktiviert und beim Zurück zur Suche-Button nicht.
Modell ausführen
Hier besteht die Möglichkeit ein anderes Modell aus dem aktuellen Scheer BPaaS Projekt einzuhängen.
Funktion: vor Modellausführung
Durch Anklicken des Zahnrads öffnet sich ein Editor.
Das hier hinterlegte Coding wird direkt nach dem Anklicken des Schalters und noch vor dem Starten
eines eventuell hinterlegten Modells ausgeführt.
Funktion: nach dem Anklicken
Durch Anklicken des Zahnrads öffnet sich ein Editor.
Das hier hinterlegte Coding wird ganz am Schluss ausgeführt, erst nach der Ausführung eines
eventuell hinterlegten Eintrags bei Modell ausführen.
4 Formulare modellieren
83
4.1.9 Suchfeld
Element
Bedeutung Suchfelder sind für das Arbeiten mit Scheer BPaaS selbst gedacht und werden verwendet, um
Modelle oder Elemente eines bestimmten Datenbereichs auswählbar zu machen.
Suchfelder beinhalten eine Autovervollständigen-Funktion. Je nach Eingabe wird eine dazu
passende Trefferliste angezeigt.
Default Bei einem neu generierten Suchfeld ist keinerlei Funktionalität hinterlegt.
Suchfelder müssen jeweils passend konfiguriert werden.
Beispiel
Konfiguration
Name
Beschriftung des Schalters
Beschreibung
Ein Kommentarfeld, dessen Inhalt dem Anwender als Quick-Info angezeigt wird.
Hashtags
Möglichkeit zur Kennzeichnung mit einem eigenen Schlüsselbegriff.
CSS Zusatzklassen
Möglichkeit zur feldgenauen Layoutanpassung, siehe 7.6.7
Obligatorisch
Kennzeichnung als Pflichtfeld
Nur lesbar
Das Feld ist gegen Editieren geschützt
Element fokussieren
Das Feld ist eingabebereit und wird optisch hervorgehoben
Das Fokussieren erfolgt abhängig vom Suchergebnis:
Name im Feld anzeigen
Der Feldbezeichner wird durch die Eingabe überschrieben
4 Formulare modellieren
84
Containername für mögliche Werte
Tragen Sie hier den Namen eines Feldes im Container ein. Das Suchfeld greift dann auf die dort hinterlegten
Werte zu. Das Feld im Container ist ein Array, analog zur Verwendung bei den Radiobuttons und
Auswahlfeldern.
Feldname im Container
Legt fest, unter welchem Namen das Formularelement im Datencontainer gespeichert wird. Beim Öffnen des
Formulars wird das Element mit dem Wert aus dem Container gefüllt, sofern vorhanden.
Wenn bei Feldname im Container nichts eingestellt ist, wird der Feldbezeichner (Name) zum Speichern im
Container verwendet.
Wert in Instanz speichern
Legt fest, ob Feldname und Wert des Containers im für Instanzen vorgesehenen Bereich der Datenbank
gespeichert werden sollen.
4 Formulare modellieren
85
4.1.10 Editor für Quellcode
Element
Bedeutung Der Quellcode-Editor ist für das Arbeiten mit Scheer BPaaS selbst gedacht und wird überall
dort verwendet, wo Funktionen ausprogrammiert werden können. Das ist der Fall etwa bei
Schaltflächen aber auch bei CSS-Modellen oder Workern.
Der Quellcode-Editor enthält Syntaxprüfungen passend zur eingestellten
Programmiersprache.
Default Standardmäßig ist ein Quellcode-Editor für 10 Zeilen javascript konfiguriert.
Beispiel CSS-Modelle sind mittels Quellcode-Editor einstellbar:
Die Syntaxprüfung unterstützt beim Erstellen der HTML-Codes:
Aber auch für JavaScript besteht eine Syntaxprüfung:
Konfiguration
Name
Beschriftung des Editors
Beschreibung
Ein Kommentarfeld, dessen Inhalt dem Anwender als Quick-Info angezeigt wird.
Die weiteren Konfigurationsfelder sind im Wesentlichen analog zu anderen Elementen.
4 Formulare modellieren
86
4.1.11 Blockelement
Element
Bedeutung Anzeigefeld für Überschriften und Informationen, die für den Endanwender
nicht änderbar sind. Blockelemente werden auch als DIV bezeichnet, von engl. division.
Default Standardmäßig werden an einem kurzen Beispiel verschiedene Schriftgrade, Farben und
andere Formatierungen vorgestellt:
<h1 style="color:#51A12C">Lorem</h1><p style="color:#B92444; font-weight:bold"> ipsum
<span style="color:#6FA7AB;font-style:italic;">dolor</span></p>
Beispiel
Konfiguration
Name
Feldbezeichnung, die aber im Formular nicht verwendet wird.
Beim Blockelement wird der Feldbezeichner im Formular nicht dargestellt.
Beschreibung
Ein Kommentarfeld, dessen Inhalt dem Anwender als Quick-Info angezeigt wird.
Hashtags
Möglichkeit zur Kennzeichnung mit einem eigenen Schlüsselbegriff.
CSS Zusatzklassen
Möglichkeit zur feldgenauen Layoutanpassung, siehe 7.6.7
Feld fokussieren
Das Feld ist eingabebereit und wird optisch hervorgehoben
Name im Feld anzeigen
Der Feldbezeichner wird durch die Eingabe überschrieben
Eingabe verstecken
Statt der eingegebenen Zeichens sind nur Punkte sichtbar
4 Formulare modellieren
87
Validierungsausdruck
Mittels regulärer Ausdrücke können Sie die Eingabe inhaltlich und formal prüfen. Beispiele:
[0-9] Nur Zahlen mit den Ziffern null bis neun werden als Eingabe akzeptiert.
^.{2,10}$ Limitiert die Anzahl eingebbarer Zeichen auf mindestens 2 und maximal 10.
^[A-Za-z0-9]{0,5}$ Nur max. 5 Buchstaben und Ziffern werden akzeptiert. Keine Leerzeichen,
Umlaute oder Sonderzeichen.
Feldname im Container
Legt fest, unter welchem Namen das Formularfeld im Datencontainer gespeichert wird. Beim Öffnen des
Formulars wird das Feld mit dem Wert aus dem Container gefüllt, sofern vorhanden.
Wenn bei Feldname im Container nichts eingestellt ist, wird der Feldbezeichner (Name) zum Speichern im
Container verwendet.
Bei gleichzeitiger Verwendung der Option Name im Feld anzeigen bleibt der Feldbezeichner so
lange im Eingabefeld sichtbar, bis der Anwender eine Eingabe vorgenommen hat oder ein vom
Leerstring verschiedener Wert aus dem Container gelesen wurde.
Zwei verschiedene Formularfelder, bei denen derselbe Feldname im Container hinterlegt ist, greifen
auf denselben Wert im Container zu.
Wert in Instanz speichern
Legt fest, ob Feldname und Wert des Containers im für Instanzen vorgesehenen Bereich der Datenbank
gespeichert werden sollen.
Beim Speichern der Formulareingaben durch den Anwender werden die Feldinhalte in den Container geschrieben.
Anschließend erfolgt automatisch ein Refresh. Dabei werden die Felder der Anwendungsoberfläche mit den Werten
aus dem Container aktualisiert.
Für ein Blockelement (DIV), das von einem anderen Blockelement kopiert und anschließend sein Inhalt geändert
wurde, hat das folgende Auswirkung:
Beim Ausführen der App sind die Inhalte der DIVs unterschiedlich. Sie werden mit ihrer Vorbelegung dargestellt.
Durch das Speichern wird der Inhalt des DIVs in den Container geschrieben. Der Feldname im Container ist, sofern
nicht anders angegeben, der Feldname. Der Inhalt des zuletzt gespeicherten DIVs wird nach dem Speichern im
Formular angezeigt, und zwar bei allen DIVs, die auf dasselbe Feld im Container zugreifen.
Um das zu verhindern, muss man nach dem Kopieren eines Blockelementes entweder den Feldnamen ändern oder
einen abweichenden Feldnamen im Container vorgeben.
Grundsätzlich ist beim Kopieren von Elementen immer darauf zu achten, ob man den Feldnamen oder den
Feldnamen im Container ändern möchte. Bei Blockelementen ist das besonders relevant, weil der Feldname beim
Ausführen der App nicht in Erscheinung tritt.
4 Formulare modellieren
88
4.1.12 Formular-Element
Element
Bedeutung Ein Formular-Element wird dazu verwendet, Formulare zu schachteln.
Das Hauptformular enthält dann nur einige wenige Formular-Elemente, die ihrerseits mehrere
Eingabefelder oder Formularelemente enthalten.
Default Ein neu generiertes Element vom Typ Formular enthält standardmäßig drei Schaltflächen und
ein Symbol für stilisierte Formularfelder, damit man das Element leichter anklicken kann. Nach
dem Öffnen können Sie eigene Felder eintragen und nicht benötigte Schaltflächen entfernen..
Beispiel
Konfiguration
Name
Feldbezeichnung, die aber im Formular für den Anwender nicht sichtbar ist..
Bei geschachtelten Formularen wird der Feldbezeichner im übergeordneten Formular nicht dargestellt.
Beschreibung
Ein Kommentarfeld, dessen Inhalt dem Anwender als Quick-Info angezeigt wird.
4 Formulare modellieren
89
Hashtags
Möglichkeit zur Kennzeichnung mit einem eigenen Schlüsselbegriff.
CSS Zusatzklassen
Möglichkeit zur feldgenauen Layoutanpassung, siehe 7.6.7
Ausblenden
Falls aktiv, dann wird das Formular beim Abspielen des übergeordneten Formulars ausgeblendet.
Hashtags
Möglichkeit
Hashtags
Möglichkeit
Formularelemente absolut positionieren
Falls aktiv, dann werden die Felder im Formular genau an der Stelle angezeigt, an der sie manuell angeordnet
wurden.
Falls inaktiv, dann werden die Elemente beim Abspielen des Formulars von oben nach unten tabellarisch in
einer Spalte angeordnet.
Damit die getroffene Einstellung zieht, muss man das eingebettete Formular aufrufen und wieder zurück
wechseln zum umgebenden Formular.
Eingebettetes Formular mit absoluter und mit relativer Feldanordnung:
5 Apps konfigurieren
90
5 Apps konfigurieren
5.1 Suchübersicht konfigurieren
Die Suchübersicht besteht aus zwei Bereichen:
■ Im oberen Bereich stehen die Felder, nach denen gesucht werden kann (Filter).
■ Im unteren Bereich steht die Tabelle mit zum Filter passenden Instanzdaten.
5.1.1 Suchfelder konfigurieren Die Felder im oberen Bereich erstellen Sie am einfachsten dadurch, dass Sie nach einem Formularfeld suchen, das
bei der Datenerfassung verwendet wird.
5 Apps konfigurieren
91
Durch Drag&Drop ziehen Sie es in der Suchübersicht an die gewünschte Stelle. Die Formularfelder sind dadurch
verlinkt. Wenn Sie beispielsweise später im Formular ein Feld umbenennen, ändert sich das in die Suchübersicht
verlinkte Feld dementsprechend. Das gleiche Verfahren mit Suche und Drag&Drop können Sie auch anwenden, wenn
Sie innerhalb einer EPK mehrere Formulare erstellen möchten, die teilweise dieselben Felder beinhalten.
5.1.2 Instanztabelle konfigurieren Durch Anklicken der Instanztabelle erscheint rechts unten ein Anfasser, so dass Sie die Größe der Tabelle verändern
können.
Die Anzahl und Art der angezeigten Spalten stellen Sie über die Spaltenkonfiguration ein:
Typisches Beispiel einer Spaltenkonfiguration:
Achten Sie bei Auswahlfeldern und Radiobuttons darauf, dass Sie beim Feldnamen im Container angeben, ob
Sie den value oder das label angezeigt bekommen möchten.
Bei Datumsfeldern müssen Sie den Spaltentyp date vorgeben.
Die Breite der Spalten können durch Zahlen gesteuert werden.
Temporär nicht benötigte Spalten können ausgeblendet werden
5.1.3 Suche starten Eine Suche innerhalb der Instanzdaten wird automatisch ausgeführt, sobald ein Eintrag eines Suchfeldes geändert
wurde. Die Änderung wird aktiv nach Bestätigung der Eingabe mit ENTER oder durch Anklicken außerhalb des
geänderten Suchfeldes. Die Daten der Tabelle passen sich immer an die getroffene Suchauswahl an. Wenn es keine
Instanzen gibt, die zu den Suchkriterien passen, wird die Meldung „Keine Instanzen gefunden“ eingeblendet.
5 Apps konfigurieren
92
5.1.4 Unbeabsichtigtes Filtern verhindern Ein leeres Suchfeld bedeutet, dass keine Filterung angewendet werden soll. In den meisten Fällen kann man ein bei
der Neuanlage von Instanzen verwendetes Formularfeld in die Suchübersicht verlinken.
Bei Auswahlfeldern (Dropdown-Boxen) kann es aber sein, dass bei der Neuanlage von Instanzen nur konkrete Werte
zur Verfügung stehen und kein Leereintrag. Für die Suchübersicht wird dann ein eigenes Auswahlfeld benötigt, das
den Leereintrag beinhaltet, so dass man sich alle Instanzen mit verschiedenen Werten anzeigen kann.
Das neue Formularfeld muss so angelegt werden, dass es auf denselben Wert im Container referenziert wie das
Formularfeld bei der Neuanlage. Dafür gibt es zwei Möglichkeiten:
■ Wenn der Feldname im Container leer ist, erfolgt die Referenz über den Namen des Formularfeldes
■ Wenn der Feldname im Container gesetzt ist, erfolgt die Referenz über den dort verwendeten Feldnamen
Beispiel: Formularfeld Farben bei Neuanlage: Eigenständiges Formularfeld Farbe bei Suchübersicht:
Konfiguration von Farben: Konfiguration von Farbe:
Die Referenz erfolgt über den Wert color im Container. Deswegen dürfen die Feldnamen Farben und Farbe
voneinander abweichen. In der Spaltenkonfiguration zur Suchtabelle muss color.label oder color.value stehen:
Im einfachsten Fall ist Feldname im Container leer. Dann müssen die Felder bei Neuanlage und Suche beide
denselben Namen haben, z.B. Farben. In der Spaltenkonfiguration muss dann als Feldname im Container
Farben.label oder Farben.value hinterlegt sein.
5 Apps konfigurieren
93
5.2 Userdaten (Systemfelder) ermitteln
Im folgenden Beispiel wird die Emailadresse des angemeldeten Users ermittelt und zur Vorbelegung des Feldes Email
verwendet.
lfd.Nr. Aktion
1 EPK mit folgender Struktur anlegen:
Der Worker mit den Vorbelegungen könnte auch direkt mit Funktion Systemfelder anzeigen
verbunden sein. Die Vorbelegung findet dann trotzdem statt, bevor das Formular
Systemfelder anzeigen ausgeführt wird.
2 Worker anklicken und in der Sidebar die Eigenschaften des Workers
5 Apps konfigurieren
94
lfd.Nr. Aktion
3 Coding zur Initialisierung eintragen:
Die Funktion bptIntercom.getUser wird asynchron ausgeführt, d.h. im Hintergrund, während die
Oberfläche der App aufgebaut wird.
Erst wenn die Funktion erfolgreich durchlaufen ist, wird die lokale Variable email mit der im
Benutzerstamm gespeicherten Email-Adresse gefüllt.
Der Wert von Variable email wird in das Feld Email des Containers geschrieben.
Kopierbare Version: worker=this; var container=worker.getContainer(); // Container ermitteln var bptIntercom = options.container.get('bpaas.bptIntercom'); bptIntercom.getUser({ "onSuccess" : function(userDetails) { var email = userDetails.email; container.put("Email", email); next(); } });
4 Im Formular wird das Feld E-Mail definiert.
Es soll im Container den Feldnamen Email haben, der im Coding des Workers bereits verwendet
wurde.
5 Abspielen der App führt bei User Mustermann mit Adresse
[email protected] zu folgendem Ergebnis:
5 Apps konfigurieren
95
lfd.Nr. Aktion
Die Adresse ist dementsprechend auch im Container gespeichert:
Ganz analog stehen in userDetails die folgenden Felder zur Verfügung:
Feld Wert (Beispiel)
attributes "{"udxNamespace":"MyNameSpace","udxSpecial":""}"
cfg KUNDEN
company Mustermann GmbH
department Vertrieb
email [email protected]
langu de
login [email protected]
name Max Mustermann
startGuid rmacb0717a-32a2-54a4-2294-1f066f841b34
5 Apps konfigurieren
96
5.3 EPKs schachteln Aus Gründen der Übersichtlichkeit möchte man keine „meterlangen“ Prozessketten modellieren, sondern Modelle
mit wenigen Elementen erstellen, die bei Bedarf mit feinerem Detaillierungsgrad angezeigt werden können.
Verschiedene kleinere EPKs werden durch folgende Struktur zu einer großen EPK zusammengefasst:
■ Die Elementnamen sind frei wählbar
■ Alle Teil-EPKs nutzen denselben Container. Alle in Teil-EPKs erfassten Daten stehen somit auch in den
anderen EPKs zur Verfügung und können per Referenz auf den Feldnamen im Container abgerufen
werden.
■ Teil-EPKs können ihrerseits aus Teil-EPKs zusammengesetzt sein.
■ es gibt keine einschränkende maximale Schachtelungstiefe
Mitunter möchte man die Strukturierung in Teil-EPKs einführen, nachdem ein anfangs kleines Modell immer größer
geworden ist. Die folgenden Schritte beschreiben eine mögliche Vorgehensweise, wenn ein Modell in zwei Teil-EPKs
strukturiert werden soll. Als Beispiel wird das Modell eines (rudimentären) Ticket-Systems verwendet:
5 Apps konfigurieren
97
Einfaches Modell eines Ticket-Systems, das entlang der gestrichelten Linie in zwei Teilmodelle strukturiert werden
soll:
lfd.Nr. Aktion
1 Erstellen Sie parallel zum Ausgangsmodell ein neues EPK-Modell:
5 Apps konfigurieren
98
lfd.Nr. Aktion
2 Hinterlegen Sie im Modell Ticket-System strukturiert die gewünschte Struktur
nach obigem Schema:
3 Wechseln Sie zum Ausgangsmodell und markieren Sie alle Elemente, die Sie in EPK-1 übernehmen
möchten. Dazu klicken Sie ein Element an und halten die Taste STRG gedrückt, während Sie weitere
Elemente anklicken. Kopieren Sie die Elemente per Kontextmenü.
Damit im Kontextmenü der Eintrag Kopieren erscheint, müssen Sie das Kontextmenü über einem
der markierten Elemente aufrufen. Das Aufrufen über einem nicht markierten Element führt dazu,
dass die bisherige Markierung aufgehoben wird.
5 Apps konfigurieren
99
lfd.Nr. Aktion
4 Wechseln Sie in die erste Teil-EPK und fügen Sie dort die Elemente als Verknüpfung ein.
5 Ergänzen Sie ggf. das Start- und Ende-Ereignis:
6 Verfahren Sie entsprechend für die nächste Teil-EPK:
7 Testen Sie die neue EPK mit Binnenstruktur
5 Apps konfigurieren
100
lfd.Nr. Aktion
8 Löschen Sie in der Ausgangs-EPK die nicht mehr benötigten Elemente:
Verwenden Sie dafür das Kontextmenü um alle Elemente zu markieren …
… und anschließend Löschen > Verweis löschen
Verwenden Sie NICHT das Menü Modell und alle Verweise löschen, da Sie sonst
möglicherweise unabsichtlich die in das neue Modell kopierten Elemente mit löschen!
9 Testen Sie abschließend.
Auch das Ausgangsmodell Ticket-System kann gelöscht werden.
5 Apps konfigurieren
101
5.4 EPKs und Apps dokumentieren
EPKs können leicht unübersichtlich werden:
Als ein Mittel zur Dokument steht ein spezielles Element zur Verfügung:
Durch Anklicken des Zahnrads öffnet sich ein Editor zum Erfassen von Dokumentation.
Dokumente haben keinen Einfluss zur Ausführung der EPK.
5 Apps konfigurieren
102
5.5 Technisches
5.5.1 Hashtags für Modelle oder Formularelemente verwenden Hashtags sind durch Leerzeichen getrennte Stichwörter. Sie werden indiziert und sind suchbar. Das erleichtert das
Auffinden von Elementen oder ganzen Modellen, insbesondere von kopierten Modellen, deren Bezeichnung
gleichlautend ist.
lfd.Nr. Aktion
1 Hashtags können beim Erfassen eines neuen Elements eingetragen werden.
Das führende Hash-Zeichen # (auch „Raute“ oder „Doppelkreuz“ genannt) wird, sofern es nicht
manuell eingetragen wurde, automatisch beim Speichern eingefügt. Durch Leerzeichen getrennt
können mehrere Hashtags angegeben werden. Im Suchergebnis werden alle hinterlegten
Hashtags angezeigt:
Gespeicherte Hashtags aus Schritt 1:
2 Hashtags können auch beim Kopieren eines neuen Elements eingetragen werden.
Es erscheint hierfür ein Dialogfeld:
Das Hashtag erscheint im Element-Detailbild und kann später noch manuell ergänzt oder
überschrieben werden.
3 Beim Kopieren per Kontextmenü „Einfügen > als Kopie“ werden die in der Vorlage
eventuell enthaltenen Hashtags nicht in die Kopie übernommen.
5 Apps konfigurieren
103
lfd.Nr. Aktion
Regeln beim Suchen mittels Hashtags:
der Suchbegriff muss mit # beginnen.
Groß- und Kleinschreibung spielen keine Rolle
Der Hashtag muss von vorne beginnend eingetragen werden
Es werden auch dann schon Treffer gefunden, wenn der Hashtag
nicht vollständig eingegeben ist
Die Anzahl Treffer verringert sich im allgemeinen mit der Länge des eingegebenen Hashtags
5 Apps konfigurieren
104
5.5.2 Ausgabemeldungen fürs Debugging verwenden (in 3 Varianten)
Beispiel eines sehr einfachen Formulars:
Feld Nachname:
Vorgabe eines abweichenden Feldnamens:
Wenn die EPK durchlaufen ist, kann man sich in der Zusammenfassung den Container anzeigen lassen. In der
Zusammenfassung erscheinen nur die Elemente mit explizit eingetragenem Feldnamen.
Diese Informationen reichen im Allgemeinen nicht aus.
Daher werden zusätzliche Ausgaben fürs Debugging in einen Worker eingebaut.
Varianten Aktion
1 Meldung in die Console erzeugen mit Inhalt von Feld MyVariable:
var worker=this;
var container=worker.getContainer(); // Container ermitteln
var myVar = container.get("MyVariable");
console.log( 'Inhalt von Feld "MyVariable" im Anschluss an Schritt X: >' + myVar +'<' );
5 Apps konfigurieren
105
Varianten Aktion
Der Name des Workers erscheint in der ersten Zeile, danach die ausgegebene Meldung.
2 Meldung in die Console erzeugen mit dem Inhalt des gesamten Containers:
console.info(container.getWorkspace());
In der Console von Chrome sieht es dann so aus:
Das Datenobjekt Surname erscheint, aber auch ein Element mask mit den Werten sämtlicher
Formularelemente.
In der Datenbank werden Formularelemente gespeichert unter
<Formularnname>.<Feldname>
3 Meldung in der Anwendungsoberfläche erzeugen mit Inhalt von Feld MyVariable:
var worker=this;
var container=worker.getContainer(); // Container ermitteln
var myVar = container.get("MyVariable");
alert( 'Inhalt von Feld "MyVariable" im Anschluss an Schritt X: >' + myVar +'<' );
5 Apps konfigurieren
106
5.6 EPK-Verzweigungen mit XOR konfigurieren Fallunterscheidungen lassen sich mit dem XOR-Konnektor modellieren. Die Konnektoren für AND und OR sind noch
in Vorbereitung. Eine Verzweigung hat grundsätzlich folgenden Aufbau:
Beispiel im Formular „Kundengruppe auswählen“:
das Auswahlfeld Kundengruppe enthält die Werte Gastronomie und Markt:
Je nach getroffener Auswahl sollen im Folgeformular weitere Informationen erfragt werden.
Beim Auswahlfeld kann bei den möglichen Werten unterschieden werden zwischen value und label.
In den Ereignissen nach dem XOR-Konnektor muss deswegen auf Kundengruppe.label oder Kundengruppe.value
geprüft werden. Genauso verhält es sich bei Radiobuttons. Auch dort ist eine Unterscheidung in value und label
möglich. Falls beim Auswahlfeld oder Radiobutton keine Unterscheidung zwischen value und label eingestellt ist,
spielt es keine Rolle, ob auf .label oder .value geprüft wird.
5 Apps konfigurieren
107
lfd.Nr. Aktion
1 Konfiguration des Auswahlfeldes:
mindestens zwei mögliche Werte.
Lassen Sie den Feldnamen im Container frei!
2 Für jeden Zweig nach dem XOR ist ein eigenes Ereignis erforderlich, in dem das jeweilige Kriterium
abgefragt wird, d.h. der Wert des Feldes im Datencontainer.
Im Ereignis Kundengruppe Gastronomie: Im Ereignis Kundengruppe Markt:
Bei einer Aufteilung nach dem XOR-Konnektor in zwei Alternativen A und B ist es empfehlenswert,
nicht auf A und auf B zu prüfen sondern auf A und auf Nicht-A. Dadurch ist gewährleistet, dass stets
entweder der eine oder der andere Zweig durchlaufen wird. Selbst dann, wenn unabsichtlich eine
Alternative C wählbar ist.
Bei einer Fallunterscheidung mit mehr als zwei Alternativen müssen Sie dafür sorgen, dass für jede
der möglichen Alternativen auf eine passende Bedingung geprüft wird.
Wenn als Kriterium kein Auswahlfeld oder Radiobutton sondern ein einzeiliges Eingabefeld
verwendet wird, dann darf auch bei Feldname im Container eine Eintragung gemacht werden.
Bei den Prüfbedingungen muss dann die bei Feldname im Container verwendete Bezeichnung
abgefragt werden statt des Feldnamens.
Bei einem Auswahlfeld oder Radiobutton darf Feldname im Container nicht verwendet werden. Die
Unterscheidung zwischen value und label würde sonst verloren gehen.
5 Apps konfigurieren
108
lfd.Nr. Aktion
Die Syntax muss mit === oder !== und den jeweiligen einfachen bzw. doppelten Hochkommas
übernommen werden:
'Kundengruppe.label'==="Markt"
Linke Seite: Name des Auswahlfeldes mit Zusatz .label oder .value.
Rechte Seite: möglicher Wert des Auswahlfeldes
Das Weglassen der doppelten Hochkommas auf der rechten Seite hätte zur Folge, dass im Container
nach einem Feld namens Markt gesucht wird und dessen Inhalt zur Prüfung herangezogen wird.
In jedem Zweig nach einer XOR-Bedingung muss technisch bedingt mindestens eine Funktion
vorkommen.
Beispiel einer EPK mit Verzweigung und zwei direkt aufeinander folgenden Ereignissen:
Nach Ziehen der Kante zwischen den Ereignissen im linken Zweig erscheint die Meldung:
5 Apps konfigurieren
109
lfd.Nr. Aktion
Formal ist die EPK in Ordnung. Damit die App von Scheer BPaaS ausgeführt werden kann, muss aber
der linke Zweig um eine leere Funktion ergänzt werden:
5 Apps konfigurieren
110
5.6.1 Übersicht logischer Operatoren
Operator Bedeutung
== Gleichheitsoperator
!= Ungleichheitsoperator
=== Strikter Gleichheitsoperator
!== Strikter Ungleichheitsoperator
< Kleiner-als-Operator
<= Kleiner-als-oder-gleich-Operator
> Größer-als-Operator
>= Größer-als-oder-gleich-Operator
&& Logischer AND-Operator. Die damit verbundenen logischen Ausdrücke müssen alle erfüllt
sein, damit die Bedingung erfüllt ist.
|| Logischer OR-Operator. Mindestens einer der damit verbundenen logischen Ausdrücke
muss erfüllt sein, damit die Bedingung erfüllt ist.
! Logischer NOT-Operator. Dreht einen Wahrheitswert um.
In der Regel ist immer der strikte (Un-)gleichheitsoperator zu verwenden. Dadurch ist
gewährleistet, dass zwei Operanden nicht nur vom Wert sondern auch vom Typ
übereinstimmen.
6 App ausführen
111
6 App ausführen
6.1 Funktionen mit Kanten in die EPK einbinden Zur Ausführung einer EPK ist es ungünstig, wenn sie nichtverknüpfte Funktionen erhält. Also Funktionen, die nicht
über Kanten in die EPK eingebunden sind, sondern nur im Zuge der Entwicklung so mal eben aufgenommen wurden.
Es kann sein, dass dann versucht wird, die freischwebende Funktion auszuführen und die eigentliche EPK ignoriert
wird.
6.2 Eine App-Kachel definieren Eine EPK kann man durch den Play-Button ausführen.
Etwas schicker ist die Verwendung einer Process-App-Kachel:
6 App ausführen
112
lfd.Nr. Aktion
1 Neues Element Process App auf die Canvas ziehen
und mit passendem Namen versehen.
2 Im Feld Ausführungsmodell ist eine AJAX-Suchfunktionalität hinterlegt:
3 Nach Auswahl des gewünschten EPK-Modells, wird die Bezeichnung im Feld automatisch gefüllt:
4 Das Feld „Name der Kollektion“ dient zur Angabe eines Unternamespaces, in den die App-
Instanzen geschrieben werden.
Typischerweise beginnt der Name der Kollektion mit dem Namen des Namespaces und einem
angehängten Kürzel, also z.B. MyNameSpace_Instanzen
5 Die App wird gestartet entweder über den START-Button
oder über die Kachel in der Startseite, die durch Auswahl des Process App-Elementes automatisch
neu hinzugeneriert wurde.
6 App ausführen
113
lfd.Nr. Aktion
Man kann sich Details zur Kachel anzeigen lassen:
6 App ausführen
114
6.3 Daten in Instanzen und im Container speichern
6.3.1 Daten einer Instanz speichern Beim Aufruf einer App und Durchlaufen von Prozessschritten werden die im Zusammenhang mit dem Vorgang
stehenden Daten als Instanz bezeichnet. Instanzen werden nur dann dauerhaft gespeichert, wenn das Formular
eine Schaltfläche zum Speichern von Instanzen enthält.
In der Konfiguration der Schaltfläche muss der Haken bei der Option Instanz speichern gesetzt sein.
Ein bestimmtes Formularfeld wird nur dann in der Instanz gespeichert, wenn das Flag Wert in Instanz speichern
aktiviert ist.
Im Container wird ein Feld in jedem Fall gespeichert, auch wenn die Option Wert in Instanz speichern nicht gesetzt
ist. Zur Laufzeit der App sind alle Werte des Containers (temporär) verfügbar. Um Containerwerte dauerhaft
(permanent) in der Datenbank zu speichern, muss die Instanz gespeichert werden.
Wenn Sie Ihre Scheer BPaaS Session beenden und später in einer neuen Session die Suchübersicht aufrufen,
bekommen Sie die Instanz immer noch angezeigt.
6 App ausführen
115
6.3.2 Daten im Container speichern Jedes Formularelement wird mit seinem Wert standardmäßig im Container gespeichert. Sie können beeinflussen,
unter welchem Namen ein Formularelement im Container gespeichert wird, wenn der Name im Container vom
Feldnamen abweichen soll.
[1] Formularelement mit angezeigter deutscher Übersetzung Firmenname
[2] der Feldname ist der Schlüssel des Formularelements und lautet Firma
[3] Übersetzungsmöglichkeit für weitere Sprachen: Company
[4] Hashtag, unter dem das Element gefunden werden kann: #Firma
[5] Name, unter dem der Wert des Formularelements im Container gespeichert wird: ADDR-company
Wenn bei Feldname im Container keine Angabe steht, wird der Schlüssel des Formularelements verwendet.
Jedes Feldelement hat darüberhinaus in der Datenbank einen eindeutigen, technischen Schlüssel.
Die Definition eines abweichenden Feldnamen im Container ist nützlich, wenn der Feldschlüssel sehr lang ist und Sie
beispielsweise programmtechnisch über einen Worker auf einen kurzen, technischen Namen zugreifen möchten.
[1]
[2]
[5]
[3]
[4]
6 App ausführen
116
6.3.3 Daten des Containers anzeigen
Während der Testphase kann es hilfreich sein, sich die Inhalte des Containers anzuzeigen. Verwenden Sie dafür im
letzten Formular im Referenzmodell den Schalter Zurück zur Suche. Konfigurieren Sie den Schalter so, dass die Option
Formular schließen aktiv ist. Dadurch wird automatisch die Option Zurück zur Suche deaktiviert.
Beim Abspielen des Referenzmodells erfassen Sie die Formulardaten:
Nach Anklicken von Zurück zur Suche wird die App beendet und es erscheint eine Zusammenfassung:
Die Ausführungszeit ist nicht die Rechenzeit sondern die Zeit zwischen Start und Ende der Ausführung.
6 App ausführen
117
Mittels Container anzeigen öffnet sich ein PopUp mit sämtlichen im Container gespeicherten Informationen.
Sie können die vom Browser angebotene Suchfunktionalität nutzen. Hier im Beispiel werden zwei Treffer beim Suchen
nach ADDR gefunden:
Entwickler können alternativ die Felder des Containers in die Konsole des Browsers ausgeben:
console.info(container.getWorkspace());
Zumindest temporär zur Laufzeit besteht somit Zugriff auf alle Formular- und sonstigen Datenelemente.
7 Weiterführende Konfiguration
118
7 Weiterführende Konfiguration
7.1 Eigenes Bildmaterial verwenden
In Scheer BPaaS können Sie Fotos oder Grafiken einbinden um Kacheln von Projekten und Apps zu
gestalten oder Formulare zu illustrieren. Dazu müssen Sie lediglich die Internetadresse kennen, unter der
das Bild aufrufbar ist.
Kachel Formular
Internetadresse ist in der Kachel konfiguriert:
http://scheer-group.com/uploads/bestof2015.png
Internetadresse wird im Bildelement konfiguriert:
Selbsterstellte Grafiken oder Fotos müssen auf einem Webserver abgelegt werden, damit sie in Scheer
BPaaS referenziert werden können. Dafür kommen Web-Dienstleistungsportale in Frage wie etwa
www.flickr.com und viele andere:
Beachten Sie die jeweiligen Nutzungsbedingungen. Scheer GmbH übernimmt keine Verantwortung für die
in Scheer BPaaS verlinkten Inhalte und empfiehlt kein bestimmtes Dienstleistungsportal.
Konfiguration
7 Weiterführende Konfiguration
119
Bildupload am Beispiel fotos-hochladen.net
lfd.Nr. Aktion
1 Adresse für den Upload aufrufen: http://www.fotos-hochladen.net/
2 Nutzungsbedingungen beachten
3 Die Bilddatei auswählen und das Bild hochladen:
4 Diverse Linkvarianten werden angezeigt:
5 Verwenden Sie den Direktlink Foto zur Konfiguration in Scheer BPaaS.
Merken Sie sich den Löschlink für den Fall, dass das Bild später wieder
vom Webserver entfernt werden soll.
7 Weiterführende Konfiguration
120
Bildupload am Beispiel Picasa
lfd.Nr
.
Aktion
1 Die Software Picasa muss lokal am Rechner installiert sein, ebenso wie die Bilddatei:
2 Öffnen Sie Picasa und den Ordner, in dem die Bilddatei liegt mittels
Datei > Ordner zu Picasa hinzufügen …
3 Melden Sie sich mit Ihrem Google-Konto an.
4 Markieren Sie in Picasa die zum Hochladen vorgesehenen Bilder und klicken Sie auf Hochladen:
7 Weiterführende Konfiguration
121
lfd.Nr
.
Aktion
5 Bestätigen Sie die Angaben. Insbesondere muss eingestellt sein, dass das Bild im Web öffentlich sichtbar
sein soll:
6 Wählen Sie im PopUp die Option Hochladen:
7 Nach dem Upload erscheint eine Meldung, die Sie schließen können.
7 Weiterführende Konfiguration
122
lfd.Nr
.
Aktion
8 Das hochgeladene Bild erscheint nun in Google Fotos:
9 Klicken Sie das Bild an, so dass es sich in der Bildergalerie öffnet.
Mittels Kontextmenue kopieren Sie die Grafikadresse in die Zwischenablage.
10 Verwenden Sie den Link aus der Zwischenablage zur Konfiguration in Scheer BPaaS.
Wenn Sie Bilder in Google Fotos direkt hochladen, ohne
Picasa, dann erhalten Sie keinen statischen Link. Es kann
passieren, dass das Bild schon nach kurzer Zeit nicht mehr
gefunden wird.
7 Weiterführende Konfiguration
123
7.2 Werte eines Auswahlfeldes dynamisch ermitteln
Bei Auswahlfeldern und Radiobuttons können Sie die möglichen Werte programmtechnisch vorgeben statt durch
Auflistung im Formularelement.
Dynamisches Befüllen der Auswahlelemente am Beispiel des Firmenstandorts:
lfd.Nr. Aktion
1 Erstellen Sie eine EPK mit Worker und anschließendem Formular:
2 Definieren Sie im Worker die Möglichen Werte und den Defaultwert:
3 Modellieren Sie im Formular ein Auswahlfeld oder einen Radiobutton, wobei Sie die Möglichen
Werte frei lassen:
4 Verwenden Sie Standort als Feldname im Container und tragen ein,
dass die Möglichen Werte aus dem Container gelesen werden sollen:
7 Weiterführende Konfiguration
124
lfd.Nr. Aktion
5 Beim Abspielen im Formulareditor sind noch keine Optionen sichtbar:
6 Die Optionen und der Default werden beim Abspielen der EPK ermittelt:
Hier eine Kopiervorlage.
// Definition der Möglichen Werte: container.put('Standort-Werte', [{
7 Weiterführende Konfiguration
125
lfd.Nr. Aktion 'label': 'Berlin', 'value': '1'}, {'label': 'Frankfurt', 'value': '2'}, {'label': 'München', 'value': '3'}]); // Defaultwert: container.put('Standort','2');
Genauso gut könnten mit einer IF-Abfrage die Optionen in Abhängigkeit eines anderen
Containerfelds gesetzt oder Schleifen zum Generieren der Einträge verwendet werden.
7.3 Inhalte in andere Sprachen übersetzen
7.3.1 Modellierungen übersetzen Damit Scheer BPaaS mehrsprachig eingesetzt werden kann, gibt es die Möglichkeit, Übersetzungen zu hinterlegen.
Übersetzbar sind nicht nur die Formularfelder sondern alle im Prozess enthaltenen Ereignisse und Funktionen.
7 Weiterführende Konfiguration
126
Mittels Bearbeiten-Icon haben Sie die Möglichkeit, die
Übersetzungstabelle zu pflegen.
Auch das Hinterlegen deutscher Begriffe kann sinnvoll sein,
wenn beispielsweise für Formularfelder ein technischer
Schlüssel gewählt wurde.
Wenn Sie tatsächlich nur die Elemente eines Formulars
übersetzen möchten und nicht den Prozess als Ganzes,
dann wechseln Sie in das Formular und klicken dort das
Bearbeiten-Icon an.
7 Weiterführende Konfiguration
127
7.3.2 Ausgabemeldungen übersetzen
//Kopiervorlage:
var dict = container.get('bpaas.dictionary');
var text = dict.get('test');
alert("Ausgabe: " + text);
next();
7 Weiterführende Konfiguration
128
Textpflege:
Ausgabe für einen deutsch angemeldeten Anwender:
Ausgabe für einen englisch angemeldeten Anwender:
Ausgabe für einen anderweitig angemeldeten Anwender:
7 Weiterführende Konfiguration
129
7 Weiterführende Konfiguration
130
7.4 Metainformationen einblenden
7.4.1 Aktuellen Prozessschritt einblenden Wenn die Instanzen einer Process App mehrere Prozessschritte durchlaufen, ist es praktisch, wenn in der
Suchübersicht angezeigt wird, in welchem Prozessschritt siche eine Instanz aktuell befindet.
Der aktuelle Prozesschritt ist in meta.currentStep.processStepName gespeichert.
lfd.Nr. Aktion
1 Wechseln Sie in das Suchmodell des App-Projektes und von dort in das Formular zur Konfiguration der
Suchübersicht. Markieren Sie die Instanztabelle.
2 In der Spaltenkonfiguration tragen Sie meta.currentStep.processStepName ein:
3 Beim Aufruf der Startkachel zur Suchübersicht erscheint nun der jeweilige Prozessschritt:
Das Filtern der Suchübersicht auf Instanzen eines bestimmten Prozessschrittes wird in 8.3 beschrieben.
7 Weiterführende Konfiguration
131
7.4.2 Informationen zur Erstellung und Änderung einblenden
Der aktuelle Prozessschritt wird gespeichert in der Variablen meta.currentStep.processStepName, und das
Einblenden der Variable wurde im vorherigen Kapitel beschrieben. Ganz analog verfahren Sie beim
Einblenden weiterer Informationen, die automatisch von Scheer BPaaS im Container geführt werden.
Metainformationen Variable
Erstellt von meta.createdBy
Erstellt am meta.createdAt
Geändert von meta.changedBy
Geändert am meta.changedAt
Beispiel einer Suchübersicht mit angezeigten Metainformationen:
7 Weiterführende Konfiguration
132
7.5 Navigation zwischen Prozessschritten konfigurieren Im einfachsten Fall wird eine EPK von oben nach unten durchlaufen. Dementsprechend erscheint für den
Anwender eine feste Abfolge von Formularen. Durch Rückführung von Kanten (Schleifen) ist es möglich,
dem Anwender Zugriff auf die Formulare aus früheren Schritten einzuräumen. Dafür kann im Formular
des zweiten Schritts ein Zurück-Button eingeblendet werden, der den Wechsel zurück in Schritt eins
bewirkt. Analog kann man auch in Formularen späterer Schritte verfahren.
lfd.Nr. Aktion
1 Beispiel eines Referenzmodells mit 3 Formularen:
Am Ende von Schritt 2 und 3 wird geprüft, ob ein Zurück-Button gedrückt wurde.
7 Weiterführende Konfiguration
133
lfd.Nr. Aktion
2 Formularkonfiguration in Schritt 2: fügen Sie eine zusätzliche Schaltfläche ein und geben ihr den Namen
Zurück:
3 Konfigurieren Sie die Schaltfläche analog zum Vor-Button:
4 Hinterlegen Sie eine Funktion nach Modellausführung:
Setzen Sie eine Variable auf den Wert true.
Beispielsweise verwenden Sie für den Zurück-Button die Variable zurueck.
5 Konfigurieren Sie für den anderen Fall der EPK-Verzweigung ebenfalls eine Funktion nach
Modellausführung. Wenn der Anwender den Vor-Button anklickt, soll die Zurück-Variable den Wert false
bekommen:
Lassen Sie bei beiden Schaltern den Feldname im Container frei.
Auf keinen Fall darf dort der Name der Variablen eingetragen werden, die zur Schalterprüfung verwendet
wird (zurueck). Andernfalls wird der in der Funktion gesetzte Wert überschrieben.
Im Formular des letzten Schrittes können Sie den Vor-Button so konfigurieren, dass ein Rücksprung zur
Suche bewirkt wird.
Alternativ können Sie den standardmäßig im Formular enthaltenen Zur Suche-Button verwenden und den
Vor-Button löschen.
7 Weiterführende Konfiguration
134
lfd.Nr. Aktion
6 Hinterlegen Sie in den Ereignissen nach der XOR-Verknüpfung die richtigen Prüfungen:
Wenn der Anwender ein Formular verläßt, muss die zurueck-Variable des Containers entweder auf den
einen oder den anderen Wert gesetzt werden (true oder false).
Falls von einem Formular aus mehr als zwei andere Prozessschritte erreichbar sein sollen, müßte die
Variable auch entsprechend mehr Werte annehmen können.
Möglicherweise kann es sinnvoll sein, der Variablen einen eindeutigen Namen zu geben, der auf den
Prozessschritt verweist, in dem die Variable verwendet wird. Dann ist die Variable unabhängig vom Lesen
und Schreiben in anderen Prozessschritten.
Beispiel der App mit Instanzen in unterschiedlichen Schritten:
7 Weiterführende Konfiguration
135
7.6 CSS-Konfigurationen
7.6.1 CSS-Elementinformationen ermitteln und zuweisen Mit einem CSS-Modell („CSS Dokument“ oder einfach „CSS“als Abkürzung von „Cascading Style Sheet“) können Sie
das Layout Ihrer Anwendung regelbasiert beeinflussen, etwa die Schriftfarbe von Eingabefeldern, die
Hintergrundfarbe von Auswahlfeldern, die Schriftart, Schriftgröße und anderes mehr. Einträge in einer CSS-Datei
bestehen daher üblicherweise aus einer Folge von Selektionen und Anweisungen. Die Selektionen legen fest, für
welche Elemente die Layout-Anweisung gelten soll. Die Browser stellen Werkzeuge zur Verfügung, mit denen ein
Element untersucht werden kann. Mithilfe der Elementinformation kann dann die passende Selektion und Anweisung
formuliert werden.
Untersuchung von Elementen mit Chrome
lfd.Nr. Aktion
1 Drücken Sie F12 (oder alternativ STRG+SHIFT+I) zum Öffnen der Entwicklertools:
2 Klicken Sie auf das Cursorsymbol …
… und anschließend auf das zu untersuchende Element, beispielsweise einen Feldbezeichner:
3 Dadurch wird links unten das HTML-Element angezeigt, und rechts daneben ein editierbarer Bereich
für Styles:
7 Weiterführende Konfiguration
136
lfd.Nr. Aktion
4 Ihre Eintragung bei Styles wird kontinuierlich durch eine autocomplete-Funktion unterstützt:
Einen Vorschlag übernehmen Sie durch ENTER und es erfolgt ggf. der nächste Vorschlag:
5 Die Eintragung wird in die Elementbeschreibung übernommen und simultan in der Webseite
dargestellt:
6 Die Style-Eingaben bleiben gespeichert, solange bis die Webseite neu geladen wird.
Einzelne Optionen können testweise per Check Box ein- und ausgeschaltet werden:
7 Weiterführende Konfiguration
137
lfd.Nr. Aktion
7 Im Elements-Bereich steht die zur Selektion relevante Information. Das Feld Firmenname ist über
mehrere Klassen (class) referenzierbar.
lb-InputField ist der Selektor für den Feldbezeichner von Eingabefeldern ganz allgemein.
lbn-Firmenname ist der Selektor für den Feldbezeichner des Feldes Firmenname.
Im Elements-Bereich ist außerdem die Anweisung zu sehen:
font-weight: bold;
color:red;
8 Selektor und Anweisung bilden gemeinsam einen CSS-Eintrag. Ein vorangestellter Punkt bedeutet,
dass nach einer Klasse selektiert wird:
.lbn-Firmenname {
font-weight:bold;
color:red;
}
Das Speichern des CSS-Eintrags im CSS-Modell wird weiter unten beschrieben.
9 Zur Untersuchung des nächsten Elementes muss man nochmals das Cursorsymbol anklicken.
7 Weiterführende Konfiguration
138
lfd.Nr. Aktion
7 Weiterführende Konfiguration
139
7.6.2 CSS-Konfigurationen anlegen Eine CSS-Konfiguration können Sie an beliebiger Stelle innerhalb eines Projektes modellieren. Diese ist referenzierbar
für jedes andere Modell (EPK-Modell oder Formular), das sich innerhalb des Projektes befindet. Zur besseren
Übersicht ist es vorteilhaft, CSS-Modelle auf hoher Ebene im Projekt anzulegen, entweder an oberster Stelle oder auf
der Einstiegsseite eines App-Projektes, oder aber in einem eigenen Unterprojekt.
Im folgenden wird das CSS-Modell auf der Einstiegsseite des App-Projektes Anlieferadressen angelegt.
lfd.Nr. Aktion
1 Per Drag&Drop generieren Sie ein neues CSS-Element.
Sein Name ist frei wählbar, z.B. Anlieferadressen.
Klicken Sie auf das Zahnrad zum Öffnen des Editors.
2 Hinterlegen Sie hier die CSS-Einträge:
Beispiel für drei Regeln:
Name des App-Projektes
Name des CSS-Elementes
7 Weiterführende Konfiguration
140
lfd.Nr. Aktion
Einzeilige Eingabefelder sollen einen grünen Feldbezeichner haben
Der Bezeichner vom Feld Firmenname soll ein fettes, rotes Layout haben
Eine frei verwendbare Zusatzklasse soll für einen gelben Hintergrund sorgen
Speichern Sie anschließend die Eintragungen. Dadurch wird der Editor geschlossen.
7.6.3 CSS-Konfigurationen zuweisen CSS-Modelle können EPK-Modellen und Formularen zugewiesen werden.
Einzelnen Formularelementen können CSS-Zusatzklassen zugewiesen werden.
Die CSS-Zusatzklassen sind wie alle anderen CSS-Einträge im CSS-Modell hinterlegt.
Schematische Übersicht zu CSS-Modellen, EPK-Modellen und Formularen:
CSS für Zuweisungsfeld
EPK Zuordnung zwischen dem EPK-Modell „EPK mit allen Maskenfeldern“
und dem CSS-Modell „Scheer rot“:
EPK 1
EPK n
Formular
Formularfeld 1
…
Formularfeld k
Projekt: Speicherort der CSS
Zusammenfassung im App-
Projekt oder Unterprojekt
7 Weiterführende Konfiguration
141
7.6.4 CSS-Konfiguration projektgenau für mehrere EPKs Ein CSS-Modell können Sie an beliebiger Stelle innerhalb eines Projektes ablegen. Es ist referenzierbar für jedes
andere Modell (EPK-Modell oder Formular), das sich innerhalb des Projektes befindet.
Hier im Beispiel sind zwei CSS-Modelle „Scheer rot“ und „Kunden blau“ im selben Raum der EPK definiert. Genauso
gut könnten die CSS-Modelle in einem eigenen Raum oberhalb der EPK liegen. Es kommt nur darauf an, dass das
CSS-Modell bei der jeweiligen EPK hinterlegt wird.
7.6.5 CSS-Konfiguration für eine EPK
lfd.Nr. Aktion
1 Zuordnung zwischen dem EPK-Modell „EPK mit allen Maskenfeldern“
und dem CSS-Modell „Scheer rot“:
Ein Beispiel für eine CSS Zusatzklasse wird weiter unten vorgestellt, 7.6.7.
7 Weiterführende Konfiguration
142
7.6.6 CSS-Konfiguration für ein Formular Möglicherweise möchte man die CSS nicht der EPK zuordnen, sondern nur einem der darin enthaltenen Formulare.
lfd.Nr. Aktion
1 Zuordnung zwischen dem Formular „Maskenabfrage“ und dem CSS-Modell „Scheer rot“:
2 Ein CSS Modell kann die Standardklassen übersteuern.
Z.B. wenn man das Layout aller Auswahlfelder ändern möchte.
Die Standardklasse, die zu einem Auswahlfeld gehört, ermittelt man, indem man im Browser auf
dem Element das Kontextmenü aufruft und Element untersuchen wählt.
7 Weiterführende Konfiguration
143
lfd.Nr. Aktion
3 Die Klasse für den Feldbezeichner heißt in dem Fall lb-SelectField und wird auch weiter unten
angezeigt:
4 Zum Ändern des Inhalts eines CSS Modells klickt man die CSS an.
Im Bereich Element editieren klickt man anschließend auf das Zahnrad für die CSS-Einstellungen.
5 Mit folgender Syntax legt man fest, dass der Hintergrund des Feldnamens (Label) bei Auswahlfeldern
rot sein soll:
.lb-SelectField{
7 Weiterführende Konfiguration
144
lfd.Nr. Aktion
background-color:red;
}
Ergebnis:
6 Umgekehrt kann man auch festlegen, dass nur das Innere (Content) der Auswahlbox rot eingefärbt
sein soll
.ct-SelectField{
background-color:red;
}
7 Es können auch beide Klassen mit unterschiedlichen Farben gesetzt werden:
Anmerkung:
es gibt auch die Klasse .w-SelectField für das Widget.
Im Test verhielt sich .w-SelectField wie .lb-SelectField.
Dadurch, dass das CSS dem Formular zugeordnet ist, wirkt sich das Layout
auf alle Auswahlfelder des Formulars aus.
7 Weiterführende Konfiguration
145
lfd.Nr. Aktion
Auswahlfelder anderer Formulare bleiben von der Layoutänderung unberührt.
9 Analog, wenn man das Layout vom Feldinhalt aller einfachen Eingabefelder ändern möchte:
.ct-InputField{
background-color:blue;
}
7 Weiterführende Konfiguration
146
7.6.7 CSS-Konfiguration für ein einzelnes Formularfeld per CSS
Zusatzklasse
Ein CSS-Modell kann verwendet werden, um ein Layout feldgenau zu definieren.
Beispielsweise wenn ein Feldbezeichner aufgrund des Hintergrunds schwer lesbar ist.
Erste Möglichkeit:
Im CSS wird das zu ändernde Feld über eine (eindeutige) ID angesprochen:
lfd.Nr. Aktion
1
Hierbei ist zu beachten, dass die CSS von oben nach unten durchlaufen wird. Layoutvorgaben die
weiter unten stehen, können die weiter oben getroffenen Vorgaben übersteuern.
Zweite Möglichkeit:
Im CSS wird eine Zusatzklasse mit frei wählbarem Namen definiert.
Die Zusatzklasse wird in den Feldern hinterlegt, für die sie sich auswirken soll.
Vorgaben für den
Formularhintergrund
Vorgaben für alle ein-
fachen Eingabefelder
Vorgabe für das Feld mit
Bezeichner Bestellnummer
7 Weiterführende Konfiguration
147
Das ist praktisch, wenn sich eine bestimmte Layoutänderung nicht nur auf eines sondern gezielt auf mehrere
Formularfelder auswirken soll.
Dazu definiert man im CSS Modell sogenannte CSS Zusatzklassen, die dann im Widget referenziert werden.
Beispiel zur freien Definition einer CSS Zusatzklasse, die den Feldhintergrund auf blau setzt:
CSS-Modell:
Inhalt:
Anwendung für eine Maske mit vielen Feldern, aber nur bei einem wird die Zusatzklasse hinterlegt:
7 Weiterführende Konfiguration
148
lfd.Nr. Aktion
1
Achtung:
Beim Referenzieren einer (Zusatz-)klasse wird der Punkt weggelassen.
Also Referenz z.B. über kundenblau statt .kundenblau.
2 Die Layoutänderung wirkt sich noch nicht aus, wenn man nur die Maske abspielt:
3 Ergebnis, wenn man die EPK abspielt:
7 Weiterführende Konfiguration
149
lfd.Nr. Aktion
4 Das Feld CSS Modell bei EPKs und Maskenmodellen ist ein suchbares Feld, weil das CSS-Modell an
einem entfernten Ort liegen kann.
(Aktuell gibt es noch eine Besonderheit beim Übernehmen eines Eintrags der Trefferliste. Der
Vorsatz erscheint erst mit Verzögerung, wenn man die EPK-Eigenschaften nochmals aufruft.)
Trefferliste:
Übernahme:
Endgültige Darstellung:
Das Feld CSS Zusatzklassen ist nicht suchbar. Man trägt eine oder mehrere Zusatzklassen getrennt
durch Leerzeichen ein. Der Punkt der Zusatzklasse wird weggelassen.
7.6.8 Widget-Tabelle für CSS-Einstellungen
Mit folgenden Kürzeln können Sie Eingabefelder (Widgets) in einem CSS ansprechen:
7 Weiterführende Konfiguration
150
Widget Label allgemein Label konkret
(Beispiele)
Eingabefeld - einzeilig w-InputField wn-Vorname
Eingabefeld -
mehrzeilig
w-TextArea wn-Bemerkung
Auswahlfeld w-SelectField wn-Fremdsprachen
Ankreuzfeld w-CheckBox wn-Sonderausstattung
Radiobutton w-RadioButton wn-Anrede
Datumsfeld w-DatePicker wn-Lieferdatum
Blockelement w-Div wn-Blockelement-abc
Editierbares
Blockelement
w-EditableDiv wn-Editierbares
Blockelement-xyz
AppLink w-ProcessAppLink wn-Firmenstandort
AppLink-Tabelle w-ProcessAppLinkTable wn-Firmenstandort
Schaltfläche w-PushButton wn-saveBtn
Widget Label allgemein Label konkret
(Beispiele)
Feldinhalt
Eingabefeld - einzeilig lb-InputField lbn-Vorname ct-InputField
Eingabefeld -
mehrzeilig
lb-TextArea lbn-Bemerkung ct-TextArea
Auswahlfeld lb-SelectField lbn-Fremdsprachen ct-SelectField
Ankreuzfeld lb-CheckBox lbn-Sonderausstattung ct-CheckBox
Radiobutton lb-RadioButton lbn-Anrede ct-RadioButton
Datumsfeld lb-DatePicker lbn-Lieferdatum ct-DatePicker
Blockelement lb-Div lbn-Blockelement-abc ct-Div
Editierbares
Blockelement
lb-EditableDiv lbn-Editierbares
Blockelement-xyz
ct-EditableDiv
AppLink lb-ProcessAppLink lbn-Firmenstandort ct-ProcessAppLink
AppLink-Tabelle lb-ProcessAppLinkTable lbn-Firmenstandort ct-ProcessAppLinkTable
Schaltfläche lb-PushButton lbn-saveBtn ct-PushButton
7 Weiterführende Konfiguration
151
Weitere Kürzel:
w- spricht das Widget als Ganzes an, z.B. w-DatePicker
wn- spricht den Widgetnamen an (Feldbezeichner)
ctn – spricht ebenfalls den Feldbezeichner an
Beispiel für die Verwendung im CSS:
.lb-InputField {
color:#B92444;
}
.lbn-Bestellnummer {
color:blue;
}
.MeineZusatzklasse {
color: yellow !important;
background-color: rgb(200, 250, 200);
}
.wn-xyz {
color:green;
font-weight:bold;
}
8 Berechtigungskonzept mit Rollen
152
8 Berechtigungskonzept mit Rollen
Standardmäßig kann ein Anwender alle Apps ausführen und modellieren, die zu einem Projekt seines Profils gehören.
Bei Genehmigungsworkflows wie zum Beispiel Anträgen möchte man haben, dass ein Anforderer nur Anträge
erfassen kann. Die Genehmigungsstufen sollen den Anwendern mit Genehmigungsberechtigung vorbehalten sein.
Sowohl Antragsteller als auch Genehmiger sollen keine Möglichkeit haben, die App zu verändern. Die Berechtigung
zum Modellieren soll einer dritten Anwendergruppe vorbehalten sein, den Administratoren der App.
Zum rollenbasierten Berechtigungskonzept gehören fünf Einstellungen:
■ appspezifische Einstellung, ob eine Rollenprüfung stattfinden soll
■ appspezifische Einstellung, welche Rollen es gibt und welche Schritte der EPK sie ausführen dürfen
■ appspezifische Bereitstellung rollenabhängiger Startkacheln
■ appspezifische Einstellung, welche Anwender über welche Rolle verfügen
■ benutzerspezifische Einstellung seitens Systemadministrator, ob ein Anwender modellieren darf
8.1 Allgemeine Hinweise Process Apps ohne Berechtigungsprüfung
■ Eine App ohne Rollen kann von jedem aufgerufen werden, der über das Profil verfügt,
in dem das App-Projekt gespeichert ist. Der Haken zur Berechtigungsprüfung darf nicht gesetzt sein.
Process Apps mit Berechtigungsprüfung
■ Bei einer App mit Rollen kann die Berechtigungsprüfung mittels Checkbox rollengenau ein- und
ausgeschaltet werden. Die Checkbox steht im Process-App-Element für Neuanlage.
■ Wenn die Berechtigungsprüfung eingeschaltet wird, ohne dass im Process-App-Element eine Rolle
hinterlegt ist, kann die App nicht ausgeführt werden. Beim Versuch eine neue Instanz anzulegen kommt die
Meldung: „Sie haben keine Berechtigung die Process App in diesem Schritt auszuführen.“
■ Eine App mit einer Rolle, die mit keiner Funktion der EPK verknüpft ist, kann nicht ausgeführt werden, außer
wenn die Berechtigungsprüfung deaktiviert wird.
Um alle Schritte einer Process-App als Administrator zu durchlaufen, gibt es zwei Möglichkeiten:
■ Sie ordnen jedem Prozessschritt die Administrator-Rolle zu
■ Sie deaktivieren für den Administrator die Berechtigungsprüfung.
Damit sparen Sie sich die Zuordnung der Rolle zu den Prozessschritten.
8 Berechtigungskonzept mit Rollen
153
8.2 Konfigurationshinweise: In fünf Schritten erhalten Sie eine App mit rollenbasierter Berechtigungsprüfung.
lfd.Nr. Aktion
Schritt 1: App definieren mit aktivierter Rollenprüfung
1.1 Beispielsweise in einem Projekt Antragswesen legen Sie das App-Projekt Genehmigungs-Workflow an.
1.2
Wechseln Sie in das App-Projekt
Dort können Sie die Process-App-Elemente für den Antragsteller passend umbenennen.
1.3 Setzen Sie beim Element Neuanlage – Antragsteller den Haken zur Aktivierung der Rollenprüfung
Die Option Rollenprüfung aktivieren gibt es nur beim Element zur Neuanlage.
Die Option Im Dashboard ausblenden können Sie getrennt für Neuanlage und Suche einstellen.
Für jede der späteren Rollen kommen zwei Process App Elemente hinzu. Das Ausblenden der
Neuanlage hilft, die Anzahl angezeigter Kacheln nach dem Einloggen zu reduzieren.
8 Berechtigungskonzept mit Rollen
154
Schritt 2: Rollen definieren und den Prozessschritten zuordnen
2.1 Definieren Sie im Referenzmodell des App-Projektes eine EPK mit mehreren Prozessschritten.
Ziehen Sie die benötigte Anzahl Rollen aus der Sidebar.
2.2 Hier im Beispiel werden die Rollen Antragsteller, Begutachter und Controller festgelegt.
Die Rolle des Controllers ist mit zwei Prozessschritten verknüpft:
■ Prozessschritte, an denen keine Rolle hängt, dürfen von jedem Anwender durchlaufen werden.
■ Hier im Beispiel gibt es eine Rolle Administrator, die mit keiner Funktion verknüpft ist.
Auf die Möglichkeiten, sämtliche Prozessschritte als Administrator zu durchlaufen wird in Kapitel 8.1
hingewiesen.
2.3 Wechseln Sie zurück zum App-Projekt.
8 Berechtigungskonzept mit Rollen
155
Schritt 3: Rollenbasierte Startkacheln definieren
3.1 Kopieren Sie die Process-App-Elemente des Antragstellers für die Rollen
Begutachter, Controller und Administrator.
Wählen Sie Einfügen als Kopie und nicht Einfügen als Verknüpfung, damit die Elemente unabhängig
voneinander sind.
3.2 Tragen Sie in jedes der Process-App-Elemente die zugehörige Rolle ein.
Beim Eintragen der Rolle werden Sie durch eine Autovervollständigen-Funktion unterstützt.
Wählen Sie den gewünschten Vorschlag aus und klicken Sie anschließend auf die Arbeitsfläche.
Damit stellen Sie sicher, dass der Eintrag übernommen wird. Danach erst klicken Sie auf das nächste
Process-App-Element.
Achten Sie darauf, die Rolle stets paarweise einzutragen für die Kacheln Suche und Neuanlage.
8 Berechtigungskonzept mit Rollen
156
Schritt 4: Rollen-Benutzer-Zuordnung vornehmen
4.1 Öffnen Sie im App-Projekt das Administrationsmodell, mit dem Sie die Rollen Ihrer App verwalten.
4.2 Markieren Sie das Element zur Benutzer/Rollen-Verwaltung und öffnen Sie die Benutzer-Rollen-
Zuordnung. Die beiden anderen Elemente werden zum gegenwärtigen Stand nicht benötigt.
4.3 Die Tabelle im PopUp enthält Spalten für Rollen und Benutzernamen (Scheer BPaaS Loginname).
■ Eine Mailadresse darf bei mehreren Rollen hinterlegt sein. Ein und dieselbe Person darf also
technisch gesehen unterschiedliche Rollen einnehmen.
■ Für eine Rolle dürfen mehrere Zeilen mit unterschiedlichen Mailadressen hinterlegt werden.
Somit dürfen verschiedene Personen dieselbe Rolle ausüben.
■ Die Reihenfolge der Einträge ist unerheblich.
■ Nur Einträge mit vorhandener Rolle und ausgefülltem Benutzernamen werden berücksichtigt.
8 Berechtigungskonzept mit Rollen
157
Auswirkung auf die Anzahl angezeigter Startkacheln
a) Anna Mustermann sieht nur die Kacheln, die zur Antragstellung gehören.
Die Einstellung aus Schritt 1.3 zum Ausblenden im Dashboard wurde so angepaßt, dass nur die Kachel zur
Neuanlage sichtbar ist, nicht aber die Kachel zur Suche.
b) Berta Mustermann sieht dementsprechend nur die Kacheln, die zur Begutachtung gehören.
Hier wurde die Kachel zur Neuanlage ausgeblendet und die Kachel zur Suche eingeblendet:
c) Charly Mustermann sieht nur die Kacheln, die zum Controlling gehören:
Wenn Begutachter oder Controller den Neu-Button in der Suchübersicht anklicken, erhalten Sie eine
Meldung, da ihre Rollen mit dem ersten Prozessschritt der Antragstellung nicht verknüpft sind.
8 Berechtigungskonzept mit Rollen
158
Auswirkung auf die Anzahl angezeigter Startkacheln
d) Max Mustermann sieht die Kacheln, die zur Rolle des Antragstellers, Controllers und Administrators
gehören:
e) Wenn der Haken zum Ausblenden der Neuanlage-Kacheln entfernt wird, bekommt Max Mustermann drei
weitere Kacheln angezeigt.
Wenn eine Kachel nicht sichtbar ist, kann das zwei Gründe haben: der Anwender hat nicht die mit der
Kachel verknüpfte Rolle, oder der Haken zur Ausblendung der Kachel im Dashboard wurde gesetzt.
8 Berechtigungskonzept mit Rollen
159
Schritt 5: Berechtigung zum Modellieren administrieren
5.1 Sowohl Antragsteller als auch Genehmiger sollen normalerweise keine Möglichkeit haben, die App zu
verändern. Die Einstellung erfolgt über die Art des Zugangs in der Scheer BPaaS Benutzerverwaltung
und wirkt sich so aus, dass die Kacheln für Projekte und App-Projekte ausgeblendet werden.
a) Sicht des Antragstellers bei eingeblendeten Kacheln zur Suche und Neuanlage:
b) Sicht des Begutachters bei eingeblendeter Suchkachel. Der Plus-Button zur Neuanlage ist deaktiviert.
c) Sicht des Controllers bei eingeblendeter Suchkachel. Die Filtermöglichkeiten sind reduziert:
d) Die Umstellung der Zugangsart im Benutzer-Account von Max Mustermann bewirkt gleichfalls, dass
Projekte und App-Projekte ausgeblendet werden. Alle Startkacheln bleiben erhalten. Er kann somit als
Administrator alle Schritte der App durchlaufen, jedoch keine Änderung am Ablauf vornehmen:
Bitte erstellen Sie gegebenenfalls eine Liste der Personen, die keine Modellierberechtigung haben sollen
sondern lediglich Apps aufrufen, und informieren Sie Ihren Ansprechpartner bei der Scheer GmbH. Die
Einstellung wird dann zentral in der Benutzerverwaltung vorgenommen. Die Einstellung gilt
benutzergenau für alle zugeordneten Profile. Eine Modellierberechtigung gilt also projektübergreifend.
8 Berechtigungskonzept mit Rollen
160
8.3 Rollenspezifische Suchfilter einstellen Bei Apps mit unterschiedlichen Rollen wird meist gewünscht, dass ein Anwender beim Aufruf der Suchübersicht nur
diejenigen Instanzen angezeigt bekommt, für die er berechtigt ist. Eine Möglichkeit besteht darin, auf den für den
Anwender gültigen Prozessschritt zu filtern, in dem sich eine Instanz befindet.
Beispielsweise für den Begutachter sind nur diejenigen Instanzen von Interesse, die sich im Prozessschritt Antrag
begutachten befinden.
lfd.Nr. Aktion
1 Rufen Sie das App-Projekt auf und markieren Sie die Process App des Begutachters zur Suche.
2 Nach Anklicken der Such-Query öffnet sich ein Editor, in dem Sie die Selektion auf den aktuellen
Prozessschritt eintragen:
{"meta.currentStep.processStepName":"Antrag begutachten"}
3 Nach dem Speichern wird die Such-Query auf den Instanzzähler der Kachel angewendet. Entsprechend
können auch für die Process-App-Elemente der anderen Suchaufrufe Filterausdrücke hinterlegt werden:
{"meta.currentStep.processStepName":"Antrag anlegen"}
{"meta.currentStep.processStepName":"Kosten kontrollieren"}
4 Im Ergebnis bekommt ein Anwender mit unterschiedlichen Rollen unterschiedliche Instanzen angezeigt.
Dazu ist bei einer laufenden Session einmalig ein Refresh im Kachel-Dashboard erforderlich (F5-Taste).
8 Berechtigungskonzept mit Rollen
161
lfd.Nr. Aktion
Im Filterausdruck müssen Sie den Schlüssel angeben, und nicht etwa eine Übersetzung.
Angenommen, eine Funktion heißt Step-1:
Dann können Sie zwar Übersetzungen hinterlegen:
Im Filterausdruck der Suchquery müssen Sie aber weiterhin den Schlüssel verwenden:
{"meta.currentStep.processStepName":"Step-1"}
Ein Suchfilter ist generell einstellbar, auch bei Apps ohne Berechtigungsprüfung. Beispielsweise kann mit
folgendem Ausdruck erreicht werden, dass nur diejenigen Instanzen angezeigt werden, deren
Bearbeitung noch offen ist:
{"abgeschlossen":"0"}
Das Kennzeichen abgeschlossen können Sie initial mit 0 vorbelegen und bei abgeschlossenen Instanzen
per Formular oder Worker auf 1 setzen.
In Filterausdrücken können auch mehrere Kriterien miteinander verknüpft werden.
Suche nach Folienschreibern, die maximal 1.09 kosten:
{"Kurztext":"Folienschreiber","Kosten": {"<=": "1.09"}}
Gefilterte Instanzen:
Im Editor für Filterausdrücke ist keine Kommentierung möglich. Wenn Sie während der Testphase einen
Filterausdruck unwirksam machen möchten, entfernen Sie die Zeile im Editor.
Für jede Suchkachel können Sie einen eigenen Filterausdruck definieren.
Auch eine Abfrage auf ungleich ist möglich:
{"meta.currentStep.processStepName": {"!=": "Abschlussnachricht ausgeben"}}
8 Berechtigungskonzept mit Rollen
162
8.4 Rollenspezifische Schreib-/Leserechte einstellen Mit den bisherigen Einstellungen erreichen Sie, dass ein Anwender entsprechend seiner Rolle auf Instanzen eines
oder mehrerer Prozessschritte zugreifen darf. Die Formulare sind lesbar, und die Felder können ausgefüllt werden.
Sobald der Anwender zum nächsten Prozessschritt wechselt, für den er keine Berechtigung mehr hat, erscheint eine
Meldung. Dies ist am Beispiel einer Antragstellung nachvollziehbar:
lfd.Nr. Aktion
1 Frau Mustermann startet die Suchübersicht:
2 Sie legt einen neuen Antrag an:
3 Nachdem Sie das Formular ausgefüllt hat, wechselt Sie vor in den nächsten Schritt.
8 Berechtigungskonzept mit Rollen
163
lfd.Nr. Aktion
4 Die Rolle des Antragstellers ist nur mit dem ersten Prozessschritt verknüpft.
Daher erscheint bei aktivierter Berechtigungsprüfung die folgende Meldung:
5 Als Modellierer können Sie einen beliebigen Prozessschritt markieren, und durch Anklicken der
Rollenrechte öffnet sich ein PopUp mit einer Übersicht der zugelassenen Rollen und ihrer Schreib-
/Leserechte.
6 Wenn Sie die Rolle des Antragsstellers mit dem Prozessschritt Antrag begutachten verknüpfen, wird in
der Tabelle der Rollenrechte ein neuer Eintrag generiert.
8 Berechtigungskonzept mit Rollen
164
lfd.Nr. Aktion
7 Entfernen Sie beim Antragsteller die Schreibrechte:
8 Daraufhin kann Frau Mustermann auch die zusätzlichen Felder des Begutachtungsschrittes sehen, aber
keine Eingaben vornehmen:
Wenn die Haken für Lesen und Schreiben entfernt sind, wirkt sich das genauso aus, wie wenn die Rolle
nicht mit der Funktion verknüpft ist: im neuen Formular sind dann nur die Felder des letzten
Prozessschrittes schreibgeschützt sichtbar.
Die Kombination, dass Schreiben erlaubt ist und Lesen nicht, ist zwar möglich aber nicht praxisrelevant.
Ohne die Möglichkeit zu Lesen kann auch nicht gespeichert werden.
Möchte man in einem Funktionsschritt ohne Formular eine
Instanzspeicherung durchführen, muss für diesen Schritt im
Editpanel das Feld Instanz speichern aktiviert sein.
Das Zwischenspeichern von Werten kann dann sinnvoll sein,
wenn es sich um umfangreiche Berechnungen handelt, von
denen das weitere Laufverhalten der App abhängig ist.
Das Zwischenspeichern von Werten ist notwendig, wenn es sich
um eine Rollenprüfung an einem Prozessschritt handelt, der mit
keinem Formular verknüpft ist sondern mit einem Worker.
9 Bekannte Einschränkungen
165
9 Bekannte Einschränkungen
lfd.Nr. Besonderheit
1 Wenn man ein Formular parallel in zwei Browser-Tabs geöffnet hat, und man editiert ein Feld, dann
erscheint die Änderung nicht im zweiten Tab. Man kann dort das Feld öffnen und bekommt den
Zustand vor der Änderung im anderen Tab angezeigt. Das liegt daran, dass die Inhalte nur beim
Betreten des Raumes gelesen werden.
10 Vermerk
166
10 Vermerk
Die vorliegende Publikation wird von Scheer GmbH bereitgestellt und dient ausschließlich Informations-
zwecken. Scheer GmbH übernimmt keinerlei Haftung oder Garantie für Fehler oder Unvollständigkeiten in
dieser Publikation.
Scheer GmbH steht lediglich für Produkte und Dienstleistungen nach der Maßgabe ein, die in der
Vereinbarung über die jeweiligen Produkte und Dienstleistungen ausdrücklich geregelt sind. Aus den in
dieser Publikation enthaltenen Informationen ergibt sich keine weiterführende Haftung.
Scheer BPaaS wird kontinuierlich weiter entwickelt. In diesem Zusammenhang werden neue
Funktionalitäten hinzukommen und gegebenenfalls bestehende verändert werden. In Einzelfällen ist es
auch möglich, dass bestimmte Funktionalitäten entfallen. In dieser Publikation enthaltene Informationen
können ohne vorherige Ankündigung geändert werden.
Über Scheer Die Scheer GmbH ist aus dem Zusammenschluss der
Scheer Management GmbH und der IDS Scheer Consulting
GmbH hervorgegangen. Ein besonderer Schwerpunkt in
der Entwicklung von Produkten und Dienstleistungen liegt
darin, Unternehmen branchenbezogen bei der digitalen
Transformation zu unterstützen und zu begleiten.
Kunden der Scheer GmbH werden ganzheitlich von der
Entwicklung neuer Businessmodelle über die
Geschäftsprozessoptimierung und -implementierung bis
hin zum Betrieb unterstützt. Für diese Unternehmen ist die
Scheer GmbH neue Partnerschaften, etwa mit SAP in den
Bereichen Hybris und SAP S/4HANA, eingegangen. Mit der
innovativen Softwarearchitektur Scheer BPaaS (Business
Process as a Service) und aktuellen Weiterentwicklungen
von ARIS Lösungen unterstützt die Scheer GmbH
Unternehmen auf ihrem Weg zu digitalen
Businessmodellen. Dabei profitieren Kunden von tiefer
Industriekompetenz aus vielen Beratungsprojekten, die
auch die IT Umsetzung mit SAP und die Möglichkeit, die
Anwendungen im Scheer eigenen Rechenzentrum
betreuen zu lassen, beinhalten.
Der Professor für Wirtschaftsinformatik, Erfinder des ARIS-
Konzeptes und Unternehmer August-Wilhelm Scheer ist
Gesellschafter und Beiratsvorsitzender der Scheer GmbH
und fördert sie durch seine langjährige Erfahrung in der IT
Branche. Er steht auch für den engen Austausch mit
Wissenschaft und Forschung, der die Innovationskraft des
wachstumsstarken Unternehmens sichert.
International ist die Scheer GmbH durch Scheer Österreich,
Scheer Niederlande, Scheer Türkei und Scheer E2E Schweiz
vertreten.
Scheer GmbH
Tel. +49 681 96777-
www.scheer-group.com