Inhaltsverzeichnis

Schnittstelle 7022: PCS-Zeitdaten importieren

Dokumentiert / statisch geprüft: 2026-10-02. Statisch dokumentiert; Nutzerprüfung offen. Keine Schnittstelle ausgeführt.

Identität und Quellenstand

eProgramm.PcsZeitdaten = 7022. Aktive feste Registrierung → cSchnittPcs.ImportZeitdaten (E,P). Registrierung und erreichbare Quellen geprüft; installierte Binärdateien ungeprüft. 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.

Parameter und Datei-/DB-Eingang

PFAD (FileImport) vorhandene Jet4.0-PCS-Datenbank. Keine CSV als Eingang. SELECT * INTUSCOM_UPLOAD_BOOKINGS; alle Providerfelder werden ohne Header/Quotes/Escaping mit ';' und abschließendem ';' in ApplicationDirectory/BACKUP/yyyyMMdd_HHmmss_PCS_TIME.csv gesichert (StreamWriter StandardUTF8). Reihenfolge unbekannter weiterer Felder hängt am PCS-Schema; ausdrücklich verbraucht werden nur die fünf aufgeführten Felder. BACKUP wird nicht angelegt; gleicher Timestamp kann Sicherung überschreiben.

BOOKING_DATE yyyyMMdd und BOOKING_TIME HHmmss über DateSerial/TimeSerial; ungültig→DateTime.MinValue. RECORD_TYPE getrimmt, nur erstes Zeichen als Kennung. Uhren.Art7/CLng(Adresse) muss zu CLng(TERMINAL_ID) passen. Unbekannte Terminals werden nur archiviert, nicht übernommen oder gelöscht.

Fach-SP, Quittierung und Ausgänge

ZeitbuchungAddTransponder @Transponder,@Datum,@Terminal,@Kennung,NULL,@UseTransponder2. Anders als7031 kein vorgelagerter ZeitereignisseImportiert-Marker. Kennung ist nicht auf K/G eingeschränkt: normale Zeitereignisse/Buffer, '-'→Tuer, 'L'→ZuordnungPnrTransponder_tmp mit NULL-Personalnummer möglich. NULL-Kennzeichen aktiviert gegebenenfalls CALC_ZE_KOSTENSTELLE_EINTRAGEN; TOP1 ITPEP-Fallback hat keinen Personenfilter/ORDER BY. Das kann falsche Hauptgruppen liefern.

Nach SQL ohne Exception löscht PCS nach Ausweis/Datum/Uhrzeit, nicht Terminal oder RECORD_TYPE. Dadurch können weitere gleichzeitige Buchungen mitgelöscht werden, auch nicht selbst übernommene Gegenstellenzeilen. Bufferfall gilt ebenfalls als SQL-Erfolg und wird quittiert. Kein gemeinsamer Transaction-/Quittierungsvertrag zwischen beiden DBs.

Fehler und Wiederholung

PerZeile SQL- und PCS-DELETE-Fehler werden still gefangen; GesamtTrue trotz Fehler. Bei erfolgreichem SQL aber fehlgeschlagener Löschung bleibt Quellbuchung für Retry. Fach-SP-Dedup mit NULL-Kennzeichen ist nicht nullsicher; doppelte Ereignisse/Buffer/Türdaten möglich. Kein fachliches UPDATE von Zeiten, kein Calc-Aufruf.

CStatus-Personenfilter tautologisch; normale neue Zeitereignisse markieren sämtliche gültigen aktiven Personen des Tages auf1, nicht ts. Äußere Fehler→False/LEGACY. Kein BASE-Mail/API, keine SQL_TIMEOUT-Zuweisung.

Einstellungen und gemeinsame Nebenwirkungen

Gemeinsames Profil: LEGACY (interne Referenz).

Beziehung Schlüssel / Variable Default Einflussweg Wirkung Beleg
7022-S001 Terminal_UseTransponder2 / Terminal_UseTransponder2 False Fach-SP sechstes Argument Zusätzlicher Transponder2-Vergleich B,PID,ZW
7022-S002 CALC_ZE_KOSTENSTELLE_EINTRAGEN / CALCZEKostenstelleEintragen 0 SQL GetEinstellungZw bei KennzeichenNULL TOP1 Hauptgruppe ohne Personenfilter: potentielle fremde Kostenstelle ADD,GET,ZW

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
7022-D001 Uhren.ID SELECT Art7/Adresse→TerminalID VB verwirft Adresskonvertierungs-/Duplikatfehler still B
7022-D002 Uhren.FilialID SELECT Art7/Adresse→TerminalID VB verwirft Adresskonvertierungs-/Duplikatfehler still B
7022-D003 Uhren.Adresse SELECT Art7/Adresse→TerminalID VB verwirft Adresskonvertierungs-/Duplikatfehler still B
7022-D004 Uhren.Art SELECT Art7/Adresse→TerminalID VB verwirft Adresskonvertierungs-/Duplikatfehler still B
7022-D005 PCS:INTUSCOM_UPLOAD_BOOKINGS.TERMINAL_ID SELECT SELECT * archiviert alle Providerfelder; diese5 fachlich verbraucht Nur bekannte numerische Terminal_ID für SQL-Import B
7022-D006 PCS:INTUSCOM_UPLOAD_BOOKINGS.TIMEID_NO SELECT SELECT * archiviert alle Providerfelder; diese5 fachlich verbraucht Nur bekannte numerische Terminal_ID für SQL-Import B
7022-D007 PCS:INTUSCOM_UPLOAD_BOOKINGS.BOOKING_DATE SELECT SELECT * archiviert alle Providerfelder; diese5 fachlich verbraucht Nur bekannte numerische Terminal_ID für SQL-Import B
7022-D008 PCS:INTUSCOM_UPLOAD_BOOKINGS.BOOKING_TIME SELECT SELECT * archiviert alle Providerfelder; diese5 fachlich verbraucht Nur bekannte numerische Terminal_ID für SQL-Import B
7022-D009 PCS:INTUSCOM_UPLOAD_BOOKINGS.RECORD_TYPE SELECT SELECT * archiviert alle Providerfelder; diese5 fachlich verbraucht Nur bekannte numerische Terminal_ID für SQL-Import B
7022-D010 PCS:INTUSCOM_UPLOAD_BOOKINGS.— Zeilen DELETE WHERE TIMEID_NO,BOOKING_DATE,BOOKING_TIME Nach SQL ohne Exception; Terminal/RECORD_TYPE fehlen im Löschschlüssel B
7022-D011 Personen.PersonID SELECT Transponderauflösung mit Nullenpadding und Schalter2 Genau eine gültige Joinzeile; DATEFIRST-Bit PID,TV
7022-D012 Personen.Transponder SELECT Transponderauflösung mit Nullenpadding und Schalter2 Genau eine gültige Joinzeile; DATEFIRST-Bit PID,TV
7022-D013 Personen.Transponder2 SELECT Transponderauflösung mit Nullenpadding und Schalter2 Genau eine gültige Joinzeile; DATEFIRST-Bit PID,TV
7022-D014 Personen.ZETage SELECT Transponderauflösung mit Nullenpadding und Schalter2 Genau eine gültige Joinzeile; DATEFIRST-Bit PID,TV
7022-D015 Personen.Eintritt SELECT Transponderauflösung mit Nullenpadding und Schalter2 Genau eine gültige Joinzeile; DATEFIRST-Bit PID,TV
7022-D016 Personen.Austritt SELECT Transponderauflösung mit Nullenpadding und Schalter2 Genau eine gültige Joinzeile; DATEFIRST-Bit PID,TV
7022-D017 Personen.InZw SELECT Transponderauflösung mit Nullenpadding und Schalter2 Genau eine gültige Joinzeile; DATEFIRST-Bit PID,TV
7022-D018 Personen.aktiv SELECT Transponderauflösung mit Nullenpadding und Schalter2 Genau eine gültige Joinzeile; DATEFIRST-Bit PID,TV
7022-D019 ITORGA.PersonenStammID SELECT Gültige Personenauflösung Buchungstag PID
7022-D020 ITORGA.von SELECT Gültige Personenauflösung Buchungstag PID
7022-D021 ITORGA.bis2 SELECT Gültige Personenauflösung Buchungstag PID
7022-D022 Uhren.ID SELECT Terminalfiliale Terminal muss existieren ADD
7022-D023 Uhren.FilialID SELECT Terminalfiliale Terminal muss existieren ADD
7022-D024 ITUmbuchung.PersonID SELECT Konkrete/NULL-Altfiliale Person/Tag ADD
7022-D025 ITUmbuchung.FilialeAlt SELECT Konkrete/NULL-Altfiliale Person/Tag ADD
7022-D026 ITUmbuchung.FilialeNeu SELECT Konkrete/NULL-Altfiliale Person/Tag ADD
7022-D027 ITUmbuchung.von SELECT Konkrete/NULL-Altfiliale Person/Tag ADD
7022-D028 ITUmbuchung.bis2 SELECT Konkrete/NULL-Altfiliale Person/Tag ADD
7022-D029 Filialen.FilialID SELECT Aktive Ziel-Filiale Nach Umbuchung ADD
7022-D030 Filialen.aktiv SELECT Aktive Ziel-Filiale Nach Umbuchung ADD
7022-D031 Zeitereignisse.Datum SELECT/INSERT Dedup über6 Felder, neues Ereignis Person/Filiale aufgelöst; Kennung nicht '-' ADD
7022-D032 Zeitereignisse.PersonID SELECT/INSERT Dedup über6 Felder, neues Ereignis Person/Filiale aufgelöst; Kennung nicht '-' ADD
7022-D033 Zeitereignisse.Terminal SELECT/INSERT Dedup über6 Felder, neues Ereignis Person/Filiale aufgelöst; Kennung nicht '-' ADD
7022-D034 Zeitereignisse.Kennzeichen SELECT/INSERT Dedup über6 Felder, neues Ereignis Person/Filiale aufgelöst; Kennung nicht '-' ADD
7022-D035 Zeitereignisse.Kennung SELECT/INSERT Dedup über6 Felder, neues Ereignis Person/Filiale aufgelöst; Kennung nicht '-' ADD
7022-D036 Zeitereignisse.Filiale SELECT/INSERT Dedup über6 Felder, neues Ereignis Person/Filiale aufgelöst; Kennung nicht '-' ADD
7022-D037 Zeitereignisse.ts INSERT GETDATE Neues Ereignis ADD
7022-D038 ZeitereignisseBuffer.Datum SELECT/INSERT Nicht aufgelöst, QuelleT; NULL-Gleichheit nicht sicherer Dedup Kennung nicht '-' ADD
7022-D039 ZeitereignisseBuffer.Zeitausweis SELECT/INSERT Nicht aufgelöst, QuelleT; NULL-Gleichheit nicht sicherer Dedup Kennung nicht '-' ADD
7022-D040 ZeitereignisseBuffer.Terminal SELECT/INSERT Nicht aufgelöst, QuelleT; NULL-Gleichheit nicht sicherer Dedup Kennung nicht '-' ADD
7022-D041 ZeitereignisseBuffer.Kennzeichen SELECT/INSERT Nicht aufgelöst, QuelleT; NULL-Gleichheit nicht sicherer Dedup Kennung nicht '-' ADD
7022-D042 ZeitereignisseBuffer.Kennung SELECT/INSERT Nicht aufgelöst, QuelleT; NULL-Gleichheit nicht sicherer Dedup Kennung nicht '-' ADD
7022-D043 ZeitereignisseBuffer.PersonenStammID SELECT/INSERT Nicht aufgelöst, QuelleT; NULL-Gleichheit nicht sicherer Dedup Kennung nicht '-' ADD
7022-D044 ZeitereignisseBuffer.Filiale SELECT/INSERT Nicht aufgelöst, QuelleT; NULL-Gleichheit nicht sicherer Dedup Kennung nicht '-' ADD
7022-D045 ZeitereignisseBuffer.Quelle SELECT/INSERT Nicht aufgelöst, QuelleT; NULL-Gleichheit nicht sicherer Dedup Kennung nicht '-' ADD
7022-D046 ITZeit.PersonenStammID SELECT Transponderauflösung Buchungstag PID
7022-D047 ITZeit.von SELECT Transponderauflösung Buchungstag PID
7022-D048 ITZeit.bis2 SELECT Transponderauflösung Buchungstag PID
7022-D049 ITZeit.IsAktiv SELECT Transponderauflösung Buchungstag PID
7022-D050 EinstellungenZw.Einstellung SELECT Unvalidierter Kostenstellenrohwert NULL-Kennzeichen GET,ADD
7022-D051 EinstellungenZw.Wert SELECT Unvalidierter Kostenstellenrohwert NULL-Kennzeichen GET,ADD
7022-D052 ITPEP.von SELECT TOP1 gültige Hauptgruppe; Person nicht gefiltert CALC_ZE_KOSTENSTELLE_EINTRAGEN<>0 ADD
7022-D053 ITPEP.bis SELECT TOP1 gültige Hauptgruppe; Person nicht gefiltert CALC_ZE_KOSTENSTELLE_EINTRAGEN<>0 ADD
7022-D054 ITPEP.HauptGruppe SELECT TOP1 gültige Hauptgruppe; Person nicht gefiltert CALC_ZE_KOSTENSTELLE_EINTRAGEN<>0 ADD
7022-D055 ITPEP.Pepgruppe SELECT TOP1 gültige Hauptgruppe; Person nicht gefiltert CALC_ZE_KOSTENSTELLE_EINTRAGEN<>0 ADD
7022-D056 Tuer.Datum SELECT/INSERT '-' als Tür, keine Berechnung NULL in Kennzeichen kann Dedup unwirksam machen ADD
7022-D057 Tuer.Zeitausweis SELECT/INSERT '-' als Tür, keine Berechnung NULL in Kennzeichen kann Dedup unwirksam machen ADD
7022-D058 Tuer.Terminal SELECT/INSERT '-' als Tür, keine Berechnung NULL in Kennzeichen kann Dedup unwirksam machen ADD
7022-D059 Tuer.Kennzeichen SELECT/INSERT '-' als Tür, keine Berechnung NULL in Kennzeichen kann Dedup unwirksam machen ADD
7022-D060 Tuer.Kennung SELECT/INSERT '-' als Tür, keine Berechnung NULL in Kennzeichen kann Dedup unwirksam machen ADD
7022-D061 Tuer.Filiale SELECT/INSERT '-' als Tür, keine Berechnung NULL in Kennzeichen kann Dedup unwirksam machen ADD
7022-D062 Tuer.PersonenStammID SELECT/INSERT '-' als Tür, keine Berechnung NULL in Kennzeichen kann Dedup unwirksam machen ADD
7022-D063 ZuordnungPnrTransponder_tmp.Datum SELECT/INSERT L-Kennung als Lernzuordnung Personalnummer=NULL übergeben; Schemagrenze ADD
7022-D064 ZuordnungPnrTransponder_tmp.Personalnummer SELECT/INSERT L-Kennung als Lernzuordnung Personalnummer=NULL übergeben; Schemagrenze ADD
7022-D065 ZuordnungPnrTransponder_tmp.Transponder SELECT/INSERT L-Kennung als Lernzuordnung Personalnummer=NULL übergeben; Schemagrenze ADD
7022-D066 CStatus.PersonenStammID SELECT ITZeit-Join und Tagesfilter SQL enthält @PersonID=@PersonID statt Personen-Spaltenfilter ADD
7022-D067 CStatus.Datum SELECT ITZeit-Join und Tagesfilter SQL enthält @PersonID=@PersonID statt Personen-Spaltenfilter ADD
7022-D068 ITZeit.PersonenStammID SELECT Aktive Statuspersonen des Tages Markierung kann alle aktiven Personen am Tag betreffen ADD
7022-D069 ITZeit.von SELECT Aktive Statuspersonen des Tages Markierung kann alle aktiven Personen am Tag betreffen ADD
7022-D070 ITZeit.bis2 SELECT Aktive Statuspersonen des Tages Markierung kann alle aktiven Personen am Tag betreffen ADD
7022-D071 ITZeit.IsAktiv SELECT Aktive Statuspersonen des Tages Markierung kann alle aktiven Personen am Tag betreffen ADD
7022-D072 CStatus.CStatus UPDATE 1 Keine Berechnung; tautologischer Personenfilter ADD

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). Externe Betriebs-/Schemaabweichungen sind nicht durch die statische Analyse ausgeschlossen.

