FlexLend - Leserdatenimport (TAB-separated-Datei)
Import von Leserstammdaten über eine Text-Datei (TAB-separated) unter Allegro-C/a99
Stand: 26.01.2017
Funktion
Import einer TAB-separated-Datei mit Daten aus MS-Office in Leserstammsätze für Allegro-C/$A-Schema
- die einzulesende Datei wird daraufhin geprüft, ob die erste Zeile mit dem Begriff "Lesername" beginnt; trifft das nicht zu, wird die Datei abgewiesen
- als Primärschlüssel wird der Lesercode aus #9B$$(1,0) oder, wenn das Feld "Lesername" leer ist, #9B$i verwendet
- ist ein Satz mit diesem Code bereits in der Datenbank vorhanden, werden dessen Felder mit den neuen Inhalten überschrieben
- ist ein Satz mit dem Lesercode nicht vorhanden, wird er neu angelegt
- steht im Feld "Nachname" ein "-", wird der betreffende Satz gelöscht, wenn keine Medien oder offene Gebühren im Konto vermerkt sind
- nach dem Import wird die Datei mit einem Zeitstempel im Namen versehen und umbenannt
- Der Dateiname und die Leserklasse können per Kommandozeile übergeben werden: Beispiel: usr-ben-imp -k c:\datei.csv -k S
Bedienung
Start mit "X ben-imp" im Schreibfeld von a99 oder Auswahl über
"Funktionen (0)" - "Import"
Danach wird nacheinander vom Programm abgefragt:
- Auswahl der zu importierenden Datei über den nach Start angebotenen Datei-Dialog
- Leserklassencode, der für die Stammdatensätze zu verwenden ist
- Importmodus: sofortiges Speichern oder Testimport
Beim Testimport werden die Daten eingelesen, aber noch nicht in der Datenbank gespeichert. Dadurch kann man die Daten über die Schaltfläche [Daten in Bearb.] inspizieren und u.U. danach mittels 'Datei - alle bearb. Daten speichern' in die Datenbank übernehmen
Hinweis:
Bei der a99-Funktion 'Datei - alle bearb. Daten speichern' gibt es keine Fortschrittsanzeige - a99 scheint während der Übernahme wie eingefrohren - es arbeitet jedoch und meldet sich nach Abschluss mit der Zahl der importierten Sätze im Schreibfeld. Dieses Verhalten ist leider nicht über die Parametrierung beeinflussbar.
Für einen
automatischen Start des Imports nach Aufruf von a99.exe trägt man das Script ben-imp mit Parametern in das Feld "Initialisierungen" der Datenbank-Konfiguration ein.
Kommandozeilenparameter
Option |
Bedeutung |
Beispiel |
-f |
zu importierende Date mit vollem Pfad |
-fy:\transfer\leser.txt |
-k |
Standard-Leserklasse für neue Leser |
-k2 |
Konkordanz
TSV-Feld Allegro-Leserstammsatz
Feldbezeichner Kategorie Bedeutung
-------------------------------------------------------
Lesername #9B$$(1,0) Leser-ID
Nachname #9B$n Name, Vorname
Vorname #9B$n dto.
Strasse-Nr #9B$s Strasse
Wohnort #9B$o Ort
PLZ #9B$p PLZ
Email #9B$e E-Mail-Adresse
Telefon #9B$t Telefon
Geschlecht #9B$u Geschlecht
Karten_ID #9B$i zweite Leser-ID
Satz-ID = Lesername = #9B$$(1,0);
Für neue Leser wird Leserklasse 1 für #9B$k vorgegeben oder der Inhalt aus dem Parameter -k
Der Lesersatz wird gelöscht, wenn im Feld "Nachname" ein "-" übergeben wird, es sei denn, im Konto liegen noch Belastungen vor.
Um die Verwendung von Kennungen aus Feld #9B$i zur Identifizierung der Leserstammsätze zu ermöglichen, muss die Indexierung dieses Teilfeldes in der cat.api ergänzt ( |:B{#9B$i} ) werden.
In diesem Fall wird die Kennung aus dem Feld "Karten_ID" für das Feld #9A$i verwendet und bei neuen Lesern die Leser-ID vom Programm generiert.
Als Codepage wird für die zu importierenden Daten CP1252 angenommen.
History:
07.01.2009 Urversion
06.02.2011 überarbeitet
06.03.2011 Löschfunktion ergänzt
31.03.2011 Löschfunktion: Prüfung auf Gebühren ergänzt
24.01.2013 Parameter -f und -k ergänzt
17.01.2017 Dokumentation überarbeitet
Dateien: ben-imp.flx, ben-imp.rtf
Artikel zuletzt bearbeitet am: 02.03.2017 10:21