Inhaltsverzeichnis

Schnittstelle 1210: Personaldatei aus Aprocon

Diese technische Referenz beschreibt die Eingänge, Ausgänge und aktiven Codepfade von Personaldatei 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.ImpPersonalApc = 1210. Aktive feste Registrierung → cSchnittPersonalAproconFile.Ausführen; Projekteinschluss bestätigt (E,P,PRJ). Active=True, InAutomatik=True und ManuellerAufruf=True (Registrierung bzw. Klassendefault); NurAufServer=False (Default bzw. Registrierung). Keine Aussage über eingerichtete Automatik oder produktive Nutzung.

Zweck und Dateivertrag

PFAD=FileImport, BASE-SetFile prüft Datei. Encoding.Default, Semikolon, Quotes/Trim, keine Kopfzeilenbehandlung/Feldzahlprüfung. Positionen ab1:1 PersonID (NzLong),2 Vorname,3 Nachname (NzStr). Leere/nichtnumerische ID wird übersprungen bzw.0. Staging SCHNITT_Namen global TRUNCATE → INSERT → dbo.SCHNITT_ApcPersonen.

SQL-Wirkung

Nur fehlende Personen anlegen, Nachname/Vorname und ApcID=PersonID. Bestehende Personen aus Staging löschen, deren Namen nicht aktualisieren. Neue Personen Eintritt/StartZW auf01.01.2020, ITZeit/ITORGA mit festen Basis-IDs1/von2020 erzeugen. Fehlende Basisstämme1 anlegen; RMCalc/RMPause nur wenn auch RM1 neu ist. Uhren für alle Filialen erzeugen, deren FilialID noch keine gleichnamige Uhren.ID besitzt.

Betrieb und Befunde

Keine fachliche ZW-Einstellung zusätzlich zur Basis. Commands30s, keine SP-Timeoutüberschreibung/Transaktion/Archivierung/Calc. U463 bestätigt Namenstaging, weitere Ergänzungen sind Schemaabhängigkeit. Gefangener Importfehler setzt Fehlerstatus1; Abschluss/Fehlerfrei sind separat von Fachteilstand. 1210-F01: Die Bezeichnung Personalimport bedeutet nicht Personalaktualisierung; vorhandene Namen/IT-Sätze bleiben unverändert. 1210-F02: Feste 2020-Beginne/Basis-IDs und breite Uhrenanlage vor Test klären (Q13). Test: doppelte Datei, vorhandene Person mit geändertem Namen, fehlendes RMCalc bei bestehendem RM1, fremde Filialen.

Systemeinstellungen und gemeinsame Nebenwirkungen

Gemeinsames Profil: BASE (interne Referenz).

