Im ersten Teil dieses Beitrags wurde die funktionale Erweiterbarkeit von AMTANGEE durch eigene Workflows vorgestellt. Während Workflows eher im Stillen und hinter den Kulissen zuverlässig Ihren Dienst verrichten, um optimierend in die internen Arbeitsabläufe eines Unternehmens einzugreifen, sind Module Erweiterungen, die gerne im Rampenlicht stehen. Sie möchten gesehen werden – z.B. als Erweiterung des „myAMTANGEE“-Dashboards oder auch als zusätzlicher Reiter, der einen bestimmten Dialog funktional ergänzt. Module empfehlen sich immer dort, wo Nutzereingaben benötigt werden oder etwas dargestellt werden soll, etwa bei der nahtlosen Integration von Daten aus einem Drittsystem in AMTANGEE oder auch bei der Darstellung statistischer Daten aus einer angebundenen Warenwirtschaft. Sowohl Workflows als auch Module haben vergleichbare Möglichkeiten, in interne Abläufe von AMTANGEE einzugreifen, z.B. durch die Manipulation von Objekten. Jedoch sind nur Module in der Lage, sich auch in die Oberfläche von AMTANGEE zu integrieren.
Ein weiterer Aspekt hilft, um die Anwendungsmöglichkeiten von Modulen besser verstehen zu können. Module können AMTANGEE um neue Inhaltstypen erweitern, die nicht zum Standardumfang gehören wie Nachrichten, Adressen oder Termine. Die Implementierung eigener Inhaltstypen für z.B. Lizenzen oder Tickets würde man in Form eines Moduls realisieren. Aber auch die Auftragsübersicht aus einem ERP-System inkl. Verlinkung mit einer AMTANGEE Adresse. Während Workflows zur Verrichtung ihrer Arbeit einen im Hintergrund laufenden Dienst benötigen, sind Module unabhängig von solchen Anforderungen.
Los geht’s #2: AMTANGEE durch eigene Module erweitern
Kurz und gut: Zwischen Workflows und Modulen gibt es Unterschiede – aber auch Gemeinsamkeiten. Ihre konzeptionelle Verwandtschaft gestattet uns, eigene Module in vergleichsweise ähnlichen Schritten zu implementieren wie Workflows. Auch diesmal erzeugen wir in Visual Studio eine Klassenbibliothek, müssen aber dabei sicherstellen, dass der Name der später zu kompilierenden Datei mit der Zeichenkette „AMTANGEE.Modules.“ beginnt (z.B. „AMTANGEE.Modules.ERP“) und kein Modul mit identischem Dateinamen existiert. Als notwendige Verweise fügen wir dem Projekt im Fall von Modulentwicklungen „AMTANGEE.SDK.dll“ sowie „AMTANGEE.Interfaces.dll“ hinzu (beide sind im Programmverzeichnis des Clients zu finden). Auch hier wird zunächst ein Interface implementiert, um anschließend die Methodenrümpfe mit der benötigten Funktionalität zu füllen. Darüber hinaus erfordern eigene Module unter Umständen die Gestaltung von Controls für die Benutzeroberfläche. Auch müssen elementare Properties befüllt werden. Welches Icon soll das Modul haben? Und an welchem sprechenden Namen erkennen wir das Modul in der AMTANGEE Oberfläche? Wichtig: Module sind in der Lage, eigene Ereignisse zu definieren und anzustoßen. Diese Ereignisse können dann wiederum im Rahmen angepasster Workflows einer speziellen Behandlung zugeführt werden. Auf diese Weise entsteht ein Raum unbegrenzter Möglichkeiten, um AMTANGEE an individuelle Kundenanforderungen anzupassen.
Finale: Drum signiere, wer sich (ewig) bindet
Auch wenn die bisher vorgestellten Erweiterungen auf einer programmatischen Ebene gültige Workflows oder Module wären – einfach, weil sie ein bestimmtes Interface implementieren – AMTANGEE würde sie dennoch nicht als gültige Erweiterungen akzeptieren. Denn: Alle erstellten Dateien müssen zwingend mit einem digitalen Schlüssel signiert werden! Die Vergabe eines solchen Schlüssels in Dateiform ist an die AMTANGEE SDK-Vereinbarung gebunden. Unser Support-Team informiert Sie gerne über die Rahmenbedingungen der Vereinbarung. Liegt ein Schlüssel vor, lässt sich die Signierung in Visual Studio ohne großen Aufwand durchführen:
Hierzu wird einfach im Dateisystem die entsprechende Schlüsseldatei ausgewählt:
Anschließend sind kompilierte Erweiterungen signiert – und können somit auch in AMTANGEE integriert werden. Eigene Workflows integrieren Sie – einen installierten Workflow-Dienst vorausgesetzt – indem Sie in AMTANGEE erst „Verwaltung“, dann „Dienste“, schließlich den Unterreiter „Workflows/Dienste“ wählen:
Nach einem Klick auf „Hinzufügen“ wählen sie die kompilierte DLL-Datei aus, anschließend ist der neue Workflow aktiv.
Noch einfacher lassen sich neue Module in AMTANGEE integrieren. Soll ein Modul firmenweit ausgerollt werden, legt man die kompilierte Datei am besten in das Verzeichnis „SOURCE“ unterhalb des AMTANGEE Update-Pfades. Ansonsten genügt es, die Bibliothek ins AMTANGEE Programmverzeichnis des jeweiligen Clients zu legen, der das Modul nutzen soll. Das neue Modul fügen Sie dann über „Datei“, „Einstellungen“, „Allgemein“, „Module“ hinzu. AMTANGEE listet hier bereits alle im Programmverzeichnis gefundenen signierten Module auf. Ein Klick auf „Hinzufügen“ führt ggf. zu einem Refresh der Liste.
Fazit
Das AMTANGEE SDK ermöglicht es, spezifische Kundenwünsche oder Sonderanpassungen bei der Einführung von CRM in besonderem Maße zu berücksichtigen. Die umfangreichen Möglichkeiten, AMTANGEE durch Workflows und Module an jedes denkbare Szenario anzupassen, sind wesentliche Eckpfeiler einer Strategie, die in der Verwaltung einer heterogenen IT-Struktur in nur einer einzigen Bedienoberfläche einen wesentlichen Garanten für hochoptimiertes Kundenbeziehungsmanagement sieht. Den Rundumblick hat nur, wer sämtliche Informations- und Kommunikationsflüsse eines Unternehmens auf einen Blick erfassen kann. Unsere Partner und wir selbst helfen Ihnen gerne weiter, diesem Ziel näher zu kommen.
AMTANGEE CRM erweitern: So wird's gemacht! (Teil 1: Workflows)
Über diese Blog-Reihe
Die Reihe „/dev/inside/“ stellt in loser Folge Entwickler- und Administratorthemen vor, die für einen performanten Betrieb, die optimale Pflege der IT-Infrastruktur und die Funktionserweiterung von AMTANGEE relevant sind. „/dev/inside/“ richtet sich dabei explizit an IT-Profis, die über die erforderlichen Grundkenntnisse zum tieferen Verständnis der Beiträge verfügen. Die Anwendbarkeit bestimmter Inhalte kann der SDK-Vereinbarung unterliegen. Unser Support-Team hilft Ihnen bei diesbezüglichen Fragen gerne weiter.