Benutzer-Werkzeuge

Webseiten-Werkzeuge


schnittstellen:2051

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

schnittstellen:2051 [2026/10/02 16:18] – MAIN-Analysen 15–17 veröffentlichen; Dokumentationsstand und Befunde trennen codexschnittstellen:2051 [2026/10/02 19:34] (aktuell) – MAIN-Restnacharbeit:48 neue Seiten,1014/6070 ersetzen, lokale Motor-Teilanalyse vervollständigen;2 Quellenlücken offen codex
Zeile 1: Zeile 1:
 ====== Schnittstelle 2051: Kostenrechnungsstatistik neu erstellen ====== ====== Schnittstelle 2051: Kostenrechnungsstatistik neu erstellen ======
  
-Dokumentation ins Wiki übernommen am **02.10.2026**. Das ist keine Laufzeitabnahme. +Dokumentiert / statisch geprüft: **2026-10-02**. Statisch dokumentiert einschließlich der nachgearbeiteten lokalen Folgeketten; Nutzerprüfung offen. Keine Schnittstelle ausgeführt.
- +
-Diese technische Referenz beschreibt die Eingänge, Datenwirkung und Ausgänge dieser Kennung im statisch geprüften Desktop-Quellenstand. Nutzerprüfung offen. +
- +
- +
-Dokumentiert / statisch geprüft: **2026-10-02**. Teilweise dokumentiert: direkter Statistikersatz und Adapter-/SQL-Eingänge belegt; vollständiger Formel-/View-/UDF-Folgegraph offen (Q16); Nutzerprüfung offen. Keine Schnittstelle ausgeführt.+
  
 ===== Identität und Quellenstand ===== ===== Identität und Quellenstand =====
Zeile 24: Zeile 19:
 Kein direkter EXEC einer Fach-SP. TableAdapter-SELECTs (X/D) rufen die UDFs KRKostenLaden, KRMengenLaden→KRMengenWoche, KRWarenWertLaden und PepGruppenWerte auf. KRPreise liest positive KRWerte.Wert, MAX je RefID/Variante für ausgewählte Daten. KRWarenWertLaden nutzt maximalen gültigen KRWarenwert.Preis * FaktorWarenwert; Einheit aus Kostenträger, sonst WarenGruppen.StandardEinheit. PepGruppenWerte normalisiert IstNetto/IstNettoIntern/EKPreis/EKPreisIntern auf eine Sieben-Tage-Woche für aktive InFilialUmsatz-Gruppen. **2051 liest damit Umsätze**, schreibt dort aber im belegten Pfad nicht. Kein direkter EXEC einer Fach-SP. TableAdapter-SELECTs (X/D) rufen die UDFs KRKostenLaden, KRMengenLaden→KRMengenWoche, KRWarenWertLaden und PepGruppenWerte auf. KRPreise liest positive KRWerte.Wert, MAX je RefID/Variante für ausgewählte Daten. KRWarenWertLaden nutzt maximalen gültigen KRWarenwert.Preis * FaktorWarenwert; Einheit aus Kostenträger, sonst WarenGruppen.StandardEinheit. PepGruppenWerte normalisiert IstNetto/IstNettoIntern/EKPreis/EKPreisIntern auf eine Sieben-Tage-Woche für aktive InFilialUmsatz-Gruppen. **2051 liest damit Umsätze**, schreibt dort aber im belegten Pfad nicht.
  
-StatistikSpeichern2: temp #KRStatWerte (ID→Ziel.KRStatDaten) → SqlBulkCopy (ordinal, keine Mappings) → INSERT KRStatWerte(KRStatDaten,RefID,Datenart,Wert,Menge,Variante,RefArt,RefID2). Kopf KRStatDaten mit ID=Preiskategorie wird danach angelegt/aktualisiert (UmsatzVon/UmsatzBis,Beschreibung=AUTO,ts,UserID=0). RefArt1=Kostenstelle,5=Objekt; bei RefArt2/4 ist RefID der Kostenträger, CB/CE verwenden DatenArt=Baustein und CE.RefID2=Kostenart; CWn/Export-Zeilen verwenden Datenart−1/−2. Mengenzuordnung und vollständige Werteformeln sind noch nicht abschließend analysiert; kein vollständiger Feld-/Einstellungsausschluss aus diesem Teilindex.+StatistikSpeichern2: temp #KRStatWerte (ID→Ziel.KRStatDaten) → SqlBulkCopy (ordinal, keine Mappings) → INSERT KRStatWerte(KRStatDaten,RefID,Datenart,Wert,Menge,Variante,RefArt,RefID2). Kopf KRStatDaten mit ID=Preiskategorie wird danach angelegt/aktualisiert (UmsatzVon/UmsatzBis,Beschreibung=AUTO,ts,UserID=0). RefArt1=Kostenstelle,5=Objekt; bei RefArt2/4 ist RefID der Kostenträger, CB/CE verwenden DatenArt=Baustein und CE.RefID2=Kostenart; CWn/Export-Zeilen verwenden Datenart−1/−2. Mengenzuordnung und Werteformeln sind im folgenden Nacharbeitsabschnitt aufgelöst.
  
