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
26 Okt 2018 05:24
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Herr Seiffert,

Sie müssen die CSV Lookup Datei bereits so erzeugen, dass hier die zusammengefasst werden. Das können Sie über den GroupBy Heater zusammen mit dem String Append Heater durchführen. Im Anhang finden Sie ein kleines Beispiel dazu.

Hinweis: Die Datenquelle muss dazu sortiert sein! Evtl. vorher mit dem Sort Heater sortieren.

Dateianhang:

Dateiname: csv-lookup...ssen.zip
Dateigröße:2 KB
Kategorie: TextFile Adapter
29 Jul 2018 10:11
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Herr Kaspari,

für all die es evtl. gebrauchen können, hier trotzdem die Lösung wie das umgesetzt werden kann.

Der Excel Adapter unterstützt aktuell nur die Zeilenweise Verarbeitung, pro Zeile ein Datensatz.
Über die GroupBy Heater können aber solche Konstrukte (Pivot/Kreuztabellen) exportiert werden.

Der GroupBy Heater gruppiert hier alle gleichen Datensätze (oder aber auch alle) anhand eines Kennzeichen zu einem Datensatz auf der WRITE Seite zusammen. Mit Hilfe des AutoID Heater und einer IF-THEN-ELSE Bedingung pro Spalte können Sie nun definieren welche Zeile nun welcher Spalte zugweisen auf der WRITE Seite zugweisen wird.

Einziges Problem dabei, je mehr Zeilen zu einem Datensatz gruppiert werden sollen umso mehr Fleißarbeit muss in die Definition investiert werden sowie wird das auch relativ unübersichtlich. Im Anhang finden Sie ein kleines Beispiel dazu.

Dateianhang:

Dateiname: excel-kreu...elle.zip
Dateigröße:8 KB
Kategorie: Excel Adapter
01 Jun 2018 05:45
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Sehr geehrte Damen und Herren,

aus einer Excel -Tabelle sollen zwei txt-Dateien entstehen, ibeleg.txt – mit Kundennummer (Filter – Duplikate überspringen), Belegverbindung, Belegart und eine ibelegposten.txt – alle Datensätze ,Belegverbindung, Artikelnummer, Anzahl?

Der Filter oder groupby soll sich nur auf die erste txt-Ausgabe auswirken?

Wie könnte man dies mit Flowheater realisieren?

Mit freundlichen Grüßen
K. Fiedler
Anfrage per Email erhalten

Kategorie: Excel Adapter
10 Apr 2018 05:34
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Ralf,

ja natürlich :-) Du musst lediglich die Daten anhand der Kunden und Artikelnummer über den GroupBy Heater gruppieren. Achtung die Datenmenge muss dazu sortiert vorliegen, am besten über den Sort Heater vorher sortieren.
Anschließend verbindest du alle Felder bis auf die Menge und den Gesamtpreis von READ nach WRITE. So landen jeweils die letzten Werte der Gruppierung in den Spalten der WRITE Seite.

Für die Neuberechnung der Menge kannst du den Additions Heater mit eingeschalter Gruppierung verwenden. So addiert der Heater alle Inhalte der aktuellen Gruppierung zusammen und auf der WRITE Seite landete die berechnete Menge in der Spalte. Solltest du noch eine Gesamtsumme haben kannst du das ebenfalls gleich mit berechnen. Im Anhang findest du ein kleines Beispiel dazu.



Dateianhang:

Dateiname: daten-verdichten.zip
Dateigröße:2 KB
Kategorie: Allgemein
15 Jan 2018 18:51
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Herr Kober,

es gibt natürlich eine schlanke Lösung :) Der FlowHeater kann Problemlos CSV Daten gruppieren und den über mehrere Felder gruppierten Inhalt, getrennt durch Zeilenumbrüche, in ein separates Excel Feld Importieren. Im Anhang finden Sie ein kleines Beispiel.

Vorgehensweise
Sie benötigen dazu einen Sort Heater , nur falls die CSV Datenquelle nicht sortiert vorliegt.

Dann wird noch der GroupBy Heater benötigt um alle CSV Zeilen für die Excel Ausgabe zusammenzufassen. Im Beispiel verwende ich die CSV Felder „Nutzer“ und „ID“ für die Gruppierung der CSV Eingabedatei. Hinweis: Der GroupBy Heater benötigt für eine sortierte Datenquelle!

Feldmapping
Das Feld Nutzer wird 1:1 mit dem Excel Adapter verbunden. Um nun alle Kommentare zum Nutzer in ein separates Feld pro Nutzer zu schreiben benötigen zusätzlich einen String Replace Heater mit aktivierter „GroupBy“ Option. Hinweis: Die Option kann über das Kontextmenü des Heaters aktiviert werden!

Als Trennzeichen muss hier eine Zeichenkombination verwendet werden, die im normalen Text nicht vorkommt. Im Beispiel wurde „###“ verwendet. Hiermit werden alle Kommentare zu einem Nutzer zu einer einzeiligen Zeichenkette, getrennt durch „###“ zusammengefügt.
z.B. Kommentar 1###Kommentar 2###Kommentar …

Zum Schluss ersetzen wir dann noch mittels des String Replace Heater die temporären Trennzeichen „###“ jeweils durch einen Zeilenumbruch.



Dateianhang:

Dateiname: csv-excel-...eren.zip
Dateigröße:2 KB
Kategorie: Allgemein
19 Jun 2017 11:46
  • anonymous
  • anonymouss Avatar
Hallo Herr Stark,

die Urlaubstage sind wieder rum. Die Lösung mit GroupBy Heater ist nicht das Richtige. Im Nachhinein konnte ich feststellen,
das Semikolon gehört zur HTML Schreibweise.

Wenn im FlowHeater die HTML-Schreibweise „ ü“ =ü oder „ä“ = ä umgewandelt wird, sollte das Semikolonproblem gelöst sein.

Dazu habe ich mir eine „Umlaute.CSV“- Datei angelegt.
In Spalte A:ü Spalte B:ü
In Spalte A:ä Spalte B: ä …usw.
In den Replace Heater die "Umlaute.CSV" eingebunden und mit Append und x-Value kombiniert.

Warum werden die Umlaute nicht ersetzt? Woran kann dies liegen? Danke.

PS: Nutzen FlowHeater Version 3.5.3
Kategorie: Allgemein
04 Jun 2017 07:31
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
um lediglich alle Zeilen einer „unstrukturierten Textdatei in eine Spalte auf der WRITE Seite zusammenzuführen müssen Sie anders vorgehen.
Im Textfile Adapter auf der READ Seite wählen Sie auf dem Reiter „Trennzeichen“ die Option „Anderes“ und geben als Spaltentrennzeichen mehrere Zeichen ein die so in der Textdatei nicht erwartet werden. Ich habe im Beispiel „####“ verwendet. So liest der FlowHeater jede Zeile in nur einer Spalte ein. Das CSV Trennzeichen wird so ignoriert!

Um jetzt alle Zeilen der READ Seite zu einer Zeile und Spalte auf der WRITE Seite zuzuordnen benötigen Sie einen GroupBy Heater . Diesen übergeben Sie über den X-Value Heater einen beliebigen statischen Wert. So werten alle Zeilen zu einer zusammengefasst. Um jetzt noch den Inhalt der Zeilen mit einem Trennzeichen getrennt in das Ausgabefeld zu schrieben benötigen Sie noch einen String Append Heater mit eingeschalteter GroupBy Option. Im Anhang finden Sie ein kleines Beispiel.



Dateianhang:

Dateiname: zeilenumbr...rnen.zip
Dateigröße:2 KB
Kategorie: Allgemein
11 Apr 2017 10:44
  • Ulrich Tremmel
  • Ulrich Tremmels Avatar
Ich plane für einen Kunden den Import von Excel Daten in SQL Server Tabellen. Nach dem Ausführen der Definition erhalte ich die Meldung "Daten wurden erfolgreich ins Datenziel geschrieben". Es werden allerdings alle Zeilen außer der ersten ignoriert.
Ich erhalte folgende Warnung (pro Folgezeile): " Fitter - H: GroupBy - no input parameter available".
Was mache ich falsch. Wo wird hier ein Parameter erwartet, den ich meines Erachtens nach nicht benötige?

Genaue Beschreibung mit Screenshots im Anhang.

Vielen Dank für die Unterstützung.

Mit freundlichen Grüßen
Ulrich Tremmel
Kategorie: SqlServer Adapter
02 Sep 2016 06:23
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Herr Königsberger,

vielen Dank für Ihre Anfrage. Ich habe dadurch bemerkt, dass diese Funktion noch verbessert werden kann.

Derzeit geht das nur mit Hilfe des .NET Script Heater und u.s. Skriptes. Demnächst wandert diese Funktionalität direkt in den AutoID Heater .

Zur Vorgehensweise) Das Skript zählt alle X Datensätze einen Gruppenzähler hoch. Dieser Wert wird verwendet um dann die Datensätze mittels des GroupBy Heater zu gruppieren, bei Ihnen werden immer drei Datensätze zu einem zusammengefasst. Der Wert kann im Skript angepasst werden, die Zeile wurde mit einem Kommentar versehen.
Um jetzt auf der WRITE Seite zu entscheiden welcher Wert der Gruppe in welches Feld geschrieben werden soll, benötigen Sie für jede Feld eine IF-THEN-ELSE Heater , der Anhand eines Gruppenzählers (hier AutoID Heater ) entscheidet was übernommen werden soll.

Klingt jetzt sehr theoretisch, im Anhang finden Sie ein kleines Beispiel dazu.

Dateianhang:

Dateiname: datensaetz...eren.zip
Dateigröße:3 KB


C# .NET Skript
int nAkt = 0;
int nGruppe = 0;
int nMaxGruppe = 3; // hier den Wert anpassen wieviele Datansätze zu einer Gruppe zusammengefasst werden sollen

public object DoWork()
{
  nAkt++;
  if (nAkt > nMaxGruppe)
  {
    nAkt = 0;
    nGruppe++;
  }

  return nGruppe;
}
Kategorie: TextFile Adapter
01 Sep 2016 05:23
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Marko,

Sie brauchen lediglich an den SQL SELECT im SQL Server Adapter auf der READ Seite noch eine WHERE Bedingung anzuhängen, dann sollten Sie das gewünschte Ergebnis haben.

z.B.
select spalte, count(spalte) as Anzahl from Tabelle where spalte is not null group by spalte

Wenn Sie das über den FlowHeater durchführen wollen benötigen Sie 5 Heater/Funktionen
  • 1x einen Sort Heater um die Datenquelle zu sortieren, kann auch entfallen wenn Sie an den SELECT einen ORDER BY hängen
  • 1x einen GroupBy Heater um die gewünschten Datensätze zusammenzufassen
  • 1x einen If-Then-Else Heater für die Bedingung für die NULL/DBNULL Werte
  • 1x einen Filter Heater um die Datensätze mit den NULL/DBNULL Werten zu filtern
  • 1x einen Filter Heater um die Datensätze mit den NULL/DBNULL Werten zu filtern
  • 1x einen AutoID Heater mit eingeschalteter Gruppierungsfunktion

Da ist die Lösung über den SELECT oben wesentlich eleganter. Beispiele zum Filtern und Gruppieren von Daten finden Sie hier:
Daten filtern und gruppieren
Daten gruppieren und Werte über die Gruppierung summieren
Kategorie: SqlServer Adapter
08 Aug 2016 06:07
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Herr Birk,

Ihr Vorgehen ist so richtig sowie die einzige Möglichkeit sowas umzusetzen.

Das Problem mit dem Max Heater ist, dass diese immer nur den Stand bis zur aktuellen Verarbeitung wiederspiegelt. Ohne Gruppierung erhalten Sie in der Ausgabe immer andere maximale Werte.
Kategorie: Allgemein
06 Aug 2016 22:48
  • Ralf Birk
  • Ralf Birks Avatar
Hallo Herr Stark,

ich hätte wieder mal ein Problem, bei dem Sie mir sicherlich helfen können.
Ich muss die Anzahl von Datensätzen mit gleichem Wert in einer Spalte an jeden Datensatz anhängen.
Im Moment fällt mir nur ein Batch mit Folgenden Funktionen ein:
1. GroupBy auf den Wert, ID auf GroupBy; Ein Max auf diese ID. Dann den Wert und Die Maxzahl in eine Datei schreiben.
2. Über einen erweiterten Replace aus der in Teil 1 generierten Datei den Maxwert in die Daten zurückschreiben.

Meine Frage:
Sie haben ja mal den AutoID-Heater um die "Gleiche Eingangsparameter" Funktion ergänzt. Wenn ich dies in den Max-Parametern abgreifen könnte wäre dies ideal.

Haben Sie eine Idee, wie ich dies in einem .fhd erlegigen kann? Geht dies auch ohne Funktionserweiterung des Max-Heaters?

Gruß Ralf B.
Kategorie: Allgemein
03 Aug 2016 05:27
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Holger,

wenn mehrere Datensätze zusammen betrachtet, bzw. die Werte davon subtrahiert werden sollen, müssen diese Datensätze/Zeilen über den GroupBy Heater anhand der Artikelnummer gruppiert werden.

Über die so gruppierten Zeilen kannst du dann die Berechnung mit der Bedingung anwenden. Kleines Problem dabei, Du muss die Lagerbestände der gewünschten Lagerorte über den Addition Heater summieren. Wichtig ist hier, dass Du bei der Addition die Werte über die Gruppierung aktivierst, siehe Screenshot bzw. das angepasste Beispiel im Anhang.

Den so berechneten Wert musst du in einem Parameter zwischenspeichern um den Wertz damit im Subtraktion Heater vom Lagerbestand abzuziehen.

Weitere Beispiele zum GroupBy Heater findest du hier:
Daten filtern und gruppieren
Daten gruppieren und Werte über die Gruppierung summieren
Oder weitere Beispiele hier im Forum ...

Dateianhang:

Dateiname: subtrahier...ng-2.zip
Dateigröße:2 KB


Kategorie: TextFile Adapter
22 Mär 2016 06:43
  • FlowHeater-Team
  • FlowHeater-Teams Avatar
Hallo Herr Birk,

2 AutoID Heater (oder auch mehr) funktionieren Problemlos in einer Definition auch zusammen mit dem GroupBy Heater und unterschiedlichen Zähloptionen. Im Anhang finden Sie ein kleines Beispiel dazu.

Bzgl. der Funktionalität um Zugriff auf den Wert des nächsten Datensatzes zu haben kann ich noch keine Aussage machen wann das ca. verfügbar sein wird. Bevor das angegangen werden kann müssen noch einige andere Dinge erledigt werden wie Fertigstellung XML Adapter , mehrere Steps in einer Definition, mehrere Adapter auch auf der READ Seite, etc.

Dateianhang:

Dateiname: 2x-autoid.zip
Dateigröße:2 KB
Kategorie: Allgemein
21 Mär 2016 07:50
  • Ralf Birk
  • Ralf Birks Avatar
Hallo Herr Stark,

Danke für den Tip mit der Count-Variablen. Mit der hat es geklappt.
Ich habe versucht in einer .fhd 2 AutoID-Heatern einzusetzen (1 x komplette Verarbeitung und 1 x GroupBy). Dass scheint leider nicht zu gehen.

Zu der anderen Frage (Markierung "X") habe ich nur einmal in einer Antwort von Ihnen gelesen, das Sie in einer kommenden Version beabsichtigen auch den Benachbarten Datensatz abzufragen. Ware das schon implementiert, könnte ich mir 2 zusätzliche .fth Abfragen im Batch sparen, da 1 Datensatz nach dem Ende einer Gruppe immer der erste der nächsten kommen.
Das wäre bei sehr großen Datensätzen ein erheblicher Zeitvorteil gewesen.

Gruß Ralf B.
Kategorie: Allgemein
31 - 45 von 95 Ergebnissen angezeigt.
Ladezeit der Seite: 1.030 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