Auf den Spuren des Geldflusses in SAP: Wohin ging Ihr Geld?

Ein ganz besonderes Augenmerk im Rechnungswesen liegt immer auf den eigenen Bankkonten.  Denn hier fließt bares Geld ab oder rein – je nachdem. In dem heutigen Blog Beitrag möchte ich Ihnen zeigen, wie Sie mit den Datenstrukturen in SAP herausfinden, wo Ihr Geld geblieben ist. Wir konzentrieren uns also auf Geldabflüsse und sehen uns die Gegenkonten an. Zum selbst ausprobieren gibt es dazu passende Queries in SQL, d.h. dieses Mal wird es sehr SQL-lastig und etwas für echte Freaks der Datenanalyse unter den Revisoren. Also herzlich willkommen in der SQL-Bastelstudie des Audit Data Scientist.

Wo sind die Bankkonten im Rechnungswesen?

Zunächst mal muss man herausbekommen, welche der FiBu-Konten die eigenen Bankkonten repräsentieren. Diese Information findet sich pro Buchungskreis und FiBu-Konto in den Kontostammdaten in der Tabelle „SKB1“ in dem Feld „XGKON“. Wenn Sie die folgenden Queries selbst ausprobieren wollen, dann nutzen Sie Transaktion „DBACOCKPIT – Diagnose – SQL-Editor“ in Ihrem SAP-System. Setzen wir voraus, dass man den SAP Mandanten 800 und den Buchungskreis 1000 untersucht, dann ist das Query für das Auffinden der FiBu-Bankkonten wie folgt:

Query 1 (getestet auf einer Hana):

SELECT * FROM SKB1 WHERE MANDT='800' AND BUKRS='1000' AND XGKON='X'

Okay das war soweit noch einfach. Eine einfache Selektion (SELECT) auf eine SAP Tabelle (SKB1) unter den Bedingungen eines gegebenen Mandanten (800), einem Buchungskreis (1000) und dem Kennzeichen für Geldeingangs- / Geldausgangskonten (X für zutreffend).

Ein beispielhaftes Ergebnis:

Alle Geldabflüsse finden

Alle Geldabflüsse findet man, indem man alle Buchungszeilen auf den FiBu-Bankkonten betrachtet, die im Haben stehen. Das sind dann die entsprechenden Vermögensminderungen auf dem Bankkonto. Jetzt wird es schon komplizierter, aber keine Panik, ich erkläre erst alles Schritt für Schritt, bevor wir das Query zusammensetzen:

Query 2 (getestet auf einer Hana):

Zunächst müssen wir uns Gedanken darüber machen, welche Felder für eine Auswertung überhaupt notwendig sind. Dazu gehören ein paar Angaben, die für eine grundsätzliche Übersicht schlicht benötigt werden:

  • Mandant (MANDT)
  • Buchungskreis (BUKRS)
  • Geschäftsjahr (GJAHR)
  • Belegnummer (BELNR)
  • Buchungszeile (BUZEI)
  • Soll-/ Haben-Kennzeichen (SHKZG)

Für die Zuordnung der Konten und den entsprechenden Werten der Geldabflüsse benötigen wir außerdem den Betrag in Hauswährung (DMBTR) und das entsprechende Konto (HKONT) inklusive der Kontenbezeichnung (TXT50) des FiBu-Kontos. Setzen wir die einzelnen Bausteine der Anforderung zusammen und beachten die jeweilige Tabelle, aus der die Informationen bezogen werden können, so ergibt sich die folgende Selektion (SELECT):

SELECT BSEG.MANDT, BSEG.BUKRS, BSEG.GJAHR, BSEG.BELNR, BSEG.BUZEI, BSEG.HKONT ACCOUNT, SKAT1.TXT50 ACCOUNTTXT, BSEG.SHKZG, BSEG.DMBTR FROM BSEG

Um Tabellen in SQL zu verknüpfen (joinen) benötigen wir sogenannte Tabellenjoins auf alle Tabellen, von denen wir Informationen abfragen wollen. Wie eingangs bereits erwähnt wurde müssen wir die Kennzeichnung „XGKON“ (Geldeingangs-/ Geldausgangskonto) berücksichtigen, sodass wir auf die Tabelle „SKB1“ joinen müssen. Diese Informationen finden wir leider nicht in der Tabelle „BSEG“:

