- Beiträge: 68
Zusatzzeile in csv Datei generieren
- Oliver Barz
- Autor
- Offline
- Benutzer
Weniger
Mehr
3 Jahre 8 Monate her - 3 Jahre 8 Monate her #4190
von Oliver Barz
Zusatzzeile in csv Datei generieren wurde erstellt von Oliver Barz
Hallo Herr Stark,
ich habe eine Aufgabe, die ich nicht gelöst bekomme.
Eine Textdatei (input) enthält Auftragsdaten für einen oder mehrere Aufträge.
Bestellnummer;Vorname;Name;Straße;PLZ;Ort;Land;Artikelnummer;Artikelname;Preis (Brutto);Versandart;Versandkosten
1;Vorname1;Nachname1;Straße 12;12345;Teststadt;Deutschland;ART123;T-Shirt;10;Paketversand;4
1;Vorname1;Nachname1;Straße 12;12345;Teststadt;Deutschland;ART124;Hose;15;Paketversand;4
2;Vorname2;Nachname2;Platz 1;54321;Beispieldorf;Deutschland;ART125;Bluse;20;Briefversand;2,50
2;Vorname2;Nachname1;Platz 1;54321;Beispieldorf;Deutschland;ART126;Rock;15;Briefversand;2,50
Aus dieser Textdatei, die alle Daten für den Artikel als auch für den Versand enthält muss eine Datei erstellt werden,
die den Aufbau des u.s. Beispiels hat.
Produkt- und Versandpositionen müssen in unterschiedlichen untereinander stehende Zeilen aufgeführt werden.
Kann ich das mit dem FH realisieren?
Bestellnummer;Vorname;Name;Straße;PLZ;Ort;Land;Artikelnummer;Artikelname;Preis (Brutto);Menge;Positionstyp
1;Vorname1;Nachname1;Straße 12;12345;Teststadt;Deutschland;ART123;T-Shirt;10;2;Artikel
1;Vorname1;Nachname1;Straße 12;12345;Teststadt;Deutschland;ART124;Hose;15;1;Artikel
1;Vorname1;Nachname2;Straße 12;12345;Teststadt;Deutschland; ;Paketversand;4;1;Versandposition
2;Vorname2;Nachname2;Platz 1;54321;Beispieldorf;Deutschland;ART125;Bluse;20;1;Artikel
2;Vorname2;Nachname2;Platz 1;54321;Beispieldorf;Deutschland;ART126;Rock;15;2;Artikel
2;Vorname2;Nachname2;Platz 1;54321;Beispieldorf;Deutschland; ;Briefversand;2,50;1;Versandposition
VG Oliver Barz
ich habe eine Aufgabe, die ich nicht gelöst bekomme.
Eine Textdatei (input) enthält Auftragsdaten für einen oder mehrere Aufträge.
Bestellnummer;Vorname;Name;Straße;PLZ;Ort;Land;Artikelnummer;Artikelname;Preis (Brutto);Versandart;Versandkosten
1;Vorname1;Nachname1;Straße 12;12345;Teststadt;Deutschland;ART123;T-Shirt;10;Paketversand;4
1;Vorname1;Nachname1;Straße 12;12345;Teststadt;Deutschland;ART124;Hose;15;Paketversand;4
2;Vorname2;Nachname2;Platz 1;54321;Beispieldorf;Deutschland;ART125;Bluse;20;Briefversand;2,50
2;Vorname2;Nachname1;Platz 1;54321;Beispieldorf;Deutschland;ART126;Rock;15;Briefversand;2,50
Aus dieser Textdatei, die alle Daten für den Artikel als auch für den Versand enthält muss eine Datei erstellt werden,
die den Aufbau des u.s. Beispiels hat.
Produkt- und Versandpositionen müssen in unterschiedlichen untereinander stehende Zeilen aufgeführt werden.
Kann ich das mit dem FH realisieren?
Bestellnummer;Vorname;Name;Straße;PLZ;Ort;Land;Artikelnummer;Artikelname;Preis (Brutto);Menge;Positionstyp
1;Vorname1;Nachname1;Straße 12;12345;Teststadt;Deutschland;ART123;T-Shirt;10;2;Artikel
1;Vorname1;Nachname1;Straße 12;12345;Teststadt;Deutschland;ART124;Hose;15;1;Artikel
1;Vorname1;Nachname2;Straße 12;12345;Teststadt;Deutschland; ;Paketversand;4;1;Versandposition
2;Vorname2;Nachname2;Platz 1;54321;Beispieldorf;Deutschland;ART125;Bluse;20;1;Artikel
2;Vorname2;Nachname2;Platz 1;54321;Beispieldorf;Deutschland;ART126;Rock;15;2;Artikel
2;Vorname2;Nachname2;Platz 1;54321;Beispieldorf;Deutschland; ;Briefversand;2,50;1;Versandposition
VG Oliver Barz
Letzte Änderung: 3 Jahre 8 Monate her von FlowHeater-Team. Begründung: Testdaten neutralisiert
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
3 Jahre 8 Monate her #4195
von FlowHeater-Team
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.
FlowHeater-Team antwortete auf Zusatzzeile in csv Datei generieren
Hallo Herr Barz,
wäre machbar aber ist etwas komplizierter. Woher kommen denn Versandpositionen?
Um mehrere CSV Dateien mit unterschiedlichen Satzarten / Satzaufbau zu erzeugen wäre es denkbar die CSV Dateien über den TextFile Adapter in eine InMemory Adapter Tabelle einzulesen, also nacheinander über 2 separate Verarbeitungsschritte einmal die Produktinformationen und einmal die Versandoptionen. Beim Einlesen darauf achten nicht die Spalten einzeln zu importieren, sondern die Komplette CSV Zeile in ein Feld. Im dritten Verarbeitungsschritt wird dann die InMemory Tabelle so sortiert, dass die Ausgabe zu dem passt wie Sie sich das vorstellen.
Ich habe mal ein einfaches Beispiel basierend auf Ihren Testdaten dazu erstellt, siehe Anhang.
wäre machbar aber ist etwas komplizierter. Woher kommen denn Versandpositionen?
Um mehrere CSV Dateien mit unterschiedlichen Satzarten / Satzaufbau zu erzeugen wäre es denkbar die CSV Dateien über den TextFile Adapter in eine InMemory Adapter Tabelle einzulesen, also nacheinander über 2 separate Verarbeitungsschritte einmal die Produktinformationen und einmal die Versandoptionen. Beim Einlesen darauf achten nicht die Spalten einzeln zu importieren, sondern die Komplette CSV Zeile in ein Feld. Im dritten Verarbeitungsschritt wird dann die InMemory Tabelle so sortiert, dass die Ausgabe zu dem passt wie Sie sich das vorstellen.
Ich habe mal ein einfaches Beispiel basierend auf Ihren Testdaten dazu erstellt, siehe Anhang.
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.
- Oliver Barz
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 68
3 Jahre 8 Monate her #4196
von Oliver Barz
Oliver Barz antwortete auf Zusatzzeile in csv Datei generieren
Guten Morgen Herr Stark,
vielen Dank für die Hilfestellung, ich werde das gleich einmal austesten.
Die Spalte Positionstyp muss zusätzlich generiert werden.
Der Postionstyp gibt an ob es sich um einen Artikel oder um die Versandposition handelt.
vielen Dank für die Hilfestellung, ich werde das gleich einmal austesten.
Die Spalte Positionstyp muss zusätzlich generiert werden.
Der Postionstyp gibt an ob es sich um einen Artikel oder um die Versandposition handelt.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Oliver Barz
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 68
3 Jahre 8 Monate her #4198
von Oliver Barz
Oliver Barz antwortete auf Zusatzzeile in csv Datei generieren
Ich glaube, so klappt es nicht, da hier 2 Import Dateien vorhanden sind.
Ich versuche nochmal den Fall etwas genauer darzulegen, mit abgespeckten Daten:
Das sind die Rohdaten, zwei Aufträgen mit je 2 ArtikelPositionen.
Bestellnummer;Name;Artikelnummer;Artikelname;Preis;Menge;Versandart;Versandkosten
1;Franke;ART123;Shirt;10;2;Brief;0,00
1;Franke;ART124;Hose;15;1;Paket;2,50
2;Peters;ART125;Bluse;20;1;Paket;2,50
2;Peters;ART126;Rock;25;2;ExpressPaket;3,50
Das Ergebnis soll so aussehen:
Bestellnummer;Name;Artikelnummer;Artikelname;Preis;Menge;Versandart;Versandkosten;Postitionstyp
1;Franke;ART123;Shirt;10;2;Paket;1,50;Artikel
1;Franke;ART124;Hose;15;1;Paket;2,50;Artikel
1;Franke;;Versand;4,00;1;Paket;;Versandposition
2;Peters;ART125;Bluse;20;1;Paket;2,50:Artikel
2;Peters;ART126;Rock;25;2;Paket;3,50;Artikel
2;Peters;;Versand;6,00;2;Paket;;Versandposition
Zu jedem Auftrag (egal wieviele Auftragspositionen dieser hat) muß eine zusätzliche Zeile geschrieben werden, die die Versandposition darstellt.
und es muß eine Spalte "Postionstyp" hinzugefügt werden.
Das alles sehe ich noch nicht als Problem an, ich würde einfach in zwei Verarbeitungsschritten zwei Dateien erzeugen:
Datei 1:
Bestellnummer;Name;Artikelnummer;Artikelname;Preis;Menge;Versandart;Versandkosten;Postitionstyp
1;Franke;ART123;Shirt;10;2;Paket;1,50;Artikel
1;Franke;ART124;Hose;15;1;Paket;2,50;Artikel
2;Peters;ART125;Bluse;20;1;Paket;2,50:Artikel
2;Peters;ART126;Rock;25;2;Paket;3,50;Artikel
Datei 2:
Bestellnummer;Name;Artikelnummer;Artikelname;Preis;Menge;Versandart;Versandkosten;Postitionstyp
1;Franke;;Versand;4,00;1;Paket;;Versandposition
2;Peters;;Versand;6,00;2;Paket;;Versandposition
Aber wie bekomme ich diese beiden Dateien jetzt zusammen?
Und da ist es auch wichtig, dass die Versandpositionszeile eben immer am Ende des jeweiligen Auftrags steht.
Oder gibt es doch einen anderen, sinnvolleren Weg?
Vielen Dank und VG Oliver Barz
Ich versuche nochmal den Fall etwas genauer darzulegen, mit abgespeckten Daten:
Das sind die Rohdaten, zwei Aufträgen mit je 2 ArtikelPositionen.
Bestellnummer;Name;Artikelnummer;Artikelname;Preis;Menge;Versandart;Versandkosten
1;Franke;ART123;Shirt;10;2;Brief;0,00
1;Franke;ART124;Hose;15;1;Paket;2,50
2;Peters;ART125;Bluse;20;1;Paket;2,50
2;Peters;ART126;Rock;25;2;ExpressPaket;3,50
Das Ergebnis soll so aussehen:
Bestellnummer;Name;Artikelnummer;Artikelname;Preis;Menge;Versandart;Versandkosten;Postitionstyp
1;Franke;ART123;Shirt;10;2;Paket;1,50;Artikel
1;Franke;ART124;Hose;15;1;Paket;2,50;Artikel
1;Franke;;Versand;4,00;1;Paket;;Versandposition
2;Peters;ART125;Bluse;20;1;Paket;2,50:Artikel
2;Peters;ART126;Rock;25;2;Paket;3,50;Artikel
2;Peters;;Versand;6,00;2;Paket;;Versandposition
Zu jedem Auftrag (egal wieviele Auftragspositionen dieser hat) muß eine zusätzliche Zeile geschrieben werden, die die Versandposition darstellt.
und es muß eine Spalte "Postionstyp" hinzugefügt werden.
Das alles sehe ich noch nicht als Problem an, ich würde einfach in zwei Verarbeitungsschritten zwei Dateien erzeugen:
Datei 1:
Bestellnummer;Name;Artikelnummer;Artikelname;Preis;Menge;Versandart;Versandkosten;Postitionstyp
1;Franke;ART123;Shirt;10;2;Paket;1,50;Artikel
1;Franke;ART124;Hose;15;1;Paket;2,50;Artikel
2;Peters;ART125;Bluse;20;1;Paket;2,50:Artikel
2;Peters;ART126;Rock;25;2;Paket;3,50;Artikel
Datei 2:
Bestellnummer;Name;Artikelnummer;Artikelname;Preis;Menge;Versandart;Versandkosten;Postitionstyp
1;Franke;;Versand;4,00;1;Paket;;Versandposition
2;Peters;;Versand;6,00;2;Paket;;Versandposition
Aber wie bekomme ich diese beiden Dateien jetzt zusammen?
Und da ist es auch wichtig, dass die Versandpositionszeile eben immer am Ende des jeweiligen Auftrags steht.
Oder gibt es doch einen anderen, sinnvolleren Weg?
Vielen Dank und VG Oliver Barz
Anhänge:
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Oliver Barz
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 68
3 Jahre 8 Monate her - 3 Jahre 8 Monate her #4199
von Oliver Barz
Oliver Barz antwortete auf Zusatzzeile in csv Datei generieren
Ich bin fast am Ziel.
Habe nun Ihre Vorgehensweise umgesetzt, und in einem vorgelagerten Schritt, die weitere Importdateien für den Versand generiert.
Allerdings ist das Ergebnis noch nicht korrekt.
Im letzten Verarbeitungsschritt in dem der InMemoryAdrapter in das Textfile geschrieben wird,
erhalte ich zu jeder Artikelposition auch eine Versandposition.
Es soll aber nur eine Versandposition zu einem Auftrag erstellt werden.
Ich werde morgen weiter testen.
Habe nun Ihre Vorgehensweise umgesetzt, und in einem vorgelagerten Schritt, die weitere Importdateien für den Versand generiert.
Allerdings ist das Ergebnis noch nicht korrekt.
Im letzten Verarbeitungsschritt in dem der InMemoryAdrapter in das Textfile geschrieben wird,
erhalte ich zu jeder Artikelposition auch eine Versandposition.
Es soll aber nur eine Versandposition zu einem Auftrag erstellt werden.
Ich werde morgen weiter testen.
Letzte Änderung: 3 Jahre 8 Monate her von Oliver Barz.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
3 Jahre 8 Monate her #4201
von FlowHeater-Team
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.
FlowHeater-Team antwortete auf Zusatzzeile in csv Datei generieren
Hallo Herr Barz,
Ich habe das Beispiel nochmal etwas angepasst. Hier wird nun eine InMemory Adapter Tabelle mit drei Verarbeitungsschritten befüllt und im vierten Verarbeitungsschritt sortiert wieder ausgegeben. Die Sortierung erfolgt anhand der Bestellnummer sowie einem zusätzlichen Feld Reihenfolge. Hier müssen Sie lediglich im 3 Verarbeitungsschritt darauf achten, dass der Startwert des AutoID Heater größer der maximal zu erwartenden Anzahl Zeilen der ersten CSV Datei ist, ich habe hier mal „99999“ verwendet.
Folgendes wird gemacht:
Verarbeitungsschritt 1) Einlesen der CSV Feldnamen in die InMemory Tabelle statisch über den TestData Adapter und einem X-Value Heater. Für die ID bzw. Bestellnummer wird hier 0 verwendet. So wird dann bei der Ausgabe diese Zeile als erstes ausgegeben.
Verarbeitungsschritt 2) Einlesen der CSV Zeilen der ersten Textdatei. Bestellnummer für die Sortierung sowie ein weiteres Feld für die ursprüngliche Reihenfolge wird gesetzt.
Verarbeitungsschritt 3) Einlesen der CSV Zeilen der zweiten Textdatei, Rest wie bei Step 2. Der Autowert für die Reihenfolgesortierung startet hier bei „99999“.
Verarbeitungsschritt 4) Ausgeben der InMemory Tabelle in eine CSV Datei, Sortierung über Bestellnummer, sowie die ursprüngliche Reihenfolge.
Schauen Sie sich das Beispiel einmal an. Wenn Sie weiterhin Problem damit haben können Sie auch mal Ihre erstellte Definition zur weitere Analyse posten.
Ich habe das Beispiel nochmal etwas angepasst. Hier wird nun eine InMemory Adapter Tabelle mit drei Verarbeitungsschritten befüllt und im vierten Verarbeitungsschritt sortiert wieder ausgegeben. Die Sortierung erfolgt anhand der Bestellnummer sowie einem zusätzlichen Feld Reihenfolge. Hier müssen Sie lediglich im 3 Verarbeitungsschritt darauf achten, dass der Startwert des AutoID Heater größer der maximal zu erwartenden Anzahl Zeilen der ersten CSV Datei ist, ich habe hier mal „99999“ verwendet.
Folgendes wird gemacht:
Verarbeitungsschritt 1) Einlesen der CSV Feldnamen in die InMemory Tabelle statisch über den TestData Adapter und einem X-Value Heater. Für die ID bzw. Bestellnummer wird hier 0 verwendet. So wird dann bei der Ausgabe diese Zeile als erstes ausgegeben.
Verarbeitungsschritt 2) Einlesen der CSV Zeilen der ersten Textdatei. Bestellnummer für die Sortierung sowie ein weiteres Feld für die ursprüngliche Reihenfolge wird gesetzt.
Verarbeitungsschritt 3) Einlesen der CSV Zeilen der zweiten Textdatei, Rest wie bei Step 2. Der Autowert für die Reihenfolgesortierung startet hier bei „99999“.
Verarbeitungsschritt 4) Ausgeben der InMemory Tabelle in eine CSV Datei, Sortierung über Bestellnummer, sowie die ursprüngliche Reihenfolge.
Schauen Sie sich das Beispiel einmal an. Wenn Sie weiterhin Problem damit haben können Sie auch mal Ihre erstellte Definition zur weitere Analyse posten.
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.
- Oliver Barz
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 68
3 Jahre 8 Monate her #4204
von Oliver Barz
Oliver Barz antwortete auf Zusatzzeile in csv Datei generieren
Hallo Herr Stark,
vielen Dank für die Unterstützung.
Ich bin sehr begeistert.
Beide Modelle haben jetzt funktioniert.
Auch der Batch Aufruf funktioniert.
VG Oliver Barz
vielen Dank für die Unterstützung.
Ich bin sehr begeistert.
Beide Modelle haben jetzt funktioniert.
Auch der Batch Aufruf funktioniert.
VG Oliver Barz
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
Ladezeit der Seite: 0.301 Sekunden