====== Schnittstelle 3040 – Istumsatz aus Datei übernehmen ====== Die Schnittstelle **3040** ersetzt ''Umsätze.Ist'' in vorhandenen Tageszeilen. Sie legt keine Umsatzzeilen an und ruft keine aktive fachliche Folgeprozedur auf. Der UPDATE prüft weder ''IstFixed'' noch die Herkunftskennung der PEP-Gruppe. Auch fixierte Zeilen können überschrieben werden. Es gibt keine gemeinsame Transaktion für alle Dateizeilen; teste den Import mit einer Datenbankkopie. ===== Eingabedatei ===== Der Parameter ''PFAD'' verlangt eine vorhandene CSV-, TXT- oder PEP-Datei. Der Parser verwendet den Systemzeichensatz, Semikolon, Leerraumkürzung und Anführungszeichen für eingeschlossene Felder. Es gibt keinen ausdrücklichen Kopfzeilen-Skip. Akzeptiert werden nur Zeilen mit Satzart ''3040'' und mindestens vier Feldern. ^ Position ^ Inhalt ^ Verarbeitung ^ | 1 | Satzart | Exakt ''3040''. | | 2 | Gruppe | ''CLng''; Ziel ''Umsätze.GruppenID''. | | 3 | Datum | ''CDate''; Uhrzeit bleibt erhalten. | | 4 | Istumsatz | ''CDbl''; Ziel ''Umsätze.Ist''. Ein leeres Feld wird übersprungen, nicht als 0 geschrieben. | Datum und Zahl sind kulturabhängig. Die Datei wird weder gelöscht noch archiviert. ===== Datenfluss und Ergebnis ===== PEP4 lädt die akzeptierten Werte in ''#Umsatz(Gruppe, Datum, Ist)''. Der anschließende ''UPDATE'' verbindet Gruppe und vollständigen Zeitstempel mit ''Umsätze'' und ersetzt ''Ist''. Existiert keine passende Zeile, bleibt die Datenbank an dieser Stelle unverändert. Doppelte Datei-Schlüssel haben keinen gesicherten letzten Gewinner. Die temporäre Tabelle wird danach geleert. ''spCalcUmsatzIst'' und ''SpCalcUmsatzFiliale'' stehen nur auskommentiert im Code und werden nicht aufgerufen. Nach einem Parserfehler kann der bis dahin geladene Teilbestand trotzdem geschrieben werden. ''Ausführen'' liefert auch nach einem erfolgreichen Fachimport ''False''. Vergleiche daher ''Umsätze.Ist'' vor und nach dem Lauf statt nur die Rückmeldung zu bewerten. ===== Technische Referenz ===== ^ Merkmal ^ Wert ^ | Programmkennung | ''3040'' / ''ImpUmsatzIst'' | | Einstieg | ''cSchnittUmsatzIst.Ausführen'' | | Fachlicher Eingang | Datei, vorhandene ''Umsätze.GruppenID'' und ''Umsätze.Datum'' | | Fachlicher Ausgang | UPDATE ''Umsätze.Ist''; kein Fach-INSERT/-DELETE | | Fachliches SQL | Direkter UPDATE über ''#Umsatz''; keine aktive fachliche SP | | Systemeinstellungen | ''GLOBAL_LOGLEVEL'' und ''GLOBAL_LOGLEVELEVLOG'' nur für Protokolle (Code-Defaults 50/0); kein belegter ''SQL_TIMEOUT''-Einfluss. | ===== Siehe auch ===== * [[schnittstellen:3030|Planumsatz aus Datei übernehmen (3030)]] * [[schnittstellen:3050|Umsatzkommentar aus Datei übernehmen (3050)]] * [[schnittstellen:schnittstellen|Übersicht der dokumentierten Schnittstellen]] ===== Prüfstand ===== Am 25.09.2026 statisch gegen den Quellcommit ''f1d82a003b62f2658f06eaa943dc685ab219bdf3'' geprüft. Kein Importlauf oder produktives Schema bestätigt.