-===== Befunde und Teilanalysegrenze =====+===== Befunde und Prüfgrenzen =====
  
 ⚠ Globaler positiver Statistikreset ohne Transaktion; Fehler können alte Werte löschen und nur einige Kategorien ersetzen. Bulk-Flush prüft **dt.Columns.Count>75000** statt Rows.Count (Tabelle hat8 Spalten); erwartete Zwischenflushes fehlen. Int32-Arbeitsschlüssel gegenüber BigInt-SQL können überlaufen. Haupt-/Speicherkommandos und BulkCopy nutzen ungesetzte Providerdefault-Timeouts, TableAdapter SQL_TIMEOUT. Kopf erst nach Wertinsert. Update0653 enthielt einen Kopf-FK, Update0866 entfernt ihn ausdrücklich; kein zwingender FK-Fehler gegen vollständig migrierten Stand. Installationsstand Q02. ⚠ Globaler positiver Statistikreset ohne Transaktion; Fehler können alte Werte löschen und nur einige Kategorien ersetzen. Bulk-Flush prüft **dt.Columns.Count>75000** statt Rows.Count (Tabelle hat8 Spalten); erwartete Zwischenflushes fehlen. Int32-Arbeitsschlüssel gegenüber BigInt-SQL können überlaufen. Haupt-/Speicherkommandos und BulkCopy nutzen ungesetzte Providerdefault-Timeouts, TableAdapter SQL_TIMEOUT. Kopf erst nach Wertinsert. Update0653 enthielt einen Kopf-FK, Update0866 entfernt ihn ausdrücklich; kein zwingender FK-Fehler gegen vollständig migrierten Stand. Installationsstand Q02.
  
-Q16: vorhandener cKRDaten-Formelmotor, View KRKRKostenTrägerErweitert und fnVarcharToList-Folgekette noch vollständig auflösen/indizieren. **Kein fehlender Statistik-Einstiegscode**. Direkte/benannte UDF-Eingänge und alle direkten Fachausgänge unten gesichert; weitere unindizierte Motorfelder bleiben unbekannt.+===== Nachgearbeiteter Formel- und Eingangsgraph (Q16 geschlossen) ===== 
 + 
 +Erstellen2 → cKRBerechnung.Laden → cKRDaten.AuswertungLaden, Kosten-/Objekttabellen, BWAFüllen und MengenTabelleFüllen. Es werden nur Ladeadapter und StatistikSpeichern2 ausgeführt; die daneben vorhandenen SpeichernKostenTräger-/Varianten-/Anteile- und alten MengenTabelleFüllenAlt-/StatistikSpeichern-Funktionen sind hier nicht erreichbar. 
 + 
 +Kosten: KRWerte.Wert/KRDaten.Wochen, multipliziert mit explizitem Kostenstellenanteil/Gesamtsumme oder Gemeinkostenanteil/Gesamtsumme und danach Objektanteil/Objektgesamtsumme. Nenner0 setzt Wert0; Wochen0 hat keinen entsprechenden Schutz. Separate Kostenarten bilden Kosten-/Gewinn-/Zwischensummen. Objekt-BWA liest Wochen-Umsätze und EK; Deckung=extern+intern−Belastung, Ergebnis=Deckung−Kosten. FaktorWarenwert gilt beim externen Objekt-EK, aber NICHT in gleicher Weise bei CG-/Gesamtsummen: deren EK wird ohne Faktor addiert. Daher können Objekt- und Gruppensummen bei Faktor≠1 auseinanderlaufen. 
 + 
 +Mengen: KRMengenWoche normalisiert auf sieben Tage; KRMengenLaden liefert fehlenden Produkt-/Gruppenkombinationen Ersatzmenge0,0001, verteilt Stammrest(1−Summe Variantenanteile) und Varianten. MengenTabelleFüllen nimmt nur Menge>0. Bei Kostenträger100: Menge×Anteil/Gesamt×AnteilMenge, sonst Menge×Anteil×AnteilMenge. Erster Pass summiert Arbeitsmenge×Baustein.Faktor je Kostenstelle; zweiter Pass verteilt Kosten proportional. CB erhält Bausteinkosten je Mengeneinheit, CG/CD/CE erhalten Gruppen-/Kostenartdetails. CB wird je Row zugewiesen, nicht addiert. CWn=Preis/Einheit, CWe=Preis; Warenwert erhöht Summe, ProduktEinheit×Summe ergibt Einheit. Der #If False-Preisdelta-Pfad ist inaktiv; Laden der Preisquelle ist damit keine belegte aktive Preisdelta-Wirkung. 
 + 
 +KR_SUMMEN_LADENALLE=False lässt NichtVerteilen-Kostenträger aus der Stammtabelle; True lädt sie. Varianten können fehlende Parent-Zeilen treffen. Export-Filter hängt an PreisKategorie.ApcID>0 und Zuordnung: nur zugeordnete Produkte mit Warenwert und je ausgewählter Gruppe Bausteinwert; nicht zugeordnete Zeilen werden bei CanExport aus TabelleP entfernt. Das Flag wird als Datenart−2 gespeichert, keine Exportdatei aus2051. 
 + 
 +Speicher: RefArt1 Kostenstelle/5 Objekt mit Menge0; RefArt2 CB und CWn; RefArt4 CE-Detailelemente, CWn oder Export. CE.RefID2=Kostenart, Datenart im aktiven Code jedoch CE-Spaltensuffix (Kostenstelle), nicht pauschal Baustein. Mengensuche verwendet denselben CB/CE-Suffix als KRKostenStellenBaustein-Key; CE ist Kostenstelle und kann daher falsch/gar nicht treffen. Menge dann0, sonst Menge×Anteil/100×AnteilMenge. Varianten werden bei RefArt4 erhalten, RefArt2-Bausteinzeilen setzen VarianteNULL. BWA-Mengen-/Schnittzeilen−10/−11/−20/−21 fließen ebenfalls als Datenart in die Kostenstellenstatistik. 
 + 
 +KRKRKostenTrägerErweitert liest Kostenträger/Waren-/Kostenträgergruppen und ersetzt Einheit<=0 durch StandardEinheit oder0; keine Schreibwirkung der View. fnVarcharToList splittet Kommalisten und konvertiert auch das letzte/leere Teilstück implizit zu BigInt; keine Validierung/Filterbereinigung. SQL-CTEs sind keine persistenten Tabellen. Statische lokale Feld-/Einstellungsanalyse abgeschlossen; produktive DDL und fachliche Formelerwartung bleiben Nutzerprüfung (Q02).
  
 ===== Einstellungen und gemeinsame Nebenwirkungen ===== ===== Einstellungen und gemeinsame Nebenwirkungen =====
