SAP Integration mit Zoho Analytics, Zoho Creator API: KPI-Dashboard Tutorial

  • Beitrags-Autor:

Vom ERP zum KPI-Dashboard: Wie Du SAP-Daten in Zoho Analytics visualisierst

In vielen Unternehmen schlummern die wertvollsten Daten in etablierten ERP-Systemen wie SAP. Sie sind das Rückgrat der operativen Prozesse, doch für den schnellen, unkomplizierten Zugriff – insbesondere für Vertriebsteams unterwegs – sind sie oft zu sperrig. Die Herausforderung besteht darin, diese Datenflut in klare, handlungsorientierte Kennzahlen (KPIs) zu verwandeln, die jederzeit und auf jedem Gerät verfügbar sind. Genau hier zeigt das Zoho-Ökosystem seine Stärke: durch die intelligente Verknüpfung von robusten Backend-Systemen mit flexiblen Analyse-Tools. In diesem Artikel zeigen wir Dir einen praxiserprobten Weg, wie Du Daten aus einem externen ERP-System wie SAP extrahierst, in Zoho Analytics aufbereitest und Deinem Vertriebsteam als motivierendes Echtzeit-Dashboard auf dem Smartphone zur Verfügung stellst. Wir gehen auf den Tech-Stack, typische Hürden wie Datenhygiene und die konkrete Umsetzung mit Code-Beispielen ein.

Praxisbeispiel: Vertriebssteuerung für den Außendienst

Stell Dir ein mittelständisches Handelsunternehmen vor, das hochwertige Konsumgüter vertreibt. Der gesamte Auftrags- und Abrechnungsprozess läuft über ein zentrales SAP-System. Das Vertriebsteam ist jedoch hauptsächlich im Außendienst tätig und benötigt einen schnellen, mobilen Überblick über die eigene Performance:

  • Wie hoch ist mein aktueller Monatsumsatz?
  • Wie weit bin ich von meinem Monatsziel entfernt?
  • Wie schneide ich im Vergleich zum Vorjahresmonat ab?
  • Welche Produktkategorien verkaufen sich bei mir am besten?

Die manuelle Abfrage dieser Informationen aus SAP ist umständlich und liefert keine motivierende, visuelle Aufbereitung. Ziel ist es daher, ein dynamisches Dashboard in Zoho Analytics zu erstellen, das sich die Rohdaten direkt aus dem ERP zieht und sie in aussagekräftigen Widgets, wie zum Beispiel einem Tacho-Diagramm für die Zielerreichung, darstellt. Die zentrale Anforderung: Das Dashboard muss perfekt auf der mobilen Zoho Analytics App funktionieren.

Schritt-für-Schritt Anleitung zur Lösung

Schritt 1: Datenbasis schaffen und bereinigen

Bevor Du eine einzige Zeile Code schreibst, musst Du die Datenquelle verstehen und sicherstellen, dass die Datenqualität ausreicht. Das „Garbage In, Garbage Out“-Prinzip gilt hier uneingeschränkt. Die größte Herausforderung bei der Anbindung von ERP-Systemen ist oft die mangelnde Datenhygiene.

In unserem Praxisbeispiel führte dies dazu, dass ein Standort mal als „München-Ost“ und mal als „München Ost“ im System erfasst wurde, was zu doppelten Einträgen und falschen Auswertungen führte. Die Verantwortung für saubere Stammdaten liegt immer im Quellsystem (hier SAP). Kläre intern, wer für die Datenpflege zuständig ist und etabliere klare Regeln für die Dateneingabe. Erst wenn die Datenbasis konsistent ist, lohnt sich der nächste Schritt.

Schritt 2: Die Brücke bauen – Anbindung von SAP via API

Die Daten müssen nun automatisiert von SAP zu Zoho gelangen. Der robusteste Weg hierfür ist eine API-Schnittstelle. SAP bietet verschiedene Möglichkeiten, Daten bereitzustellen, oft über OData-Schnittstellen oder dedizierte Webservices. Auf der Zoho-Seite hast Du mehrere Optionen, diese Daten abzurufen:

  • Zoho Creator als Middleware: Du kannst eine kleine Anwendung in Creator bauen, die als Zwischenschicht dient. Mit der Skriptsprache Deluge rufst Du regelmäßig die SAP-API auf, verarbeitest die Daten und schiebst sie dann über die Zoho Analytics API in die entsprechenden Tabellen.
  • Zoho Flow: Für einfachere, ereignisbasierte Anwendungsfälle kann Zoho Flow eine gute Wahl sein. Wenn SAP beispielsweise bei einem neuen Auftrag einen Webhook auslösen kann, kann Flow diesen empfangen und die Daten direkt an Analytics weiterleiten.
  • Direkte Anbindung via Custom Functions: Wenn Du bereits Zoho CRM nutzt, kannst Du auch dort eine geplante Custom Function (Deluge) erstellen, die die Daten abruft und verarbeitet.

