Inhaltsverzeichnis

2023 — KaDeWe-externes Personal und vierwöchige Planmuster

Dokumentation ins Wiki übernommen am 02.10.2026. Das ist keine Laufzeitabnahme.

Technische Referenz zum aktiven Programm eProgramm.ImpKaDeWeExtern. Sie beschreibt Eingänge, tatsächliche Schreibwirkung und Grenzen am genannten Quellenstand. Erreichbarer Aufruf statisch dokumentiert, nicht zur Laufzeit abgenommen.

Wichtig: ⚠ globales Staging / keine Stammdatenaktualisierung. Prüfe vor einem späteren Test die beschriebenen Fälle.

Aufruf und Parameter

Delegate: cSchnittKaDeWeExtern.Ausführen. Active=True, Automatik=false, ManuellerAufruf=true, NurAufServer=false. Registrierung/Defaults, keine bestätigten Jobs. Run prüft die Serverbindung nicht selbst.

Parameter Dialogtyp Fester Wert DefaultValue
PFAD FileImport nicht fest nicht gesetzt

MAILTO und der von RunWithDialog gesetzte MANUELL-Schlüssel sind Registrierung/Dialogzustand, keine ZW-Einstellung. Eine Auswertung durch die Basis ist nur bei ausdrücklich belegtem BASE-Pfad anzunehmen.

Zweck und Dateivertrag

Übernimmt externes KaDeWe-Personal und vierwöchige Planmuster. Bestehende Personenstammdaten und vorhandene Wochenplandetails werden nicht entsprechend aktualisiert.

PFAD(FileImport), keine Dateimusterbindung. Encoding.Default, Semikolon, TrimWhiteSpace=True; TextFieldParser nutzt den Default für Delimited/Quotes. Kein allgemeines Headerüberspringen: Nur Feld 1 exakt „Nachname“ oder leer wird ignoriert. Mindestens 89 Felder, zusätzliche Felder bleiben ungenutzt. Eingang → SCHNITT_Extern → SCHNITT_Extern_SP → Personen, ITZeit, ITORGA, ITPEP, ITWochenPlan und WochenPlaene.

Position ab 1 Inhalt Konvertierung
1–2 Nachname/Vorname String
3 Filiale Numerisch→String, sonst NULL
4 OZF Numerisch→String, sonst NULL; Unternehmen/PepGruppe
5 Wochen Numerisch→String, sonst 1
6–89 Vier Wochen × sieben Tage × Kommen/Gehen/Pause Woche 1–4, Montag bis Sonntag; drei Felder je Tag

Positionsformel (1-basiert): Kommen=6+(Woche−1)×21+(Tag−1)×3, Gehen=Kommen+1, Pause=Kommen+2. StrToZeit behält Ziffern und vereinheitlicht Doppelpunkt, Semikolon, Komma und Punkt zu „:“. Reine Zahlen bis vier Zeichen werden H:mm/HH:mm; längere werden DBNull. Andere Zeittexte hängen von IsDate und der Kultur ab; ungültige Werte werden NULL. Pause wird Stunde+Minute/60, als String mit Dezimalpunkt. Keine zusätzliche Bereichsvalidierung.

Staging, Personen und Planmuster

VB leert die gesamte SCHNITT_Extern vor der Dateischleife. Fehlerhafte Zeilen werden übersprungen und gemerkt. Die SP läuft trotzdem mit dem verbleibenden Teilstaging. SQL-Timeout=0; keine Fachtransaktion, Archivierung oder Calc.

Die SP setzt Staging.PersonID global NULL. Zuordnung: Nachname/Vorname, Personen.extern=1 und Unternehmen=OZF. Neue Personen nutzen den ID-Raum (90000+Filiale)×10000. Als negative Startbasis dient die höchste vorhandene Personen-ID im Filialraum oder die negative Basis; der nach Filiale sortierte Cursor subtrahiert einen Zähler und wechselt danach das Vorzeichen.

2023-F01: Globale Stagingersetzung und ID-Vergabe sind nicht atomar. Parallelimporte, mehrdeutige Namenszuordnung, NULL-Filiale/OZF und abweichende Filialformate prüfen. Kein gesicherter Identity-Generator.

Nur eine noch fehlende PersonID wird eingefügt: ID/Namen, extern=1, Unternehmen=OZF, Eintritt/StartZW/StartPEP=Monatserster des SQL-Laufdatums, aktiv/InPep/InZw=1. Bestehende Personen werden nicht aktualisiert.