Gemeinsame Nebenwirkungen LEGACY

Block17 ergänzt6001/6002/6003/6004/6005 ausschließlich für direkte Info-/Dialog-/Logmeldungen; keine BASE-Mail/API. Parameter, Auswahl, Return und Fachwirkung jeID.

Block16 ergänzt explizit3031/3032/3041/3042/3060/3500 für die direkten Info-/Logmeldungen. Keine BASE-Vererbung bzw. Mail-/API-Nebenwirkung; Fachdateien/SQL/Returns pro ID prüfen. Keine pauschale Übernahme alter Dateiverträge.

Stand 2026-10-02; statisch geprüft am Commit f1d82a003b62f2658f06eaa943dc685ab219bdf3. Mitglieder ausschließlich durch expliziten Profilverweis: Block 07, IDs 2000, 2001, 2010, 2020, 3020, 3021, 3030, 3040, 3050, 3070.

Block 13: Profil für 1067,1070,1073 nur bezüglich direkter cInfoTools-Dialog-/Logmeldungen und ihrer zwei Einstellungen wiederverwendet. Deren Datei-/Rückgabe-/Timeout-/Folgeaufrufverträge stehen ausschließlich in den Einzelbeschreibungen; die nachfolgenden Block-07-PFAD-/Return-Aussagen sind keine pauschale Behauptung für diese drei neuen IDs.

