====== Programm 2031 – Umsätze und Mengen neu berechnen ====== **2031** (''CalcUmsatzPepGruppen'') berechnet aus ''KRVerkauf'', ''KRBons'' und Stammdaten mehrere Kostenrechnungsbestände neu. Es gibt keine Eingangsdatei; Laufparameter ist ''DATUM'' (Datumsmuster möglich). Der erste Reset setzt sieben ''Umsätze''-Felder ab ''DATUM'' auf 0 – **ohne SRC-/Systemfilter**. Die folgende Verkaufsberechnung verarbeitet überwiegend Aprocon A/R, nicht Bizerba B. Vor einem Lauf mit Bizerba-Daten die betroffenen Umsätze und den Nachlauf prüfen. ===== Aufrufkette ===== ''cSchnittKRApc.Calc_UmsatzPepGruppen'' ruft ''dbo.Calc_UmsatzPepGruppen_SP'' mit ''@DatVon'' und ''@FixedBeachten'' auf. Diese SP setzt ''Umsätze.Ist'', ''IstNetto'', ''IstNettoIntern'', ''EKPreis'', ''EkPreisIntern'', ''SollUmsatzBrutto'' und ''SollUmsatzNetto'' zurück. Ist ''SCHNITT_KR_UmsatzFixedBeachten'' aktiv, werden nur Zeilen mit ''IstFixed=0'' zurückgesetzt; andernfalls alle ab Datum. ''KRMengen'' wird ab Datum gelöscht, ohne diesen Schutz. Danach folgen in Reihenfolge ''Calc_UmsatzPepGruppen_Faktoren'', ''_P_SP'', ''_AR_SP'', ''_P2_SP'', ''_G_SP'', ''Calc_KRVerkaufFiliale'', ''Calc_UmsatzWGR_Fuellen'', ''Calc_UmsatzKGR_Fuellen'' und ''Calc_KundenWGR''. ''KRVerkaufUpdate''/2052 wird **nicht** aufgerufen. ===== Eingänge und Ziele ===== ^ Eingang ^ Verwendung ^ | ''KRVerkauf'' | Datum, Quelle, Belegart, Menge, Preise, Kunde und Kostenträger für Kosten, Soll und Ist. | | ''KRBons'' | Bon-/Kassenverdichtung; Storno, Abschluss, Preistyp, Filiale und Artikelzuordnung filtern. | | ''PepGruppen'', ''KRKunden'', ''KRKundenTypen'', ''KRKostenTräger'', ''KRWarenGruppen'', ''KRWarenwert'', ''Filialen'' | Gruppen-, Kunden-, Einheiten-, Preis- und Filialzuordnung. | ^ Ziel ^ Operation und wesentliche Felder ^ | ''Umsätze'' | UPDATE von Ist-/Netto-/Soll-/EK-Feldern; weitere Kassen- und Retourenfelder in Teil-SPs. Fehlende Tages-/Gruppenzeilen werden nicht angelegt. | | ''KRMengen'' | DELETE ab Datum und INSERT verdichteter Mengen. | | ''TEMP_KR_FaktorPreis'', ''TEMP_KR_FaktorPreisEK'' | Persistente, datenbankweit geteilte Tabellen: TRUNCATE und Neuaufbau. Keine lokalen ''#''-Tabellen. | | ''KRVerkaufFiliale'' | DELETE und INSERT/UPDATE von Soll, Ist, Kasse und Mengen; teils additive Fortschreibung. | | ''UmsatzWgr'', ''UmsatzKgr'' | DELETE und Neuverdichtung von Waren-/Kassengruppen. | | Kunden-Warengruppenbestände | Neuverdichtung in drei Tabellen; exakte Felder und Filter siehe Atlas. | ''DATUM'' begrenzt überwiegend nach unten, nicht nach oben. Faktoren nutzen zum Teil die letzten 90 Tage relativ zu ''GETDATE''. Einzelne Folgeschritte haben abweichende Zeit-/Quellfilter; es gibt keine dokumentierte Gesamttransaktion. ''IstKasse''- und Retourenfelder gehören nicht zum anfänglichen Sieben-Felder-Reset und können bei fehlender neuer Aggregatzeile stehen bleiben. WGR/Kunden-Mapping über ''Filialen.ApcID'' enthält nicht überall eine Systemkennung. ===== Einstellungen und Prüfung ===== ''SCHNITT_KR_UmsatzFixedBeachten'' steuert den Reset und Teile der Hauptberechnung; Retouren folgen nicht durchgängig. ''SQL_TIMEOUT'' begrenzt den äußeren SQL-Aufruf. Gemeinsame Basis: Log-/Mail-/Meldungsschalter und Laufparameter ''MANUELL'', ''SILENT'', ''MAILTO''. Kein Dateiformat. Technische Detailanalyse mit allen Feldbeziehungen: Git-Nexus ''pep4desktop/interfaces/by-id/2031.md''. Quellstand ''f1d82a003b62f2658f06eaa943dc685ab219bdf3'', statisch analysiert am 18.09.2026, am 25.09.2026 ins Wiki übernommen. **Keine Ausführung oder produktive Validierung.** [[schnittstellen:schnittstellen|Zur Übersicht]]