Die SP fügt je Historientabelle nur ein, wenn für die Person überhaupt noch keine Historienzeile existiert:

Fehlende Modelle, Filialen oder PEP-Gruppen werden nicht angelegt.

WochenPlaene werden für alle vorhandenen ITWochenPlan-Historien der Person ergänzt: fehlende WochenID 0–3 aus Stagingwoche 1–4. Bestehende Details bleiben unverändert. Alle vier Wochen werden unabhängig vom Wert ITWochenPlan.Wochen angelegt. U565 enthält Staging.Waz, aber VB setzt und die SP liest es nicht; keine Fachwirkung dafür indizieren. Die durch U566 definierte ID-Identity wird nicht explizit von VB gesetzt.

Zeilenfehler werden am Ende mit Zeilennummern gemeldet. Ausführen reicht Success durch; SP-Exception→False, bereits geschriebene Teile bleiben. Betriebs-/Liefer-/ID-Fragen Q15, keine Erfolgsabnahme.

Direkte Einstellungen

Keine direkte fachliche ZW-Einstellung in diesem Einstiegsteil nachgewiesen; Einstellungen der belegten gemeinsamen Pfade folgen unten.

Direkte Feldbeziehungen

Beziehung Tabelle.Feld Operation Datenfluss / Verwendung Bedingung Beleg
2023-D001 SCHNITT_Extern.— gesamte Tabelle DELETE Globales Importstaging leeren, auch bei späterer fehlerhafter/leer Datei Vor Dateischleife B
2023-D002 SCHNITT_Extern.Nachname INSERT/SELECT Positionen1–5; Filiale/OZFnichtnumerischNULL,Wochenfallback1 Mindestens89Felder/Nachname nichtleer oder Header B,SQL
2023-D003 SCHNITT_Extern.Vorname INSERT/SELECT Positionen1–5; Filiale/OZFnichtnumerischNULL,Wochenfallback1 Mindestens89Felder/Nachname nichtleer oder Header B,SQL
2023-D004 SCHNITT_Extern.Filiale INSERT/SELECT Positionen1–5; Filiale/OZFnichtnumerischNULL,Wochenfallback1 Mindestens89Felder/Nachname nichtleer oder Header B,SQL
2023-D005 SCHNITT_Extern.OZF INSERT/SELECT Positionen1–5; Filiale/OZFnichtnumerischNULL,Wochenfallback1 Mindestens89Felder/Nachname nichtleer oder Header B,SQL
2023-D006 SCHNITT_Extern.Wochen INSERT/SELECT Positionen1–5; Filiale/OZFnichtnumerischNULL,Wochenfallback1 Mindestens89Felder/Nachname nichtleer oder Header B,SQL
2023-D007 SCHNITT_Extern.MoKommen1 INSERT/SELECT Dateiposition6→StrToZeit, String oder DBNull Woche1,Mo; später WochenID0 B,SQL
2023-D008 SCHNITT_Extern.MoGehen1 INSERT/SELECT Dateiposition7→StrToZeit, String oder DBNull Woche1,Mo; später WochenID0 B,SQL
2023-D009 SCHNITT_Extern.MoPause1 INSERT/SELECT Dateiposition8→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche1,Mo; später WochenID0 B,SQL
2023-D010 SCHNITT_Extern.DiKommen1 INSERT/SELECT Dateiposition9→StrToZeit, String oder DBNull Woche1,Di; später WochenID0 B,SQL
2023-D011 SCHNITT_Extern.DiGehen1 INSERT/SELECT Dateiposition10→StrToZeit, String oder DBNull Woche1,Di; später WochenID0 B,SQL
2023-D012 SCHNITT_Extern.DiPause1 INSERT/SELECT Dateiposition11→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche1,Di; später WochenID0 B,SQL
2023-D013 SCHNITT_Extern.MiKommen1 INSERT/SELECT Dateiposition12→StrToZeit, String oder DBNull Woche1,Mi; später WochenID0 B,SQL
2023-D014 SCHNITT_Extern.MiGehen1 INSERT/SELECT Dateiposition13→StrToZeit, String oder DBNull Woche1,Mi; später WochenID0 B,SQL
2023-D015 SCHNITT_Extern.MiPause1 INSERT/SELECT Dateiposition14→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche1,Mi; später WochenID0 B,SQL
2023-D016 SCHNITT_Extern.DoKommen1 INSERT/SELECT Dateiposition15→StrToZeit, String oder DBNull Woche1,Do; später WochenID0 B,SQL
2023-D017 SCHNITT_Extern.DoGehen1 INSERT/SELECT Dateiposition16→StrToZeit, String oder DBNull Woche1,Do; später WochenID0 B,SQL
2023-D018 SCHNITT_Extern.DoPause1 INSERT/SELECT Dateiposition17→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche1,Do; später WochenID0 B,SQL
2023-D019 SCHNITT_Extern.FrKommen1 INSERT/SELECT Dateiposition18→StrToZeit, String oder DBNull Woche1,Fr; später WochenID0 B,SQL
2023-D020 SCHNITT_Extern.FrGehen1 INSERT/SELECT Dateiposition19→StrToZeit, String oder DBNull Woche1,Fr; später WochenID0 B,SQL
2023-D021 SCHNITT_Extern.FrPause1 INSERT/SELECT Dateiposition20→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche1,Fr; später WochenID0 B,SQL
2023-D022 SCHNITT_Extern.SaKommen1 INSERT/SELECT Dateiposition21→StrToZeit, String oder DBNull Woche1,Sa; später WochenID0 B,SQL
2023-D023 SCHNITT_Extern.SaGehen1 INSERT/SELECT Dateiposition22→StrToZeit, String oder DBNull Woche1,Sa; später WochenID0 B,SQL
2023-D024 SCHNITT_Extern.SaPause1 INSERT/SELECT Dateiposition23→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche1,Sa; später WochenID0 B,SQL
2023-D025 SCHNITT_Extern.SoKommen1 INSERT/SELECT Dateiposition24→StrToZeit, String oder DBNull Woche1,So; später WochenID0 B,SQL
2023-D026 SCHNITT_Extern.SoGehen1 INSERT/SELECT Dateiposition25→StrToZeit, String oder DBNull Woche1,So; später WochenID0 B,SQL
2023-D027 SCHNITT_Extern.SoPause1 INSERT/SELECT Dateiposition26→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche1,So; später WochenID0 B,SQL
2023-D028 SCHNITT_Extern.MoKommen2 INSERT/SELECT Dateiposition27→StrToZeit, String oder DBNull Woche2,Mo; später WochenID1 B,SQL
2023-D029 SCHNITT_Extern.MoGehen2 INSERT/SELECT Dateiposition28→StrToZeit, String oder DBNull Woche2,Mo; später WochenID1 B,SQL
2023-D030 SCHNITT_Extern.MoPause2 INSERT/SELECT Dateiposition29→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche2,Mo; später WochenID1 B,SQL
2023-D031 SCHNITT_Extern.DiKommen2 INSERT/SELECT Dateiposition30→StrToZeit, String oder DBNull Woche2,Di; später WochenID1 B,SQL
2023-D032 SCHNITT_Extern.DiGehen2 INSERT/SELECT Dateiposition31→StrToZeit, String oder DBNull Woche2,Di; später WochenID1 B,SQL
2023-D033 SCHNITT_Extern.DiPause2 INSERT/SELECT Dateiposition32→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche2,Di; später WochenID1 B,SQL
2023-D034 SCHNITT_Extern.MiKommen2 INSERT/SELECT Dateiposition33→StrToZeit, String oder DBNull Woche2,Mi; später WochenID1 B,SQL
2023-D035 SCHNITT_Extern.MiGehen2 INSERT/SELECT Dateiposition34→StrToZeit, String oder DBNull Woche2,Mi; später WochenID1 B,SQL
2023-D036 SCHNITT_Extern.MiPause2 INSERT/SELECT Dateiposition35→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche2,Mi; später WochenID1 B,SQL
2023-D037 SCHNITT_Extern.DoKommen2 INSERT/SELECT Dateiposition36→StrToZeit, String oder DBNull Woche2,Do; später WochenID1 B,SQL
2023-D038 SCHNITT_Extern.DoGehen2 INSERT/SELECT Dateiposition37→StrToZeit, String oder DBNull Woche2,Do; später WochenID1 B,SQL
2023-D039 SCHNITT_Extern.DoPause2 INSERT/SELECT Dateiposition38→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche2,Do; später WochenID1 B,SQL
2023-D040 SCHNITT_Extern.FrKommen2 INSERT/SELECT Dateiposition39→StrToZeit, String oder DBNull Woche2,Fr; später WochenID1 B,SQL
2023-D041 SCHNITT_Extern.FrGehen2 INSERT/SELECT Dateiposition40→StrToZeit, String oder DBNull Woche2,Fr; später WochenID1 B,SQL
2023-D042 SCHNITT_Extern.FrPause2 INSERT/SELECT Dateiposition41→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche2,Fr; später WochenID1 B,SQL
2023-D043 SCHNITT_Extern.SaKommen2 INSERT/SELECT Dateiposition42→StrToZeit, String oder DBNull Woche2,Sa; später WochenID1 B,SQL
2023-D044 SCHNITT_Extern.SaGehen2 INSERT/SELECT Dateiposition43→StrToZeit, String oder DBNull Woche2,Sa; später WochenID1 B,SQL
2023-D045 SCHNITT_Extern.SaPause2 INSERT/SELECT Dateiposition44→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche2,Sa; später WochenID1 B,SQL
2023-D046 SCHNITT_Extern.SoKommen2 INSERT/SELECT Dateiposition45→StrToZeit, String oder DBNull Woche2,So; später WochenID1 B,SQL
2023-D047 SCHNITT_Extern.SoGehen2 INSERT/SELECT Dateiposition46→StrToZeit, String oder DBNull Woche2,So; später WochenID1 B,SQL
2023-D048 SCHNITT_Extern.SoPause2 INSERT/SELECT Dateiposition47→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche2,So; später WochenID1 B,SQL
2023-D049 SCHNITT_Extern.MoKommen3 INSERT/SELECT Dateiposition48→StrToZeit, String oder DBNull Woche3,Mo; später WochenID2 B,SQL
2023-D050 SCHNITT_Extern.MoGehen3 INSERT/SELECT Dateiposition49→StrToZeit, String oder DBNull Woche3,Mo; später WochenID2 B,SQL
2023-D051 SCHNITT_Extern.MoPause3 INSERT/SELECT Dateiposition50→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche3,Mo; später WochenID2 B,SQL
2023-D052 SCHNITT_Extern.DiKommen3 INSERT/SELECT Dateiposition51→StrToZeit, String oder DBNull Woche3,Di; später WochenID2 B,SQL
2023-D053 SCHNITT_Extern.DiGehen3 INSERT/SELECT Dateiposition52→StrToZeit, String oder DBNull Woche3,Di; später WochenID2 B,SQL
2023-D054 SCHNITT_Extern.DiPause3 INSERT/SELECT Dateiposition53→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche3,Di; später WochenID2 B,SQL
2023-D055 SCHNITT_Extern.MiKommen3 INSERT/SELECT Dateiposition54→StrToZeit, String oder DBNull Woche3,Mi; später WochenID2 B,SQL
2023-D056 SCHNITT_Extern.MiGehen3 INSERT/SELECT Dateiposition55→StrToZeit, String oder DBNull Woche3,Mi; später WochenID2 B,SQL
2023-D057 SCHNITT_Extern.MiPause3 INSERT/SELECT Dateiposition56→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche3,Mi; später WochenID2 B,SQL
2023-D058 SCHNITT_Extern.DoKommen3 INSERT/SELECT Dateiposition57→StrToZeit, String oder DBNull Woche3,Do; später WochenID2 B,SQL
2023-D059 SCHNITT_Extern.DoGehen3 INSERT/SELECT Dateiposition58→StrToZeit, String oder DBNull Woche3,Do; später WochenID2 B,SQL
2023-D060 SCHNITT_Extern.DoPause3 INSERT/SELECT Dateiposition59→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche3,Do; später WochenID2 B,SQL
2023-D061 SCHNITT_Extern.FrKommen3 INSERT/SELECT Dateiposition60→StrToZeit, String oder DBNull Woche3,Fr; später WochenID2 B,SQL
2023-D062 SCHNITT_Extern.FrGehen3 INSERT/SELECT Dateiposition61→StrToZeit, String oder DBNull Woche3,Fr; später WochenID2 B,SQL
2023-D063 SCHNITT_Extern.FrPause3 INSERT/SELECT Dateiposition62→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche3,Fr; später WochenID2 B,SQL
2023-D064 SCHNITT_Extern.SaKommen3 INSERT/SELECT Dateiposition63→StrToZeit, String oder DBNull Woche3,Sa; später WochenID2 B,SQL
2023-D065 SCHNITT_Extern.SaGehen3 INSERT/SELECT Dateiposition64→StrToZeit, String oder DBNull Woche3,Sa; später WochenID2 B,SQL
2023-D066 SCHNITT_Extern.SaPause3 INSERT/SELECT Dateiposition65→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche3,Sa; später WochenID2 B,SQL
2023-D067 SCHNITT_Extern.SoKommen3 INSERT/SELECT Dateiposition66→StrToZeit, String oder DBNull Woche3,So; später WochenID2 B,SQL
2023-D068 SCHNITT_Extern.SoGehen3 INSERT/SELECT Dateiposition67→StrToZeit, String oder DBNull Woche3,So; später WochenID2 B,SQL
2023-D069 SCHNITT_Extern.SoPause3 INSERT/SELECT Dateiposition68→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche3,So; später WochenID2 B,SQL
2023-D070 SCHNITT_Extern.MoKommen4 INSERT/SELECT Dateiposition69→StrToZeit, String oder DBNull Woche4,Mo; später WochenID3 B,SQL
2023-D071 SCHNITT_Extern.MoGehen4 INSERT/SELECT Dateiposition70→StrToZeit, String oder DBNull Woche4,Mo; später WochenID3 B,SQL
2023-D072 SCHNITT_Extern.MoPause4 INSERT/SELECT Dateiposition71→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche4,Mo; später WochenID3 B,SQL
2023-D073 SCHNITT_Extern.DiKommen4 INSERT/SELECT Dateiposition72→StrToZeit, String oder DBNull Woche4,Di; später WochenID3 B,SQL
2023-D074 SCHNITT_Extern.DiGehen4 INSERT/SELECT Dateiposition73→StrToZeit, String oder DBNull Woche4,Di; später WochenID3 B,SQL
2023-D075 SCHNITT_Extern.DiPause4 INSERT/SELECT Dateiposition74→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche4,Di; später WochenID3 B,SQL
2023-D076 SCHNITT_Extern.MiKommen4 INSERT/SELECT Dateiposition75→StrToZeit, String oder DBNull Woche4,Mi; später WochenID3 B,SQL
2023-D077 SCHNITT_Extern.MiGehen4 INSERT/SELECT Dateiposition76→StrToZeit, String oder DBNull Woche4,Mi; später WochenID3 B,SQL
2023-D078 SCHNITT_Extern.MiPause4 INSERT/SELECT Dateiposition77→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche4,Mi; später WochenID3 B,SQL
2023-D079 SCHNITT_Extern.DoKommen4 INSERT/SELECT Dateiposition78→StrToZeit, String oder DBNull Woche4,Do; später WochenID3 B,SQL
2023-D080 SCHNITT_Extern.DoGehen4 INSERT/SELECT Dateiposition79→StrToZeit, String oder DBNull Woche4,Do; später WochenID3 B,SQL
2023-D081 SCHNITT_Extern.DoPause4 INSERT/SELECT Dateiposition80→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche4,Do; später WochenID3 B,SQL
2023-D082 SCHNITT_Extern.FrKommen4 INSERT/SELECT Dateiposition81→StrToZeit, String oder DBNull Woche4,Fr; später WochenID3 B,SQL
2023-D083 SCHNITT_Extern.FrGehen4 INSERT/SELECT Dateiposition82→StrToZeit, String oder DBNull Woche4,Fr; später WochenID3 B,SQL
2023-D084 SCHNITT_Extern.FrPause4 INSERT/SELECT Dateiposition83→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche4,Fr; später WochenID3 B,SQL
2023-D085 SCHNITT_Extern.SaKommen4 INSERT/SELECT Dateiposition84→StrToZeit, String oder DBNull Woche4,Sa; später WochenID3 B,SQL
2023-D086 SCHNITT_Extern.SaGehen4 INSERT/SELECT Dateiposition85→StrToZeit, String oder DBNull Woche4,Sa; später WochenID3 B,SQL
2023-D087 SCHNITT_Extern.SaPause4 INSERT/SELECT Dateiposition86→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche4,Sa; später WochenID3 B,SQL
2023-D088 SCHNITT_Extern.SoKommen4 INSERT/SELECT Dateiposition87→StrToZeit, String oder DBNull Woche4,So; später WochenID3 B,SQL
2023-D089 SCHNITT_Extern.SoGehen4 INSERT/SELECT Dateiposition88→StrToZeit, String oder DBNull Woche4,So; später WochenID3 B,SQL
2023-D090 SCHNITT_Extern.SoPause4 INSERT/SELECT Dateiposition89→ZeitToDbl(StrToZeit), Dezimalstunden als String Woche4,So; später WochenID3 B,SQL
2023-D091 SCHNITT_Extern.PersonID UPDATE/SELECT NULL-Reset; Namen/extern/Unternehmenmatch, sonst Filialnummernraum und cursorbasierteID Globale SP nach Parser; Teilstaging möglich SQL
2023-D092 Personen.PersonID SELECT Match nachName+extern1+UnternehmenOZF; MAXPersonID imFilialraum SP-Zuordnung SQL
2023-D093 Personen.Nachname SELECT Match nachName+extern1+UnternehmenOZF; MAXPersonID imFilialraum SP-Zuordnung SQL
2023-D094 Personen.Vorname SELECT Match nachName+extern1+UnternehmenOZF; MAXPersonID imFilialraum SP-Zuordnung SQL
2023-D095 Personen.extern SELECT Match nachName+extern1+UnternehmenOZF; MAXPersonID imFilialraum SP-Zuordnung SQL
2023-D096 Personen.Unternehmen SELECT Match nachName+extern1+UnternehmenOZF; MAXPersonID imFilialraum SP-Zuordnung SQL
2023-D097 Personen.PersonID INSERT ID/Namen/OZF,extern1,MonatsersterdesLaufs,aktiv/InPep/InZw1 NurPersonIDnochfehlend SQL
2023-D098 Personen.Nachname INSERT ID/Namen/OZF,extern1,MonatsersterdesLaufs,aktiv/InPep/InZw1 NurPersonIDnochfehlend SQL
2023-D099 Personen.Vorname INSERT ID/Namen/OZF,extern1,MonatsersterdesLaufs,aktiv/InPep/InZw1 NurPersonIDnochfehlend SQL
2023-D100 Personen.extern INSERT ID/Namen/OZF,extern1,MonatsersterdesLaufs,aktiv/InPep/InZw1 NurPersonIDnochfehlend SQL
2023-D101 Personen.Unternehmen INSERT ID/Namen/OZF,extern1,MonatsersterdesLaufs,aktiv/InPep/InZw1 NurPersonIDnochfehlend SQL
2023-D102 Personen.Eintritt INSERT ID/Namen/OZF,extern1,MonatsersterdesLaufs,aktiv/InPep/InZw1 NurPersonIDnochfehlend SQL
2023-D103 Personen.StartZW INSERT ID/Namen/OZF,extern1,MonatsersterdesLaufs,aktiv/InPep/InZw1 NurPersonIDnochfehlend SQL
2023-D104 Personen.StartPEP INSERT ID/Namen/OZF,extern1,MonatsersterdesLaufs,aktiv/InPep/InZw1 NurPersonIDnochfehlend SQL
2023-D105 Personen.aktiv INSERT ID/Namen/OZF,extern1,MonatsersterdesLaufs,aktiv/InPep/InZw1 NurPersonIDnochfehlend SQL
2023-D106 Personen.InPep INSERT ID/Namen/OZF,extern1,MonatsersterdesLaufs,aktiv/InPep/InZw1 NurPersonIDnochfehlend SQL
2023-D107 Personen.InZw INSERT ID/Namen/OZF,extern1,MonatsersterdesLaufs,aktiv/InPep/InZw1 NurPersonIDnochfehlend SQL
2023-D108 ITZeit.PersonenStammID SELECT Existenz irgendeinerPersonhistorie, kein Von/Bis/Updatevergleich SP SQL
2023-D109 ITZeit.PersonenStammID INSERT PersonID/Monatserster/NULL/1/1/1 Nur wenn keinSatz fürPerson existiert SQL
2023-D110 ITZeit.von INSERT PersonID/Monatserster/NULL/1/1/1 Nur wenn keinSatz fürPerson existiert SQL
2023-D111 ITZeit.bis INSERT PersonID/Monatserster/NULL/1/1/1 Nur wenn keinSatz fürPerson existiert SQL
2023-D112 ITZeit.RMAZPlanID INSERT PersonID/Monatserster/NULL/1/1/1 Nur wenn keinSatz fürPerson existiert SQL
2023-D113 ITZeit.RMID INSERT PersonID/Monatserster/NULL/1/1/1 Nur wenn keinSatz fürPerson existiert SQL
2023-D114 ITZeit.VorgabeArt INSERT PersonID/Monatserster/NULL/1/1/1 Nur wenn keinSatz fürPerson existiert SQL
2023-D115 ITORGA.PersonenStammID SELECT Existenz irgendeinerPersonhistorie, kein Von/Bis/Updatevergleich SP SQL
2023-D116 ITORGA.PersonenStammID INSERT PersonID/Monatserster/NULL/10000+Dateifiliale/2/120 Nur wenn keinSatz fürPerson existiert SQL
2023-D117 ITORGA.von INSERT PersonID/Monatserster/NULL/10000+Dateifiliale/2/120 Nur wenn keinSatz fürPerson existiert SQL
2023-D118 ITORGA.bis INSERT PersonID/Monatserster/NULL/10000+Dateifiliale/2/120 Nur wenn keinSatz fürPerson existiert SQL
2023-D119 ITORGA.Filiale INSERT PersonID/Monatserster/NULL/10000+Dateifiliale/2/120 Nur wenn keinSatz fürPerson existiert SQL
2023-D120 ITORGA.Abteilung INSERT PersonID/Monatserster/NULL/10000+Dateifiliale/2/120 Nur wenn keinSatz fürPerson existiert SQL
2023-D121 ITORGA.Hierarchiestufe INSERT PersonID/Monatserster/NULL/10000+Dateifiliale/2/120 Nur wenn keinSatz fürPerson existiert SQL
2023-D122 ITPEP.PersonenStammID SELECT Existenz irgendeinerPersonhistorie, kein Von/Bis/Updatevergleich SP SQL
2023-D123 ITPEP.PersonenStammID INSERT PersonID/Monatserster/NULL/OZF/-1 Nur wenn keinSatz fürPerson existiert SQL
2023-D124 ITPEP.von INSERT PersonID/Monatserster/NULL/OZF/-1 Nur wenn keinSatz fürPerson existiert SQL
2023-D125 ITPEP.bis INSERT PersonID/Monatserster/NULL/OZF/-1 Nur wenn keinSatz fürPerson existiert SQL
2023-D126 ITPEP.PepGruppe INSERT PersonID/Monatserster/NULL/OZF/-1 Nur wenn keinSatz fürPerson existiert SQL
2023-D127 ITPEP.Anteil INSERT PersonID/Monatserster/NULL/OZF/-1 Nur wenn keinSatz fürPerson existiert SQL
2023-D128 ITWochenPlan.PersonenStammID SELECT Existenz irgendeinerPersonhistorie, kein Von/Bis/Updatevergleich SP SQL
2023-D129 ITWochenPlan.PersonenStammID INSERT PersonID/Monatserster/NULL/DateiWochen Nur wenn keinSatz fürPerson existiert SQL
2023-D130 ITWochenPlan.von INSERT PersonID/Monatserster/NULL/DateiWochen Nur wenn keinSatz fürPerson existiert SQL
2023-D131 ITWochenPlan.bis INSERT PersonID/Monatserster/NULL/DateiWochen Nur wenn keinSatz fürPerson existiert SQL
2023-D132 ITWochenPlan.Wochen INSERT PersonID/Monatserster/NULL/DateiWochen Nur wenn keinSatz fürPerson existiert SQL
2023-D133 ITWochenPlan.ID SELECT Join alle vorhandenen Wochenplanhistorien derPerson Wochendetails SQL
2023-D134 ITWochenPlan.PersonenStammID SELECT Join alle vorhandenen Wochenplanhistorien derPerson Wochendetails SQL
2023-D135 WochenPlaene.ITWochenPlanID SELECT/INSERT Alle passendenITWochenPlan-IDs mit WochenID0–3 Nur fehlenderDetailmatch SQL
2023-D136 WochenPlaene.WochenID SELECT/INSERT Alle passendenITWochenPlan-IDs mit WochenID0–3 Nur fehlenderDetailmatch SQL
2023-D137 WochenPlaene.MoKommen INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D138 WochenPlaene.MoGehen INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D139 WochenPlaene.MoPause INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D140 WochenPlaene.DiKommen INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D141 WochenPlaene.DiGehen INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D142 WochenPlaene.DiPause INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D143 WochenPlaene.MiKommen INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D144 WochenPlaene.MiGehen INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D145 WochenPlaene.MiPause INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D146 WochenPlaene.DoKommen INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D147 WochenPlaene.DoGehen INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D148 WochenPlaene.DoPause INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D149 WochenPlaene.FrKommen INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D150 WochenPlaene.FrGehen INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D151 WochenPlaene.FrPause INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D152 WochenPlaene.SaKommen INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D153 WochenPlaene.SaGehen INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D154 WochenPlaene.SaPause INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D155 WochenPlaene.SoKommen INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D156 WochenPlaene.SoGehen INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL
2023-D157 WochenPlaene.SoPause INSERT StaginggleichnamigesFeld mitWochensuffix1–4 FehlendesWochenID0–3Detail; bestehendeDetailsnichtaktualisiert SQL

