Unter UNIX verwendet man gern Textdateien mit festen Satzlänge zum Speichern von Adreßdaten. Wenn man als Auftragnehmer solche Textdateien mit einigen Hundert Adressen bekommt, zusammen mit einer Tabelle von "Satzbeschreibungen", dann ist man meist ratlos:
HerrHolger Müller 02763Zittau Hubertusweg 7 076432323
HerrKarsten Rückel 02763Olbersdorf Dorfstr. 12 035835544
FrauLieselotteBrückner 02763OberseifersdorfAm Steilhang 035836622
...
und noch 10000de weitere Adressen...
Satzbeschreibung:
Anfang Länge
ANREDE 1 4
VORNAME 5 10
NACHNAME 15 13
PLZ 28 5
ORT 33 15
STRASSE 48 16
TELEFON 64 16
Satzlänge 80 Zeichen
In WINcontact kann man den Import einer solchen Adressendatei jedoch entspannt angehen, denn auch dafür läßt sich nach ein paar Vorarbeiten, die wir Ihnen jetzt erläutern werden, ein Importskript erstellen. Dazu wird die ODBC-Schnittstelle von Windows ausgenutzt. Die Schritte sind:
- ODBC-Schnittstelle konfigurieren
- Importskript erstellen
- Datenimport durchführen
(die folgenden beispielhaften Ausführungen und Screenshots beziehen sich auf das Betriebssystem Windows VISTA)
Als Erstes legen Sie einen neuen Ordner an, in dem Sie die zu importierende Textdatei kopieren:
1. Konfigurierung der ODBC-Schnittstelle
Jetzt wechseln Sie in die Systemsteuerung und öffnen dort den Dialog "ODBC-Datenquellenadministrator" oder -alternativ - geben Sie in das Suchfeld von Windows VISTA die vier Buchstaben "ODBC" ein. Folgendes Fenster öffnet sich:
Hier müssen Sie auf die Seite "System-DNS" wechseln und einen neuen Treiber hinzufügen, und zwar in unserem Fall den deutschen Microsoft-Texttreiber:
Im Folgedialog wird die Eingabe eines Namens für die neuen ODBC-Datenquelle verlangt - eventuell mit einer kurzen Beschreibung über Sinn und Zweck (wir nennen sie hier UNIXIMPORT). Als nächstes entfernen Sie die Markierung bei "Aktuelles Verzeichnis" und wählen im dafür vorgesehenen Dialog den Ordner aus, in dem sich die zu importierende Datei befindet.
Die neue Datenquelle wird jetzt im System-DNS-Bereich des ODBC-Datenquellenadministrators angezeigt und muß nur noch konfiguriert werden. Das kann entweder sofort geschehen oder nachträglich erledigt werden (Funktion "Format definieren").
Drücken Sie jetzt auf "Konfigurieren" und nehmen Sie die notwendigen Einstellungen vor ("Optionen" öffnen und "Format definieren"):
Hier ist nur wichtig, daß Sie die richtige Textdatei auswählen und als Format "feste Länge" festlegen. Außerdem gibt es für Sie noch die Alternative, entweder den ANSI oder den OEM-Zeichensatz auszuwählen (ANSI sollte die richtigen Umlaute bringen).
Jetzt können Sie die neue ODBC-Datenquelle auf ihrem Computer speichern.
Achtung:
Der Feld- und Datentyp-Zuweisungsdialog hat einen Bug. Wenn Sie versuchen, bereits hier (wie vorgesehen), die einzelnen Felder gemäß der Feldbeschreibungstabelle für die Textdatei festzulegen, erhalten Sie beim Speichern eine Fehlermeldung. Deshalb müssen wir die notwendigen Eintragungen "per Hand" in der automatisch erzeugten Datei "schema.ini" vornehmen.
Anpassen der Datei "schema.ini"
Sie können diese Datei mit jedem Texteditor öffnen (gewähnlich reicht ein Doppelklick darauf). Sie enthält für jede Textdatei, die sich im Ordner befindet, einen ini-Abschnitt, wobei Sie (wenn Sie möchten) alle Abschnitte löschen können außer dem Abschnitt, der für die zu importierende Textdatei zuständig ist:
[unix_adressen.txt]
ColNameHeader=False
Format=FixedLength
MaxScanRows=25
CharacterSet=OEM
Dieser Abschnitt muß nun mit den für die Textdatei gültigen Feldbeschreibungen (jedes Feld hat den Namem COL+Feldnummer, also COL1, COL2 etc.) ergänzt werden, wobei folgende Syntax gilt:
COLn=[Spaltenname] [Datentyp] WIDTH [Feldlänge]
also gemäß unserer Beispiel-Satzbeschreibung
WIDTH
ANREDE 4
VORNAME 10
NACHNAME 13
PLZ 5
ORT 15
STRASSE 16
TELEFON 16
COL1=ANREDE CHAR WIDTH 4
COL2=VORNAME CHAR WIDTH 10
COL3=NACHNAME CHAR WIDTH 13
COL4=PLZ CHAR WIDTH 5
COL5=ORT CHAR WIDTH 15
COL6=STRASSE CHAR WIDTH 16
COL7=TELEFON CHAR WIDTH 16
Unter UNIX verwendet man gern Textdateien mit festen Satzlänge zum Speichern von Adreßdaten. Wenn man als Auftragnehmer solche Textdateien mit einigen Hundert Adressen bekommt, zusammen mit einer Tabelle von "Satzbeschreibungen", dann ist man meist ratlos:
HerrHolger Müller 02763Zittau Hubertusweg 7 076432323
HerrKarsten Rückel 02763Olbersdorf Dorfstr. 12 035835544
FrauLieselotteBrückner 02763OberseifersdorfAm Steilhang 035836622
...
und noch 10000de weitere Adressen...
Satzbeschreibung:
Anfang Länge
ANREDE 1 4
VORNAME 5 10
NACHNAME 15 13
PLZ 28 5
ORT 33 15
STRASSE 48 16
TELEFON 64 16
Satzlänge 80 Zeichen
In WINcontact kann man den Import einer solchen Adressendatei jedoch entspannt angehen, denn auch dafür läßt sich nach ein paar Vorarbeiten, die wir Ihnen jetzt erläutern werden, ein Importskript erstellen. Dazu wird die ODBC-Schnittstelle von Windows ausgenutzt. Die Schritte sind:
Als Erstes legen Sie einen neuen Ordner an, in dem Sie die zu importierende Textdatei kopieren:

Jetzt wechseln Sie in die Systemsteuerung und öffnen dort den Dialog "ODBC-Datenquellenadministrator" oder -alternativ - geben Sie in das Suchfeld von Windows VISTA die vier Buchstaben "ODBC" ein. Folgendes Fenster öffnet sich:





Jetzt können Sie die neue ODBC-Datenquelle auf ihrem Computer speichern.
Achtung:
Der Feld- und Datentyp-Zuweisungsdialog hat einen Bug. Wenn Sie versuchen, bereits hier (wie vorgesehen), die einzelnen Felder gemäß der Feldbeschreibungstabelle für die Textdatei festzulegen, erhalten Sie beim Speichern eine Fehlermeldung. Deshalb müssen wir die notwendigen Eintragungen "per Hand" in der automatisch erzeugten Datei "schema.ini" vornehmen.
Anpassen der Datei "schema.ini"
Sie können diese Datei mit jedem Texteditor öffnen (gewähnlich reicht ein Doppelklick darauf). Sie enthält für jede Textdatei, die sich im Ordner befindet, einen ini-Abschnitt, wobei Sie (wenn Sie möchten) alle Abschnitte löschen können außer dem Abschnitt, der für die zu importierende Textdatei zuständig ist:
Dieser Abschnitt muß nun mit den für die Textdatei gültigen Feldbeschreibungen (jedes Feld hat den Namem COL+Feldnummer, also COL1, COL2 etc.) ergänzt werden, wobei folgende Syntax gilt:
COLn=[Spaltenname] [Datentyp] WIDTH [Feldlänge]
also gemäß unserer Beispiel-Satzbeschreibung
so daß die vollständige Schema-Datei am Ende folgendermaßen aussieht:
[unix_adressen.txt]
ColNameHeader=False
Format=FixedLength
MaxScanRows=25
CharacterSet=OEM
COL1=ANREDE CHAR WIDTH 4
COL2=VORNAME CHAR WIDTH 10
COL3=NACHNAME CHAR WIDTH 13
COL4=PLZ CHAR WIDTH 5
COL5=ORT CHAR WIDTH 15
COL6=STRASSE CHAR WIDTH 16
COL7=TELEFON CHAR WIDTH 16
Damit sind die Vorbereitungsarbeiten beendet.
2. Importskript erstellen
Die Erstellung des Importskriptes in WINcontact unterscheidet sich nur in den ersten Schritten (Verbindungsherstellung) von der herkömmlichen Entwicklung eines Importskriptes.
Die Verbindung zur neues ODBC-Datenquelle muß über den Datenbank-Verbindungswizard hergestellt werden:
Der Verbindungsstring muß die ODBC-Datenquelle referieren, weshalb wir als Provider "Microsoft OLE DB Provider for ODBC-Drivers" auswählen:
Mit "Weiter" gelangt man in einen Folgedialog
in dem Sie aus der Klappbox "Datenquellennamen verwenden" nur den Namen der zuvor von uns im System eingerichteten ODBC-Datenquelle auswählen. Der anschließende Test ("Verbindung testen") sollte erfolgreich verlaufen und Sie können anschließen den Verbindungswizard schließen.
Jetzt sollten Sie die Daten im Import-Wizard wohlgeordnet in Spalten sehen können:
so daß die vollständige Schema-Datei am Ende folgendermaßen aussieht:
Damit sind die Vorbereitungsarbeiten beendet.
Die Erstellung des Importskriptes in WINcontact unterscheidet sich nur in den ersten Schritten (Verbindungsherstellung) von der herkömmlichen Entwicklung eines Importskriptes.
Die Verbindung zur neues ODBC-Datenquelle muß über den Datenbank-Verbindungswizard hergestellt werden:



Jetzt sollten Sie die Daten im Import-Wizard wohlgeordnet in Spalten sehen können:

Keine Kommentare:
Kommentar veröffentlichen