Block14 nutzt LEGACY ausschließlich für direkte Info-/Logpfade von 1100,1101,1102,1103,1200,1207,1208,1209,1223. Keine pauschale Übernahme der nachfolgenden Block07-Datei-/Rückgabeverträge; konkrete Unterschiede stehen je ID. 1203 verwendet nur direkten MsgBox-Fehlerpfad und ist kein Mitglied.

Block15 ergänzt ausdrücklich 1224/1225/1226/1320/1360/1400/1401/2021/2023 sowie die Veraltet-Stubs 2028/2029/2032/2046/2047/2048. Nur direkte Info-/Logpfade; konkrete Datei-/Return-/Timeoutverträge stehen je ID. Die sechs Stubs erben als Klasse zwar BASE, instanziieren aber nichts und rufen deren Start/Ende nicht auf. 2022 hat keinen solchen Pfad.

Abgrenzung und Ablauf

Die belegten LEGACY-Einstiege rufen cSchnitt_Basis.Start/Ende nicht auf. Die ursprünglichen Block-07-Klassen erben auch nicht von der Basis; für spätere statische Stubs gilt dagegen nur die fehlende Start-/Ende-Ausführung. Deshalb keine BASE-Mail-/API-/Outboxbeziehungen übernehmen. MAILTO wird zwar von cProgramm angelegt, aber hier nicht ausgewertet; ebenso keine fachliche Auswertung von MANUELL oder SILENT. RunWithDialog setzt MANUELL. Dialogunterdrückung kommt aus Settings.Info.SupressDialogs (Clientkonstruktor False, Worker True), kein belegter ZW-Schlüssel.