Keine zusätzliche fachliche ZW-Einstellung im lokalen Importpfad gelesen. Timeoutwerte stehen im Betriebsabschnitt, nicht automatisch SQL_TIMEOUT zuordnen.

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
1210-D001 SCHNITT_Namen.— Zeilen TRUNCATE Gesamtes Staging Vor Dateilesen B
1210-D002 SCHNITT_Namen.PersonID INSERT Pos1/3/2 aus Datei Aktiver Pfad; kein Laufzeitnachweis B
1210-D003 SCHNITT_Namen.Nachname INSERT Pos1/3/2 aus Datei Aktiver Pfad; kein Laufzeitnachweis B
1210-D004 SCHNITT_Namen.Vorname INSERT Pos1/3/2 aus Datei Aktiver Pfad; kein Laufzeitnachweis B
1210-D005 SCHNITT_Namen.PersonID SELECT Nur neue Personen SP-Pfad SQL
1210-D006 SCHNITT_Namen.Nachname SELECT Nur neue Personen SP-Pfad SQL
1210-D007 SCHNITT_Namen.Vorname SELECT Nur neue Personen SP-Pfad SQL
1210-D008 SCHNITT_Namen.— Zeilen DELETE Bereits bestehende PersonIDs aus Staging entfernen Nach Ausgabe neuer IDs SQL
1210-D009 Personen.PersonID SELECT/INSERT Datei-ID; Neuanlage bei fehlender Person SP-Pfad SQL
1210-D010 Personen.Nachname INSERT Dateinamen und ApcID=PersonID Nur neue Personen SQL
1210-D011 Personen.Vorname INSERT Dateinamen und ApcID=PersonID Nur neue Personen SQL
1210-D012 Personen.ApcID INSERT Dateinamen und ApcID=PersonID Nur neue Personen SQL
1210-D013 Personen.Eintritt UPDATE 01.01.2020 Nur im Lauf neu angelegte Personen SQL
1210-D014 Personen.StartZW UPDATE 01.01.2020 Nur im Lauf neu angelegte Personen SQL
1210-D015 RMZuschlag.ID SELECT/INSERT 1/BASIS Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D016 RMZuschlag.Bezeichnung SELECT/INSERT 1/BASIS Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D017 RMRahmen.ID SELECT/INSERT 1/BASIS Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D018 RMRahmen.Bezeichnung SELECT/INSERT 1/BASIS Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D019 RM.ID SELECT/INSERT 1/Standard/getdate Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D020 RM.Bezeichnung SELECT/INSERT 1/Standard/getdate Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D021 RM.ts SELECT/INSERT 1/Standard/getdate Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D022 RMCalc.RMID SELECT/INSERT 1/1.1.2000/1/1 (nur wenn RM1 fehlte) Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D023 RMCalc.von SELECT/INSERT 1/1.1.2000/1/1 (nur wenn RM1 fehlte) Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D024 RMCalc.RMZuschlagID SELECT/INSERT 1/1.1.2000/1/1 (nur wenn RM1 fehlte) Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D025 RMCalc.RMRahmenID SELECT/INSERT 1/1.1.2000/1/1 (nur wenn RM1 fehlte) Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D026 RMPause.RMID SELECT/INSERT 1/1.1.2000 (nur wenn RM1 fehlte) Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D027 RMPause.von SELECT/INSERT 1/1.1.2000 (nur wenn RM1 fehlte) Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D028 RMAZPlan.ID SELECT/INSERT 1/getdate Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D029 RMAZPlan.ts SELECT/INSERT 1/getdate Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D030 AuszahlungsGruppen.ID SELECT/INSERT 1/BASIS Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D031 AuszahlungsGruppen.Bezeichnung SELECT/INSERT 1/BASIS Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D032 Regionen.ID SELECT/INSERT 1/BASIS Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D033 Regionen.Bezeichnung SELECT/INSERT 1/BASIS Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D034 Filialen.FilialID SELECT/INSERT 1/BASIS/1 Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D035 Filialen.Bezeichnung SELECT/INSERT 1/BASIS/1 Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D036 Filialen.Region SELECT/INSERT 1/BASIS/1 Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D037 Abteilungen.AbteilungID SELECT/INSERT 1/BASIS Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D038 Abteilungen.Bezeichnung SELECT/INSERT 1/BASIS Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D039 Hierarchiestufen.HiID SELECT/INSERT 1/BASIS Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D040 Hierarchiestufen.HiBezeichnung SELECT/INSERT 1/BASIS Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D041 Kostenstellen.ID SELECT/INSERT 1/BASIS Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D042 Kostenstellen.Bezeichnung SELECT/INSERT 1/BASIS Fehlende Basis; RMCalc/Pause nur RM-neu SQL
1210-D043 ITZeit.PersonenStammID INSERT PersonID/1.1.2020/1/1/1 Nur neue Personen SQL
1210-D044 ITZeit.von INSERT PersonID/1.1.2020/1/1/1 Nur neue Personen SQL
1210-D045 ITZeit.RMID INSERT PersonID/1.1.2020/1/1/1 Nur neue Personen SQL
1210-D046 ITZeit.RMAZPlanID INSERT PersonID/1.1.2020/1/1/1 Nur neue Personen SQL
1210-D047 ITZeit.Auszahlung INSERT PersonID/1.1.2020/1/1/1 Nur neue Personen SQL
1210-D048 ITORGA.PersonenStammID INSERT PersonID/1.1.2020/1/1/1/1 Nur neue Personen SQL
1210-D049 ITORGA.von INSERT PersonID/1.1.2020/1/1/1/1 Nur neue Personen SQL
1210-D050 ITORGA.Filiale INSERT PersonID/1.1.2020/1/1/1/1 Nur neue Personen SQL
1210-D051 ITORGA.Abteilung INSERT PersonID/1.1.2020/1/1/1/1 Nur neue Personen SQL
1210-D052 ITORGA.Hierarchiestufe INSERT PersonID/1.1.2020/1/1/1/1 Nur neue Personen SQL
1210-D053 ITORGA.Kostenstelle INSERT PersonID/1.1.2020/1/1/1/1 Nur neue Personen SQL
1210-D054 Filialen.FilialID SELECT Uhrenanlage für alle Filialen SP-Ende SQL
1210-D055 Filialen.Bezeichnung SELECT Uhrenanlage für alle Filialen SP-Ende SQL
1210-D056 Uhren.ID SELECT/INSERT FilialID/Filialbezeichnung/FilialID/0; fehlt Uhren-ID Alle Filialen, nicht nur Importfiliale SQL
1210-D057 Uhren.Bezeichnung SELECT/INSERT FilialID/Filialbezeichnung/FilialID/0; fehlt Uhren-ID Alle Filialen, nicht nur Importfiliale SQL
1210-D058 Uhren.FilialID SELECT/INSERT FilialID/Filialbezeichnung/FilialID/0; fehlt Uhren-ID Alle Filialen, nicht nur Importfiliale SQL
1210-D059 Uhren.Art SELECT/INSERT FilialID/Filialbezeichnung/FilialID/0; fehlt Uhren-ID Alle Filialen, nicht nur Importfiliale SQL

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übersicht

Gemeinsame Rückmeldung

Die Basis kann abhängig von MAIL_SCHNITTSTELLEONSUCCESS/ONERROR, MAIL_SCHNITTSTELLETO und SMTP-Einstellungen Mail speichern/versenden (Dokumente/Outbox). SCHNITT_MELDUNG_SchnittstelleOnSuccess/OnError steuert sendmail der Rückmeldungs-API, nicht deren gesamten Aufruf. MANUELL unterdrückt Mail, SILENT beendet den Abschluss früh. GLOBAL_LOGLEVEL/GLOBAL_LOGLEVELEVLOG steuert Logging (Pep3Log/Eventlog). Keine Fachimporttransaktion und kein API-Erfolgsnachweis; Serverwirkung bleibt ungeprüft.

Quellen je Datei

Repository: seegerstefan/pep4desktop, master, obiger Commit. Je Datei ein Quellenlink; Kürzel in den Tabellen. Private Git-Quellen setzen Zugriffsrechte voraus.

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.

Übersicht aller Schnittstellen