- Beiträge: 32
alle Files eines Ordners einlesen
- Tim
- Autor
- Offline
- Benutzer
Um alle *.html files eines Ordners auszuwerten, muss ich eine Mimik erstellen, die sämtliche files aus einem bestimmten Ordner liest.
Über einen FileHeater versuche ich das bereits ohne Erfolg.
Muss ich dafür tatsächlich ein Net-Heater nehmen oder ist diese Möglichkeit bereits anderweitig implementiert und ich finde sie nur nicht?
Danke
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
ich vermute mal Sie möchten nicht einzelne HTML Dateien nacheinander über eine Definition verarbeiten? Hierzu könnten Sie die Batch Option /ReadFileName mit Wildcards verwenden.
z.B.
FHBatch.exe /ReadFileName C:\Temp\*.html import_html_files.fhd
Ansonsten führt hier kein Weg am .NET Script vorbei. Das Skript ist aber relativ klein und überschaubar
In der Anlage ist ein Beispiel wie das über Parameter optimiert werden kann.
Anhang read_html_files.zip wurde nicht gefunden.
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.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Mario
- Offline
- Benutzer
- Beiträge: 22
zu diesem Thema hätten wir nun auch eine Frage.
Wir haben letzte Woche eine Lizenz erworben und wollen nun
Batches für unsere Definitionen erstellen.
Wir laden Daten von verschiedenen FTP-Servern unserer Partner in einen TEMP Ordner. D.H. es gilt auf der Read Seite mehrere Dokumente automatisch einzulesen.
Diese Dateien haben aber leider keine Dateiendung, sie sind lediglich vom Typ "Datei". In der Definition können Sie als Textdatei behandelt werden.
Wie gehen wir nun am besten vor?
Ich habe Ihr .NET Beispiel aus diesem Thread angeschaut, wobei ich sagen muss dass ich das nicht ganz nachvollziehen kann.
Sie haben auch die Möglichkeit erwähnt das über eine Batch Option zu regeln.
Wie müsste diese aussehen um die Dateien ohne Endung einzulesen? (evtl. *.* ?)
An welcher Stelle muss das dann eingegeben werden?
In der DOS Box oder wenn wir die CMD Datei erstellen?
Vielen Dank vorab für Ihre Hilfe!
Mit freundlichem Gruss
Mario Brunner
Spedition Fink
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
das Beispiel in diesem Beitrag ist sehr speziell. Sie müssen lediglich den Aufruf über FHBatch.exe anpassen.
z.B.
FHBatch.exe /ReadFileName C:\Temp\*.* IHRE-IMPORT-DEFINITION.fhd
So werden alle Dateien im Verzeichnis C:\Temp\ mittels der angegebenen Definition verarbeitet/importiert.
Diesen Aufruf können Sie entweder direkt im DOS Fenster (cmd.exe) eingeben oder aber in ein CMD/BAT Skript einbauen. Das Skript könnte dann zuerst Ihre Dateien vom FTP Server herunterladen und anschließend rufen Sie im Skript noch das Batch Modul auf. Wenn Sie dieses Skript über den Windows Aufgabenplaner aufrufen läuft Ihr Import vollkommen automatisiert.
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.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Mario
- Offline
- Benutzer
- Beiträge: 22
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Mario
- Offline
- Benutzer
- Beiträge: 22
das mit der Batch Automatisierung funktioniert bei uns noch nicht. Folgende CMD Datei habe ich angelegt:
@echo off
C:\Program Files\FlowHeater V2\BIN\FHBatch.exe
\SAM\Daten_DPD\*.* DPD.fhd
Zur Erläuterung:
*die FHBatch.exe liegt an exakt der Stelle wie oben angegeben
*Unter \SAM\Daten_DPD\ liegen mehrere .csv Dateinen, deswegen die *.* formulierung - korrekt?!
*die DPD.fhd haben wir auch in exakt diesem Ordner abgelegt - korrekt?!
*Mir ist nicht ganz klar ob man den Ort der zu lesenden Dateien angibt oder den Ablageort der .fhd Datei.
Im Video sah es so aus als gehe es um den Ort der .fhd Datei, wenn ich aber Ihren Beitrag hier im Thread richtig verstehe, muss an der Stelle auch angegeben werden welche Dateien gelesen werden sollen (*.*)
Von daher ist mir das unklar...
*Wenn ich die .cmd Datei in der DOS BOX aufrufe erhalte ich den Hinweis das "C:Program falsch geschrieben ist oder nicht aufgerufen werden kann"
*Noch ein Hinweis: Ich habe mir das Tutorial Video Batchautomatisierung angesehen. Ich konnte die
fhbatch.exe in der DOS BOX nur ausführen wenn die angesprochene .fhd datei ebenfalls im FlowHeater V2\BIN\ Ordner abgelegt war.
Ist das normal so???
Danke schon mal für ihre Hilfe!
Gruß
Mario Brunner
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Mario
- Offline
- Benutzer
- Beiträge: 22
bin mittlerweile schon ein Stück weiter!
Die .cmd lässt sich nun ausführen nachdem ich die
Pfadangabe mit " " versehen habe (Leerzeichen im Pfad!)
Sieht nun folgendermaßen aus:
@echo off
C:"Program Files"\"FLowheater V2"\bin\FHBATCH.EXE \SAM\Daten_DPD\*.* DPD.fhd
Was aber immer noch nicht funktioniert ist das importieren mehrerer CSV Dateien.
Wie Eingangs erwähnt müssen aus einem Order immer mehrere CSV Dateien ausgelsen werden da pro Tag ca 5 neue hinzukommen.
An welcher Stelle wird das umgesetzt?
In der .fhd Definition musste ich ja auf der Read Seite eine Datei angeben. Muss an dieser Stelle etwas geändert werden?
Habe auch schon versucht hier Order/ *.csv anzugeben
das scheint aber nicht zu funktionieren.
Wenn ich Ihren letzten Beitrag richtige lese, muss das in der .cmd Datei geregelt werden. Wie sie sehen können, habe ich das wie o.g. versucht umzusetzten, funktioniert aber nicht. -> \SAM\Daten_DPD\*.* DPD.fhd
Nach wie vor wird nur die eine Datei gelesen die in der Definition auf der READ seite angegeben ist.
Danke schon mal für Ihre Hilfe...
Gruß
Mario Brunner
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
ich habe Ihnen mal ein Batch CMD Skript erstellt, das in Ihrer Umgebung laufen sollte.
Zu Ihren Fragen)
Wenn Sie nur CSV Dateien einlesen wollen sollten Sie auch *.csv angeben. Wenn die FlowHeater Defintion (.fhd Datei) im gleichen Verzeichnis liegt wird mit *.* auch versucht die Definition zu importieren was dann zu einem Fehler führt! Mit *.csv schließen Sie das aus, oder Sie müssen die FlowHeater Definition in einem anderen Verzeichnis speichern.*Unter \SAM\Daten_DPD\ liegen mehrere .csv Dateinen, deswegen die *.* formulierung - korrekt?!
*die DPD.fhd haben wir auch in exakt diesem Ordner abgelegt - korrekt?!
Generell müssen Sie für alle Dateiangaben immer Relative oder Absolute Pfadangaben verwenden. Wenn Sie die Definition ohne Pfadangabe angeben ist das eine relative Angabe zum aktuellen Verzeichnis. Das bedeutet, die .FHD Datei muss in diesem Fall im gleichen Verzeichnis sein wie die FHBatch.exe.*Noch ein Hinweis: Ich habe mir das Tutorial Video Batchautomatisierung angesehen. Ich konnte die
fhbatch.exe in der DOS BOX nur ausführen wenn die angesprochene .fhd datei ebenfalls im FlowHeater V2\BIN\ Ordner abgelegt war.
Ist das normal so???
In meinem CMD Batch Beispiel oben werden absolute Pfadangaben verwendet. Hier ist es egal aus welchem aktuellen Verzeichnis Sie das CMD Batch Skript aufrufen.
Sie könnten z.B. auch im Batch CMD Skript vorher ins Import CSV Verzeichnis wechseln, dann bräuchten Sie für die CSV Dateien sowie für die Definition keine Pfad angeben.
z.B.
Das wird über das Batch Modul (FHBatch.exe) umgesetzt. Von hier aus wird die Definition mit der gerade aktuellen CSV Datei bestückt und ausgeführt, so oft wie CSV Dateien im Ordner vorhanden sind. In der Definition selbst brauchen Sie nichts zu ändern. Lediglich die zu importierenden CSV Dateien müssen alle das gleiche Format haben.Was aber immer noch nicht funktioniert ist das importieren mehrerer CSV Dateien.
Wie Eingangs erwähnt müssen aus einem Order immer mehrere CSV Dateien ausgelsen werden da pro Tag ca 5 neue hinzukommen.
An welcher Stelle wird das umgesetzt?
In der .fhd Definition musste ich ja auf der Read Seite eine Datei angeben. Muss an dieser Stelle etwas geändert werden?
Habe auch schon versucht hier Order/ *.csv anzugeben
das scheint aber nicht zu funktionieren.
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.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Mario
- Offline
- Benutzer
- Beiträge: 22
Sie sind der Beste, nun funktioniert alles! Ich hoffe nun Sie in Zukunft nicht mehr belästigen zu müssen
Nochmal vielen Dank für Ihre Mühen. Ich musste dises Datenbank Projekt im Rahmen meiner Ausbildung realisieren und Sie waren mir dabei eine große Hilfe!
Grüße
Mario Brunner
Spedition Fink
Bitte Anmelden oder Registrieren um der Konversation beizutreten.