JOIN SKB1 ON (BSEG.MANDT=SKB1.MANDT AND BSEG.BUKRS=SKB1.BUKRS AND BSEG.HKONT=SKB1.SAKNR AND XGKON='X')

Damit Stornobelege (STBLG) zusätzlich aus der Betrachtung ausgeschlossen werden, wird ein weiterer Join auf die Tabelle der Belegköpfe (BKPF) und ein Ausschluss von Stornobelegen notwendig:

JOIN BKPF ON (BSEG.MANDT=BKPF.MANDT AND BSEG.BUKRS=BKPF.BUKRS AND BSEG.GJAHR=BKPF.GJAHR AND BSEG.BELNR=BKPF.BELNR AND BKPF.STBLG='')

Um die Bezeichnung des FiBu Kontos zu erhalten wird der Kontenplan benötigt. Ohne den Kontenplan wäre ein Join auf die Tabelle SKAT nicht möglich, sodass der nachfolgende Join notwendiges Übel ist:

LEFT JOIN T001 ON (BSEG.MANDT=T001.MANDT AND BSEG.BUKRS=T001.BUKRS)

Die Bezeichnung des Sachkontos speichert SAP in einer weiteren Tabelle (SKAT), sodass noch ein Join auf die Tabelle SKAT notwendig ist. Außerdem können wir auf diese Weise die Sprache der Bezeichnung festlegen:

LEFT JOIN SKAT SKAT1 ON (BSEG.MANDT=SKAT1.MANDT AND BSEG.HKONT=SKAT1.SAKNR AND T001.KTOPL=SKAT1.KTOPL AND SKAT1.SPRAS='D')

Den Untersuchungsgegenstand wollen wir zudem auf einen Mandanten, einen Buchungskreis und ein Geschäftsjahr begrenzen. Hinzu kommt, dass sich die Vermögensminderungen auf dem Bankkonto im Haben befinden. Die Eingrenzung müssen wir demnach auch vornehmen:

WHERE BSEG.SHKZG='H' AND BSEG.MANDT='800' AND BSEG.BUKRS='1000' AND BSEG.GJAHR=2017

Zur übersichtlichen Darstellung verwenden wir noch den Befehl „ORDER BY“, der standardmäßig die nachfolgenden Felder aufsteigend sortiert:

ORDER BY BSEG.MANDT, BSEG.BUKRS, BSEG.GJAHR, BSEG.BELNR, BSEG.BUZEI, BSEG.SHKZG

Fassen wir die Erkenntnisse und einzelnen Bruchteile des Queries zusammen, so erhalten wir das Query:

SELECT BSEG.MANDT, BSEG.BUKRS, BSEG.GJAHR, BSEG.BELNR, BSEG.BUZEI,BSEG.HKONT ACCOUNT, SKAT1.TXT50 ACCOUNTTXT, BSEG.SHKZG, BSEG.DMBTR FROM BSEG
JOIN SKB1 ON (BSEG.MANDT=SKB1.MANDT AND BSEG.BUKRS=SKB1.BUKRS AND BSEG.HKONT=SKB1.SAKNR AND XGKON='X')
JOIN BKPF ON (BSEG.MANDT=BKPF.MANDT AND BSEG.BUKRS=BKPF.BUKRS AND BSEG.GJAHR=BKPF.GJAHR AND BSEG.BELNR=BKPF.BELNR AND BKPF.STBLG='')
LEFT JOIN T001 ON (BSEG.MANDT=T001.MANDT AND BSEG.BUKRS=T001.BUKRS)
LEFT JOIN SKAT SKAT1 ON (BSEG.MANDT=SKAT1.MANDT AND BSEG.HKONT=SKAT1.SAKNR AND T001.KTOPL=SKAT1.KTOPL AND SKAT1.SPRAS='D')
WHERE BSEG.SHKZG='H' AND BSEG.MANDT='800' AND BSEG.BUKRS='1000' AND BSEG.GJAHR=2017
ORDER BY BSEG.MANDT, BSEG.BUKRS, BSEG.GJAHR, BSEG.BELNR, BSEG.BUZEI, BSEG.SHKZG

Ein beispielhaftes Ergebnis:

Damit aber noch nicht genug!

Wofür ist das Geld abgeflossen?

Um zu erfahren, wofür das Geld abgeflossen ist, benötigen wir für die Belegzeilen aus dem Query 2 die Gegenkonten und deren Beträge, die dann exakt dem Betrag des Geldabgangs entsprechen müssen.

