5 Unveränderbarkeit und Protokollierung
5.1 Grundprinzipien
| Prinzip | Umsetzung in GASTO Hotel |
|---|---|
| Keine Löschung fiskalischer Daten | Rechnungen, Zahlbelege, Kassenbucheinträge und Abschlüsse werden nicht gelöscht; Korrekturen erfolgen als Storno-/Gegenbuchung |
| Kein „stilles“ Überschreiben | Jede Änderung an historisierten Tabellen wird mit Vorher-/Nachher-Stand protokolliert |
| Nachvollziehbarkeit der Person | Protokolleinträge enthalten den angemeldeten Anwendungsbenutzer, den Datenbankbenutzer und die Herkunftsadresse |
| Nachvollziehbarkeit des Zeitpunkts | Alle Protokolleinträge tragen einen Zeitstempel mit Zeitzone |
| Fiskale Absicherung | Kassenvorgänge werden zusätzlich über die TSE signiert (siehe Kassensicherheit) |
5.2 Historisierung auf Datenbankebene
Für alle als historisierungspflichtig gekennzeichneten Tabellen legt der Server beim
Start automatisch eine zugehörige Historientabelle (<tabelle>_hist) sowie einen
Datenbank-Trigger an. Der Trigger schreibt bei jedem INSERT, UPDATE und DELETE
einen Protokollsatz. Erfasst werden:
| Feld | Inhalt |
|---|---|
| Zeitstempel | Zeitpunkt der Änderung (mit Zeitzone) |
| Transaktions-ID | Datenbanktransaktion, in der die Änderung erfolgte |
| Operation | INSERT, UPDATE oder DELETE |
| Datenbankbenutzer | technischer Benutzer der Datenbankverbindung |
| Anwendungsbenutzer | angemeldeter GASTO-Benutzer |
| Client-Adresse / Anwendungsname | Herkunft der Änderung |
| Primärschlüssel | eindeutige Kennung des geänderten Datensatzes |
| Alter Zustand / neuer Zustand | vollständiger Datensatz vor und nach der Änderung |
| Geänderte Felder | Liste der tatsächlich geänderten Felder |
Da die Protokollierung im Datenbanksystem (Trigger) erfolgt, wird sie auch dann ausgelöst, wenn Daten nicht über die Oberfläche, sondern direkt geändert würden.
Historisiert werden unter anderem: Adressen/Gäste, Reservierungen und ihre Positionen, Zimmer, Zimmerbelegungen, Rechnungen, Zahlbelege, Kassenbucheinträge, Leistungen, Artikel, Arrangements, Kategorien, Steuersätze, Zahlungsarten, Preislisten und Benutzer.
5.3 Programmierprotokoll (Kassennachschau)
Für § 146a AO / KassenSichV stellt GASTO Hotel ein auswertbares Programmierprotokoll bereit (Schnittstellen → Finanzamt). Es wertet die Historientabellen der kassensicherheitsrelevanten Stammdaten für ein wählbares Berichtsjahr aus:
- Artikel, Leistungen, Arrangements, Zimmerkategorien, Häuser, Zimmer
- Steuersätze, Sonderzeiten
- Benutzer
- Kassenbuch-Vorlagen
Je Zeile werden Datum/Uhrzeit, Benutzer, Bereich, Aktion (Neuanlage/Änderung/Löschung), betroffenes Objekt sowie bei Änderungen das geänderte Feld mit altem und neuem Wert ausgewiesen. Technische Felder sowie sicherheitsrelevante Felder (Kennwörter, Token) werden ausgefiltert. Das Protokoll wird als PDF erzeugt und kann bei einer Kassennachschau unmittelbar vorgelegt werden. Sind keine Änderungen erfolgt, weist der Bericht dies ausdrücklich aus.
Siehe Anwenderdokumentation: Finanzamt.
5.4 Weitere Protokolle
| Protokoll | Inhalt | Speicherung |
|---|---|---|
| Anwendungsprotokoll | Fachliche Ereignisse mit Bezug zu Reservierung, Adresse, Zimmer oder Rechnung, inkl. Benutzer, IP-Adresse und Ereignistyp | Datenbanktabelle |
| E-Mail-Protokoll | Versendete Nachrichten mit Empfängern, Betreff, Status, Fehlern und Anhangbezug | Datenbanktabelle |
| Schnittstellenprotokolle | Übertragungen zum/vom Channelmanager, Ergebnisse der Finanzbuchhaltungsexporte, Kassenschnittstellen-Vorgänge | Datenbanktabellen |
| Serverprotokoll | Technische Meldungen des Anwendungsservers (Start/Stopp, Fehler, TSE-Ereignisse, Sicherungsläufe) | Protokolldateien des Servers bzw. Container-Log |
| Sicherungsprotokoll | Ablauf und Ergebnis jedes Sicherungs- und Wiederherstellungslaufs | Protokollpuffer des Servers, Anzeige in der Oberfläche |
5.5 Zugriff auf die Protokolle
- Historien einzelner Datensätze sind für berechtigte Benutzer in der Oberfläche einsehbar (Änderungsverlauf zum Vorgang).
- Das Programmierprotokoll ist für Buchhaltung, Geschäftsführung und Administration zugänglich.
- Server- und Sicherungsprotokolle sind Administratoren vorbehalten.
- Protokolldaten sind über die Oberfläche nicht änderbar oder löschbar.
Der Betrieb legt fest, wer die Protokolle in welchem Turnus auswertet (z. B. tägliche Kontrolle nicht signierter Belege, monatliche Durchsicht des Programmierprotokolls) und wie das Ergebnis dieser Kontrollen dokumentiert wird (internes Kontrollsystem).