FlowHeater Demo Video
 
Der Daten Import / Export Spezialist
 
Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:
×

Erweiterte Suche

Suche nach Stichwort
×

Suchoptionen

Finde Beiträge von
Ergebnisse sortieren nach
Suche zu einem bestimmten Zeitpunkt
Zu Resultat springen
Suche in Kategorien
×

Suchergebnisse

Gesucht wurde: GroupBy
16 Aug 2019 05:18
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Herr Herrmannsfeldt,

Bin mir nicht sicher ob ich das richtig verstanden habe, habe mal ein einfaches Beispiel dazu erstellt, siehe Anlage.

Im Beispiel wird im ersten Verarbeitungsschritt die CSV Datei in eine InMemory Adapter Tabelle eingelesen.

Info: Wenn Sie den SQL Server Export gleich richtig sortieren kann der erste Verarbeitungsschritt sowie der Umweg über die InMemory Adapter Tabelle weggelassen werden!

Im zweiten Verarbeitungsschritt wird dann die interne InMemory Adapter Tabelle sortiert anhand der Felder Artikelnummer und ListenID ausgegeben sowie über den GroupBy Heater wird dann die Verarbeitung anhand des Feldes Artikelnummer gruppiert. Jetzt können Sie die Feldinhalte anhand der Gruppierung über den String Append Heater zusammenfassen, als Trennzeichen verwenden Sie das gleiche Trennzeichen das für die CSV Datei verwendet haben.

Achtung: Für den String Append Heater muss die Gruppierung aktiviert werden, siehe Screenshot.

Auf der WRITE Seite geben Sie dann dieses gruppierte Feld in einem Feld aus. Wenn Sie Feldnamen mit ausgeben möchten, muss hierbei der Feldname für dieses Feld „PreisListe_1;PreisListe_2;PreisListe_3;PreisListe_4;PreisListe_5;… bis zum Maximum das Sie erwarten“ lauten!



Dateianhang:

Dateiname: gruppierun...8-16.zip
Dateigröße:196 KB
Kategorie: Excel Adapter
29 Jul 2019 17:54
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Marko,

in dem Fall kannst du den GroupBy Heater einfach einen Dummy Wert über den X-Value Heater übergeben. Da dieser Wert ja immer der gleiche ist, werden so automatisch alle Zeilen zu einer zusammengefasst und du kannst pro Spalte deine Berechnungen durchführen.

Im Anhang findest du ein kleines Beispiel dazu.

Dateianhang:

Dateiname: gruppieren.zip
Dateigröße:2 KB
Kategorie: Allgemein
28 Jun 2019 15:56
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Marko,

das geht mit dem AutoID Heater und aktivierter Option „Auswirkung auf -> Gleiche Eingangsparameter“, siehe Screenshot.

Damit pro Dezimalwert nur eine Zeile mit der Anzahl ausgegeben wird muss über das Feld gruppiert ( GroupBy Heater ) werden. Das Funktioniert aber nur wenn die Werte sortiert vorliegen. Am einfachsten ist es daher in einem ersten Verarbeitungsschritt die Excel Liste in eine FlowHeater interne InMemory Tabelle einzulesen und im zweiten Verarbeitungsschritt die Tabelle sortiert auszugeben und darüber dann die Gruppierung durchzuführen. Den AutoID Heater brauchen Sie nur dazwischen zuhängen.

Im Anhang finden Sie ein Beispiel dazu.



Dateianhang:

Dateiname: werte-zaehlen.zip
Dateigröße:2 KB
Kategorie: Excel Adapter
17 Jun 2019 17:20
  • K. May
  • K. Mays Avatar
Hallo Herr Stark,
Sie sind die Härte! Ein Wunsch, ein Wunder und schon ist mal als Kunde happy!
Das hat perfekt und auf den ersten Anlauf hin geklappt!
Großartig! Vielen, vielen herzlichen Dank!
Beste Grüße
Klaus
Kategorie: Allgemein
16 Jun 2019 09:59
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Herr May,