Zeile 38: Zeile 45:
 ^ Beziehung ^ Schlüssel / Variable ^ Default ^ Einflussweg ^ Wirkung ^ Beleg ^ ^ Beziehung ^ Schlüssel / Variable ^ Default ^ Einflussweg ^ Wirkung ^ Beleg ^
 | 2051-S001 | ''SQL_TIMEOUT'' / ''SQLTimeOut'' | 60 | ZW → SQL/adapter | TableAdapter-Kommando-Timeout; direkte Haupt-/Speicherkommandos dagegen ohne ZW-Timeout | SET,D | | 2051-S001 | ''SQL_TIMEOUT'' / ''SQLTimeOut'' | 60 | ZW → SQL/adapter | TableAdapter-Kommando-Timeout; direkte Haupt-/Speicherkommandos dagegen ohne ZW-Timeout | SET,D |
-| 2051-S002 | ''KR_SUMMEN_FAKTORWARENWERT'' / ''KR_SUMMEN_FAKTORWARENWERT'' | 1 | ZW → Laden → KRWarenWertLaden(@Faktor) | Multiplikator des gültigen Warenwertpreises; Formelweiterverwendung Q16 | SET,B,C,WW |+| 2051-S002 | ''KR_SUMMEN_FAKTORWARENWERT'' / ''KR_SUMMEN_FAKTORWARENWERT'' | 1 | ZW → Laden → KRWarenWertLaden(@Faktor) | Multiplikator des gültigen Warenwertpreises; Kosten-/Warenwertformeln siehe Nacharbeit | SET,B,C,WW |
  
 +^ Beziehung ^ Schlüssel / Variable ^ Default ^ Einflussweg ^ Wirkung ^ Beleg ^
 +| 2051-S003 | ''KR_SUMMEN_LADENALLE'' / ''KR_SUMMEN_LADENALLE'' | False | MengenTabelleErstellen→ZeilenErstellenKostenTräger | NichtVerteilen-Kostenträger trotzdem einbeziehen; verändert Produkt-/Statistikbestand | SET,D |
  
 Defaults sind keine Livewerte. Melde-/Datei-/DB-Wirkungen sind nicht atomar. Defaults sind keine Livewerte. Melde-/Datei-/DB-Wirkungen sind nicht atomar.