Query 3 (getestet auf einer HANA):

Die Selektion dürfte inzwischen bekannt sein. Der Unterschied bei dieser „SELECT“ Anweisung ist die Summe der Beträge in Hauswährung (SUM(DMBTR)), die einen Belegsaldo darstellen und der Anteil des abfließenden Geldbetrags der Buchungszeile an dem Belegsaldo(Betrag in Hauswährung / Anteil der Buchungszeile am Belegsaldo). Für eine ansprechende Darstellung und die korrekte Funktionalität des Queries muss das Ergebnis zudem umgewandelt (gecastet) werden. Zusätzlich wird das Gegenkonto zum Geldabfluss mit angeführt („CONTRAACCOUNT“), sowie der Betrag, der dem Gegenkonto des Geldabflusses zugeordnet werden kann:

SELECT BSEG.MANDT, BSEG.BUKRS, BSEG.GJAHR, BSEG.BELNR, BSEG.BUZEI, BSEG.HKONT ACCOUNT, SKAT1.TXT50 ACCOUNTTXT, BSEG.SHKZG, BSEG.DMBTR, (SELECT SUM(B.DMBTR) FROM BSEG B WHERE B.MANDT=BSEG.MANDT AND B.BUKRS=BSEG.BUKRS AND B.GJAHR=BSEG.GJAHR AND B.BELNR=BSEG.BELNR AND B.SHKZG=BSEG.SHKZG) BELEGSALDO, CAST(BSEG.DMBTR/(SELECT SUM(B.DMBTR) FROM BSEG B WHERE B.MANDT=BSEG.MANDT AND B.BUKRS=BSEG.BUKRS AND B.GJAHR=BSEG.GJAHR AND B.BELNR=BSEG.BELNR AND B.SHKZG=BSEG.SHKZG) AS DECIMAL) PORTION,
B2.HKONT CONTRAACCOUNT, SKAT2.TXT50 CONTRAACCOUNTTXT, CAST(B2.DMBTR*BSEG.DMBTR/(SELECT SUM(B.DMBTR) FROM BSEG B WHERE B.MANDT=BSEG.MANDT AND B.BUKRS=BSEG.BUKRS AND B.GJAHR=BSEG.GJAHR AND B.BELNR=BSEG.BELNR AND B.SHKZG=BSEG.SHKZG) AS DECIMAL) GEGENBETRAG,B2.SHKZG CONTRASHKZG FROM BSEG

Stornobelege erneut ausschließen:

JOIN BKPF ON (BSEG.MANDT=BKPF.MANDT AND BSEG.BUKRS=BKPF.BUKRS AND BSEG.GJAHR=BKPF.GJAHR AND BSEG.BELNR=BKPF.BELNR AND BKPF.STBLG='')

Nur Buchungszeilen selektieren, die Geldabflüsse darstellen (XGKON):


JOIN SKB1 ON (BSEG.MANDT=SKB1.MANDT AND BSEG.BUKRS=SKB1.BUKRS AND BSEG.HKONT=SKB1.SAKNR AND XGKON='X')

Die notwendigen Gegenpositionen zu den Geldabflüssen holen:

JOIN BSEG B2 ON (BSEG.MANDT=B2.MANDT AND BSEG.BUKRS=B2.BUKRS AND BSEG.GJAHR=B2.GJAHR AND BSEG.BELNR=B2.BELNR AND BSEG.SHKZG!=B2.SHKZG)

Erneut den Kontenplan für den Tabellenjoin auf die SAP SKAT erstellen, um an die Kontenbezeichnung zu gelangen:

LEFT JOIN T001 ON (BSEG.MANDT=T001.MANDT AND BSEG.BUKRS=T001.BUKRS)

Kontenbezeichnung des Kontos und Gegenkontos. sowie die Sprache der Kontenbezeichnung auf Deutsch (‚D‘) setzen:

LEFT JOIN SKAT SKAT1 ON (BSEG.MANDT=SKAT1.MANDT AND BSEG.HKONT=SKAT1.SAKNR AND T001.KTOPL=SKAT1.KTOPL AND SKAT1.SPRAS='D')
LEFT JOIN SKAT SKAT2 ON (B2.MANDT=SKAT2.MANDT AND B2.HKONT=SKAT2.SAKNR AND T001.KTOPL=SKAT2.KTOPL AND SKAT2.SPRAS='D')

