Autor Thema: Datenimport aus Ansi-Datei  (Gelesen 1495 mal)

Offline KiTaMann

  • Aktives Mitglied
  • ***
  • Beiträge: 111
  • Geschlecht: Männlich
  • Nimm Platz in meiner Datenbank!
Datenimport aus Ansi-Datei
« am: 08.03.06 - 12:22:58 »
Hallo zusammen,

ich möchte die Daten einer ANSI-Textdatei in meine Datenbank importieren.

Der Aufbau eines Datensatzes sieht wie folgt aus:


123456789012  2 KLEIN, ERNA
               IRGENDWOSTR. 8
               12345  SONSTWO
               4
               20.05.1962
              GROSS
               BERUFSBEZEICHNUNG
               28.01.1998

Die erste Zahl ist die Personalnummer (Länge 12 Stellen)
Die nächste Ziffer repräsentiert das Geschlecht und ist 1-stellig
Es folgen (in einem Feld) Name und Vorname, durch Komma getrennt
In Zeile 2 stehen Straße und Hausnummer (ein Feld)
In Zeile 3 stehen PLZ und Ort (ein Feld)
Zeile 4 repräsentiert den Familienstand (1-stellig)
Zeile 5 = Geburtsdatum
Zeile 6 = Geburtsname
Zeile 7 = Ausgeübte Tätigkeit
Zeile 8 = Eintrittsdatum

Import über ExCel/ 1-2-3 scheidet aus, weil sich die Daten nicht in Spalten darstellen lassen.

Habe es auch schon mit meinen rudimentären Skriptkenntnissen und passender (?) Lektüre probiert, aber ich weiß gar nicht, wo ich da „anpacken“ soll, da die Felder nur Inhalte, aber keine Bezeichnungen haben; wie kann ich die Zeilenschaltungen interpretieren? Wie kann ich das Ende des Datensatzes bezeichnen oder wie kann LS es erkennen, wenn das Ende doch ebenfalls eine Zeilenschaltung ist? Woher weiß LS dann, wann der nächste Datensatz beginnt?


... Fragen über Fragen ...


Wer kann helfen?

Grüße

Klaus
Gruß Klaus

"Alle Menschen sind klug.
Die einen vorher, die anderen nachher."

Glombi

  • Gast
Re: Datenimport aus Ansi-Datei
« Antwort #1 am: 08.03.06 - 12:36:49 »
Das musst Du mit Script importieren. Ich habe das mal skizziert:

Dim text As String
   Dim fileNum As Integer
   
   Dim linecounter As Integer
   
   fileNum = Freefile()
   linecounter = 1   
   Open "e:\test.txt" For Input As fileNum
   Do While Not Eof(fileNum)
      
      Line Input #fileNum, text
      
      Select Case linecounter
      Case 1:   
         Personalnummer = Left$( text, 12)
         Geschlecht = Mid$(text,15,1)
         
         Print Personalnummer
         Print Geschlecht
      Case 2:
         strasse = Trim$(text)
         
         Print strasse
      End Select      
      
      
      
      If linecounter = 8 Then
         'Letzte Zeile eingelesen         
         
         'Erstelle Dokument
         '...
         
         'setze Zähler zurück
         linecounter = 1
      Else
         linecounter = linecounter + 1
      End If
      
   Loop
   Close fileNum

Andreas

Offline KiTaMann

  • Aktives Mitglied
  • ***
  • Beiträge: 111
  • Geschlecht: Männlich
  • Nimm Platz in meiner Datenbank!
Re: Datenimport aus Ansi-Datei
« Antwort #2 am: 08.03.06 - 12:41:22 »
Besten Dank!

Werde ich gleich (nach meinem Meeting) mal ausprobieren - und mich danach wieder mailden.

Grüße

Klaus
Gruß Klaus

"Alle Menschen sind klug.
Die einen vorher, die anderen nachher."

Offline KiTaMann

  • Aktives Mitglied
  • ***
  • Beiträge: 111
  • Geschlecht: Männlich
  • Nimm Platz in meiner Datenbank!
Re: Datenimport aus Ansi-Datei
« Antwort #3 am: 08.03.06 - 13:50:43 »
@Andreas

Geniaaaaaaaaaaal!

Ist ja irre, wieviele Leerzeichen hier trans- bzw. importiert werden - Trim$eiDank!

Nochmals herzlichen Dank!

Klaus
Gruß Klaus

"Alle Menschen sind klug.
Die einen vorher, die anderen nachher."

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz