Wie funktioniert Systemintegration in der Praxis?
Hier erfährst du, mit welchen verschiedenen Mitteln wie EDI oder APIs du deine Software-Systeme miteinander verbinden kannst, um so Kosten für manuelle Eingabearbeit zu reduzieren und Fehler zu vermeiden.
Welche unterschiedlichen Möglichkeiten gibt es, verschiedene Software-Systeme miteinander zu verbinden und zu integrieren?
In diesem Artikel sprechen wir von Systemen als verschiedene Softwareanwendungen. So wie zum Beispiel dein ERP System, Warenwirtschaftssystem, CRM System oder Bestandsoptimierungssystem.
Ein System ist ja dadurch gekennzeichnet, dass es eine Systemgrenze hat, die das System nach außen hin abschließt.
Die Kommunikation innerhalb des Systems ist von Haus aus gut möglich, da die Systeme dafür geschaffen wurden und sich die unterschiedlichen Module eines Systems natürlich ständig austauschen müssen. Wenn etwa in einem ERP System ein Wareneingang im Materialwirtschaftsmodul gebucht wird, sind auch entsprechende Buchungen im Buchhaltungsmodul der Software durchzuführen.
Aber was passiert wenn dieses System stattdessen mit einem anderen System kommunizieren muss, um Daten zu senden oder zu erhalten?
Beispielsweise hast du dir ein Bestandsoptimierungssystem angeschafft, damit endlich dein Lagerbestand optimiert wird. Dieses neue System benötigt aber Daten wie aktuelle Lagerbestände und die Verkaufshistorie, um Berechnungen wie Forecasts durchführen zu können. Diese benötigten Daten sind aber aktuell in deinem ERP System gespeichert.
Es gilt also, die Daten aus deinem ERP System irgendwie in dein Bestandsoptimierungssystem zu bekommen. Wie funktioniert das?
Über Schnittstellen.
Eine Schnittstelle stellt sicher, dass es einen Weg gibt, mit dem die Daten von einem System in das andere gelangen können.
Da du die Daten aus dem ERP System aber nicht per Hand in das Bestandsoptimierungssystem eintragen willst
und du diese Daten auch nicht von einem Kollegen geschickt bekommst und dann per Hand in dein Bestandsoptimierungssystem einträgst,
scheiden die so genannten Mensch/Mensch und Mensch/Maschine Schnittstellen aus. Du kennst das sicher von diversen Abläufen in deinem Unternehmen wo irgendwelche Daten aus dem ERP System heruntergeladen werden und dann manuell in Excel bearbeitet werden, bevor sie an einen Kollegen weitergesendet werden. Diese "Schnittstellen" sind ziemlich teuer und auch fehleranfällig. In diesem Sinne sage Adios zu Mensch/Maschine Schnittstellen.
Du brauchst eine Maschine/Maschine Schnittstelle, mit dessen Hilfe sich 2 Softwaresysteme automatisch austauschen können.
Eine Maschine/Maschine Schnittstelle wird auch Programmier- oder Anwendungsschnittstelle genannt. Auf Englisch spricht man von einer API, also einem Application Programming Interface.
Ist eine solche Anwendungsschnittstelle erst einmal aufgesetzt, kann diese tausende Daten und Geschäftsfälle jeden Tag vollkommen automatisiert im Hintergrund zwischen verschiedenen Systemen austauschen. Das spart Arbeitszeit, Kosten und verhindert Fehler bei der Eingabe.
Anwendungsschnittstelle & API
Wir sehen es immer wieder bei unseren Kunden. Es werden Daten von irgendeinem System, wie dem ERP System, heruntergeladen oder gar von einem Kunden oder Lieferanten per Email zugesendet und diese dann per Hand in ein anderes System wieder eingegeben.
Dieser Ansatz ist nicht nur ziemlich teuer, da natürlich die Mitarbeiter manuell die Arbeit durchführen müssen, sondern auch ziemlich fehleranfällig, da es hier zu "Abschreibfehlern" kommen kann.
Die Lösung hierfür sind Anwendungsschnittstellen.
Eine Anwendungsschnittstelle, auch API (Application Programming Interface) genannt, ist eine Maschine/Maschine Schnittstelle, die sicherstellt, dass 2 Maschinen oder Software-Systeme automatisch Daten austauschen können, ohne dass sich hier noch ein Mensch einschalten müsste.
Wir sehen hier also schon, dass es dabei ein enormes Potential an Einsparungsmöglichkeiten im Unternehmen gibt - und zwar nicht nur im Kostenbereich, sondern auch in der Fehleranfälligkeit von Abläufen.
Wie funktionieren Anwendungsschnittstellen und APIs?
Es gibt dutzende verschiedene Möglichkeiten und Standards Anwendungsschnittstellen umzusetzen.
Hier kommen jetzt auch Begriffe wie Webservice, REST-API oder auch EDI ins Spiel. Doch beginnen wir vorne.
Es gibt verschiedene Klassen von Anwendungsschnittstellen:
- funktionsorientiert
- objektorientiert
- dateiorientiert
oder - protokollorientiert
Die ersten drei Klassen, also funktions-, objekt- und dateiorientiert, stellen die Alte Schule der Schnittstellen dar. Diese laufen zumeist lokal auf einem Computer und tauschen dort Daten aus. Wie deren Namen schon vermuten lassen erfolgt dies entweder über Funktionsaufrufe oder über den Austausch über Dateien. Diese Klassen haben jedoch gemeinsam, dass sie in der Regel auf einen Computer beschränkt sind.
Solange Daten nur auf einem Rechner ausgetauscht werden sollen haben diese Schnittstellen weiterhin ihre Berechtigung, aber sobald man nun Daten mit anderen Computern, oder generell über das ganze Internet hinweg austauschen will, benötigt man protokollorientierte Anwendungsschnittstellen.
Was bedeutet Protokoll?
Mit Hilfe von Kommunikationsprotokollen wird definiert wie strukturiert Daten ausgetauscht werden können. Ein Beispiel für ein Protokoll wäre HTTP oder HTTPS. Dieses Protokoll verwendet bspw. auch dein Browser, um Daten mit Webservern auszutauschen.
Ähnlich funktioniert es auch bei protokollorientierten Anwendungsschnittstellen. Hier kommen Protokolle wie vorhin erwähnt HTTPS, aber auch Protokolle wie FTP, SOAP oder SMTP zum Einsatz.
Beispiele für Protokollorientierte Schnittstellen sind Webservices oder REST-APIs.
Anbindung des Bestandsoptimierungssystems an das ERP System
Hier gibt es verschiedene Möglichkeiten der Anbindung.
REST APIs sind in der Regel für Einzelaufrufe ausgelegt um Beispielsweise die Informationen eines Belegs zu lesen oder einen Beleg anzulegen. Wenn es in Richtung von zigtausenden Datensätzen geht wird REST immer weniger effektiv und ziemlich langsam.
Hierbei sind dateibasierte Austauschverfahren weiterhin hoch im Kurs. Zumeist kommt dabei CSV als Dateiformat zum Einsatz. CSV Dateien stellen im wesentlichen Tabellen dar, die viele Datensätze enthalten können.
Eine Datei haben wir jetzt, schön und gut.
Aber irgendwie muss diese Datei mit den ganzen Artikel-Daten ja vom lokalen ERP System zum Bestandsoptimierungssystem in der Cloud gelangen. Wie geht das?
Nun ja, hierbei kann bspw. SFTP als Protokoll verwendet werden um die Datei, nachdem sie erzeugt wurde, automatisiert auf den Server des Bestandsoptimierungssystems hinaufzuladen.
Du möchtest mehr aus deinem Lager und deinem Einkauf rausholen?
Melde dich jetzt für dein kostenloses Erstgespräch und finde heraus, wie du deinen Lagerbestand senken und gleichzeitig deine Lieferbereitschaft erhöhen kannst.
REST-APIs
REST-APIs haben in letzter Zeit immer mehr an Beliebtheit gewonnen. Daher wollen wir uns an dieser Stelle kurz mit ihnen beschäftigen.
Sie basieren auf dem HTTP/S Protokoll, das auch jeder Webbrowser verwendet. REST-APIs stellen eine protokollorientierte Anwendungsschnittstelle dar. Damit sind sie eine einfache Möglichkeit, über das Internet Daten automatisiert auszutauschen.
Beispielsweise kann ein ERP System mittels REST folgende Funktionen bei Lieferantenbestellungen zur Verfügung stellen:
- Liste aller Bestellungen anzeigen
- Detailinfos zu einer Bestellung anzeigen
- Bestellung anlegen
- Bestellung ändern
- Liste aller Warenbewegungen zur Bestellung anzeigen
- Wareneingang zur Bestellung buchen
- etc.
Für den Zugriff werden die gleichen Aufrufe verwendet, die auch ein Webbrowser beim Surfen im Netz benützt (also so genannte GET, POST, PUT und DELETE Aufrufe).
REST-APIs eignen sich für eine rasche Anbindung von Systemen, bei denen auf Belegebene Daten ausgetauscht werden. Wie wir vorhin schon besprochen haben, werden für die Massendatenverarbeitung immer noch Dateibasierte Schnittstellen in Kombination mit Protokollen wie FTP verwendet.
Wir sehen also, dass eine REST-API eine einfache und flexible Möglichkeit darstellt, 2 Systeme miteinander zu verbinden.
EDI
Jetzt haben wir die unterschiedlichsten Schnittstellenbegriffe und -themen behandelt und es ist nur noch ein Punkt offen: EDI.
Was ist eigentlich EDI?
EDI steht für Electronic Data Interchange. Im weiteren Sinn betrachtet handelt es sich dabei um jeglichen elektronischen Datenaustausch zwischen zwei unabhängigen Unternehmen. Wir sehen hier schon, dass die Sichtweise auf das Thema klar betriebswirtschaftlich ist.
Üblicherweise werden hierbei Belege wie Bestellungen, Bestellbestätigungen, Lieferscheine und Rechnungen ausgetauscht - und das komplett ohne menschliches Zutun.
Im Rahmen von EDI haben Standards eine sehr hohe Wertigkeit. So gibt es internationale Standards wie UN/EDIFACT, welche branchenübergreifend den Austausch der wichtigsten Geschäftsbelege regeln.
Für unterschiedliche Branchen gibt es dann noch individuelle Standards wie Odette oder den VDA-Standard im Automobilbereich.
Das klare Ziel von EDI ist es, Abläufe mit hohem Belegvolumen komplett im Hintergrund durch elektronischen Datenaustausch zwischen Geschäftspartnern zu automatisieren. Damit können signifikant Aufwände für die manuelle Erfassung von Belegen eingespart werden und damit Kosten gesenkt und manuelle Fehler minimiert werden.
Da das Aufsetzen und Betreiben von Standards wie EDIFACT ein relativ hohes Investment bedeutet, war diese Art des Datenaustauschs für viele Jahre nur den großen Unternehmen vorbehalten.
Es gibt mittlerweile aber auch Anbieter, die auch für KMUs Möglichkeiten zur Verfügung stellen, wie diese am Austausch über ein EDI-Netzwerk wie X.400 oder AS2 mit einfachen Mitteln teilnehmen können, ohne hohe Beträge in das Initial-Setup investieren zu müssen.
Dabei können KMUs ihre Daten als CSV, JSON oder XML Dateien an einen EDI Dienstleister bspw. per FTP senden und auch empfangen und dieser stellt dann die Verbindung zum eigentlichen EDI-Netzwerk her.