Direkte Rückmeldung und Logging (LEGACY)

Nur Info-/Logmeldungen, kein BASE-Start/Ende und keine daraus abgeleitete Mail/API. Dialoge hängen von SupressDialogs ab. Benutzerzuordnung über fnUserId/tblUser. Logging ist nicht mit dem Fachimport atomar; Defaults sind keine Livewerte.

Einstellungen

Beziehung Schlüssel / Variable Default Einfluss Wirkung Beleg
LEGACY-S001 GLOBAL_LOGLEVEL / GLOBAL_LOGLEVEL 50 Init → Info.LogLevel Meldung ab einschließlich Grenzwert in Datei/DB; verändert keine Fachdaten LEGACY:SET, LEGACY:INIT, LEGACY:INFO
LEGACY-S002 GLOBAL_LOGLEVELEVLOG / GLOBAL_LOGLEVELEVENTLOG 0 Init → Info.LogLevelEvLog Windows-Ereignisprotokoll nur bei Level > Grenze, Grenze > 0 und Level < 200 LEGACY:SET, LEGACY:INIT, LEGACY:INFO

Beide gezeigten Settings-Konstruktoren setzen AlwaysToFile=True. Oberhalb LogLevel werden Datei UND DB versucht; bei False nur DB, Datei als Fehlerfallback. Datei unter ApplicationData/PEP/LogFiles/yyyyMMdd_peplog.txt (Append). DB-Fehler werden als False abgefangen, verhindern nicht zwingend den Import. EventLog-Fehler werden geschluckt. Direkte Fachcommands des Block 07 setzen kein Timeout; SQL_TIMEOUT ist in diesen zehn Pfaden nicht gelesen. Keine zusätzliche fachliche ZW-Einstellung nachgewiesen, auch nicht in spCalcUmsatzPlan.