hier fehlt wohl noch eine Option im String Append Heater . In der aktuellen Beta Version wurde im String Append Heater eine weitere Option „Bereits vorhandene Werte ignorieren“ hinzugefügt. Wenn Sie diese in Ihrer Definition aktivieren sollte das Ergebnis so sein wie Sie es erwarten, siehe Screenshot.



Beta Version Download
FlowHeater Beta 32 Bit
FlowHeater Beta 64 Bit
FlowHeater Server Beta
Kategorie: Allgemein
15 Jun 2019 12:19
  • K. May
  • K. Mays Avatar
Hallo,
ich scheitere an folgender GroupBy - Problematik:
Ich habe Artikel mit Attributen (z.B. Fläche und Seitenlänge), welche ich per IfThen in Spalten rausschreibe, das klappt auch.
Dummerweise sind die Artikelbeschreibungen auch noch über mehrere Zeilen verteilt (vgl. Tabelle unten).
Wenn ich nun versuche, die Artikelbeschreibungen per GroupBy zusammenzubauen, dann geht's in die Hose :-(

Im Prinzip müsste ich dem FlowHeater sagen: füge aus der Spalte "zutext" den Inhalt nur 1x hinzu.

O-Daten:
identnr lang_ext lfdnr zutext fldname ausprint ausprfloat imperial ausprtxt
100001 de_de 1 Artikel ANT ø 3 m, 8-Teiler FLÄCHE 0,00 6,40 0" 0'
100001 de_de 1 Artikel ANT ø 3 m, 8-Teiler TEILUNG 8,00 0,00 0" 0'
100001 de_de 1 Artikel ANT ø 3 m, 8-Teiler SEITE_A 0,00 3.000,00 9" 10'
100001 de_de 1 Artikel ANT ø 3 m, 8-Teiler FORM 0,00 0,00 0" 0' rund
100001 de_de 2 Poly, ohne Volant FLÄCHE 0,00 6,40 0" 0'
100001 de_de 2 Poly, ohne Volant TEILUNG 8,00 0,00 0" 0'
100001 de_de 2 Poly, ohne Volant SEITE_A 0,00 3.000,00 9" 10'
100001 de_de 2 Poly, ohne Volant FORM 0,00 0,00 0" 0' rund
100001 en_gb 1 Article ANT ø 3 m, 8 segments FLÄCHE 0,00 6,40 0" 0'
100001 en_gb 1 Article ANT ø 3 m, 8 segments TEILUNG 8,00 0,00 0" 0'
100001 en_gb 1 Article ANT ø 3 m, 8 segments SEITE_A 0,00 3.000,00 9" 10'
100001 en_gb 1 Article ANT ø 3 m, 8 segments FORM 0,00 0,00 0" 0' rund
100001 2 Poly, without valance FLÄCHE 0,00 6,40 0" 0'
100001 en_gb 2 Poly, without valance TEILUNG 8,00 0,00 0" 0'
100001 en_gb 2 Poly, without valance SEITE_A 0,00 3.000,00 9" 10'
100001 en_gb 2 Poly, without valance FORM 0,00 0,00 0" 0' rund
100001 fr_fr 1 Article ANT ø 3 m, 8 segments FLÄCHE 0,00 6,40 0" 0'
100001 fr_fr 1 Article ANT ø 3 m, 8 segments TEILUNG 8,00 0,00 0" 0'
100001 fr_fr 1 Article ANT ø 3 m, 8 segments SEITE_A 0,00 3.000,00 9" 10'
100001 fr_fr 1 Article ANT ø 3 m, 8 segments FORM 0,00 0,00 0" 0' rund
100001 fr_fr 2 Poly, sans volant FLÄCHE 0,00 6,40 0" 0'
100001 fr_fr 2 Poly, sans volant TEILUNG 8,00 0,00 0" 0'
100001 fr_fr 2 Poly, sans volant SEITE_A 0,00 3.000,00 9" 10'
100001 fr_fr 2 Poly, sans volant FORM 0,00 0,00 0" 0' rund


Zieldaten:
identnr lang_ext lfdnr zutext FLÄCHE TEILUNG SEITE_A SEITE_A_IMPERIAL FORM
100001 de_de Artikel ANT ø 3 m, 8-Teiler. Poly, ohne Volant 6,40 8,00 3.000,00 9" 10' rund
100001 en_gb Article ANT ø 3 m, 8 segments. Poly, without valance
100001 fr_fr Article ANT ø 3 m, 8 segments, Poly, sans volant
Kategorie: Allgemein
21 Mär 2019 07:18
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Herr Geiss,

das würde über eine Gruppierung mit Hilfe des GroupBy Heater funktionieren. Im Anhang finden Sie ein kleines Beispiel dazu.

Dateianhang:

Dateiname: gruppierung.zip
Dateigröße:2 KB
Kategorie: Allgemein
21 Feb 2019 11:40
  • Ralf Birk
  • Ralf Birks Avatar
Hallo Robert,
 
ich hätte mal wieder eine Frage zu einem zumindest für mich (Denke, es besteht bei vielen anderen Bedarf, wenn es eingebaut wäre) neuen
Heater.

Ich muss oft Mengen verschiedener Datengruppen in einer Datenbank für den Write zählen. Im Moment gehe ich folgenden Weg:
 
Groupby auf das Feld
AutoID auf den Groupby
Sort (Absteigend) oder Importsort (Absteigend)
Max auf Groupby für den Write
Sort auf alte Reihenfolge
 
Dies ist bei einigen zu zählenden Feldern in einer Datei ein riesen Akt einzurichten.
 
Meine Idee wäre ein Anzahl-Heater. Der Eingangs-Pipe würde auf das entsprechende Read-Datenfeld gehen. Als Parameter wäre „Komplette Verarbeitung“ und „Gleicher Eingangsparameter“ denkbar.
Ich könnte mir vorstellen, dass dies für dich relativ einfach zu Programmieren wäre. Der Nutzen in der Praxis wäre riesig.
Könntest du dir mal überlegen, ob dies eine Sinnvolle Erweiterung wäre?

Gruß Ralf
Kategorie: Anregungen
14 Feb 2019 19:05
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo HerrStelling,

ich gehe mal davon aus, dass Sie weiter keine Änderungen an den CSV Spalten bzw. den Inhalten vornehmen möchten? Der einfachste Fall mehrere CSV Zeilen, anhand eines Kennzeichens, zu einer Ausgabezeile zusammenzufassen ist folgender Trick.

Sie lesen auf der READ Seite die CSV Datei als ganze Zeile ein und ignorieren die einzelnen Spalten. Hierzu wählen Sie im TextFile Adapter , auf dem Reiter „Trennzeichen“ ein Spaltentrennzeichen, das in der Textdatei so nicht vorkommt. Im Beispiel, siehe Anhang, habe ich die Zeichen „###“ in Kombination verwendet. So liest der TextFile Adapter jede Zeile als eine Spalte ein.

Jetzt benötigen Sie den String Split Heater um die Zeile wieder in separate Spalten aufzuteilen um das Kriterium, anhand die Zeilen zusammengefasst werden sollen herauszufiltern. Im Beispiel ist das die zweite Spalte. Dieser Wert wandert zum GroupBy Heater , der alle gleichen Werte (der zweiten Spalte) zu einer Ausgabezeile zusammenfasst.

Zum Schluss benötigen Sie noch den String Append Heater , mit Auswirkung auf GroupBy und schon sind mehrere CSV Zeilen der READ Seite zu einer CSV Zeile WRITE Seite zusammengefasst. Im String Append Heater müssen Sie noch das normale CSV Trennzeichen angeben, das verwendet werden soll um die Zeilen miteinander zu verknüpfen.

Müssen die einzelnen CSV Spalten vorher noch bearbeitet / angepasst werden geht das natürlich auch, ist nur ein wenig komplizierter.



Dateianhang:

Dateiname: csv-zeilen...eren.zip
Dateigröße:2 KB
Kategorie: TextFile Adapter
07 Dez 2018 16:00
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Herr Rösler,

