====== Schnittstelle 1101: Produktionsmengen und Artikelbereiche aus Aprocon ====== Diese technische Referenz beschreibt die Eingänge, Ausgänge und aktiven Codepfade von **Produktionsmengen und Artikelbereiche aus Aprocon**. Sie ist keine Anleitung zur ungeprüften Ausführung. Stand: **02.10.2026**, Desktop-Commit ''f1d82a003b62f2658f06eaa943dc685ab219bdf3''. Statisch dokumentiert; Nutzerprüfung offen. Kein Import, Datenbank- oder HTTP-Test. Dokumentiert / statisch geprüft: **2026-10-02**. Statisch dokumentiert; Nutzerprüfung offen. Keine Schnittstelle ausgeführt. ===== Identität und Quellenstand ===== ''eProgramm.ImpProduktionApc = 1101''. Aktive feste Registrierung → ''cSchnittProduktionAprocon.Ausführen''; Projekteinschluss bestätigt (E,P,PRJ). Active=True, InAutomatik=True und ManuellerAufruf=True (Registrierung bzw. Klassendefault); NurAufServer=True. Keine Aussage über eingerichtete Automatik oder produktive Nutzung. ===== Zweck und Ablauf ===== Aprocon-Artikel/Produktionschargen/Aufträge → FremdAbt, BereichArtikel und ProduktionsMenge. Kein File, keine SP. Importdatum aus SCHNITT_APC_IMP_AB: Datum direkt, Zahl als Now.AddDays(-Wert), sonst heute. Globales TRUNCATE BereichArtikel und DELETE ProduktionsMenge ab Datum erfolgen **vor** der Prüfung, ob Gruppen Datenfelder besitzen. 1. Artikelnummer/Bezeichnung/PLU laden; PepGruppen mit Datenfeld<>'' und FremdAbt laden. 2. Externe Feldwerte.Wert über Gruppendatenfeld lesen: '*'-Trennung für Abteilungsbezeichnung/LF. FremdAbt anfügen/aktualisieren; neue ID über @@IDENTITY. 3. Feldwerte.SatzNummer ordnet Artikel zu. BereichArtikel neu füllen; unbekannter Artikel bekommt Ersatzbezeichnung/PLU0. 4. SRC='PC': Chargen ab Datum. Vor 01.02.2015 Menge, danach SollMenge; Artikel.Gewicht multiplizieren, falls >0 und !=1. 5. SRC beginnt 'AU': Liefermengen aus Aufträgen/Positionen aggregieren, BelegArt6 positiv,7 negativ; zusätzlich PepGruppenID. ===== Regeln und Befunde ===== **1101-F01:** Keine Datenfeld-Gruppe kann nach Reset zu True ohne Wiederbefüllung führen. **1101-F02:** Die nach AU geparste Liste wird nicht zur Selektion verwendet; Abfrage nutzt immer BelegArt6/7. Kein automatischer Umsatz-Folgelauf. ODBC unbegrenzt, SQL-Standard30s; keine Transaktion/Archivierung. U129: BereichArtikel.ID/ProduktionsMenge.ID Identity, FK BereichArtikel.FremdAbt→FremdAbt.ID ohne Löschkaskade. Schlüssel werden nicht geändert; FK ist Constraintprüfung. Externe DDL/Einheiten Q13. Test: SRC-Mischung, leeres Mapping und Datumsgrenze. ===== Systemeinstellungen und gemeinsame Nebenwirkungen ===== Gemeinsames Profil: LEGACY (interne Referenz). ^ Beziehung ^ Schlüssel / Variable ^ Default ^ Einflussweg ^ Wirkung ^ Beleg ^ | 1101-S001 | ''SCHNITT_APC_DSN'' / ''SCHNITT_AproconDSN'' | leer | ODBC-Eingang | Verbindung zum externen Aprocon-DSN; kein DSN-Wert gespeichert | B,SET | | 1101-S002 | ''SCHNITT_APC_IMP_AB'' / ''SCHNITT_AproconImportAb'' | 30 | Importfenster | Datum oder Tage rückwärts; ungültig→heute | B,SET | Nur belegte Profilzuordnung; Fachdaten und Rückmeldung sind nicht atomar. Defaults sind keine Livewerte. ===== Feldbeziehungen ===== Unqualifizierte Fachobjekte in der Anmeldedatenbank; ''Import.dbo'' ausdrücklich Importdatenbank. Dateifelder stehen separat im Dateivertrag. ^ Beziehung ^ Tabelle.Feld ^ Operation ^ Datenfluss / Verwendung ^ Bedingung ^ Beleg ^ | 1101-D001 | ''Aprocon.Artikel.Nummer'' | SELECT | Artikelmapping und Gewichtsfaktor | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D002 | ''Aprocon.Artikel.Bezeichnung'' | SELECT | Artikelmapping und Gewichtsfaktor | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D003 | ''Aprocon.Artikel.PLU'' | SELECT | Artikelmapping und Gewichtsfaktor | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D004 | ''Aprocon.Artikel.Gewicht'' | SELECT | Artikelmapping und Gewichtsfaktor | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D005 | ''PepGruppen.PEPGruppenID'' | SELECT | Gruppenmapping; SRC-PC/AU | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D006 | ''PepGruppen.DatenFeld'' | SELECT | Gruppenmapping; SRC-PC/AU | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D007 | ''PepGruppen.SRC'' | SELECT | Gruppenmapping; SRC-PC/AU | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D008 | ''Aprocon.Feldwerte.Datenfeld'' | SELECT | Bereichsmetadaten/Artikelzuordnung | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D009 | ''Aprocon.Feldwerte.Wert'' | SELECT | Bereichsmetadaten/Artikelzuordnung | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D010 | ''Aprocon.Feldwerte.SatzNummer'' | SELECT | Bereichsmetadaten/Artikelzuordnung | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D011 | ''FremdAbt.ID'' | SELECT | Zuordnung; nach Upsert erneut laden | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D012 | ''FremdAbt.PepGruppe'' | SELECT | Zuordnung; nach Upsert erneut laden | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D013 | ''FremdAbt.AbtBez'' | SELECT | Zuordnung; nach Upsert erneut laden | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D014 | ''FremdAbt.PepGruppe'' | INSERT/UPDATE | Gruppen-ID, '*'-getrennte Bezeichnung/LF | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D015 | ''FremdAbt.AbtBez'' | INSERT/UPDATE | Gruppen-ID, '*'-getrennte Bezeichnung/LF | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D016 | ''FremdAbt.LF'' | INSERT/UPDATE | Gruppen-ID, '*'-getrennte Bezeichnung/LF | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D017 | ''FremdAbt.ID'' | IDENTITY/SELECT | @@IDENTITY nach INSERT | Neue Fremdabteilung | B | | 1101-D018 | ''BereichArtikel.— Zeilen'' | TRUNCATE | Gesamte Tabelle | Vor Gruppenprüfung | B | | 1101-D019 | ''BereichArtikel.FremdAbt'' | INSERT | Feldwerte/Artikel; Bezeichnungsparameter max50 | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D020 | ''BereichArtikel.Artikel'' | INSERT | Feldwerte/Artikel; Bezeichnungsparameter max50 | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D021 | ''BereichArtikel.Bezeichnung'' | INSERT | Feldwerte/Artikel; Bezeichnungsparameter max50 | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D022 | ''BereichArtikel.PLU'' | INSERT | Feldwerte/Artikel; Bezeichnungsparameter max50 | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D023 | ''ProduktionsMenge.— Zeilen'' | DELETE | Datum>=Importdatum, alle Quellen | Vor Neubefüllung | B | | 1101-D024 | ''Aprocon.ProduktionsChargen.Artikel'' | SELECT | Datum>=Importdatum; Sollmenge ab1.2.2015 | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D025 | ''Aprocon.ProduktionsChargen.Datum'' | SELECT | Datum>=Importdatum; Sollmenge ab1.2.2015 | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D026 | ''Aprocon.ProduktionsChargen.Menge'' | SELECT | Datum>=Importdatum; Sollmenge ab1.2.2015 | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D027 | ''Aprocon.ProduktionsChargen.SollMenge'' | SELECT | Datum>=Importdatum; Sollmenge ab1.2.2015 | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D028 | ''Aprocon.Auftraege.Nummer'' | SELECT | Belegart6/7; LieferDatum>=Importdatum | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D029 | ''Aprocon.Auftraege.LieferDatum'' | SELECT | Belegart6/7; LieferDatum>=Importdatum | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D030 | ''Aprocon.Auftraege.Belegart'' | SELECT | Belegart6/7; LieferDatum>=Importdatum | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D031 | ''Aprocon.Auftragspositionen.Auftrag'' | SELECT | Join Auftrag=Nummer; Aggregation | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D032 | ''Aprocon.Auftragspositionen.Artikel'' | SELECT | Join Auftrag=Nummer; Aggregation | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D033 | ''Aprocon.Auftragspositionen.Liefermenge'' | SELECT | Join Auftrag=Nummer; Aggregation | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D034 | ''ProduktionsMenge.Artikel'' | INSERT | PC: Chargenmenge*Gewicht; AU: signierte SUM(Liefermenge) | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D035 | ''ProduktionsMenge.Datum'' | INSERT | PC: Chargenmenge*Gewicht; AU: signierte SUM(Liefermenge) | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D036 | ''ProduktionsMenge.Menge'' | INSERT | PC: Chargenmenge*Gewicht; AU: signierte SUM(Liefermenge) | Aktiver Pfad; kein Laufzeitnachweis | B | | 1101-D037 | ''ProduktionsMenge.PepGruppenID'' | INSERT | AU-Gruppen-ID; PC setzt Spalte nicht und erhält DDL-Default0 | AU-Pfad | B | ===== Teststatus und Pflege ===== Keine Laufzeit-/Live-Schema-/Lieferformat-Abnahme. Fachbefunde und Grenzen siehe oben und Fragen (interne Referenz); kundenspezifische Trigger/Constraints, DLLs und Jobs bleiben Q02. Nutzerprüfung offen. [[schnittstellen:schnittstellen|Schnittstellenübersicht]] ===== Gemeinsame Rückmeldung ===== Direkte Dialog-/Info-/Logpfade, kein cSchnitt_Basis-Mail/API/Outbox. GLOBAL_LOGLEVEL (Default50) und GLOBAL_LOGLEVELEVLOG (Default0, VB GLOBAL_LOGLEVELEVENTLOG) steuern Datei-/DB-/Eventlogging; Details der Fachfehler stehen oben. Keine Livewerte dokumentiert. ===== Quellen je Datei ===== Repository: seegerstefan/pep4desktop, master, obiger Commit. Je Datei ein Quellenlink; Kürzel in den Tabellen. Private Git-Quellen setzen Zugriffsrechte voraus. ^ Kürzel ^ Quelldatei am geprüften Commit ^ | E | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/PEP4/ZW/Allgemein.vb|PEP4/ZW/Allgemein.vb]] | | P | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/PEP4/cSchnittstellen/Programme/cProgramme.vb|PEP4/cSchnittstellen/Programme/cProgramme.vb]] | | PRJ | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/PEP4/cSchnittstellen/cSchnittstellen.vbproj|PEP4/cSchnittstellen/cSchnittstellen.vbproj]] | | SET | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/PEP4/ZW/Einstellungen/cEinstellungenZw.vb|PEP4/ZW/Einstellungen/cEinstellungenZw.vb]] | | B | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/PEP4/cSchnittstellen/Programme/Schnittstellen/Aprocon/cSchnittProduktionAprocon.vb|PEP4/cSchnittstellen/Programme/Schnittstellen/Aprocon/cSchnittProduktionAprocon.vb]] | | U129 | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/Sqlfiles/PEP4Update/update_0129.sql|Sqlfiles/PEP4Update/update_0129.sql]] | | U147 | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/Sqlfiles/PEP4Update/update_0147.sql|Sqlfiles/PEP4Update/update_0147.sql]] | ===== Offene Abnahme ===== Externe Liefer-/API-Verträge und installierte Migrationen sind nicht bestätigt. Vor einem Test die beschriebenen Datenrisiken in einer isolierten Umgebung klären. Bei1214/1215 sind weitere Calc-/CalcPep-Feldwirkungen ausdrücklich noch nicht vollständig analysiert. [[schnittstellen:schnittstellen|Übersicht aller Schnittstellen]]