Zeile 97: Zeile 106:
 | 2051-D048 | ''KRKostenstellenGruppen.ID'' | SELECT | Wochenmengen-Gruppenparameter | KRMengenWoche | W | | 2051-D048 | ''KRKostenstellenGruppen.ID'' | SELECT | Wochenmengen-Gruppenparameter | KRMengenWoche | W |
 | 2051-D049 | ''KRKostenstellenGruppen.MengeGesamt'' | SELECT | Wochenmengen-Gruppenparameter | KRMengenWoche | W | | 2051-D049 | ''KRKostenstellenGruppen.MengeGesamt'' | SELECT | Wochenmengen-Gruppenparameter | KRMengenWoche | W |
-| 2051-D050 | ''KRDatenQuellen.ID'' | SELECT | Alternative Mengenquellen-Gruppenliste | fnVarcharToList weiter Q16 | W | +| 2051-D050 | ''KRDatenQuellen.ID'' | SELECT | Alternative Mengenquellen-Gruppenliste | fnVarcharToList-Kommaliste, siehe Nacharbeit | W | 
-| 2051-D051 | ''KRDatenQuellen.KRKostenStellenGruppe'' | SELECT | Alternative Mengenquellen-Gruppenliste | fnVarcharToList weiter Q16 | W |+| 2051-D051 | ''KRDatenQuellen.KRKostenStellenGruppe'' | SELECT | Alternative Mengenquellen-Gruppenliste | fnVarcharToList-Kommaliste, siehe Nacharbeit | W |
 | 2051-D052 | ''KRDaten.ID'' | SELECT | Wert/Wochen als Menge | ausgewählte Mengenliste | W | | 2051-D052 | ''KRDaten.ID'' | SELECT | Wert/Wochen als Menge | ausgewählte Mengenliste | W |
 | 2051-D053 | ''KRDaten.KRDatenQuelle'' | SELECT | Wert/Wochen als Menge | ausgewählte Mengenliste | W | | 2051-D053 | ''KRDaten.KRDatenQuelle'' | SELECT | Wert/Wochen als Menge | ausgewählte Mengenliste | W |
Zeile 105: Zeile 114:
 | 2051-D056 | ''KRWerte.RefID'' | SELECT | Alternative Menge | ausgewählte Mengenliste | W | | 2051-D056 | ''KRWerte.RefID'' | SELECT | Alternative Menge | ausgewählte Mengenliste | W |
 | 2051-D057 | ''KRWerte.Wert'' | SELECT | Alternative Menge | ausgewählte Mengenliste | W | | 2051-D057 | ''KRWerte.Wert'' | SELECT | Alternative Menge | ausgewählte Mengenliste | W |