Die folgenden Datei-/Return-Aussagen gelten für Block 07, nicht pauschal für spätere Profilmitglieder. PFAD ist FileImport, auch bei den Exporten 2001/3021: vorhandene Datei erforderlich, OpenFileDialog statt SaveFileDialog. Der lokale Registrywert PEP3/PFADESCHNITT/<ID> speichert den zuletzt verwendeten Ordner; dies ist keine serverseitige Systemeinstellung. Fehlender PFAD-Schlüssel ergibt False mit Fehlermeldung. Value.ToString bei Nothing liegt vor dem Fach-Try und kann ungefangen abbrechen. Datei-Existenzprüfung und Startmeldung liegen ebenfalls davor.

Meldungen: ShowProgrammStart/ShowProgrammEndeSuccessDialog mit Level 51, ShowProgrammEndeErrorDialog 102, ShowExceptionDialog 105 → ZeigeInfoEvent, ggf. Dialog, Log. Kein Nachweis über externe Event-Abonnentenwirkungen. Dialog kann unterdrückt sein, Logging bleibt separat. Die acht Ausführen-Funktionen außer 2010/3070 haben keinen abschließenden Return und liefern deshalb Boolean False, auch wenn Daten geändert wurden. 2020/3020 und die beiden Exporte haben zusätzlich im Fachhelfer keinen Return; dort wird bereits Success=False und ein Fehlerdialog gewählt. 2000/3030/3040/3050 können Erfolg melden und dennoch False liefern.

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

Quellenverzeichnis

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