column1 | column 2 | column 3 | column
1,2,3,4,5 | a,s,d,f,g | z,x,c,v,d | q,w,e,r,t
I want to this :
column1 | column 2 | column 3 | colum
1 | a |z |q
2 | s |x |w
How can i do this ?There is have too many topic about this issue but i can't fix this.
Solved! Go to Solution.
This can probably be done with tMap variables or multiple tNormalize components where you filter out rows based on a sequencer value. The simplest solution I came up with is to use tNormalize on the first column to get break out the list of keys, then use a tJavaRow to build a String array for each letter column. Using the key to index the array gets you the corresponding value from the list.
tFileInputDelimited --> tNormalize --> tJavaRow --> tLogRow
Schema: key, col1, col2, col3 (all strings)
String values1 = input_row.col1.split(","); String values2 = input_row.col2.split(","); String values3 = input_row.col3.split(","); int index = Integer.parseInt(input_row.key) - 1; output_row.key = input_row.key; output_row.col1 = values1[index]; output_row.col2 = values2[index]; output_row.col3 = values3[index];
[statistics] connecting to socket on port 3982 [statistics] connected 1|a|z|q 2|s|x|w 3|d|c|e 4|f|v|r 5|g|d|t [statistics] disconnected
Thanks for help.Yes i did it but its have problem on me.I cant do this.Its giving error after to 1 row.(1 row coming to tjava but after than its giving error).Error = nullpointerexception.Its can be about my design ?
Twebservice > tnormalize(Key selected) > tjavarow > tfileoutputexcel
//Code generated according to input schema and output schema String title = input_row.title.split(","); String subtitle = input_row.subtitle.split(","); int index = Integer.parseInt(input_row.id) - 1; output_row.id = input_row.id; output_row.title = title[index]; output_row.subtitle = subtitle[index];
I am getting data from twebservice.Other column data types integer and i can't use them with "split".Sorry its my fault.I sent you missing information.
Data types is too much.I have 20-30 column.Input data is xml tree but its not xml.
Input is twebservice.Input data coming from api.Every column data is example in below:
Column1(name) : "[asad,saewq,asdasd,asdad,asdad,asdas]"
column30price) : "[1,2,3,4,5,6]"
I guess your first tjava sample giving error because i need to filter "[" and "]"
I matched index variable with "id" column but first data coming with same this "[1231231312"
and last data "123123123]"Its giving error because "[" << this value.
Can you offer me another road ?I added 1 image and 2 xml file.
Image for twebservice connection screen.
out.xml = only one row
out2.xml = its two row
Talend named a Leader.
Kickstart your first data integration and ETL projects.
Learn how to do cool things with Context Variables
Find out how to migrate from one database to another using the Dynamic schema
Pick up some tips and tricks with Context Variables