-| 2051-D058 | ''KRStatWerte.KRStatDaten'' | INSERT | Temp/Bulkwerte aus berechneten Kosten-/Produktzeilen | jede berechnete Kategorie; Formelvollständigkeit Q16 | C | +| 2051-D058 | ''KRStatWerte.KRStatDaten'' | INSERT | Temp/Bulkwerte aus berechneten Kosten-/Produktzeilen | jede berechnete Kategorie; Formeln und Zuordnung siehe Nacharbeit | C | 
-| 2051-D059 | ''KRStatWerte.RefID'' | INSERT | Temp/Bulkwerte aus berechneten Kosten-/Produktzeilen | jede berechnete Kategorie; Formelvollständigkeit Q16 | C | +| 2051-D059 | ''KRStatWerte.RefID'' | INSERT | Temp/Bulkwerte aus berechneten Kosten-/Produktzeilen | jede berechnete Kategorie; Formeln und Zuordnung siehe Nacharbeit | C | 
-| 2051-D060 | ''KRStatWerte.Datenart'' | INSERT | Temp/Bulkwerte aus berechneten Kosten-/Produktzeilen | jede berechnete Kategorie; Formelvollständigkeit Q16 | C | +| 2051-D060 | ''KRStatWerte.Datenart'' | INSERT | Temp/Bulkwerte aus berechneten Kosten-/Produktzeilen | jede berechnete Kategorie; Formeln und Zuordnung siehe Nacharbeit | C | 
-| 2051-D061 | ''KRStatWerte.Wert'' | INSERT | Temp/Bulkwerte aus berechneten Kosten-/Produktzeilen | jede berechnete Kategorie; Formelvollständigkeit Q16 | C | +| 2051-D061 | ''KRStatWerte.Wert'' | INSERT | Temp/Bulkwerte aus berechneten Kosten-/Produktzeilen | jede berechnete Kategorie; Formeln und Zuordnung siehe Nacharbeit | C | 
-| 2051-D062 | ''KRStatWerte.Menge'' | INSERT | Temp/Bulkwerte aus berechneten Kosten-/Produktzeilen | jede berechnete Kategorie; Formelvollständigkeit Q16 | C | +| 2051-D062 | ''KRStatWerte.Menge'' | INSERT | Temp/Bulkwerte aus berechneten Kosten-/Produktzeilen | jede berechnete Kategorie; Formeln und Zuordnung siehe Nacharbeit | C | 
-| 2051-D063 | ''KRStatWerte.Variante'' | INSERT | Temp/Bulkwerte aus berechneten Kosten-/Produktzeilen | jede berechnete Kategorie; Formelvollständigkeit Q16 | C | +| 2051-D063 | ''KRStatWerte.Variante'' | INSERT | Temp/Bulkwerte aus berechneten Kosten-/Produktzeilen | jede berechnete Kategorie; Formeln und Zuordnung siehe Nacharbeit | C | 
-| 2051-D064 | ''KRStatWerte.RefArt'' | INSERT | Temp/Bulkwerte aus berechneten Kosten-/Produktzeilen | jede berechnete Kategorie; Formelvollständigkeit Q16 | C | +| 2051-D064 | ''KRStatWerte.RefArt'' | INSERT | Temp/Bulkwerte aus berechneten Kosten-/Produktzeilen | jede berechnete Kategorie; Formeln und Zuordnung siehe Nacharbeit | C | 
-| 2051-D065 | ''KRStatWerte.RefID2'' | INSERT | Temp/Bulkwerte aus berechneten Kosten-/Produktzeilen | jede berechnete Kategorie; Formelvollständigkeit Q16 | C |+| 2051-D065 | ''KRStatWerte.RefID2'' | INSERT | Temp/Bulkwerte aus berechneten Kosten-/Produktzeilen | jede berechnete Kategorie; Formeln und Zuordnung siehe Nacharbeit | C |
 | 2051-D066 | ''KRStatDaten.ID'' | SELECT | Vorhandener Statistik-Kopf | ID=Preiskategorie | C | | 2051-D066 | ''KRStatDaten.ID'' | SELECT | Vorhandener Statistik-Kopf | ID=Preiskategorie | C |
 | 2051-D067 | ''KRStatDaten.ID'' | INSERT | KategorieID,DATVON,DATBIS,AUTO,jetzt,0 | Kopf fehlt; nach Werteinsert | C | | 2051-D067 | ''KRStatDaten.ID'' | INSERT | KategorieID,DATVON,DATBIS,AUTO,jetzt,0 | Kopf fehlt; nach Werteinsert | C |
Zeile 142: Zeile 151:
 | 2051-D093 | ''#KRStatWerte.RefID2'' | SELECT | INSERT in persistente KRStatWerte | jede Kategorie | C | | 2051-D093 | ''#KRStatWerte.RefID2'' | SELECT | INSERT in persistente KRStatWerte | jede Kategorie | C |
  
 +^ Beziehung ^ Tabelle.Feld ^ Operation ^ Datenfluss / Verwendung ^ Bedingung ^ Beleg ^
 +| 2051-D094 | ''KRKostenstellenBausteine.ID'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D095 | ''KRKostenstellenBausteine.KRKostenStelle'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D096 | ''KRKostenstellenBausteine.Bezeichnung'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D097 | ''KRKostenstellenBausteine.Faktor'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D098 | ''KRKostenTrägerAnteil.KRKostenTräger'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D099 | ''KRKostenTrägerAnteil.KRKostenStellenBaustein'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D100 | ''KRKostenTrägerAnteil.Anteil'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D101 | ''KRKostenTrägerAnteil.Variante'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D102 | ''KRKostenTrägerVarianten.KRKostenTräger'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D103 | ''KRKostenTrägerVarianten.Variante'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D104 | ''KRKostenTrägerVarianten.Bezeichnung'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D105 | ''KRKostenTrägerVarianten.Anteil'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D106 | ''KRKostenArten.ID'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D107 | ''KRKostenArten.Bezeichnung'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D108 | ''KRKostenArten.SeparatAusweisen'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D109 | ''KRKostenstellenObjekte.ID'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D110 | ''KRKostenstellenObjekte.Bezeichnung'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D111 | ''KRKostenstellenObjekte.PepGruppe'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D112 | ''KRKostenstellenObjekte.KRKostenStellenGruppe'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D113 | ''KRKostenstellenGruppen.ID'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D114 | ''KRKostenstellenGruppen.Bezeichnung'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D115 | ''KRKostenKonten.ID'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D116 | ''KRKostenKonten.KRDatenquelle'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D117 | ''KRKostenKonten.KRKostenArt'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D118 | ''KRKostenKontenAnteil.KRKostenKonto'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D119 | ''KRKostenKontenAnteil.KRDatenquelle'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D120 | ''KRKostenKontenAnteil.KRKostenstelle'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D121 | ''KRKostenKontenAnteil.Anteil'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D122 | ''KRKostenstellenObjekteAnteil.KRKostenKonto'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D123 | ''KRKostenstellenObjekteAnteil.KRDatenquelle'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D124 | ''KRKostenstellenObjekteAnteil.KRKostenstellenObjekt'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D125 | ''KRKostenstellenObjekteAnteil.Anteil'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D126 | ''KRKostenTräger.ID'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D127 | ''KRKostenTräger.Bezeichnung'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D128 | ''KRKostenTräger.Einheit'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D129 | ''KRKostenTräger.NichtVerteilen'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D130 | ''KRKostenTräger.KRWarenGruppe'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D131 | ''KRKostenTräger.Skonto'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D132 | ''KRKostenTräger.KRKostenTrägerGruppe'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D133 | ''KRKostenTräger.Rabatt'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D134 | ''KRKostenTräger.KRKostenstellenBaustein'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D135 | ''KRKostenTräger.MatchCode'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D136 | ''KRKostenTräger.Leergut'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D137 | ''KRKostenTräger.Vorlage'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D138 | ''KRKostenTräger.BezeichnungVorlage'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D139 | ''KRKostenTräger.AusVorlage'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D140 | ''KRWarenGruppen.ID'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D141 | ''KRWarenGruppen.Bezeichnung'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D142 | ''KRWarenGruppen.StandardEinheit'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D143 | ''KRWarenGruppen.NichtVerteilen'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D144 | ''KRKostenTrägerGruppen.ID'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
 +| 2051-D145 | ''KRKostenTrägerGruppen.Bezeichnung'' | SELECT | Ladeadapter / Formel-, Filter- oder Viewmetadaten; keine Stammspeicherung | Erstellen2→Laden→Auswertung/Mengentabelle | D,X,VIEW |
  
 ===== Teststatus und Pflege ===== ===== Teststatus und Pflege =====
  