mit der aktuellen Version geht das leider nur schwer bis gar nicht. Allerdings wäre es mit der aktuellen Beta Version, Download Links siehe unten, relativ einfach möglich. Die aktuelle Beta Version bietet die Möglichkeit über einen neuen InMemory Adapter Daten im Hauptspeicher anzureichern und anschließend wieder auszugeben.

Für Ihren Fall müssen die Daten im erstenVerarbeitungsschritt erst einmal in eine InMemory Tabelle eingelesen werden. Hier wird ein zusätzliches Feld „Sort“ über einen  AutoID Heater gefüllt. Dieses Feld wird zum Schluss dazu verwendet die Daten anhand der gleichen Reihenfolge wieder auszugeben. Bitte beachten Sie, dass der AutoID Heater mit der Schrittweite 10 konfiguriert wurde!

Im zweiten Verarbeitungsschritt wird die Summen derTransportkosten anhand der Kundennummer berechnet. Hier wird ein weiteres Feld „Anzahl“ in der InMemory Tabelle gefüllt. In diesem Feld wird die Anzahl der Datensätze festgehalten die pro Gruppierung vorhanden sind. Das Feld wird benötigt um die Vorgabe zu erfüllen, dass die Summenzeile nur bei mehreren gleichen ausgegeben werden soll. Zusätzlich werden in dem Schritt die Transportkosten berechnet. Hierzu wird der GroupBy Heater sowie Additons Heater mit eingeschalteter Gruppierung verwendet. In diesem Schritt wird im Prinzip pro Kundennummer ein weiterer Datensatz an die InMemory Tabelle hinzugefügt. Damit dieser Datensatz bei der Ausgabe dann auch an der richtigen Stelle steht wird das Feld „Sort“ mit dem letzten Wert der Gruppe + 1 belegt.

Bitte beachten
, dieser Schritt bzw. Berechnung greift auchauf die Ursprüngliche CSV Datei zu. Nicht von der gleichen InMemory Tabelle lesen und auf der anderen Seite in die gleiche Tabelle schreiben!

Im letzten Schritt wird die InMemory Tabelle über das Feld „Sort“sortiert ausgegeben. Hier wurde zusätzliche ein Filter eingebaut, der anhand des Feldes Anzahl die Summenzeile nur ausgibt falls mehr als eine Datensatz pro Gruppe vorhanden ist.

Schauen Sie sich das beiliegende Beispiel mal. Benötigt dieaktuelle Beta Version, siehe Download Links.
 
Hinweis: Die Anzeige der InMemory Tabelle nach jedem Schritt zeigt derzeit nur die aktuell verarbeiteten Datensätze an und nicht den
kompletten Inhalt! Daran wird noch gearbeitet :-)

Sortierte Ausgabe über den InMemory Adapter

BetaVersion Download FlowHeaterBeta 32 Bit FlowHeaterBeta 64 Bit FlowHeaterServer Beta

Dateianhang:

Dateiname: summenzeilen.zip
Dateigröße:4 KB
Kategorie: Allgemein
17 Nov 2018 14:23
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Herr Rindt,

nach erneuter Prüfung ist das eigentlich kein Fehler, das generieret XML Dokument wäre so genauso valide bzw. stimmig. Das Problem hier ist, dass anscheinend die Anwendung, die das XML einlesen möchte, hiermit nicht richtig umgehen kann. Das Problem wurde aber trotzdem in der aktuellen Beta behoben :-)

Im „schemaLocation“ Attribut können mehrere vorhandene (Namespace) Elemente aufgelistet werden (=Namespace neutral), deshalb wurde von der verwendeten Funktion (XML Bibliothek) das Namespace Präfix für dieses Attribut standardmäßig entfernt. In der aktuellen Beta wurde das korrigiert bzw. geändert. Über untenstehende Links können Sie sich die Beta Version herunterladen.

Folgende Änderungen sind hier vorhanden.
1.    Neuer InMemory Adapter
2.    SQL , Lookup , und String Replace Heater mit Unterstützung für InMemory Adapter Tabellen.
3.     If-Then-Else Heater mit Zeichenkettenvergleich ohne Leerzeichen am Anfang/Ende
4.    BugFix: GroupBy Heater in Verbindung mit Filter Heater.

