====== Schnittstelle 5314: KaDeWeZa PEP — Planungsexport ====== Dokumentation ins Wiki übernommen am **02.10.2026**. Das ist keine Laufzeitabnahme. 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**. Statisch dokumentiert; Nutzerprüfung offen. Keine Schnittstelle ausgeführt. ===== Identität und Quellenstand ===== ''eProgramm.ExportSchnittKaDeWeZaPEP = 5314''. Aktive feste Registrierung → ''cSchnittZalarisPEP.AusführenKaDeWe'' (E,P). Projekteinschluss der genannten VB-Quellen geprüft (PRJ). Active=True, InAutomatik=true, ManuellerAufruf=true, NurAufServer=false. Kennzeichen beschreiben Registrierung/Defaults, nicht eingerichtete Jobs; Run selbst prüft keine Serverbindung. ''seegerstefan/pep4desktop'', master, Commit ''f1d82a003b62f2658f06eaa943dc685ab219bdf3''. Lokale .DS_Store-/cPep/PEP-Abweichungen nicht vermischt; Fachquellen cSchnittstellen/ZW/Sqlfiles unverändert. Kein Remote-/Installationsabgleich. ===== Zweck, Parameter und Datei ===== ''PFAD'': vorhandener Ordner (Folder, kein Default). Exportiert Änderungen der Planung nach ''yyyyMMdd_HHmmss_PEP4_SAP_EINPLANUNG.csv'', StreamWriter-Default UTF-8 ohne explizite Codepage. Kein Eingangsfile, Header, Quote-/Escapeverfahren oder HTTP-Upload. Ablauf: BASE-Start → SetPfad → DB-Transaktion → ''SCHNITT_KaDeWeZa_PEP'' → erstes und zweites Resultset Feld ''Datensatz'' zeilenweise schreiben → DB-Commit → Writer schließen → BASE-Ende/Fehlerfrei. Bei Exportexception Rollback, vorhandene Exportdatei löschen und Fehler/Stopp. Ein Fehler nach Commit beim Schließen kann nicht sicher rückgängig gemacht werden; Datei/DB nicht atomar. CSV-Folge: ''PEP4;2003;ID;X-or-space;Person;yyyyMMdd;HHmm-Kommen;HHmm-Gehen;Pause1Von;Pause1Bis;Pause2Von;Pause2Bis''. Kennung X = entfernte alte Lieferung, Leerzeichen = neue Lieferung. EXT-Einstellungen aus ABW werden hier **nicht** gelesen. Vier Pausenfelder aus UDF ''SCHNITT_ZALARIS_PAUSE'': Status2; bei mehreren Pausen erste einzeln, weitere aus min(Kommen)+summierter Minutendauer verdichtet. ===== SQL, Eingänge und Ausgänge ===== Exportfenster: Monatsbeginn + ''SCHNITT_KaDeWeZa_PEP_MONATE'' bis letzter Tag vor Monatsbeginn+5 Monate; optionale Feiertagsunterdrückung. Gültige aktive ITZeit/ITORGA, SAPExport-Filialen, Monatsplanung und Kennzeichenfilter. SQL-Wochentag ist DATEFIRST-abhängig. KaDeWe: keine zusätzliche GKK-ID-/01.04.2026-Grenze. ''Pep2.Kommen/Gehen'' werden vor Auswahl für Mitternachtsplanungen korrigiert, auch außerhalb des Exportfensters. Das ist ein Export **mit DB-Schreibwirkung**. Gemeinsamer Speicher ''SCHNITT_KaDeWeZa_PEP_DIFF'' auch für die andere Kundenvariante: globales DELETE nicht ausgegebener Altzeilen und globaler tsExport-UPDATE. Neue Datensätze angefügt; geänderte Lieferung als löschen+anfügen. Keine allgemeine Calc-Routine gestartet. ===== Befunde und Abnahme ===== ⚠ Gemeinsamer Differenzbestand von5314/5326, globales Löschen außerhalb des Ausgabezeitraums, globale Pep2-Datumskorrektur und Commit vor Dateischluss. Kundenalternativen nicht ungeprüft gleichzeitig betreiben. Synthetische Vergleichsdatei, Wiederholung, entfernte Zukunftsplanung und mehrere Pausen prüfen (Q19). Keine bestätigte Empfängerabnahme. ===== Einstellungen und gemeinsame Nebenwirkungen ===== Gemeinsames Profil: BASE (interne Referenz). ^ Beziehung ^ Schlüssel / Variable ^ Default ^ Einflussweg ^ Wirkung ^ Beleg ^ | 5314-S001 | ''SQL_TIMEOUT'' / ''SQLTimeOut'' | 60 | SqlCommand | Fachcommand-Timeout in Sekunden; keine Dateitransaktion | B,SET | | 5314-S002 | ''SCHNITT_KaDeWeZa_PEP_MONATE'' / ''SQL @Monate'' | 0 | SQL DB-MIN | Monatsversatz des Exportbeginns; auch GKK liest KaDeWe-Schlüssel | SQL | | 5314-S003 | ''SCHNITT_KaDeWeZa_PEP_FEIERTAG'' / ''SQL @Feiertag'' | 0 | SQL DB-MAX | 1 unterdrückt Feiertage über TagesArten | SQL | Defaults sind keine Livewerte. Melde-/Datei-/DB-Wirkungen sind nicht atomar. ===== Feldbeziehungen ===== DB-Rolle PEP4-Anmeldedatenbank, soweit nicht ausdrücklich Aprocon oder Import angegeben. Unqualifizierte Objektschemata nicht als Live-dbo-Vertrag behaupten. INSERT-Defaults/Computed-Spalten sind gesonderte Schemawirkung, kein explizites UPDATE. ^ Beziehung ^ Tabelle.Feld ^ Operation ^ Datenfluss / Verwendung ^ Bedingung ^ Beleg ^ | 5314-D001 | ''Pep2.Name'' | SELECT | Rahmen min(Kommen)/max(Gehen), Tages-/Monatsplanung, ganztägige Ausschlüsse und Pausen | Exportfenster / SCHNITT_ZALARIS_PAUSE | SQL,PAUSE | | 5314-D002 | ''Pep2.Datum'' | SELECT | Rahmen min(Kommen)/max(Gehen), Tages-/Monatsplanung, ganztägige Ausschlüsse und Pausen | Exportfenster / SCHNITT_ZALARIS_PAUSE | SQL,PAUSE | | 5314-D003 | ''Pep2.Kommen'' | SELECT | Rahmen min(Kommen)/max(Gehen), Tages-/Monatsplanung, ganztägige Ausschlüsse und Pausen | Exportfenster / SCHNITT_ZALARIS_PAUSE | SQL,PAUSE | | 5314-D004 | ''Pep2.Gehen'' | SELECT | Rahmen min(Kommen)/max(Gehen), Tages-/Monatsplanung, ganztägige Ausschlüsse und Pausen | Exportfenster / SCHNITT_ZALARIS_PAUSE | SQL,PAUSE | | 5314-D005 | ''Pep2.Status'' | SELECT | Rahmen min(Kommen)/max(Gehen), Tages-/Monatsplanung, ganztägige Ausschlüsse und Pausen | Exportfenster / SCHNITT_ZALARIS_PAUSE | SQL,PAUSE | | 5314-D006 | ''Pep2.Kommen'' | UPDATE | Ganztägige Mitternachtswerte werden auf Datum korrigiert | Unabhängig vom Exportfenster, innerhalb VB-Transaktion | SQL | | 5314-D007 | ''Pep2.Gehen'' | UPDATE | Ganztägige Mitternachtswerte werden auf Datum korrigiert | Unabhängig vom Exportfenster, innerhalb VB-Transaktion | SQL | | 5314-D008 | ''Kennzeichen.Kennzeichen'' | SELECT | Rahmen-/Ganztagsfilter; Export=1 oder Import>0 unterdrückt bestimmte Tageslieferungen | SQL-Filter | SQL,PAUSE | | 5314-D009 | ''Kennzeichen.SchnittZppa904Rahmen'' | SELECT | Rahmen-/Ganztagsfilter; Export=1 oder Import>0 unterdrückt bestimmte Tageslieferungen | SQL-Filter | SQL,PAUSE | | 5314-D010 | ''Kennzeichen.Export'' | SELECT | Rahmen-/Ganztagsfilter; Export=1 oder Import>0 unterdrückt bestimmte Tageslieferungen | SQL-Filter | SQL,PAUSE | | 5314-D011 | ''Kennzeichen.Import'' | SELECT | Rahmen-/Ganztagsfilter; Export=1 oder Import>0 unterdrückt bestimmte Tageslieferungen | SQL-Filter | SQL,PAUSE | | 5314-D012 | ''PepBerechnet.PersonID'' | SELECT | Person/Tag und UrlaubId=0 oder6; UrlaubId<6 im Ausschluss | Exportfenster | SQL | | 5314-D013 | ''PepBerechnet.Datum'' | SELECT | Person/Tag und UrlaubId=0 oder6; UrlaubId<6 im Ausschluss | Exportfenster | SQL | | 5314-D014 | ''PepBerechnet.UrlaubId'' | SELECT | Person/Tag und UrlaubId=0 oder6; UrlaubId<6 im Ausschluss | Exportfenster | SQL | | 5314-D015 | ''ITORGA.PersonenStammID'' | SELECT | Gültige Filialzuordnung | Exportfenster | SQL | | 5314-D016 | ''ITORGA.von'' | SELECT | Gültige Filialzuordnung | Exportfenster | SQL | | 5314-D017 | ''ITORGA.bis2'' | SELECT | Gültige Filialzuordnung | Exportfenster | SQL | | 5314-D018 | ''ITORGA.Filiale'' | SELECT | Gültige Filialzuordnung | Exportfenster | SQL | | 5314-D019 | ''ITZeit.PersonenStammID'' | SELECT | Aktiver gültiger Zeitvertrag | Exportfenster | SQL | | 5314-D020 | ''ITZeit.von'' | SELECT | Aktiver gültiger Zeitvertrag | Exportfenster | SQL | | 5314-D021 | ''ITZeit.bis2'' | SELECT | Aktiver gültiger Zeitvertrag | Exportfenster | SQL | | 5314-D022 | ''ITZeit.IsAktiv'' | SELECT | Aktiver gültiger Zeitvertrag | Exportfenster | SQL | | 5314-D023 | ''Filialen.FilialID'' | SELECT | Nur exportfähige Filialen | SAPExport=1 | SQL | | 5314-D024 | ''Filialen.SAPExport'' | SELECT | Nur exportfähige Filialen | SAPExport=1 | SQL | | 5314-D025 | ''Personen.PersonID'' | SELECT | Person-/Leerplanfilter | Exportfenster | SQL | | 5314-D026 | ''Personen.SchnittAbwesenheit0'' | SELECT | Person-/Leerplanfilter | Exportfenster | SQL | | 5314-D027 | ''FilialKalender.Filiale'' | SELECT | Kalendertag/Sonntag/Feiertagsfilter | SQL DATEFIRST-abhängig | SQL | | 5314-D028 | ''FilialKalender.Datum'' | SELECT | Kalendertag/Sonntag/Feiertagsfilter | SQL DATEFIRST-abhängig | SQL | | 5314-D029 | ''FilialKalender.Tagesart'' | SELECT | Kalendertag/Sonntag/Feiertagsfilter | SQL DATEFIRST-abhängig | SQL | | 5314-D030 | ''TagesArten.ID'' | SELECT | Optional Feiertage ausschließen | SCHNITT_KaDeWeZa_PEP_FEIERTAG=1 | SQL | | 5314-D031 | ''TagesArten.IsFeiertag'' | SELECT | Optional Feiertage ausschließen | SCHNITT_KaDeWeZa_PEP_FEIERTAG=1 | SQL | | 5314-D032 | ''EinstellungenZw.Einstellung'' | SELECT | MIN Monate/MAX Feiertag; Fallback0/0 | Pro SP-Lauf aus DB, nicht VB-Cache | SQL | | 5314-D033 | ''EinstellungenZw.Wert'' | SELECT | MIN Monate/MAX Feiertag; Fallback0/0 | Pro SP-Lauf aus DB, nicht VB-Cache | SQL | | 5314-D034 | ''#temp.Person'' | INSERT | Aktuelle Lieferung; CSV-Nutzsatz mit vier Pausenspalten | Exportfilter | SQL | | 5314-D035 | ''#temp.Datum'' | INSERT | Aktuelle Lieferung; CSV-Nutzsatz mit vier Pausenspalten | Exportfilter | SQL | | 5314-D036 | ''#temp.Datensatz'' | INSERT | Aktuelle Lieferung; CSV-Nutzsatz mit vier Pausenspalten | Exportfilter | SQL | | 5314-D037 | ''#temp.Datensatz'' | SELECT | Differenzvergleich | Pro Lauf | SQL | | 5314-D038 | ''#temp.— Zeilen'' | DELETE | Bereits gelieferte Datensätze entfernen | Datensatzvergleich | SQL | | 5314-D039 | ''SCHNITT_KaDeWeZa_PEP_DIFF.ID'' | SELECT | Lösch-/Neulieferung und Deduplikation; zwei Resultsets | Erstes X, zweites Leerzeichen | SQL | | 5314-D040 | ''SCHNITT_KaDeWeZa_PEP_DIFF.Person'' | SELECT | Lösch-/Neulieferung und Deduplikation; zwei Resultsets | Erstes X, zweites Leerzeichen | SQL | | 5314-D041 | ''SCHNITT_KaDeWeZa_PEP_DIFF.Datum'' | SELECT | Lösch-/Neulieferung und Deduplikation; zwei Resultsets | Erstes X, zweites Leerzeichen | SQL | | 5314-D042 | ''SCHNITT_KaDeWeZa_PEP_DIFF.Datensatz'' | SELECT | Lösch-/Neulieferung und Deduplikation; zwei Resultsets | Erstes X, zweites Leerzeichen | SQL | | 5314-D043 | ''SCHNITT_KaDeWeZa_PEP_DIFF.tsExport'' | SELECT | Lösch-/Neulieferung und Deduplikation; zwei Resultsets | Erstes X, zweites Leerzeichen | SQL | | 5314-D044 | ''SCHNITT_KaDeWeZa_PEP_DIFF.— Zeilen'' | DELETE | Alte Datensätze nicht in #temp, OHNE Datumsfilter löschen | Nicht nur ausgegebene Löschzeilen | SQL | | 5314-D045 | ''SCHNITT_KaDeWeZa_PEP_DIFF.Person'' | INSERT | Restliche neue Planung | #temp | SQL | | 5314-D046 | ''SCHNITT_KaDeWeZa_PEP_DIFF.Datum'' | INSERT | Restliche neue Planung | #temp | SQL | | 5314-D047 | ''SCHNITT_KaDeWeZa_PEP_DIFF.Datensatz'' | INSERT | Restliche neue Planung | #temp | SQL | | 5314-D048 | ''SCHNITT_KaDeWeZa_PEP_DIFF.tsExport'' | UPDATE | GETDATE für gesamten Bestand | Nach Ausgabe, in VB-Transaktion | SQL | | 5314-D049 | ''SCHNITT_KaDeWeZa_PEP_DIFF.ID'' | IDENTITY | DB erzeugt neue ID; PK ist Datensatz | INSERT gemäß Update0714 | DDL | ===== 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. ===== Gemeinsame Nebenwirkungen BASE ===== ==== Einstellungen ==== ^ Beziehung ^ Schlüssel / Variable ^ Default ^ Einfluss ^ Wirkung ^ Beleg ^ | BASE-S001 | ''MAIL_SCHNITTSTELLEONSUCCESS'' / ''MAIL_SchnittstelleOnSuccess'' | False | Basis | Direkte Mail bei Result 0 oder1, nicht MANUELL/SILENT | BASE:BASE, BASE:SET | | BASE-S002 | ''MAIL_SCHNITTSTELLEONERROR'' / ''MAIL_SchnittstelleOnError'' | False | Basis | Direkte Mail bei Result 1 oder2, nicht MANUELL/SILENT | BASE:BASE, BASE:SET | | BASE-S003 | ''SCHNITT_MELDUNG_SchnittstelleOnSuccess'' / ''SCHNITT_MELDUNG_SchnittstelleOnSuccess'' | False | Basis/API | sendmail=1 bei Result 0 oder1, nicht MANUELL/SILENT; API-Meldung sonst weiterhin sendmail=0 | BASE:BASE, BASE:SET | | BASE-S004 | ''SCHNITT_MELDUNG_SchnittstelleOnError'' / ''SCHNITT_MELDUNG_SchnittstelleOnError'' | True | Basis/API | sendmail=1 bei Result 1 oder2, nicht MANUELL/SILENT | BASE:BASE, BASE:SET | | BASE-S005 | ''MAIL_SCHNITTSTELLETO'' / ''MAIL_SchnittstelleTo'' | leer | Mail | Ersatz bei leerem MAILTO; Semikolonliste | BASE:MAIL, BASE:SET | | BASE-S006 | ''MAIL_SMTP_SERVER'' / ''MAIL_SMTPServer'' | leer | SMTP | Server für direkten Versand | BASE:MAIL, BASE:SET | | BASE-S007 | ''MAIL_USER'' / ''MAIL_User'' | leer | SMTP | Nichtleer setzt NetworkCredential und überschreibt Defaultcredentials | BASE:MAIL, BASE:SET | | BASE-S008 | ''MAIL_PASS'' / ''MAIL_Pass'' | leer; verschlüsselte Einstellung | SMTP | Passwort für explizite Credentials; kein Geheimnis dokumentiert | BASE:MAIL, BASE:SET | | BASE-S009 | ''MAIL_USEDEFAULTCREDENTIALS'' / ''MAIL_UseDefaultCredentials'' | False | SMTP | SmtpClient.UseDefaultCredentials; ggf. durch MAIL_USER überschrieben | BASE:MAIL, BASE:SET | | BASE-S010 | ''MAIL_SSL'' / ''MAIL_SSL'' | True | SMTP | SmtpClient.EnableSsl | BASE:MAIL, BASE:SET | | BASE-S011 | ''MAIL_TESTADRESSE'' / ''MAIL_TestAdresse'' | nichtleere Testadresse im Quellcode (Wert bewusst nicht kopiert) | SMTP | Nichtleer ersetzt tatsächlichen To-Empfänger, auch wenn MAILTO gesetzt | BASE:MAIL, BASE:SET | | BASE-S012 | ''MAIL_FROM'' / ''MAIL_From'' | leer | SMTP | Absenderadresse | BASE:MAIL, BASE:SET | | BASE-S013 | ''MAIL_FROM_NAME'' / ''MAIL_FromName'' | leer | SMTP | Absendername | BASE:MAIL, 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 | ==== Datenbeziehungen ==== DB-Rolle Anmeldung; Logging über cInfoTools-Verbindung. Keine Geheimnisse/Livewerte. Indizes verknüpfen jede Mitglieds-ID mit diesen Beziehungen, auch wenn die Details nur einmal stehen. ^ Beziehung ^ Tabelle.Feld ^ Operation ^ Datenfluss / Verwendung ^ Bedingung ^ Beleg ^ | BASE-D001 | ''Dokumente.oFilename'' | INSERT | MAIL_BODY | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D002 | ''Dokumente.oFilesize'' | INSERT | Byteanzahl Body | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D003 | ''Dokumente.Daten'' | INSERT | cFn.StringToByteArray(MailBody) | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D004 | ''Dokumente.UserID'' | INSERT | dbo.fnUserId() | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D005 | ''Dokumente.ts'' | INSERT | getdate() | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D006 | ''Outbox.mTo'' | INSERT | MAILTO oder MAIL_SCHNITTSTELLETO; je Semikolonadresse | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D007 | ''Outbox.mCc'' | INSERT | leer | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D008 | ''Outbox.mFrom'' | INSERT | leer | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D009 | ''Outbox.mSubject'' | INSERT | Statusabhängiger Betreff | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D010 | ''Outbox.mBodyID'' | INSERT | ID des gespeicherten Bodys | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D011 | ''Outbox.mBodyHtml'' | INSERT | False | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D012 | ''Outbox.mDelayUntil'' | INSERT | getdate() | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D013 | ''Outbox.mStatus'' | INSERT | 1 | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D014 | ''Outbox.mSize'' | INSERT | Bodyzeichenanzahl (ohne Anhänge) | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D015 | ''Outbox.refArt'' | INSERT | 0 | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D016 | ''Outbox.RefID'' | INSERT | 0 | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D017 | ''Outbox.MailArt'' | INSERT | 5 (SchnittstellenMeldung) | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D018 | ''Outbox.UserID'' | INSERT | fnUserId() | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D019 | ''Outbox.ts'' | INSERT | getdate() | Direkte Rückmeldung aktiviert | BASE:MAIL | | BASE-D020 | ''Outbox.ID'' | SELECT | SendOutbox(5): fällige Mails; auch frühere Outbox-Einträge derselben MailArt | Versandpfad | BASE:MAIL | | BASE-D021 | ''Outbox.mFrom'' | SELECT | SendOutbox(5): fällige Mails; auch frühere Outbox-Einträge derselben MailArt | Versandpfad | BASE:MAIL | | BASE-D022 | ''Outbox.mTo'' | SELECT | SendOutbox(5): fällige Mails; auch frühere Outbox-Einträge derselben MailArt | Versandpfad | BASE:MAIL | | BASE-D023 | ''Outbox.mCc'' | SELECT | SendOutbox(5): fällige Mails; auch frühere Outbox-Einträge derselben MailArt | Versandpfad | BASE:MAIL | | BASE-D024 | ''Outbox.mBodyID'' | SELECT | SendOutbox(5): fällige Mails; auch frühere Outbox-Einträge derselben MailArt | Versandpfad | BASE:MAIL | | BASE-D025 | ''Outbox.mSubject'' | SELECT | SendOutbox(5): fällige Mails; auch frühere Outbox-Einträge derselben MailArt | Versandpfad | BASE:MAIL | | BASE-D026 | ''Outbox.mBodyHtml'' | SELECT | SendOutbox(5): fällige Mails; auch frühere Outbox-Einträge derselben MailArt | Versandpfad | BASE:MAIL | | BASE-D027 | ''Outbox.mStatus'' | SELECT | SendOutbox(5): fällige Mails; auch frühere Outbox-Einträge derselben MailArt | Versandpfad | BASE:MAIL | | BASE-D028 | ''Outbox.mDelayUntil'' | SELECT | SendOutbox(5): fällige Mails; auch frühere Outbox-Einträge derselben MailArt | Versandpfad | BASE:MAIL | | BASE-D029 | ''Outbox.MailArt'' | SELECT | SendOutbox(5): fällige Mails; auch frühere Outbox-Einträge derselben MailArt | Versandpfad | BASE:MAIL | | BASE-D030 | ''Outbox.mSent'' | UPDATE | Erfolg → getdate() | Versandpfad | BASE:MAIL | | BASE-D031 | ''Outbox.mStatus'' | UPDATE | Erfolg → 0; Fehler → +1, bei Status 20 pauschal -1 ohne WHERE | Versandpfad | BASE:MAIL | | BASE-D032 | ''Outbox.mDelayUntil'' | UPDATE | Fehler → Staffel 2/5/10/30 Minuten; ab Status 12 CASE ohne ELSE → NULL | Versandpfad | BASE:MAIL | | BASE-D033 | ''Dokumente.ID'' | SELECT | Body/Anhänge laden | Versandpfad | BASE:MAIL, BASE:DOC | | BASE-D034 | ''Dokumente.oFilename'' | SELECT | Body/Anhänge laden | Versandpfad | BASE:MAIL, BASE:DOC | | BASE-D035 | ''Dokumente.Daten'' | SELECT | Body/Anhänge laden | Versandpfad | BASE:MAIL, BASE:DOC | | BASE-D036 | ''OutboxAttachment.OutBoxID'' | SELECT | Anhangszuordnung; diese Basisaufrufe erstellt selbst keine Anhänge | SendOutbox kann ältere Mailart-5-Einträge versenden | BASE:MAIL | | BASE-D037 | ''OutboxAttachment.DokumenteID'' | SELECT | Anhangszuordnung; diese Basisaufrufe erstellt selbst keine Anhänge | SendOutbox kann ältere Mailart-5-Einträge versenden | BASE:MAIL | | BASE-D038 | ''Pep3Log.UserID'' | INSERT | fnUserId() | InfoLevel >= GLOBAL_LOGLEVEL, DB-Logging möglich | BASE:LOG | | BASE-D039 | ''Pep3Log.Datum'' | INSERT | getdate() | InfoLevel >= GLOBAL_LOGLEVEL, DB-Logging möglich | BASE:LOG | | BASE-D040 | ''Pep3Log.Kurz'' | INSERT | Kurztext max255 | InfoLevel >= GLOBAL_LOGLEVEL, DB-Logging möglich | BASE:LOG | | BASE-D041 | ''Pep3Log.LogText'' | INSERT | Protokoll | InfoLevel >= GLOBAL_LOGLEVEL, DB-Logging möglich | BASE:LOG | | BASE-D042 | ''Pep3Log.Modul'' | INSERT | Modulname max50 | InfoLevel >= GLOBAL_LOGLEVEL, DB-Logging möglich | BASE:LOG | | BASE-D043 | ''Pep3Log.InfoLevel'' | INSERT | Start/Erfolg=51; Importfehler=102; weitere Mail-Meldungen | InfoLevel >= GLOBAL_LOGLEVEL, DB-Logging möglich | BASE:LOG | | 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 | ==== Weitere Ausgänge und Grenzen ==== Logdateien unter ApplicationData/PEP/LogFiles; kontextabhängig Windows-Eventlog. Start/Erfolg InfoLevel 51, Importfehler 102; Schwellen beeinflussen Persistenz. SQL-fnUserId liest tblUser anhand RIGHT(SUSER_NAME(),25). API Send(MELDUNG) nutzt Anmeldungskontext und fest codierten Endpoint; dessen Serverimplementierung fehlt in dieser Quellenbasis (Q01). 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 ===== ^ 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]] | | B | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/PEP4/cSchnittstellen/Programme/Schnittstellen/Zalaris/cSchnittZalarisPEP.vb|PEP4/cSchnittstellen/Programme/Schnittstellen/Zalaris/cSchnittZalarisPEP.vb]] | | SQL | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/Sqlfiles/PEP4Functions/SCHNITT_KaDeWeZa_PEP.sql|Sqlfiles/PEP4Functions/SCHNITT_KaDeWeZa_PEP.sql]] | | PAUSE | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/Sqlfiles/PEP4Functions/SCHNITT_ZALARIS_PAUSE.sql|Sqlfiles/PEP4Functions/SCHNITT_ZALARIS_PAUSE.sql]] | | DDL | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/Sqlfiles/PEP4Update/update_0714.sql|Sqlfiles/PEP4Update/update_0714.sql]] | | SET, BASE:SET | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/PEP4/ZW/Einstellungen/cEinstellungenZw.vb|PEP4/ZW/Einstellungen/cEinstellungenZw.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:API | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/PEP4/cSchnittstellen/cApiCall.vb|PEP4/cSchnittstellen/cApiCall.vb]] | | BASE:LOG | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/PEP4/cTools/cInfoTools.vb|PEP4/cTools/cInfoTools.vb]] | | BASE:INIT | [[https://github.com/seegerstefan/pep4desktop/blob/f1d82a003b62f2658f06eaa943dc685ab219bdf3/PEP4/ZW/Einstellungen/cSetting.vb|PEP4/ZW/Einstellungen/cSetting.vb]] | | 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]] | Siehe auch: [[schnittstellen:schnittstellen|Übersicht der Schnittstellen]]. Keine Ausführung oder Codekorrektur.