-Keine Laufzeit-/Live-Schema-/Lieferformat-Abnahme, keine Codekorrektur. Q02 gilt für kundenspezifische Trigger/Constraints/DLLs/Jobs; weitere Grenzen siehe oben und Fragen (interne Referenz). Nicht indizierte Folgefelder einer Teilanalyse sind unbekannt, nicht wirkungslos.+Keine Laufzeit-/Live-Schema-/Lieferformat-Abnahme, keine Codekorrektur. Q02 gilt für kundenspezifische Trigger/Constraints/DLLs/Jobs; weitere Grenzen siehe oben und Fragen (interne Referenz). Externe Betriebs-/Schemaabweichungen sind nicht durch die statische Analyse ausgeschlossen.
  
 +===== Gemeinsame Nebenwirkungen BASE =====
  
 +Block17 ergänzt explizit5314/5315/5316/5317/5318/5319/5323/5324/5325/5326/5327/5328/6000/6006/6007/6008/6009. Alle nutzen BASE-Start/Ende;6001/6002/6003/6004/6005 verwenden LEGACY statt BASE. Fachverträge jeID, keine automatische gemeinsame Kunden-/Dateiwirkung.
  
 +Stand: 2026-10-02 · Commit ''f1d82a003b62f2658f06eaa943dc685ab219bdf3''. Gilt ausdrücklich für Block 01: 1012, 1013, 1016, 1017, 1018, 1019, 1079, 1080, 1082, 2016 sowie Block 02: 2011, 2012, 2014, 2015, 2017, 2018, 2019, 2033, 2034, 2041 sowie Block 03: 1057, 1058, 1059, 1060, 2030, 2035, 2040, 2042, 2044 sowie Block 04: 2053, 2054, 1081, 2031, 2052 sowie Block 05: 2045, 2050 sowie Block 06: 3044, Block 08: 1010, 1011, 1015 und Block 10: 1047, 1051 sowie Block 12: 1064. 2024, 1020, 1030, 1048, 1049, 1050, 1052, 1053, 1054, 1061, 1062 und 1063 verwenden diese Basis nicht. 1078 enthält die gleichversionierten Beziehungen weiterhin in seiner Einzelbeschreibung; keine Doppelzählung für 1078. Kein Test-/Deploymentnachweis.
  
