In meinem ersten Beitrag habe ich unser prinzipielles Rezept für den automatischen Download von SAP-Tabellen via Power Automate Desktop und der Verarbeitung in Power BI Desktop vorgestellt. Heute geht es mit der konkreten Umsetzung weiter.
Das folgende Bild gibt uns einen Überblick über die anstehenden Schritte:
1. Vorarbeiten in SAP
Setzen Sie zuerst Ihre Ideen konventionell in SAP um. Nutzen Sie die geliebten Data Browser zum Download von Daten? Legen Sie sich dann Varianten an, um solche Dinge wie Belegdatum oder Buchungskreise schon komfortabel wiederverwendbar einstellen zu können (PS.: Ich schule übrigens immer: Keine Bedienung von SAP, ohne die Handgriffe für das nächste Audit über eine Variante zu sichern – könnte man ja nochmals gebrauchen – oder?).
Holen Sie nun einen GUI-Skript-Recorder in SAP als erste Füllung in den Kochtopf. Mehr dazu finden Sie zum Beispiel in der Hilfe von SAP.
Den Recorder kenne ich seit den 90er-Jahren und tatsächlich lassen sich damit Prozesse seit Einführung von SAP R/3 (Juli 1992) automatisieren. Den Roboter nutzt m.E. nur kaum jemand in der Internen Revision, eigentlich schade. Ist einfach zu bedienen, erfordert keine Programmierkenntnisse und hilft schneller zu werden. Um einem Herzinfarkt vorzubeugen: Es können nur Transaktionen ausgeführt werden, für die der angemeldete User im Dialogbetrieb berechtigt ist.
Roten Knopf drücken, Ablageort des Skriptes bestimmen (z.B. Desktop), Aufzeichnung starten, Aufzeichnung beenden und nächste Woche die gleichen Handgriffe sparen, weil die Abläufe mein vbs-Skript für mich erledigt. Funktioniert wie der Excel-Makro-Recorder – nur in SAP.
2. Excel zum Bedienen des Roboters
Jetzt wird es allerdings ein wenig tricky: Um alles einfacher bedienen zu können, muss ich nun in die Niederungen des Skriptes und manches ein wenig „aufpeppeln“. Nehmen wir einmal an, dass Sie auf Ihrem Dashboard alle Buchungskreise vernünftig beschriftet haben wollen. Die Information „BUKRS 1000“ ist für Sie vielleicht als Revisor:In lesbar, aber besser wäre es, wenn man das C-Level-tauglich mit „1000/addresults GmbH“ angezeigt bekäme.
Also eine kurzen Blick in die Standardtabelle T001 Buchungskreise mit der Transaktion SE16 (welchen Buchstaben sie auch immer dahinter nutzen, ob SE16N oder ..H ist vollkommen egal). Diese Handgriffe führen Sie mit dem Makrorecorder aus und schauen einmal in das Skript.
Dort finden Sie die beiden Stellen ganz einfach und ersetzen diese jetzt mit Variablen – also beispielsweise SE16 durch $TCODE und T001 durch $TABLE. So könnten wir durch ein übergeben von SE16N und T000 eine andere Transaktion zum Auslesen einer anderen Tabelle nutzen. Doch wo geben wir diese Informationen an? Ganz simpel in Excel – was von unserem Roboter durchgearbeitet wird, von uns leicht veränderbar und innerhalb der Arbeitspapiere gut nachweisbar ist.
Einen kleinen Schönheitsfehler gibt es: Sie werden bei weiteren zu übergebenden Filtern – also ich möchte auch noch den Buchungszeitraum mit Datumswerten einschränken können – weitere Skripte benötigen. Ich darf Sie aber beruhigen – wir kommen aktuell mit drei Skripten und einer Excel-Datei aus (einer unserer Kunden lädt damit rund 80 Tabellen).
Moment... warum überhaupt noch Excel im Jahr 2023?
Gute Frage, denn Excel ist nicht unbedingt die hipste Anwendung, die aktuell zur Verfügung steht. Aber wir können sehr leicht zwei Ziele erreichen:
Wenn Ihnen nächste Woche danach ist, tragen Sie im Excel einfach Ergänzungen ein: eine SE16(..) oder eine SA38 (Reporting ansteuern geht natürlich genau auf dem gleichen Weg) oder eine x-beliebige Transaktion (SALR68001400 - Berechtigungen als Beispiel). Wichtig ist, dass Sie die jeweilige Variante unterbringen können.
Im ersten Moment klingt es kompliziert, aber nach den ersten Gehversuchen merkt man, dass es wahnsinnig schnell geht und durch die Verwendung von Excel auch keine weitere neue Applikation für Sie oder Ihre Kolleg:innen dazu kommt. Inklusive Konzept haben wir keine drei Tage für den Prototypen gebraucht (auch wenn es bei Microsoft wegen der diversen Varianten einiges zu lesen und vor allen Dingen Videos zu sehen gibt).
Auch praktisch: Wir können Dinge, wie die Länge der Downloads oder auch simple Zeitangaben im Excel protokollieren. Dies ist aber erst über das Konzept zum Thema Bewegungsdaten entstanden – wir laden nämlich immer nur die letzte definierte Periode (also Tag/Monat/Quartal) lokal in einen Ordner, der genauso heißt wie die entsprechende Abfrage. Die bereits downgeloadeten Daten kennt mein Excel, daher weiß der Roboter auch, dass er diese nicht downloaden muss.
3. Lauf Roboter, lauf!
Und jetzt kommt der Kochtopf auf die heiße Herdplatte und der Roboter produziert uns ein sehr schmackhaftes Revisionsgericht.
Ich habe nie Informatik studiert, kann aber mit den drei Buchstaben EVA durchaus etwas anfangen. Sieht dann bei unserer Herdplatte für Power Automate Desktop wie folgt aus:
- E: Mit SAP-System verbinden -> Excel-Datei vorbereiten, einlesen und Logfiles beginnen
- V: Unterschiedliche Skripte ausführen, nach benötigtem Datentyp (aktuell drei Stück) downloaden
- A: Downloads erzeugen -> Excel schließen -> SAP abmelden -> fertig.
Danach müssen Sie nur noch Power BI öffnen. Weil die Daten in einer fest definierten Ordnerstruktur liegen (das können wir Ihnen nur so empfehlen – bei unseren Kunden i.d.R. auf einem SharePoint Online), können Sie jetzt Power BI per Knopfdruck aktualisieren.
Das haben wir aktuell noch nicht automatisiert, aber nur weil ein Break hilfreich ist, um die Funktionsweise zu überwachen. Wenn keiner im SAP-System die Spaltenanzahl der Tabellen verändert, gibt es auch keine Probleme. Aber im Zeitalter von HANA-Umstellungen weiß man ja nie….
Zwischenfazit
Eigentlich müsste doch jetzt alles klar sein, oder? Wir haben einen Überblick, wissen genauer wofür die unterschiedlichen Technologien genutzt werden können und sind nahezu fertig. Doch eine Sache vermissen Sie: Die Programmierung des Roboters. Keine Sorge, die gibt es im nächsten Teil inklusive Video des Ablaufs.
Sie haben immer noch nicht genug
von der Digitalisierung mittels Microsoft 365?
Mit unserem Newsletter erhalten Sie alle vier Wochen
- aktuelle Artikel und Whitepaper,
- unsere Kategorien "schon gewusst?" und "was uns gerade inspiriert"
- und die aktuellen Termine unserer Audinare.
Was erhalten wir dafür?
- Die Chance Sie von uns und unserem Know-how zu überzeugen.