Für unseren Fall ist ein regelmäßiger, nächtlicher Abruf aller Auftragsdaten des aktuellen Tages die beste Methode. Dies lässt sich hervorragend mit einer geplanten Funktion in Zoho Creator umsetzen.

Schritt 3: Der initiale Datenimport und die Tücken der API-Credits

Um aussagekräftige Vergleiche, wie den zum Vorjahr, zu ermöglichen, benötigst Du historische Daten. Ein einmaliger, vollständiger Import aller relevanten Daten (z.B. der letzten zwei Jahre) ist unumgänglich.

Hierbei musst Du die Zoho API-Credits im Auge behalten. Jede Zoho One Lizenz enthält ein bestimmtes Kontingent an Credits, die für API-Aufrufe verbraucht werden. Ein Massenimport von zehntausenden Datensätzen kann dieses Kontingent schnell sprengen. Zoho bietet hierfür zusätzliche Credit-Pakete an, die Du für solche initialen Importe erwerben kannst. Überprüfe Deinen Verbrauch unter Einstellungen > Zoho API > API-Credits. Ein Tipp: Das Aktualisieren eines bestehenden Datensatzes verbraucht in der Regel weniger Credits als das Anlegen eines neuen.

Hier ist ein vereinfachtes Deluge-Skript, wie ein API-Aufruf zur Synchronisation von Aufträgen aussehen könnte. Dieses Skript könnte in einer geplanten Funktion in Zoho Creator laufen:


// Deluge Script in Zoho Creator to fetch data from a hypothetical ERP API
// and push it to Zoho Analytics

// 1. Define Connection to your ERP (replace with your actual connection link name)
connectionName = "sap_erp_connection";

// 2. Get today's date to fetch only new orders
todayStr = zoho.currentdate.toString("yyyy-MM-dd");
api_url = "https://api.deinerp.com/orders?date=" + todayStr;

// 3. Invoke the API Call
response = invokeurl
[
	url :api_url
	type :GET
	connection:connectionName
];

// 4. Check if the API call was successful
if(response.get("responseCode") == 200)
{
	orders = response.get("data").toList();
	
	// 5. Loop through each order and prepare data for Zoho Analytics
	for each order in orders
	{
		// 6. Define the Zoho Analytics API endpoint and workspace details
		analytics_workspace_owner = "[email protected]";
		analytics_workspace_name = "Vertriebscontrolling";
		analytics_table_name = "Auftragsdaten";
		
		// 7. Construct the data row as a JSON map
		rowData = Map();
		rowData.put("Auftragsnummer", order.get("orderId"));
		rowData.put("Umsatz", order.get("revenue"));
		rowData.put("Datum", order.get("orderDate"));
		rowData.put("Verkaeufer_ID", order.get("salespersonId"));
		rowData.put("Produktkategorie", order.get("productCategory"));

		// 8. Use the Zoho Analytics "ADDROW" action to insert the data
		// This requires a pre-configured connection to Zoho Analytics
		analytics_response = zoho.analytics.addRow(analytics_workspace_owner, analytics_workspace_name, analytics_table_name, rowData);
		info analytics_response;
	}
}
else
{
	// Send an alert if the API call fails
	zoho.cliq.postToChannel("dev_alerts", "SAP API Sync failed! Response Code: " + response.get("responseCode"));
}

Schritt 4: Zielvorgaben als separate Tabelle integrieren

Dynamische Ziele sollten nicht fest im Dashboard-Code verankert sein. Erstelle stattdessen eine separate Tabelle in Zoho Analytics, zum Beispiel namens „Vertriebsziele“. Diese Tabelle hat simple Spalten wie `Verkaeufer_ID`, `Monat`, `Jahr` und `Umsatzziel`.

Diese Tabelle kann einfach per CSV-Upload gepflegt oder ebenfalls aus einer anderen Quelle (z.B. einem Zoho Sheet) synchronisiert werden. In Zoho Analytics kannst Du diese Zieltabelle nun per „Lookup-Spalte“ mit Deiner Haupt-Auftragstabelle verknüpfen (Join über `Verkaeufer_ID` und den Monat/Jahr des Auftragsdatums).

Eine einfache Abfrage, um Ist- und Soll-Werte zu verbinden, könnte so aussehen (SQL-Dialekt in Zoho Analytics):