-===== Gemeinsame Nebenwirkungen BASE =====+Block 13 ergänzt ausdrücklich 1065,1066,1068,1069,1071,1072,1074: aktive Implementierungen bzw. Hilfsinstanzen erben BASE und rufen Start/Ende auf. Bei 1074 ist AusführungEnde nur bei unbehelligtem Abschluss erreichbar; Ressourcen-/DB-/SP-Fehler können es überspringen. 1067/1070/1073 verwenden direkte LEGACY-Meldungen. 
 + 
 +Block14 ergänzt ausdrücklich 1104,1105,1106,1108,1109,1150,1210,1214,1215,1222. Aktive Klassen/Instanzen erben BASE und starten/beenden den Lauf; ungefangene Fehler können das Ende überspringen. Nur gemeinsame Rückmeldung, keine Gesamttransaktion oder erfolgreiche Fachwirkung. 1203 hat keinen BASE-/LEGACY-Pfad. 
 + 
 +Block15 ergänzt ausdrücklich 2025/2026/2027/2049 mit erreichbarem Instanz-Start/Ende. Die aktiven Veraltet-Stubs 2028/2029/2032/2046/2047/2048 nutzen trotz Klassenvererbung nur den direkten LEGACY-Meldepfad; keine BASE-Ausführung. 2022 hat keinen Delegate. 
 + 
 +==== Reichweite und Wiederverwendung ==== 
 + 
 +Block16 ergänzt ausdrücklich 2051/2055/3043/3512/3513/3520/3521/3522. WebZerf2 nutzt Multi-Start/Ende mit BASE je Teilstufe; IsMultiSchnitt reduziert Dialoge, nicht Mail-/API-Wirkungen. Nach Fehlern können weitere Teilstufen starten. 3011 ohne Delegate;3031/3032/3041/3042/3060/3500 nur LEGACY. 
 + 
 +Die ausdrücklich zugeordneten Programmregistrierungen mit ihren Implementierungen erben cSchnitt_Basis und rufen AusführungStart/AusführungEnde auf. Gemeinsam geprüfte Basisklasse/Registrierung; Mail-/Logging-/API-Details aus der dokumentierten Pilotprüfung desselben Commits wiederverwendet. Nicht automatisch auf jede zukünftige Schnittstelle übertragen: Erreichbarkeit, Overrides, Sonderpfade und Quellenstand jeweils prüfen. 
 + 
 +Start setzt Status/Protokoll zurück. Fehlerstatus steigt nur (0→1→2). Fehlerfrei() ist True nur bei Status 0. SILENT unterdrückt die Startanzeige und beendet AusführungEnde sofort. MANUELL wird über Schlüsselinzidenz erkannt, unterdrückt direkte Mail und API-sendmail, nicht die API-Meldung selbst. MAILTO leer → MAIL_SCHNITTSTELLETO. Bei nicht lokal gefangener Exception kann der Abschluss ausfallen (besonders 1079/1082); 2016 hat einen getrennten Rückgabe-/Fehlerstatusbefund; 2017 reicht ebenfalls den Instanzstatus nicht als Shared-Rückgabe durch. 1057–1060 besitzen untypisierte Shared-Einstiege ohne Return (Nothing) und übernehmen Modul nicht; Instanz-Abschluss separat betrachten. Die acht Exporte aus Block 02/03 verwenden cSchnittExport mit Start/Ende. 
 + 
 +Erfolg: OnSuccess; Fehlerstatus 1: OnSuccess ODER OnError; Stoppstatus 2: OnError. Mail nur nicht MANUELL und nicht SILENT; API wird sonst unabhängig vom sendmail-Schalter aufgerufen. Direkte Mail speichert Body/Outbox in eigener Transaktion (keine Fachimporttransaktion). SendOutbox(5) kann ältere fällige Schnittstellenmails versenden und deren Anhänge lesen; diese Fachpfade erzeugen selbst keine Anhänge. SMTP-Testadresse kann Zieladresse ersetzen. Mail-/API-Ergebnis ist kein verlässlicher Bestandteil von Fehlerfrei().
  
 ==== Einstellungen ==== ==== Einstellungen ====
Zeile 170: Zeile 249:
 | BASE-S014 | ''GLOBAL_LOGLEVEL'' / ''GLOBAL_LOGLEVEL'' | 50 | Logging | Persistenz bei InfoLevel>=Schwelle; Start/Erfolg51, ImportError102 | BASE:INIT, BASE:LOG, BASE:SET | | BASE-S014 | ''GLOBAL_LOGLEVEL'' / ''GLOBAL_LOGLEVEL'' | 50 | Logging | Persistenz bei InfoLevel>=Schwelle; Start/Erfolg51, ImportError102 | BASE:INIT, BASE:LOG, BASE:SET |
 | BASE-S015 | ''GLOBAL_LOGLEVELEVLOG'' / ''GLOBAL_LOGLEVELEVENTLOG'' | 0 | Logging | Eventlog bei Level>Schwelle, Schwelle>0 und Level<200 | BASE:INIT, BASE:LOG, BASE:SET | | BASE-S015 | ''GLOBAL_LOGLEVELEVLOG'' / ''GLOBAL_LOGLEVELEVENTLOG'' | 0 | Logging | Eventlog bei Level>Schwelle, Schwelle>0 und Level<200 | BASE:INIT, BASE:LOG, BASE:SET |
