Inhaltsverzeichnis
Schnittstelle 1058 – Anteile für Kostenkonten importieren
Die Schnittstelle 1058 liest Anteile aus einer Datei und fügt neue Kombinationen in KRKostenKontenAnteil ein. Vorhandene Kombinationen und deren Anteil bleiben unverändert. Umsätze wird nicht direkt geändert.
Eingabedatei
PFAD verlangt eine vorhandene Datei. Der Parser nutzt UTF-8, Semikolon, Rand-Leerraumkürzung und Anführungszeichen für eingeschlossene Felder. Es gibt keinen ausdrücklichen Header-Skip. Außen prüft der Code nur mindestens zwei Felder, verwendet tatsächlich aber vier. Eine zu kurze Zeile kann einen Zeilenfehler auslösen. Weitere Felder werden ignoriert; kein Archiv.
| Position | Zielfeld | Verarbeitung |
|---|---|---|
| 1 | KRKostenKonto | Konto-ID; numerische Vorprüfung nur für dieses Feld. |
| 2 | KRDatenquelle | Datenquellen-ID. |
| 3 | KRKostenstelle | Kostenstellen-ID. |
| 4 | Anteil | Wert unverändert; keine Division durch 100 oder Summenprüfung. |
Die SQL-Parameter sind als Float angelegt, obwohl die drei Schlüsselspalten bigint sind. Kultur und Zahlenbereich können die Umwandlung beeinflussen. Der Datenbank-Default 0 für Anteil ersetzt kein fehlendes Dateifeld, weil die Routine den Parameter ausdrücklich bindet.
Datenfluss und Ergebnis
Eine direkte IF NOT EXISTS-Prüfung vergleicht KRKostenKonto, KRDatenquelle und KRKostenstelle. Fehlt die Kombination, folgt ein INSERT dieser Felder und von Anteil. Es gibt keinen UPDATE, DELETE oder fachlichen SP-Aufruf. Konto und Datenquelle bilden im untersuchten Schema eine zusammengesetzte Referenz; die Kostenstelle muss ebenfalls existieren. Das prüft der SQL Server über Fremdschlüssel, nicht ein eigener Leseaufruf der Anwendung.
Wiederholung ändert bestehende Anteile nicht. Bei Dateiduplikaten bleibt der erste erfolgreich eingefügte Wert. Es gibt keine Gesamttransaktion oder parallele atomare Upsert-Sicherung; ein späterer Fehler lässt frühere Inserts bestehen.
Einstellungen
Keine direkte fachliche ZW-Einstellung; SQL_TIMEOUT wird nicht ausdrücklich gesetzt. Die gemeinsame Basis verwendet bedingt GLOBAL_LOGLEVEL, GLOBAL_LOGLEVELEVLOG, MAIL_SCHNITTSTELLEONSUCCESS, MAIL_SCHNITTSTELLEONERROR, SCHNITT_MELDUNG_SchnittstelleOnSuccess, SCHNITT_MELDUNG_SchnittstelleOnError und beim Versand MAIL_SCHNITTSTELLETO, MAIL_SMTP_SERVER, MAIL_USER, MAIL_PASS, MAIL_USEDEFAULTCREDENTIALS, MAIL_SSL, MAIL_TESTADRESSE, MAIL_FROM und MAIL_FROM_NAME. MANUELL, SILENT und MAILTO sind Laufparameter.
Technische Referenz
| Merkmal | Wert |
|---|---|
| Programmkennung | 1058 / ImpKRAnteilKostenKonto |
| Einstieg | cSchnittKRAnteil.Import_AnteilKostenKonto |
| Fachlicher Ausgang | KRKostenKontenAnteil; nur INSERT neuer Vier-Feld-Sätze |
| Fachliches SQL | Direkte Existenzprüfung und INSERT; keine fachliche SP |
Siehe auch
Prüfstand
Am 25.09.2026 aus der statischen Analyse des Quellcommits f1d82a003b62f2658f06eaa943dc685ab219bdf3 übernommen. Analyse vom 18.09.2026; kein Importlauf oder produktiver Schemaabgleich bestätigt.