Bericht über Unveränderlichkeitsprüfung von Daten

In einigen Ländern verlangen die Steuerbehörden von den Unternehmen, dass Sie beweisen, dass ihre gebuchten Buchungsposten unveränderlich sind, d. h., dass ein einmal gebuchter Posten nicht mehr geändert werden kann.

Zu diesem Zweck erstellt Odoo mithilfe des SHA-256-Algorithmus einen eindeutigen Fingerabdruck für jede festgeschriebene Buchung zu erstellen. Dieser Fingerabdruck wird als Hash bezeichnet. Der Hash wird erzeugt, indem die wesentlichen Daten eines Eintrags (die Werte der Felder name, date, journal_id, company_id, debit, credit, account_id und partner_id“) zusammengefügt und in die SHA-256-Hash-Funktion eingegeben werden, die dann eine Zeichenkette fester Größe (256 Bit) ausgibt. Die Hash-Funktion ist deterministisch (die gleiche Eingabe erzeugt immer die gleiche Ausgabe): jede noch so kleine Änderung an den ursprünglichen Daten würde den resultierenden Hash-Wert vollständig verändern. Daher wird der SHA-256-Algorithmus unter anderem häufig für die Überprüfung der Datenintegrität verwendet.

Außerdem wird der Hash des vorherigen Eintrags immer zum nächsten Eintrag hinzugefügt, um eine Hash-Kette zu bilden. Damit wird sichergestellt, dass nicht nachträglich ein neuer Eintrag zwischen zwei festgeschriebenen Buchungen hinzugefügt wird, da dies die Hash-Kette unterbrechen würde.

Bemerkung

Die mit dem SHA-256-Algorithmus erzeugten Hashes sind theoretisch nicht eindeutig, da es eine endliche Anzahl möglicher Werte gibt. Diese Zahl ist jedoch außergewöhnlich hoch: 2²⁵⁶, was viel größer ist als die Anzahl der Atome im bekannten Universum. Aus diesem Grund werden Hashes in der Praxis als einzigartig angesehen.

Unveränderlichkeitsfunktionen

Die Unveränderlichkeitsfunktionen können aktiviert werden, indem Sie die Option Gebuchte Posten mit Hash festschreiben für beliebige Journale aktivieren oder mithilfe des Assistenten zum Festschreiben von Buchungen.

  • In der Formularansicht der Journalbuchungen werden zwei Indikatoren hinzugefügt. Sie zeigen an, ob die Buchung festgeschrieben ist oder nicht.

    • Ein oder (Sperrsymbol) neben dem Status Gebucht.

    • Das Kästchen Festgeschrieben im Reiter Weitere Informationen.

  • Der Filter Nicht festgeschrieben ist in den Listenansichten für Journalbuchungen und Buchungszeilen verfügbar. Er kann verwendet werden, um gebuchte Journalposten zu finden, die noch nicht festgeschrieben sind.

  • Die Option zum Öffnen des Assistenten zum Festschreiben von Buchungen wird im Menü Buchhaltung angezeigt.

Gebuchte Posten mit Hash festschreiben

Um die Hash-Funktion für ein bestimmtes Journal zu aktivieren, gehen Sie zu Buchhaltung –> Konfiguration > Journale. Öffnen Sie ein Verkaufs-, Einkaufs- oder Sonstiges-Journal, gehen Sie zum Reiter Erweiterte Einstellungen und aktivieren Sie Gebuchte Posten mit Hash festschreiben. Journale, für die die Funktion aktiviert ist, werden als „eingeschränkt“ bezeichnet.

Um den Hash einer Buchung zu berechnen, ruft Odoo die Vorgängereinträge der Kette ab (d. h. die Einträge mit demselben Sequenzpräfix) und hasht sie fortlaufend vom letzten gehashten Eintrag bis zum neuen Eintrag, der gehasht werden soll.

Warnung

Sobald Sie einen Posten in einem eingeschränkten Journal gebucht haben, können Sie die Funktion nicht mehr deaktivieren und auch keinen festgeschriebenen Posten mehr bearbeiten.

Assistent zum Festschreiben von Buchungen

Sie können auch den Asisstenten Buchungen festschreiben verwenden, um alle Journalbuchungen in allen Journalen bis zu einem bestimmten Datum festzuschreiben.

Bemerkung

Der Assistent arbeitet unabhängig von den Journaleinstellungen und Journaltypen.

Um ihn zu öffnen, aktivieren Sie den developer mode, gehen Sie zu Buchhaltung ‣ Buchhaltung und klicken Sie auf Buchungen festschreiben. Wenn die :ref:`Unveränderlichkeitsfunktionen <data-inalterability/inalterability_features>`aktiviert sind, sind sie auch außerhalb des Fehlerbeseitigungsmodus sichtbar.

Um Buchungen festzuschreiben, wählen Sie ein Datum aus, bis zu dem alle Buchungen festgeschrieben werden sollen, und klicken Sie auf Buchungen festschreiben.

Warnung

Sie können Buchungen nach der Festschreibung nicht mehr bearbeiten.

Bemerkung

Es kann vorkommen, dass Buchungen, die nach dem ausgewählten Datum liegen, festgeschrieben sind. Dies ist möglich, da die Hash-Kette dem Sequenzpräfix entspricht, geordnet nach der Sequenznummer.

Berichtsdownload

Um den Bericht über die Prüfung der Daten auf Unveränderlichkeit herunterzuladen, gehen Sie zu Buchhaltung ‣ Konfiguration ‣ Einstellungen ‣ Berichtswesen und klicken Sie auf Bericht über die Unveränderlichkeitsprüfung von Daten herunterladen.

Der erste Abschnitt des Berichts gibt einen Überblick über alle Journalsequenzpräfixe, die gehashte Einträge enthalten. In der Spalte Eingeschränkt können Sie sehen, ob für ein Journal die Option Gebuchte Posten mit Hash festschreiben aktiviert ist (V) oder nicht (X). Die Spalte Prüfung gibt an, ob alle Einträge korrekt gehasht sind.

Konfigurationsbericht für zwei Journale

Der zweite Abschnitt zeigt Ihnen ein detaillierteres Ergebnis der Datenkonsistenzprüfung für jedes gehashte Journalsequenzpräfix. Sie können den ersten gehashten Eintrag und den dazugehörigen Hash sowie den letzten gehashten Eintrag und den dazugehörigen Hash einsehen.

Bericht über Konsistenzprüfung von Daten für ein Journal