====== Schnittstelle 1019 – Kassenumsatz inklusive KLS übernehmen ====== Das Programm **1019** kopiert gespeicherte Kassenumsätze inklusive KLS in bestehende Tagesumsätze. Danach berechnet es abgeleitete Gruppen und Stundenwerte. Es ruft in diesem Pfad kein Aprocon ab und liest keine Datei. Die Folgeprozedur liest den gesamten aktuellen Bestand von ''SCHNITT_Umsatz''. Sie kann ''UmsätzeIstStunde'' ab dessen frühestem Datum löschen und neu aufbauen – unabhängig vom gewählten ''DATUM''. 1019 befüllt dieses Staging selbst nicht. Prüfe den Bestand vor einem Testlauf. ===== Eingang und Ablauf ===== ''DATUM'' ist die einschließlich geltende Untergrenze ohne registrierten Standardwert. PEP4 wertet deutsche Datumsangaben, Tagesversätze und Datumsmuster aus; einige Quartalsmuster sind im untersuchten Code fehlerhaft. Eine Eingangs- oder Ausgangsdatei gibt es nicht. ''dbo.TRANS_KasseKLSToUmsatz'' liest ''Umsätze.IstKasseKLS'' und ''IstKasseKLSNetto'' und aktualisiert damit ''Umsätze.Ist'' und ''IstNetto''. Die Hauptkopie betrifft nur vorhandene Zeilen ab ''DATUM'' für PEP-Gruppen mit ''SRC'' A oder R. Sie legt keine Tageszeilen an. Anschließend läuft ''spCalcUmsatzIst(DATUM, GETDATE())''. Die Folgeprozedur liest ''PepGruppen.AusPepGruppenUmsatz'' und gültige Zuordnungen aus ''UmsKstGr'' (''Kst'', ''Gr'', ''Prozent'', ''von'', ''bis2''). Sie aktualisiert ''Umsätze.Ist'' und ''Kassierdauer'' für abgeleitete Gruppen. Danach liest sie ''SCHNITT_Umsatz.Datum'', ''Kostenstelle'' und ''PreisBrutto'' und löscht/füllt ''UmsätzeIstStunde''. Stundenwerte werden ohne Zuordnungs-Prozentfaktor gebildet. ===== Einstellungen ===== ^ Einstellung ^ Code-Default ^ Wirkung ^ | ''SCHNITT_KR_UmsatzFixedBeachten'' | ''True'' | Schützt bei ''True'' die Hauptkopie auf ''IstFixed=0''. Bei ''False'' kann sie fixierte Zeilen treffen. Die Folgeprozedur prüft ihre Zielzeilen unabhängig davon mit ''IstFixed=0''. | | ''SQL_TIMEOUT'' | 60 | Timeout des äußeren SQL-Aufrufs. | | ''GLOBAL_LOGLEVEL'', ''GLOBAL_LOGLEVELEVLOG'' | 50, 0 | Protokollierung. | Die gemeinsame Basis kann abhängig von ''MAIL_SCHNITTSTELLEONSUCCESS'', ''MAIL_SCHNITTSTELLEONERROR'', ''SCHNITT_MELDUNG_SchnittstelleOnSuccess'' und ''SCHNITT_MELDUNG_SchnittstelleOnError'' Rückmeldungen senden. Der Mailpfad verwendet gegebenenfalls ''MAIL_SCHNITTSTELLETO'', ''MAIL_SMTP_SERVER'', ''MAIL_USER'', ''MAIL_PASS'', ''MAIL_USEDEFAULTCREDENTIALS'', ''MAIL_SSL'', ''MAIL_TESTADRESSE'', ''MAIL_FROM'' und ''MAIL_FROM_NAME''. ''MANUELL'' und ''SILENT'' begrenzen Rückmeldungen. Diese Werte ändern keine Umsatzfelder. ===== Ergebnis und Grenzen ===== Die Hauptkopie hat keine obere Datumsgrenze; die Summengruppenberechnung endet bei ''GETDATE()''. Die Stundenneubildung kann außerhalb dieses Intervalls wirken. Mehrere Zeitstempel derselben Stunde können einen Schlüsselkonflikt verursachen. Eine gemeinsame Transaktion fehlt; ein späterer Fehler kann einen Teilstand hinterlassen. Vergleiche Tages- und Stundenwerte getrennt. ===== Technische Referenz ===== ^ Merkmal ^ Wert ^ | Programmkennung | ''1019'' / ''TransUmsatzKasseKLSToUmsatz'' | | Einstieg | ''cSchnittKRApc.Trans_KasseKLSToUmsatz'' | | Fachliche SQL-Kette | ''dbo.TRANS_KasseKLSToUmsatz'' → ''spCalcUmsatzIst'' | | Fachliche Ausgänge | UPDATE ''Umsätze.Ist'', ''IstNetto'', ''Kassierdauer''; DELETE/INSERT ''UmsätzeIstStunde'' | | Fachliche Quellen | ''Umsätze.IstKasseKLS'', ''IstKasseKLSNetto''; ''PepGruppen''; ''UmsKstGr''; ''SCHNITT_Umsatz'' | ===== Siehe auch ===== * [[schnittstellen:1018|Kassenumsatz ohne KLS übernehmen (1018)]] * [[schnittstellen:schnittstellen|Übersicht der dokumentierten Schnittstellen]] ===== Prüfstand ===== Am 25.09.2026 aus der statischen Analyse des Quellcommits ''f1d82a003b62f2658f06eaa943dc685ab219bdf3'' übernommen. Analyse vom 18.09.2026; kein Lauf oder produktiver Datenbankstand bestätigt.