Inhaltsverzeichnis
Schnittstelle 3030 – Planumsatz aus Datei übernehmen
Die Schnittstelle 3030 ersetzt Umsätze.Umsatz in bereits vorhandenen Tageszeilen. Anschließend berechnet dbo.spCalcUmsatzPlan Summengruppen im ermittelten Importzeitraum neu. Es werden keine neuen Umsatzzeilen angelegt.
Die Nachberechnung ist nicht auf Gruppen der Datei begrenzt. Sie kann importierte Summengruppenwerte erneut ersetzen und andere Summengruppen auf 0 setzen. Der direkte Datei-UPDATE prüft weder IstFixed noch UmsatzFixed; die Stored Procedure prüft nur IstFixed=0. Teste den Lauf zuerst mit einer Datenbankkopie.
Eingabedatei
PFAD verlangt eine vorhandene Datei. Der Dialogfilter lässt CSV-, TXT- und PEP-Dateien zu. Der Parser liest mit Systemzeichensatz, Semikolon, Leerraumkürzung und Anführungszeichen für eingeschlossene Felder. Eine Kopfzeile wird nicht ausdrücklich übersprungen. Nur Zeilen mit Satzart 3030 und mindestens vier Feldern werden übernommen.
| Position | Inhalt | Verarbeitung |
|---|---|---|
| 1 | Satzart | Exakt 3030. |
| 2 | Gruppe | CLng, für Umsätze.GruppenID. |
| 3 | Datum | CDate; Zeitanteil bleibt erhalten. |
| 4 | Planumsatz | CDbl, für Umsätze.Umsatz. |
Zahlen und Datumswerte werden kulturabhängig gelesen. Ungültige Zeilen können still übersprungen werden. Die Datei bleibt liegen; sie wird nicht archiviert.
Datenfluss und SQL
PEP4 lädt akzeptierte Zeilen in die lokale Tabelle #Umsatz(Gruppe, Datum, UPlan). Ein UPDATE verbindet Gruppe und den vollständigen Datum-Wert mit vorhandenen Umsätze-Zeilen und ersetzt dort Umsatz. Ohne passende Zielzeile passiert nichts; ein Zeitanteil kann den Treffer verhindern. Doppelte Schlüssel in der Datei haben keinen zuverlässig bestimmten „letzten Gewinner“.
Nach dem Leeren der temporären Tabelle ruft PEP4 dbo.spCalcUmsatzPlan mit dem aus eingelesenen Zeilen ermittelten Intervall auf. Die Prozedur liest PepGruppen.AusPepGruppenUmsatz und gültige Zuordnungen aus UmsKstGr (Kst, Gr, von, bis2, Prozent). Sie schreibt für Summengruppen erneut Umsätze.Umsatz als gewichtete Summe; ohne Quelle wird 0 gesetzt. Weitere fachliche SPs oder Systemeinstellungsabfragen sind dort nicht belegt.
Ergebnis und Grenzen
Es gibt keine gemeinsame Transaktion über Datei-UPDATE und Nachberechnung. Ein Fehler der Prozedur rollt den ersten Schritt nicht zurück. Auch nach einem abgefangenen Parserfehler kann ein Teilbestand aktualisiert werden. Die Intervallstartwerte 31.12.2099 und 01.01.1999 machen leere Dateien oder Daten außerhalb dieser Grenzen problematisch. Ausführen liefert im untersuchten Code unabhängig vom fachlichen Ergebnis False; prüfe die Werte direkt.
Technische Referenz
| Merkmal | Wert |
|---|---|
| Programmkennung | 3030 / ImpUmsatzPlan |
| Einstieg | cSchnittUmsatzPlan.Ausführen |
| Fachliche Eingänge | Datei; bestehende Umsätze; PepGruppen; UmsKstGr |
| Fachlicher Ausgang | UPDATE von Umsätze.Umsatz; kein INSERT/DELETE von Umsatzzeilen |
| Stored Procedure | dbo.spCalcUmsatzPlan |
| Systemeinstellungen | GLOBAL_LOGLEVEL und GLOBAL_LOGLEVELEVLOG nur für Protokolle (Code-Defaults 50/0); keine direkte fachliche ZW-Einstellung. |
Siehe auch
Prüfstand
Am 25.09.2026 statisch gegen den Quellcommit f1d82a003b62f2658f06eaa943dc685ab219bdf3 geprüft. Kein Importlauf oder produktives Schema bestätigt.