Skip to main content
Weil einfach - produktiver ist

Der Daten Spezialist

Konvertieren Sie die Daten mühelos zwischen verschiedenen Formaten ohne Programmierkenntnisse dank Visual Designer. Effizient und super einfach.
Flowheater Download

[Gelöst] Mehrere Datensätze in ein Feld schreiben

  • Matthias Teichmann
  • Autor
  • Offline
  • Benutzer
  • Benutzer
Mehr
11 Jahre 4 Monate her #1174 von Matthias Teichmann
[Gelöst] Mehrere Datensätze in ein Feld schreiben wurde erstellt von Matthias Teichmann
Guten Tag,
zur besseren Verständlichkeit des Problems habe ich einen Screenshot der Tabelle gemacht und angehängt.

In der Quelldatenbank gibt es in dieser Tabelle keinen Primary Key. Die Datenbank gehört zu unserem Warenwirtschaftssystem.
Unter der "Artnr" den Benutzernamen und unter "Server" den Server des Webspaces unseres Kunden.
JEder Kudne kann aber auch beliebig viele Websaces buchen.
Leider gibt es zu jeder Kundennummer einen Eintrag pro gebuchten Webspace.
Ich möchte unseren kompletten Kundenstamm in ein CRM übertragen (MSSQL) und habe auf der Write-Seite ein Textfeld mit 2000 Zeichen.
Dort soll bei jedem Kunden (anhand der Kundennummer) jeder dazugehörige Benutzer, inklusive Server in folgendem Format geschrieben werden:
Bunzter - Server (Zeilenumbruch).
Ich rätsel und versuche schon seit Stunden das umzusetzen.
Geht das überhaupt mit dem Flowheater?


Dabei ist mir auch aufgefallen, dass der Flowheater abstürzt, sobald man auf der READ-Seite "Select * From Kundentraffic" eingibt.
Die Spalte "Preis" enthält teilweise Werte < x,yE-4, damit scheint der Flowheater nicht zurechtzukommen. (Oder der ODBC-Treiber schmiert dabei ab)

Mit freundlichen Grüßen

Matthias Teichmann
Anhänge:

Bitte Anmelden um der Konversation beizutreten.

Mehr
11 Jahre 4 Monate her - 8 Jahre 8 Monate her #1175 von FlowHeater-Team
FlowHeater-Team antwortete auf Aw: Mehrere Datensätze in ein Feld schreiben
Hallo Herr Teichmann,

Sie benötigen dazu zunächst den GroupBy Heater , der die Datensätze anhand der Kundennummer zusammenfasst. Dann müssen Sie die Felder Server und Benutzer über einen String Append Heater miteinander kombinieren. Diese Kombination (inkl. Trennzeichen) der beiden Felder muss anschließend über einen weiteren String Append Heater mit eingeschalteter Gruppierungsfunktion geschickt werden. Als Trennzeichen verwenden Sie hier z.B. "###" Hiermit werden alle Kombinationen zu dem Kunden zu einer Zeichenkette zusammengefasst. Das verwendete Trennzeichen "###" müssen Sie dann noch mittels des String Replace Heaters in den gewünschten Zeilenumbruch umwandeln.

Das klingt jetzt sehr kompliziert wenn Sie sich das Beispiel im Anhang anschauen wird es denke etwas klarer zu verstehen. Im Beispiel wird eine Access Datenbank verwendet!

Zu Ihrem ODBC Fehler) Der FlowHeater kann mit den Datentypen Decimal und Currency Zahlen mit bis zu 28 Stellen verarbeiten. Wenn Sie größere Zahlenwerte haben können Sie den Datentypen Double verwenden hier werden Zahlen bis 308 Stellen unterstützt. Allerdings ist dann die Genauigkeit auf 15-16 stellen begrenzt! Prüfen Sie mal welcher Datentyp für die Spalte Preis vom FlowHeater erkannt wurde, ggf. stellen Sie den Datentypen manuell auf Double. Ich vermute aber dass hier ein Problem mit dem ODBC Treiber vorliegt. Wird Ihnen eine Fehlermeldung angezeigt?

Dateianhang:

Dateiname: datensaetz...eren.zip
Dateigröße:11 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:
Letzte Änderung: 8 Jahre 8 Monate her von FlowHeater-Team.

Bitte Anmelden um der Konversation beizutreten.

  • Matthias Teichmann
  • Autor
  • Offline
  • Benutzer
  • Benutzer
Mehr
11 Jahre 4 Monate her #1176 von Matthias Teichmann
Matthias Teichmann antwortete auf Aw: Mehrere Datensätze in ein Feld schreiben
Hallo Herr Stark,
erneut vielen Dank für Ihre schnelle Hilfe.
Das von Ihnen bereitgestellte Beispiel entspricht in etwa meinem Lösungsversuch.
Allerdings habe ich das Problem, dass es in diesem Fall nicht funktioniert.
Ich gehe davon aus, dass es daran liegt, dass die restlichen Kundendaten schon bestehen und ein Update gefahren wird.
Im Testlauf werden pro Kundennummer teilweise mehrere Updates gezogen.
Es Scheint aber teilweise zu funktionieren, wie man an dem angefügten Screenshot sieht.
Ich kann nicht nachvollziehen, warum das nur sporadisch funktioniert, da ich im Vergleich der Kunden in der Datenbank keine Signifikanten Unterschiede gefunden habe, die diesen Fehler verursachen könnte
Anbei ein Screenshot vom Testlauf (in der tatsächlichen Durchführung tritt das Problem natürlich genau so auf).


Zu dem ODBC Fehler:

Es gibt eine Fehlermeldung "Die Eingabezeichenfolge hat das falsche Format", trotz Double als Datentyp.
Das passiert sogar, wenn die Spalte Preis gar nicht ausgewählt ist, sondern nur mit dem Select auf der READ-Seite einbezogen wird.

Mit freundlichen Grüßen

Matthias Teichmann
Anhänge:

Bitte Anmelden um der Konversation beizutreten.

Mehr
11 Jahre 4 Monate her #1177 von FlowHeater-Team
FlowHeater-Team antwortete auf Aw: Mehrere Datensätze in ein Feld schreiben
Hallo Herr Teichmann,

der GroupBy Heater fasst lediglich gleiche aufeinanderfolgende Werte zu einem Datensatz zusammen. Damit das in Ihrem Fall richtig funktioniert müssen Sie auf der READ Seite an das SQL Statement noch einen "ORDER BY" anhängen.

z.B. select * from Ihre-Tabelle ORDER BY KUNDENNR

Damit sollte das so funktionieren wie gewünscht.

Zu Ihrem ODBC Problem) Ich denke das liegt an dem verwendeten ODBC Treiber. Versuchen Sie mal das Feld bereits im SELECT auf einen anderen Datentypen zu casten. Wie das geht hängt von der verwendeten SQL Datenquelle im ODBC Adapter ab. Hier mal ein Beispiel wie es für den SQL-Server funktionieren würde.

select id, cast(preis as varchar(20)) from Ihre-Tabelle

Oder

select id, convert(varchar(20), preis) from Ihre-Tabelle

Die verwendete Syntax sowie die benötigen Befehle (cast, convert, to_char, …) hängen von der SQL Datenquelle der READ Seite ab.

PS: Nicht vergessen, nach der Änderung müssen Sie das Schema (Felder) erneut einlesen!

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 um der Konversation beizutreten.

  • Matthias Teichmann
  • Autor
  • Offline
  • Benutzer
  • Benutzer
Mehr
11 Jahre 4 Monate her #1178 von Matthias Teichmann
Matthias Teichmann antwortete auf Aw: Mehrere Datensätze in ein Feld schreiben
Vielen Dank,
jetzt funktioniert es einwandfrei.


Ich bin noch nicht dazu gekommen zu gucken, ob das Problem mit dem Preis mit der Möglichkeit nicht mehr auftritt, allerdings wird der Preis auch nicht wirklich benötigt.
Es hätte nur sein können, dass es ein Fehler im Flowheater ist, der mir zufällig über den Weg gelaufen ist und das wollte ich nur kurz erwähnen.

Bitte Anmelden um der Konversation beizutreten.

Ladezeit der Seite: 0.367 Sekunden

FlowHeater - Der Daten Spezialist

Effiziente Datenintegration und Transformation mit FlowHeater - Ihre Lösung für nahtlosen Datentransfer.

Rechtliches

Support & Kontakt

Kontaktinformation

Telefon:
0951 / 99339792

E-Mail:
Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein.


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