Unter der Bedingung, dass nur Geldabflüsse selektiert werden (Soll-/Haben-Kennzeichen auf „Haben“), der Mandant 800, Buchungskreis 1000 und das Geschäftsjahr dem vergangenen Jahr 2017 entspricht:

WHERE BSEG.SHKZG='H' AND BSEG.MANDT='800' AND BSEG.BUKRS='1000' AND BSEG.GJAHR=2017

Aufsteigend sortiert nach dem Mandanten, Buchungskreis, Geschäftsjahr, Belegnummer und der Buchungszeile:

ORDER BY BSEG.MANDT, BSEG.BUKRS, BSEG.GJAHR, BSEG.BELNR, BSEG.BUZEI

Das Ganze in einem Query sieht dann folgendermaßen aus:

SELECT BSEG.MANDT, BSEG.BUKRS, BSEG.GJAHR, BSEG.BELNR, BSEG.BUZEI, BSEG.HKONT ACCOUNT, SKAT1.TXT50 ACCOUNTTXT, BSEG.SHKZG, BSEG.DMBTR, (SELECT SUM(B.DMBTR) FROM BSEG B WHERE B.MANDT=BSEG.MANDT AND B.BUKRS=BSEG.BUKRS AND B.GJAHR=BSEG.GJAHR AND B.BELNR=BSEG.BELNR AND B.SHKZG=BSEG.SHKZG) BELEGSALDO, CAST(BSEG.DMBTR/(SELECT SUM(B.DMBTR) FROM BSEG B WHERE B.MANDT=BSEG.MANDT AND B.BUKRS=BSEG.BUKRS AND B.GJAHR=BSEG.GJAHR AND B.BELNR=BSEG.BELNR AND B.SHKZG=BSEG.SHKZG) AS DECIMAL) PORTION,
B2.HKONT CONTRAACCOUNT, SKAT2.TXT50 CONTRAACCOUNTTXT, CAST(B2.DMBTR*BSEG.DMBTR/(SELECT SUM(B.DMBTR) FROM BSEG B WHERE B.MANDT=BSEG.MANDT AND B.BUKRS=BSEG.BUKRS AND B.GJAHR=BSEG.GJAHR AND B.BELNR=BSEG.BELNR AND B.SHKZG=BSEG.SHKZG) AS DECIMAL) GEGENBETRAG,B2.SHKZG CONTRASHKZG
FROM BSEG
JOIN BKPF ON (BSEG.MANDT=BKPF.MANDT AND BSEG.BUKRS=BKPF.BUKRS AND BSEG.GJAHR=BKPF.GJAHR AND BSEG.BELNR=BKPF.BELNR AND BKPF.STBLG='')
JOIN SKB1 ON (BSEG.MANDT=SKB1.MANDT AND BSEG.BUKRS=SKB1.BUKRS AND BSEG.HKONT=SKB1.SAKNR AND XGKON='X')
JOIN BSEG B2 ON (BSEG.MANDT=B2.MANDT AND BSEG.BUKRS=B2.BUKRS AND BSEG.GJAHR=B2.GJAHR AND BSEG.BELNR=B2.BELNR AND BSEG.SHKZG!=B2.SHKZG)
LEFT JOIN T001 ON (BSEG.MANDT=T001.MANDT AND BSEG.BUKRS=T001.BUKRS)
LEFT JOIN SKAT SKAT1 ON (BSEG.MANDT=SKAT1.MANDT AND BSEG.HKONT=SKAT1.SAKNR AND T001.KTOPL=SKAT1.KTOPL AND SKAT1.SPRAS='D')
LEFT JOIN SKAT SKAT2 ON (B2.MANDT=SKAT2.MANDT AND B2.HKONT=SKAT2.SAKNR AND T001.KTOPL=SKAT2.KTOPL AND SKAT2.SPRAS='D')
WHERE BSEG.SHKZG='H' AND BSEG.MANDT='800' AND BSEG.BUKRS='1000' AND BSEG.GJAHR=2017
ORDER BY BSEG.MANDT, BSEG.BUKRS, BSEG.GJAHR, BSEG.BELNR, BSEG.BUZEI

Ein beispielhaftes Ergebnis:

Aber es geht NOCH schlimmer!

Kassensturz

Mit Query 2 und Query 3 haben wir nun die Geldabflüsse und die Gegenkonten mit Beträgen. Jetzt rechnen wir beide Seiten über alle Belege auf und sortieren einmal durch und dann sehen wir für das komplette Geschäftsjahr, wohin das Geld geflossen ist.