Datenbeziehungen

DB-Rolle PEP4-Anmeldedatenbank. Log schreibt über eigene Verbindung; nicht atomar mit Fachoperationen. fnUserId liest minimalen UserID zum rechten 25-Zeichen-Teil von SUSER_NAME(), sonst 0.

Beziehung Tabelle.Feld Operation Datenfluss / Verwendung Bedingung Beleg
LEGACY-D001 Pep3Log.UserID INSERT dbo.fnUserId() Meldungslevel erreicht DB-Log LEGACY:INFO, LEGACY:FN
LEGACY-D002 Pep3Log.Datum INSERT getdate() Meldungslevel erreicht DB-Log LEGACY:INFO
LEGACY-D003 Pep3Log.Kurz INSERT Kurztext, maximal 255 Zeichen Meldungslevel erreicht DB-Log LEGACY:INFO
LEGACY-D004 Pep3Log.LogText INSERT Detailtext einschließlich Pfad/ggf. Exception Meldungslevel erreicht DB-Log LEGACY:INFO
LEGACY-D005 Pep3Log.Modul INSERT Modulbezeichnung, maximal 50 Zeichen Meldungslevel erreicht DB-Log LEGACY:INFO
LEGACY-D006 Pep3Log.InfoLevel INSERT 51, 102 oder 105 je Meldung Meldungslevel erreicht DB-Log LEGACY:INFO
LEGACY-D007 tblUser.Name SELECT Abgleich RIGHT(SUSER_NAME(),25) fnUserId bei Log-INSERT LEGACY:FN
LEGACY-D008 tblUser.UserID SELECT MIN(UserID), fehlend → 0 fnUserId bei Log-INSERT LEGACY:FN

Quellen und Prüfstand

Geprüft am02.10.2026 gegen master, Commit f1d82a003b62f2658f06eaa943dc685ab219bdf3. Kein aktueller Installations-/Live-Schema-/DLL-/Jobabgleich. Aprocon bezeichnet die externe Datenbankrolle, keinen bestätigten Schemanamen. Defaults/Computed-Spalten sind gesonderte Schemawirkung. Q02:Installationsgrenze; Q11:offene Motoranalyse; Q13/Q15:Liefer-/Einheiten-/Ersatzverträge.

Siehe auch: Übersicht der Schnittstellen. Keine Ausführung oder Fehlerkorrektur.