CRM-Detailmaske
Grundlagen
CRM-Detailmasken (z.B. Geschäftspartner, Ansprechpartner, Anschlussobjekte) können direkt in BPM-Prozessabläufe integriert werden. Dadurch lassen sich die Möglichkeiten von CURSOR-BPM mit dem CRM-Customizing kombinieren und Anwender können Daten in der gewohnten Ansicht eingeben und ändern.

Neuanlage eines Ansprechpartners im Lead-Prozess
Im Geschäftsprozessmanagement werden im Wesentlichen zwei Prozesstypen unterschieden:
Normative Prozesse
Prozesse mit klar vorgegebenen, eng geführten Handlungsschritten.Dynamisches bzw. adaptives Case Management
Prozesse, die zwar einen Rahmen (Abläufe, Beteiligte) vorgeben, den Bearbeitenden jedoch große Freiheitsgrade lassen.
Im Prozessablauf öffnet sich für die verantwortliche Person die im Prozess definierte CRM-Detailmaske mit allen Standardfunktionen und implementierten Sonderlogiken. Auf diese Weise lassen sich sehr flexible Prozesse umsetzen, ohne zusätzliche BPM-Dialoge definieren zu müssen.
Wird in einem Prozessschritt eine CRM-Detailmaske geöffnet, erscheinen in der Buttonleiste anstelle des normalen Datensatz-Headers und der Buttonleiste zusätzlich:
die Phasenübersicht,
Informationen zum Prozessschritt und
die Prozessnavigationsleiste.
So werden BPM- und CRM-Funktionen in einer Oberfläche kombiniert.
Durch die integrierten CRM-Masken können zu den angezeigten Daten (in der Maske oder im Suchergebnis) Aktionen ausgeführt werden, zum Beispiel:
Löschen von Datensätzen aus einer Liste
Zuordnen von Daten im Unterbereich (z. B. Verknüpfen von Objekten)
Zudem können bestehende Client-Logiken in CRM-Masken einfacher in BPM-Benutzeraktionen abgebildet werden (z. B. Angebotsbearbeitung inkl. Positionen). Viele Tätigkeiten sind so vielfältig, dass sie sich in starren BPM-Masken nicht sinnvoll darstellen lassen, in CRM-Masken jedoch schon.
Konfiguration der Einbindung von Detailmasken
Die Einbindung von CRM-Detailmasken in einem BPM-Prozess wird wie folgt konfiguriert:
In der Benutzer-Aktion im technischen Modell den Typ „CRM-Detailmaske“ auswählen.
Die relevante CRM-Entität angeben,
die im Datenmodell ausgewählt sein muss oder
per Variable bereitgestellt wird.
Die Variable auswählen, die den Primärschlüssel des zu öffnenden Datensatzes enthält.
Zulässig sind nur Variablen vom Typ
ObjectoderPrimaryKey.
Alternativ kann eine IContainer-Variable mit gültigem Primärschlüssel übergeben werden.
Festlegen, ob beim Klick auf Weiter nach Bearbeitung des Prozessschritts die CRM-Detailmaske geschlossen werden soll.
Standard ist „nein“, d. h. die Entität bleibt nach Abschluss des Prozessschritts geöffnet.
Das Schließen erfolgt nur, wenn der Datensatz in der obersten Ebene (Hauptknoten) geöffnet ist.
Alternativ kann der Prozess bereits beim Öffnen der Benutzeraktion weitergeführt werden.
Wichtig: Der Prozess erhält dann keine nachträglich geänderten Daten des geöffneten Datensatzes mehr.
Diese Option sollte nur kurz vor Prozessende verwendet werden.
Anmerkungen
Die Aktionen werden wie gewohnt über die Task-Liste angeboten. Es öffnet sich jedoch keine BPM-Maske, sondern die CRM-Standardmaske mit Phasenübersicht und Fortführen-Schalter.
Ist der Datensatz bereits in der Detailansicht geöffnet, wird keine neue Ebene geöffnet; lediglich die Phasenübersicht wird eingeblendet.
Die Phasenübersicht ist auch sichtbar, wenn der Datensatz nicht über die Taskliste, sondern z. B. über die normale CRM-Suchmaske geöffnet wurde.
Nach Abschluss der Benutzeraktion wird die Phasenübersicht wieder ausgeblendet.
Je nach Konfiguration wird die Standardmaske geschlossen.
Folgt auf die Benutzer-Aktion eine weitere Aktion für denselben Anwender, wird diese direkt im Anschluss zur Bearbeitung angeboten.
Zugriff auf geöffnete Prozess-Benutzer-Aktionen in CRM-Masken
Werden offene Prozessaktionen in CRM-Detailmasken bearbeitet, kann der zugehörige Prozessschritt per Maskenskript programmatisch fortgeführt werden. Im Skript wird dabei der Klick auf Weiter (ALT+W ) simuliert.
Dazu stehen im Maskenskript der CRM-Entitäten folgende Methoden zur Verfügung:
TaskUtils.complete()
Simuliert das Auslösen der Weiter-Betätigung (Klick auf das Weiter-Symbol bzw. Tastenkombination ALT+W) und schließt den aktuellen Prozessschritt ab.TaskUtils.isEntityLinkedToTask(String processId)
Prüft, ob der aktuell geladene Datensatz mit einer Benutzer-Aktion verknüpft ist.Gibt
truezurück, wenn eine Verknüpfung besteht.Über den Parameter
processIdkann die Prüfung auf einen bestimmten Prozess eingeschränkt werden.
Beide Methoden setzen voraus, dass die Benutzer-Aktion in der Detailmaske der CRM-Entität aktuell geöffnet ist. Sie sind daher nicht geeignet für Benutzer-Aktionen, die nur einer Benutzergruppe (ohne konkrete, aktuell geöffnete Detailmaske) zugeordnet sind.