Zum InMemory Adapter) Der ist ein absolutes Highlight! Hiermit können beliebige Tabellendaten (CSV, Excel, SQL, …) in Hauptspeichertabellen eingelesen werden. Diese Tabellen können im Hauptspeicher weiter angereichert bzw. abgefragt werden und zum Schluss können diese Tabelle natürlich auch wieder in physikalische Dateien bzw. Datenbanktabellen ausgegeben werden. Das Ganze ist, da Hauptspeicher basierend, rasend schnell. Hier finden Sie ein Beispiel dazu wo der klassische CSV Lookup über den  String Replace Heater auf InMemory Tabellen umgestellt wurde.

 Beispiel: Datanorm - Zeilen zusammenfassen


Beta Version Download
FlowHeater Beta 32 Bit
FlowHeater Beta 64 Bit
FlowHeater Server Beta
Kategorie: XML Adapter
03 Nov 2018 14:54
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Herr Seiffert,

vielen Dank für die Zusendung der Definition sowie Testdaten per Email. Sie haben hier einen Fehler aufgedeckt! Das Problem war/ist, dass wenn der GroupBy Heater zusammen mit dem Filter Heater verwendet wird hier alle Datensätze zu einem zusammengefasst werden und nicht wie gewünscht lediglich pro Gruppenwechselkriterium.

Der Fehler wurde in der aktuellen Beta Version (4.1.3.2 Beta4) gefixt. Über unten stehende Links können Sie sich die aktuelle Beta Version herunterladen.

Dann habe ich Ihnen Ihre Definition (siehe Anhang) auf die in der Beta Version verfügbaren InMemoryAdapter Tabellen umgestellt. Sie werden hier sofort einen enormen Geschwindigkeitsschub feststellen. Um die Definition testen zu können müssen Sie Ihre DATANORM CSV Datei direkt in das Verzeichnis der Definition kopieren oder aber in der Definition die Pfade anpassen.

Beta Version Download
FlowHeater Beta 32 Bit
FlowHeater Beta 64 Bit
FlowHeater Server Beta

Dateianhang:

Dateiname: datanorm_u...deln.zip
Dateigröße:5 KB
Kategorie: TextFile Adapter
30 Okt 2018 09:06
  • Andre Seiffert
  • Andre Seifferts Avatar
Die korrekte Codepage ist in diesem Fall 850. Vielen Dank für den Hinweis. :woohoo:

Bezüglich der Langtexte: Ich habe das GroupBy bei dem 2. Append Heater eingestellt. Es wird jedoch immer nur der Langtext des letzten Artikels in den Daten
richtig gruppiert und in die Read Seite geschrieben. Siehe Bild

Entferne beim auslesen des D-Satzes ich den GroupBy Heater bei der Artikelnummer, so werden alle Langtexte gelesen, jedoch nicht
gruppiert in eine Zeile geschrieben. Aber es wird dann bei allen Artikel zumindest die erste Zeile des Langtextes in die Read Seite geschrieben.

Ich bin da echt ratlos.
Kategorie: TextFile Adapter
30 Okt 2018 06:02
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Herr Seiffert,

Sie müssen im zweiten String Append Heater (siehe Screenshot und Markierung) die GroupBy Option aktivieren. So wird hinter dem Heater die gescheifte Klammer angezeigt.

PS: Anscheinend stimmt Ihre Auswahl der Codepage nicht, Umlaute werden nicht richtig angezeigt! Versuchen Sie mal auf der READ Seite UTF8 oder aber CP 1252 zu verwenden.

Kategorie: TextFile Adapter
29 Okt 2018 07:06
  • Andre Seiffert
  • Andre Seifferts Avatar
Irgendwie funktioniert der GroupBy Heater nicht wie gewünscht. Es wird lediglich eine Nummer mit einem Text ausgegeben.

Siehe Anlage
Kategorie: TextFile Adapter
16 - 30 von 95 Ergebnissen angezeigt.
Ladezeit der Seite: 1.123 Sekunden

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