Final Query (getestet auf einer HANA):

Im Grunde verbinden wir die beiden Abfragen jetzt nur noch, selektieren allerdings nur das Soll-/Haben-Kennzeichen, das FiBu-Konto inklusive Bezeichnung und die Summe des Betrags in Hauswährung. Dann sieht das Query final wie folgt aus:

SELECT * FROM (
SELECT SHKZG, ACCOUNT, ACCOUNTTXT, SUM(DMBTR) AMOUNT FROM (
SELECT BSEG.MANDT,BSEG.BUKRS,BSEG.GJAHR,BSEG.BELNR,BSEG.BUZEI,BSEG.HKONT ACCOUNT,SKAT1.TXT50 ACCOUNTTXT,BSEG.SHKZG,BSEG.DMBTR FROM BSEG JOIN SKB1 ON (BSEG.MANDT=SKB1.MANDT AND BSEG.BUKRS=SKB1.BUKRS AND BSEG.HKONT=SKB1.SAKNR AND XGKON='X') JOIN BKPF ON (BSEG.MANDT=BKPF.MANDT AND BSEG.BUKRS=BKPF.BUKRS AND BSEG.GJAHR=BKPF.GJAHR AND BSEG.BELNR=BKPF.BELNR AND BKPF.STBLG='') LEFT JOIN T001 ON (BSEG.MANDT=T001.MANDT AND BSEG.BUKRS=T001.BUKRS) LEFT JOIN SKAT SKAT1 ON (BSEG.MANDT=SKAT1.MANDT AND BSEG.HKONT=SKAT1.SAKNR AND T001.KTOPL=SKAT1.KTOPL AND SKAT1.SPRAS='D') WHERE BSEG.SHKZG='H' AND BSEG.MANDT='800' AND BSEG.BUKRS='1000' AND BSEG.GJAHR=2017 ORDER BY BSEG.MANDT,BSEG.BUKRS,BSEG.GJAHR,BSEG.BELNR,BSEG.BUZEI,BSEG.SHKZG) GROUP BY ACCOUNT,ACCOUNTTXT, SHKZG
UNION
SELECT CONTRASHKZG, CONTRAACCOUNT, CONTRAACCOUNTTXT, SUM(GEGENBETRAG) FROM (
SELECT BSEG.MANDT,BSEG.BUKRS,BSEG.GJAHR,BSEG.BELNR,BSEG.BUZEI,BSEG.HKONT ACCOUNT,SKAT1.TXT50 ACCOUNTTXT ,BSEG.SHKZG ,BSEG.DMBTR ,(SELECT SUM(B.DMBTR) FROM BSEG B WHERE B.MANDT=BSEG.MANDT AND B.BUKRS=BSEG.BUKRS AND B.GJAHR=BSEG.GJAHR AND B.BELNR=BSEG.BELNR AND B.SHKZG=BSEG.SHKZG ) BELEGSALDO, CAST(BSEG.DMBTR/(SELECT SUM(B.DMBTR) FROM BSEG B WHERE B.MANDT=BSEG.MANDT AND B.BUKRS=BSEG.BUKRS AND B.GJAHR=BSEG.GJAHR AND B.BELNR=BSEG.BELNR AND B.SHKZG=BSEG.SHKZG ) AS DECIMAL) PORTION,
B2.HKONT CONTRAACCOUNT, SKAT2.TXT50 CONTRAACCOUNTTXT , CAST(B2.DMBTR*BSEG.DMBTR/(SELECT SUM(B.DMBTR) FROM BSEG B WHERE B.MANDT=BSEG.MANDT AND B.BUKRS=BSEG.BUKRS AND B.GJAHR=BSEG.GJAHR AND B.BELNR=BSEG.BELNR AND B.SHKZG=BSEG.SHKZG ) AS DECIMAL) GEGENBETRAG ,B2.SHKZG CONTRASHKZG
FROM BSEG
JOIN BKPF ON (BSEG.MANDT=BKPF.MANDT AND BSEG.BUKRS=BKPF.BUKRS AND BSEG.GJAHR=BKPF.GJAHR AND BSEG.BELNR=BKPF.BELNR AND BKPF.STBLG='')
JOIN SKB1 ON (BSEG.MANDT=SKB1.MANDT AND BSEG.BUKRS=SKB1.BUKRS AND BSEG.HKONT=SKB1.SAKNR AND XGKON='X')
JOIN BSEG B2 ON (BSEG.MANDT=B2.MANDT AND BSEG.BUKRS=B2.BUKRS AND BSEG.GJAHR=B2.GJAHR AND BSEG.BELNR=B2.BELNR AND BSEG.SHKZG!=B2.SHKZG)
LEFT JOIN T001 ON (BSEG.MANDT=T001.MANDT AND BSEG.BUKRS=T001.BUKRS)
LEFT JOIN SKAT SKAT1 ON (BSEG.MANDT=SKAT1.MANDT AND BSEG.HKONT=SKAT1.SAKNR AND T001.KTOPL=SKAT1.KTOPL AND SKAT1.SPRAS='D')
LEFT JOIN SKAT SKAT2 ON (B2.MANDT=SKAT2.MANDT AND B2.HKONT=SKAT2.SAKNR AND T001.KTOPL=SKAT2.KTOPL AND SKAT2.SPRAS='D')
WHERE BSEG.SHKZG='H' AND BSEG.MANDT='800' AND BSEG.BUKRS='1000' AND BSEG.GJAHR=2017
ORDER BY BSEG.MANDT, BSEG.BUKRS, BSEG.GJAHR, BSEG.BELNR, BSEG.BUZEI)
GROUP BY CONTRAACCOUNT, CONTRAACCOUNTTXT, CONTRASHKZG)
ORDER BY SHKZG DESC, AMOUNT DESC

Okay, das ist echt heftig, aber in nur einem einzigen SQL-Query haben wir damit eine Gegenkontoanalyse geschafft für die Geldabgänge aller Bankkonten!

Wenn Sie das Query ausprobieren, denken Sie daran die „WHERE“ Bedingungen auf Ihren Mandaten (MANDT), Ihren Buchungskreis (BUKRS) und auf das betrachtet Jahr (GJAHR) anzupassen. Sie können auch die Sprache der auszugebenen Konten anpassen. Dazu ändern Sie SPRAS=’D‘ (Deutsch, ‚E‘ für Englisch) auf Ihr gewünschtes Sprachkürzel.

Auf meinem kleinen Testdatensatz kommt folgendes heraus:

Im Soll stehen alle Gegenpositionen zu den FiBu-Bankkonten, im Haben stehen die FiBu-Bankkonten selbst (=Geldabfluss). Auch hier gilt: Summe Soll muss der Summe Haben entsprechen. Zum Glück geht es hier natürlich auf!

Sie sollten jetzt die Gegenpositionen im Soll einmal durchgehen und prüfen, ob es plausibel ist, dass ein solches Gegenkonto einem Geldabfluss gegenübersteht. Dabei lässt sich z.B. folgendes feststellen:

  • Im Soll stehen auch wiederum einige FiBu-Bankkonten. Dies bedeutet, dass es zwischen den Bankkonten der Firmen größere Umbuchungen gab.
  • Die Verbindlichkeitskonten im Soll sind sehr plausibel, da es zum üblichen Geschäftsprozess gehört, dass man seine Schulden bezahlt.
  • Skonto-Ertrag im Soll ist eher eigenartig, da man Erträge eher im Haben erwartet.
  • Bezogene Leistungen direkt gegen Bank zu buchen dürfte eher ungewöhnlich sein, da eigentlich zu erwarten wäre, dass eine Rechnung und somit eine Verbindlichkeit existiert, die dann gegen Geldabfluss beglichen wird.
  • Verbrauch Rohstoffe ist ggü. Geldabfluss sonderbar. Hier sollte man Nachforschungen anstellen.

Was kann ich machen, wenn ich kein SQL-Experte bin?

Nicht jeder ist Experte in SQL oder hat die Möglichkeit, sein SAP-System damit auszuwerten.

zap Audit kann Ihnen weiterhelfen, seltene oder seltsame Kontierungen im Rechnungswesen aufzuspüren. z.B. mit unseren Indikatoren:

  • Belege mit gleichem Betrag auf Soll- und Habenseite eines Kontos
  • Belege mit Kontierung auf unerwarteter Kontoseite
  • Buchungen mit Positionen auf Bank- und Aufwandskonten

Wenn Sie mehr über die vielfältigen Indikatoren von zap Audit kennenlernen möchten, sei an dieser Stelle auf unseren ePaper Bereich verwiesen:

zum Download

Artikel teilen

Facebook
Twitter
XING
LinkedIn