Ich habe eine Anforderung, wo ich eine Excel-Datei habe, wo vier Spalten in der Datei sind. Das Bild für die Spalten ist angehängt.Erstellen von Ordner in Talend nach dem Vergleich von Daten aus Datei
Ich habe einen einfachen Job mit tSystem componenent erstellt, die Ordner in einem bestimmten Verzeichnis erstellt. Die Parameteränderungen für den Job unter:
Die Komponente wird die erforderlichen Ordner erstellen, aber die Voraussetzung dafür ist, werde ich die Werte für die Kontextvariablen Ordner und folder1 zur Laufzeit übergeben, die benötigt mit den Spalten der Excel-Datei, dh Ordner und Ordner1, zugeordnet werden, und wenn es mit dem Wert für die Kontextvariable initial_path übereinstimmt, muss der Wert der Spalte Path vom Excel bereitgestellt werden.
Beachten Sie, dass das Excel mehrere Zeilen hat, aber nur eine Zeile würde mit meinen Eingaben übereinstimmen, die ich zur Laufzeit überlasse, daher sollte jede Zeile gelesen werden, bis die Übereinstimmung gefunden wird.
Wie kann ich diesen Job entwerfen.
Vielen Dank im Voraus für die Hilfe.
tFileInputExcel -> tRowToIterate -> tJava (hier können Sie Ihre Logik anwenden, ob für diese Zeilenübereinstimmung gefunden wird oder nicht..set einige globale Variable) - RUN-IF-Trigger ---> tSystem (verwendet Werte, die Sie in der tJava-Komponente festlegen) und auch nur ausgeführt werden, wenn run-if-Bedingung wahr ist – garpitmzn
Können Sie bitte den Java-Beispielcode angeben, den ich für meine Anforderung verwenden soll. Auch soweit ich weiß gibt es keine Komponente namens tRowToIterate aber wir haben tFlowToIterate. Ist das die gleiche Komponente, die Sie meinten? – user3454116
ja tFlowToIterate .. in dem Java-Code, den Sie tun müssen, ist unten (zuerst müssen Sie die Standard-Grundeinstellung in tFlowToIterate deaktivieren, damit Sie die Schlüssel definieren können, die globale Variable sein werden. Dann müssen Sie diese Variablen/Schlüssel zuordnen In tJava-Code können Sie diese Variablen/Schlüssel mit globalMap.get ("Schlüssel/Variablenname") abrufen und vergleichen, um zu entscheiden, ob Sie den Pfad anhängen müssen oder nicht, und dann können Sie ein Flag setzen und speichern es in einer anderen globalen Variablen mit globalMap.set() und verwenden Sie es in Run-IF-Trigger – garpitmzn