- 
- 
  
 ==== Datenbeziehungen ==== ==== Datenbeziehungen ====
Zeile 223: Zeile 300:
 | BASE-D044 | ''tblUser.Name'' | SELECT | fnUserId: min(UserID) WHERE Name=RIGHT(SUSER_NAME(),25), sonst 0 | Mail-/Logpersistenz | BASE:USER | | BASE-D044 | ''tblUser.Name'' | SELECT | fnUserId: min(UserID) WHERE Name=RIGHT(SUSER_NAME(),25), sonst 0 | Mail-/Logpersistenz | BASE:USER |
 | BASE-D045 | ''tblUser.UserID'' | SELECT | fnUserId: min(UserID) WHERE Name=RIGHT(SUSER_NAME(),25), sonst 0 | Mail-/Logpersistenz | BASE:USER | | BASE-D045 | ''tblUser.UserID'' | SELECT | fnUserId: min(UserID) WHERE Name=RIGHT(SUSER_NAME(),25), sonst 0 | Mail-/Logpersistenz | BASE:USER |
- 
  
 ==== Weitere Ausgänge und Grenzen ==== ==== Weitere Ausgänge und Grenzen ====
Zeile 230: Zeile 306:
  
 Bekannte gemeinsame Befunde aus Pilot: Outbox-Retry bei Status 20 setzt mStatus=-1 ohne WHERE; Retry-CASE ab Status 12 ohne ELSE → NULL. Nicht korrigiert. Keine Kundendaten oder Zugangswerte übertragen. Bekannte gemeinsame Befunde aus Pilot: Outbox-Retry bei Status 20 setzt mStatus=-1 ohne WHERE; Retry-CASE ab Status 12 ohne ELSE → NULL. Nicht korrigiert. Keine Kundendaten oder Zugangswerte übertragen.
- 
- 
  
 ===== Quellenverzeichnis ===== ===== Quellenverzeichnis =====
Zeile 254: Zeile 328:
 | U747 | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/Sqlfiles/PEP4Update/update_0747.sql|Sqlfiles/PEP4Update/update_0747.sql]] | | U747 | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/Sqlfiles/PEP4Update/update_0747.sql|Sqlfiles/PEP4Update/update_0747.sql]] |
 | U866 | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/Sqlfiles/PEP4Update/update_0866.sql|Sqlfiles/PEP4Update/update_0866.sql]] | | U866 | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/Sqlfiles/PEP4Update/update_0866.sql|Sqlfiles/PEP4Update/update_0866.sql]] |
 +| VIEW | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/Sqlfiles/PEP4Functions/KRKRKostenTrägerErweitert.sql|Sqlfiles/PEP4Functions/KRKRKostenTrägerErweitert.sql]] |
 +| LIST | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/Sqlfiles/PEP4Functions/fnVarcharToList.sql|Sqlfiles/PEP4Functions/fnVarcharToList.sql]] |
 | BASE:BASE | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/PEP4/cSchnittstellen/Programme/Schnittstellen/cSchnitt_Basis.vb|PEP4/cSchnittstellen/Programme/Schnittstellen/cSchnitt_Basis.vb]] | | BASE:BASE | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/PEP4/cSchnittstellen/Programme/Schnittstellen/cSchnitt_Basis.vb|PEP4/cSchnittstellen/Programme/Schnittstellen/cSchnitt_Basis.vb]] |
 | BASE:MAIL | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/PEP4/cKommunikation/cMail.vb|PEP4/cKommunikation/cMail.vb]] | | BASE:MAIL | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/PEP4/cKommunikation/cMail.vb|PEP4/cKommunikation/cMail.vb]] |
Zeile 261: Zeile 337:
 | BASE:USER | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/Sqlfiles/PEP4Functions/fnUserId.sql|Sqlfiles/PEP4Functions/fnUserId.sql]] | | BASE:USER | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/Sqlfiles/PEP4Functions/fnUserId.sql|Sqlfiles/PEP4Functions/fnUserId.sql]] |
 | BASE:DOC | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/PEP4/cHilfsprogramme/cDocument.vb|PEP4/cHilfsprogramme/cDocument.vb]] | | BASE:DOC | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/PEP4/cHilfsprogramme/cDocument.vb|PEP4/cHilfsprogramme/cDocument.vb]] |
- 
  
 Siehe auch: [[schnittstellen:schnittstellen|Übersicht der Schnittstellen]]. Keine Ausführung oder Codekorrektur. Siehe auch: [[schnittstellen:schnittstellen|Übersicht der Schnittstellen]]. Keine Ausführung oder Codekorrektur.
  
schnittstellen/2051.1790950730.txt.gz · Zuletzt geändert: von codex

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki