FlowHeater Demo Video
 
Der Daten Import / Export Spezialist
 
Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:
Schauen Sie sich auch die verfügbaren Beispiele zum Access Adapter an evtl. kann Ihre Frage hiermit schon beantwortet werden: CSV Import , Testdaten erzeugen , Automatisierter Batch Export
  • Seite:
  • 1

THEMA:

Datenimport einer .txt Datei zu Access 1 Monat 1 Woche her #4119

  • Peter Müller
  • Peter Müllers Avatar Autor
  • Offline
  • Beiträge: 2
Hallo zusammen,

ich würde gerne eine Textdatei in Access importieren.

Meine Textdatei sieht von der Struktur so aus:

000000121214
0000002Artikel
0000003Meschriftung 1
0000003Meschriftung 2
0000003Meschriftung 3
0000003Meschriftung 4
0000003Meschriftung 5
0000003Meschriftung 6
000000710070,50
000000121215
0000002Artikel
0000003Meschriftung 1
0000003Meschriftung 2
000000710070,50
000000121216
0000002Artikel
0000003Meschriftung 1
0000003Meschriftung 2
0000003Meschriftung 3
0000003Meschriftung 4
0000003Meschriftung 5
0000003Meschriftung 6
0000003Meschriftung 7
000000712070,50

.... und zusammen sind es dann 400.000 Einträge.

Nun würde ich diese Einträge gerne in eine Access Datenbank importieren. Das besondere ist aber, dass ich unter dem Code 0000003 mehrere Einträge habe, das dann vermutlich zu mehreren Datensätzen führen wird. Oder?

Meine Frage, kann flowheater mir die Daten in Access übertragen und wie kann ich das in flowheater anlegen?

Viele Grüße Peter

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Datenimport einer .txt Datei zu Access 1 Monat 1 Woche her #4120

  • FlowHeater-Team
  • FlowHeater-Teams Avatar
  • Offline
  • Beiträge: 1580
Hallo Herr Müller,

das ist etwas Tricky aber machbar :-) Das Problem ist, dass in Ihrer Textdatei die Feldnamen nicht per Trennzeichen vom Inhalt separiert sind. Im Anhang habe ich Ihnen mal ein Beispiel inkl. Access Datenbank erstellt. Hier werden die Felder mit dem Code „0000003“ per Trennzeichen „#“ getrennt in einem Feld zusammenfasst. Falls Sie was anderes benötigen einfach nochmal etwas konkreter schreiben was genau benötigt wird.

Vorgehensweise Punkte siehe Screenshot
  1. Über diese beiden SubString Heater  werden die Feldnamen vom Feldinhalt separiert.

  2. Dann wir eine GroupBy Heater  benötigt, der alle Zeilen die zu einem Datensatz gehören zu einem zusammenfasst. In Ihrem Fall habe ich den Code bzw. Feldnamen „0000001“ verwendet.

  3. Dann benötigen Sie für jedes Feld, das Sie auf die WRITE Seite übertragen möchten einen IF-THEN-ELSE Heater  der prüft, welche Code bzw. Feldname gerade verarbeitet wird. Das wird benötigt, damit im Access Datenbankfeld auch wirklich nur der richtige Inhalt geschrieben wird.

  4. Beim Feldnamen bzw. Code „0000003“ wird zusätzlich noch ein String Append Heater  benötigt, der alle vorhandenen Feldinhalte anhand der Gruppierung zusammenfügt, hier wurde das Trennzeichen „#“ verwendet, kann aber beliebig geändert werden.
Das Beispiel erzeugt mit Ihrer Beispiel Textdatei 3 Datensätze in der Access Datenbank . Gerne können wir das Beispiel noch weiter anpassen. Hierzu bitte aber etwas besser beschreiben wie die Daten bzw. in welche (evtl. unterschiedliche) Tabellen die Inhalte importiert werden sollen.



Dateianhang:

Dateiname: line-based-import.zip
Dateigröße:20 KB

gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Anhänge:

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Letzte Änderung: von FlowHeater-Team.

Datenimport einer .txt Datei zu Access 1 Monat 1 Woche her #4121

  • Peter Müller
  • Peter Müllers Avatar Autor
  • Offline
  • Beiträge: 2
Vielen Dank für die schnelle Antwort!

Nur nochmal zur
Erklärung: Die 7 Ziffern "0000001" beschreiben den ersten
Artikel und die Beschreibung endet vor der nächsten
"0000001".
Dieser "Bereich" ist allerdings
sehr unterschiedlich lang, weil zu Ziffer "0000003" machmal
10 oder mehr Einträge existiert.

Wenn man die Textfelder
"0000003" in ein Datenfeld mit # trennt, kann man
vermutlich diese Daten nicht sehr gut in gegen andere Daten laufen
lassen oder? Ich möchte nämlich verschiedene csv Tabellen gegen die
"Übernahme Textdatei" laufen lassen.
Außerdem sind die„Codefelder“ nicht einfach fortlaufend, sondern zum Teil fehlen
auch Ziffern, aber der Code ist immer eindeutig, also also
Beschriftung. Der Code 1454545 ist z.B. immer der Einkaufspreis.


Ich dachte die Struktur sollte dann wie folgt aussehen:


0000000(KEY); 0000001(ID Artikel ), 0000002(Artikelname),
0000003 (Beschriftung 1)
0000000(KEY); 0000001(ID Artikel ),
0000002(Artikelname), 0000003 (Beschriftung 2)
0000000(KEY);
0000001(ID Artikel ), 0000002(Artikelname), 0000003 (Beschriftung
3)
0000000(KEY); 0000001(ID Artikel ), 0000002(Artikelname),
0000003 (Beschriftung 4)
0000000(KEY); 0000001(ID Artikel ),
0000002(Artikelname), 0000003 (Beschriftung 5)
0000000(KEY);
0000001(ID Artikel ), 0000002(Artikelname), 0000003 (Beschriftung
6)

Oder macht die Struktur dann keinen Sinn für "einen"
Artikel?
Gerne würde ich die Daten weiter analysieren, bin aber
noch nicht wirklich sicher, wie ich das am besten angehen soll.

Gibt es von Ihnenauch eine Libreoffice Adapter?


VG Peter

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Datenimport einer .txt Datei zu Access 1 Monat 1 Woche her #4122

  • FlowHeater-Team
  • FlowHeater-Teams Avatar
  • Offline
  • Beiträge: 1580
Hallo Herr Müller,

ich denke das habe ich soweit verstanden. Haben Sie die Definition mal ausgeführt? Das Ergebnis ist folgendes.



Ein Artikel beginnt mit dem Code 0000001 und es ist egal wieviel weitere Felder folgen. Die Beschriftungen werden dynamisch (je nach vorkommen) in das Feld geschrieben. Mit den IF-THEN-ELSE Bedingungen definieren Sie, welche Felder (CODE) sie auf die WRITE Seite übernehmen möchten. Was nicht definiert ist wird überlesen.

Es wäre auch möglich die Felder in separate Felder, der gleichen Tabelle, oder aber in zusätzliche Tabelle als separate Datensätze zu importieren. Wenn Sie Beschreiben wie es aussehen soll kann ich dazu ein Beispiel erstellen.

PS: Es gibt im FlowHeater leider keinen nativen Adapter für LibreOffice. Falls Sie den ODBC Treiber für LibreOffice Base installiert haben können Sie dafür den ODBC Adapter verwenden.

gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Anhänge:

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Letzte Änderung: von FlowHeater-Team.
  • Seite:
  • 1

andere Sprachen

en

FlowHeater Home

de en

Impressum/Kontakt

Datenschutz

Copyright © 2009-2021 by FlowHeater GmbH.
Alle Rechte vorbehalten.

Follow us on

twitter  facebook

YouTube

 de en