Der Daten Import / Export Spezialist
Schauen Sie sich auch die verfügbaren allgemeinen Beispiele an evtl. kann Ihre Frage hiermit schon beantwortet werden: Hello World 1 / 2 / 3 , Zahlen in Zeichenketten formatieren , Einfache Wenn-Dann-Sonst Bedingung , Komplexe If-Then-ElseIf ... Bedingung , Daten filtern und gruppieren , Daten gruppieren und Werte über die Gruppierung summieren

lookup heater

  • Philip Herbert
  • Autor
  • Offline
  • Neues Mitglied
  • Neues Mitglied
Mehr
1 Monat 3 Tage her #4712 von Philip Herbert
lookup heater wurde erstellt von Philip Herbert
Hallo,
ich habe eine Frage zur Verwendung des Lookup Heater.

Ich habe auf der Eingangsseite eine csv Datei, welche eine Rechnungsnummer als Teil eines Stringfeldes beinhaltet. Diese Rechnungsnummer extrahiere ich per RegEx (?<!\d)\d{6}(?!\d) aus dem entsprechenden CSV Feld, was soweit auch funktioniert.

Auf der Write - Seite  habe ich aktuell zwei Adapter. Den In-Memory-Adapter für den späteren CSV Export (2. Verarbeitungschritt), sowie einen nur zu Definition des SQL-Connect  für den Lookup verwendeten Oracle Adapter.

Das RegEx Ergebnis versuche ich über den Lookup Heater zu führen um entsprechende zusätzliche Informationen, die aus einer Oracle-Tabelle gelesen/ergänzt werden müssen zu erhalten.
Das scheint aber offenbar der falsche Weg zu sein.

Wie kann diese Anforderung abgebildet werden ?


Danke, Philip Herbert


 
Anhänge:

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
1 Monat 3 Tage her #4713 von FlowHeater-Team
FlowHeater-Team antwortete auf lookup heater
Hallo Herr Herbert,

das Problem ist, dass aktuell ein hinzugefügter Adapter auch eine Verbindung und Funktion haben muss. Sie können das auf zwei Arten lösen.
  1. Einlesen der Tabellenwerte in einem vorgelagerten Verarbeitungsschritt in eine weitere InMemory Adapter Tabelle und dann per String Replace Heater diese InMemory Tabelle abfragen.
  2. Sie konfigurieren den Oracle Adapter so, dass hier nur ein SQL Skript erstellt wird, siehe Screenshot. Für den PrimaryKey übergeben Sie lediglich einen Dummy Wert, so sind Sie sicher, dass keine Daten eingefügt werden. Hinweis: Wenn Sie die Definition ausführen wird Ihnen angezeigt, dass die Daten erfolgreich geschrieben wurden, das bezieht sich in dem Fall nur auf das SQL Skript!

 
 

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.

  • Philip Herbert
  • Autor
  • Offline
  • Neues Mitglied
  • Neues Mitglied
Mehr
1 Monat 3 Tage her #4714 von Philip Herbert
Philip Herbert antwortete auf lookup heater
Danke, zumindest komme ich einen Schritt weiter,

Ich hatte zuvor die gesamte Tabelle ausgelesen,
das hat jedoch deutlich zu lange gedauert.

allerdings liefert der Lookup Header (Konfig wie im Screenshot kein Ergebnis, sondern nur das Default Ergebnis wenn nichts gefunden wird.
Im In Memory Adapter steht aber die richtige Rechnungsnummer drin, die der RegEx findet.

Wenn ich Lookup die Bedingung = $1 gegen 4711 tausche, wird der Inhalt des Feldes PATNR richtig aus der Tabelle passend zur Rechnung 4711 geliefert.
Das verstehe ich noch nicht.

Danke, Philip Herbert


 

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
1 Monat 3 Tage her #4715 von FlowHeater-Team
FlowHeater-Team antwortete auf lookup heater
bitte setzen Sie auf dem Lookup Heater mal einen Haltepunkt. Hierzu einfach mit der rechten Maustaste das Kontextmenü öffnen und „Haltepunkt“ auswählen. Der Lookup Heater wird nun mit einem roten Kreis dargestellt. Wenn Sie die Definition nun im Testmodus ausführen hält die Verarbeitung hier an und Sie können sich die Ein- und Ausgehenden Daten ansehen. Ich vermute, dass hier ein Problem mit der Formatierung vorliegt?

Alternativ könnten Sie auch den SQL Heater verwenden. Hier können Sie den SQL Befehl selbst aufbauen.

 

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.

  • Philip Herbert
  • Autor
  • Offline
  • Neues Mitglied
  • Neues Mitglied
Mehr
1 Monat 3 Tage her #4716 von Philip Herbert
Philip Herbert antwortete auf lookup heater
Danke, ein TRIM vor dem Lookup Heater  war die Lösung !

Dennoch werde ich mal weiter mit Tabelle einlesen (in Memory) probieren.
Da ich insgesamt 3 Felder aus der Tabelle benötigen werde, erscheint mit das doch effizienter (ggf. mit WHERE Clause um keinen FullTable Read zu benötigen)

ggf. kommen noch ein-zwei  Fragen zum FlowHeater Server ... Ich bin auf jeden Fall schon mal begeistert ! 

Danke, Philip Herbert
 

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
1 Monat 3 Tage her #4717 von FlowHeater-Team
FlowHeater-Team antwortete auf lookup heater
Ich habe den Fehler gefunden. Das Problem ist, dass aus dem RegEx Heater ein Datentyp String kommt und dann der Lookup Heater hier folgendes durchführt.

    … WHERE RECHNR = ‘4711’

Sie können diese Standardformatierung umgehen indem Sie die Ausgabe des RegEx Heater über einen Set Parameter Heater in einem FlowHeater Parameter (z.B. $RECHNR$) ablegen und dann im Lookup Heater diesen Parameter verwenden.

    … WHERE RECHNR = $RECHNR$

 

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.

Ladezeit der Seite: 0.503 Sekunden

andere Sprachen

en

FlowHeater Home

de en

Impressum/Kontakt

Datenschutz

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

Follow us on

twitter  facebook

YouTube

 de en