SELECT
    A."Verkaeufer_ID",
    SUM(A."Umsatz") AS "Ist-Umsatz",
    Z."Umsatzziel"
FROM
    "Auftragsdaten" AS A
LEFT JOIN
    "Vertriebsziele" AS Z ON A."Verkaeufer_ID" = Z."Verkaeufer_ID"
    AND month(A."Datum") = Z."Monat" AND year(A."Datum") = Z."Jahr"
WHERE
    month(A."Datum") = month(now()) AND year(A."Datum") = year(now())
GROUP BY
    A."Verkaeufer_ID",
    Z."Umsatzziel"

Schritt 5: Das Dashboard visualisieren und mobil verfügbar machen

Jetzt kommt der kreative Teil. Erstelle ein neues Dashboard in Zoho Analytics und füge die relevanten Widgets hinzu:

  • Tacho-Diagramm (Gauge Chart): Visualisiere den aktuellen „Ist-Umsatz“ gegen das „Umsatzziel“. Du kannst auch Maximalwerte definieren, um zu zeigen, dass nach dem Ziel noch Luft nach oben ist.
  • KPI-Widgets: Zeige die wichtigsten Kennzahlen groß an: Gesamtumsatz, Stückzahlen, durchschnittlicher Auftragswert.
  • Balkendiagramm: Stelle die Umsätze pro Produktkategorie dar.
  • Benutzerfilter: Füge einen Filter für „Verkäufer“ hinzu. So kann jeder Außendienstmitarbeiter seine persönliche Ansicht aufrufen.

Achte beim Design darauf, die Ansicht für Mobilgeräte zu optimieren. In den Dashboard-Einstellungen kannst Du das Layout speziell für Smartphones anpassen. Gib das Dashboard anschließend für die entsprechenden Benutzer frei. Diese können es dann bequem über die Zoho Analytics App aufrufen.

Tipps und Best Practices

  • Datenhygiene ist Deine Baustelle: Kein Tool kann schlechte Daten magisch heilen. Die nachhaltigste Lösung ist die Etablierung sauberer Prozesse im Quellsystem.
  • Beginne einfach, erweitere später: Starte mit einfachen, einheitlichen Monatszielen. Komplexe, saisonal schwankende Quartalsziele kannst Du in einer zweiten Phase umsetzen. Der schnelle Erfolg motiviert das Team.
  • Ermächtige Dein Team: Der größte Mehrwert entsteht, wenn Deine Fachabteilung (z.B. das Controlling) lernt, selbstständig neue Berichte und Widgets zu erstellen. Plane einen bewussten Wissenstransfer ein. Für die Erstellung von komplexen Formeln oder SQL-Abfragen können Tools wie ChatGPT eine wertvolle Starthilfe sein.
  • Automatisiere die Überwachung: Nutze die Alarmierungsfunktionen in Zoho Analytics oder sende, wie im Code-Beispiel gezeigt, Benachrichtigungen an einen Zoho Cliq Kanal, falls die Datensynchronisation fehlschlägt.

Zusätzliche Integrationsmöglichkeiten im Zoho-Ökosystem

Einmal in Zoho Analytics, stehen Dir die Daten für weitere Automationen zur Verfügung:

  • Gamification in Zoho CRM: Nutze die KPI-Daten, um in Zoho CRM Trophäen oder Badges für erreichte Ziele zu vergeben.
  • Automatisierte Berichte: Konfiguriere Zoho Analytics so, dass wöchentliche Performance-Berichte automatisch als PDF per E-Mail an das Management gesendet oder in einem Zoho WorkDrive Ordner abgelegt werden.
  • Proaktive Benachrichtigungen: Richte in Zoho Flow einen Workflow ein, der eine Nachricht in den Zoho Cliq Kanal des Vertriebsteams postet, sobald ein Verkäufer 100% seines Monatsziels erreicht hat.

Fazit

Die Anbindung eines externen ERP-Systems wie SAP an das Zoho-Ökosystem ist kein triviales Unterfangen, aber der Nutzen ist enorm. Du brichst Datensilos auf und verwandelst trockene Zahlen in ein leistungsstarkes Werkzeug zur Motivation und Steuerung Deines Vertriebs. Der Schlüssel zum Erfolg liegt in einer sauberen Datenbasis, einer durchdachten API-Strategie und dem Willen, das eigene Team zu befähigen, mit den Werkzeugen selbstständig zu arbeiten. Am Ende erhältst Du eine flexible, skalierbare und mobile Reporting-Lösung, die weit über die starren Möglichkeiten eines traditionellen ERP-Systems hinausgeht.

Verwendete Zoho Apps: