Ein guter Einkaufsprozess in SAP nutzt ein Wareneingangs-/Verrechnungskonto (WE/RE-Konto), um auch prozessual immer den Überblick zu haben, was man schon an Ware erhalten hat und wofür man schon eine Eingangsrechnung bekommen hat. In der Praxis sehe ich leider immer wieder ewig offene Posten auf diesem Konto, also eine „buchhalterische Müllhalde“. Wir erklären, warum das WE/RE Konto wichtig ist und wie Sie herausfinden, ob auch Sie auf einer WE/RE Müllhalde sitzen.
Warum sollte das Wareneingangs-/Verrechnungskonto „clean“ sein?
Das WE/RE-Konto wird verwendet, um zu bemerken, dass für eine vorliegende Eingangsrechnung die Ware auch bereits erhalten wurde. Aus Sicht der Buchhaltung ist das WE/RE Konto ein Offene-Posten geführtes Konto, weil man jeden Wareneingang gegen die passende Rechnung ausziffern will. Offene Posten aus dem WE/RE Konto bedeuten dann, dass
• es Rechnungen gibt, für die der Wareneingang noch aussteht oder
• es Wareneingänge gibt, die noch nicht in Rechnung gestellt wurden.
Sind also Wareneingänge auf dem WE/RE Konto ewig offen, kann das bedeuten, dass die dazugehörigen Rechnungen nicht auf dem WE/RE Konto gegen den Wareneingang ausgeziffert wurden. Im Sinne eines ordnungsmäßigen internen Kontrollsystems (IKS) ist das zunächst mal ein Indikator für einen unzureichenden Rechnungsprüfungsprozess. In solchen Fällen sollte man als Revisor tiefer bohren.
Wie kann ich überblicksartig untersuchen, ob das WE/RE Konto ungepflegt ist?
Um eine Indikation zu haben, ob Ihr WE/RE-Konto in SAP ein Problem ist, empfiehlt es sich zu prüfen, ob offene Posten auf dem WE/RE Konto „ewig“ offen sind. Folgendes Statement zeigt Ihnen, wie lange und wie viele Posten offen sind. Nutzen Sie in SAP für dieses Query die Transaktion „DBACOCKPIT“ und navigieren Sie über Diagnose zum SQL-Editor (getestet mit SAP HANA):
SELECT BSEG.MANDT, BSEG.BUKRS, BSEG.GJAHR, SHKZG, HKONT, DAYS_BETWEEN(TO_DATE(BUDAT), TO_DATE(NOW()) ) AGE, COUNT(*) FROM BSEG JOIN BKPF ON (BSEG.MANDT=BKPF.MANDT AND BSEG.BUKRS=BKPF.BUKRS AND BSEG.GJAHR=BKPF.GJAHR AND BSEG.BELNR=BKPF.BELNR) WHERE HKONT='0000160000' AND AUGBL='' GROUP BY BSEG.MANDT, BSEG.BUKRS, BSEG.GJAHR, BSEG.SHKZG, HKONT, DAYS_BETWEEN(TO_DATE(BUDAT), TO_DATE(NOW())) ORDER BY COUNT(*) DESC;
Zur Erklärung des SQL Queries zerlegen wir dieses wieder in seine einzelnen Bestandteile:
Zunächst beginnt das Query wie üblich mit einer rein lesenden Abfrage (SELECT). Im direkten Anschluss werden die notwendigen Felder für die Analyse definiert: Mandant (MANDT), Buchungskreis (BUKRS), Geschäftsjahr (GJAHR), Soll/Haben Kennzeichen (SHKZG), Sachkonto der Hauptbuchhaltung (HKONT), das Alter des offenen Postens (AGE) und die Anzahl der offenen WE/RE Posten (COUNT(*) FROM BSEG):
SELECT BSEG.MANDT, BSEG.BUKRS, BSEG.GJAHR, SHKZG, HKONT, DAYS_BETWEEN(TO_DATE(BUDAT), TO_DATE(NOW()) ) AGE, COUNT(*) FROM BSEG
Das Buchungsdatum (BUDAT) findet sich leider nicht in der Tabelle des Belegsegments (BSEG), sondern in den Belegköpfen (BKPF). Daher wird ein Join über den Primärschlüssel auf die Tabelle BKPF benötigt:
JOIN BKPF ON (BSEG.MANDT=BKPF.MANDT AND BSEG.BUKRS=BKPF.BUKRS AND BSEG.GJAHR=BKPF.GJAHR AND BSEG.BELNR=BKPF.BELNR)
Um das richtige WE/RE Konto auszuwerten, muss das Ergebnis noch auf das entsprechende WE/RE Konto eingegrenzt werden. Die rot markierte Zahl stellt die Kontonummer des WE/RE Kontos da, die jeweils angepasst werden muss. Zudem sind nur diejenigen Posten von Interesse, die nicht ausgeglichen wurden (AUGBL=“):
WHERE HKONT='0000160000' AND AUGBL=''
Abschließend werden gleiche Zeilen der Ergebnismenge noch gruppiert und absteigend sortiert:
GROUP BY BSEG.MANDT, BSEG.BUKRS, BSEG.GJAHR, BSEG.SHKZG, HKONT, DAYS_BETWEEN(TO_DATE(BUDAT), TO_DATE(NOW())) ORDER BY COUNT(*) DESC;
Ein beispielhaftes Ergebnis sieht dann folgendermaßen aus:
Interessant sind sicherlich Posten, die länger als ein Monat (>=30 Tage) offen sind und erst recht Posten, die älter als mehrere Monate sind.
Wie kann ich mein WE/RE Konto aufräumen?
Wenn das WE/RE Konto viele offene veraltete Posten enthält, ist es aufwändig, das Konto aufzuräumen. Man müsste eigentlich alle Rechnungen und zugehörigen Wareneingänge abgleichen und dann jeweils einen Ausgleich vornehmen. Das wäre eine saubere Vorgehensweise. In der Praxis geht man mitunter so vor, dass man alle offenen Posten gegeneinander aufrechnet und dann einen großen Ausgleich bucht. Etwaige Differenzen Soll minus Haben werden dann in einer großen Summe bereinigt. Das entspricht zwar nicht dem Sinn und Zweck einer Offene-Posten Buchhaltung, führt aber zumindest zu geschlossenen Posten zum Zeitpunkt des Aufräumens. Wichtig wäre, dass der Prozess nach der Aufräumaktion dann sauber läuft, sonst beginnt die Verwahrlosung von vorn.
Wie der Indikator „Keine Auszifferung des WE/RE-Kontos“ entstanden ist
In einem der letzten Blog Artikel wurde die neue Prozessvisualisierung inklusive der Compliance Verstöße vorgestellt. Während eines Workshops ist unter der Verwendung der Prozessvisualisierung aufgefallen, dass es Prozesse gibt, die entweder nach dem Wareneingang enden, oder mit einer Rechnung beginnen. Beispielhaft sieht das dann folgendermaßen aus:
Aus der Abbildung wird klar ersichtlich, dass in dem Prozess weder eine Bestellung, noch ein Wareneingang vorhanden ist. Das bedeutet im gleichen Atemzug allerdings nicht, dass es diese nicht gibt, sondern die Referenz von dem Brutto-Rechnungseingang zur Bestellung fehlt.
„Warum ist das kritisch?“
… wird sich der ein oder andere vielleicht fragen. Werfen wir dazu mal einen Blick auf die Funktion des WE/RE Kontos an einem konkreten Beispiel:
Angenommen wir bestellen 10 Schrauben zu einem Stückpreis von je einem Euro, aber Peter Dübel liefert nur 8 Schrauben, dann entsteht effektiv eine Differenz von 2 Schrauben. Auf der Rechnung stehen allerdings wieder die 10 Schrauben und die Rechnung wird aufgrund der fehlenden Referenz auf den Wareneingang nur gegen die Bestellung abgeglichen, dann stimmt zwar der Stückpreis, aber die gelieferte Menge nicht:
Bestellung: 10 Schrauben
Wareneingang: 8 Schrauben
Rechnung: 10 Schrauben
Was denken Sie, welche Mengeneinheit ohne Bezug auf den Wareneingang wohl bezahlt wird?
Auf Grundlage dieser Erkenntnis habe ich den Indikator „Keine Auszifferung des WE/RE-Kontos“ entwickelt, der sich zurzeit im Testmodus / Beta-Status befindet.
Wenn Ihnen das alles zu technisch ist, dann können Sie mit einer entsprechenden Einstellung in zap Audit, das Ganze automatisch analysieren lassen. Melden Sie sich dazu gerne bei uns: