<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Split tjavarow from 1 input in multiple rows in Talend Studio</title>
    <link>https://community.qlik.com/t5/Talend-Studio/Split-tjavarow-from-1-input-in-multiple-rows/m-p/2350499#M117347</link>
    <description>&lt;P&gt;Hey, this is my first time that i need help &lt;span class="lia-unicode-emoji" title=":grinning_face_with_smiling_eyes:"&gt;😄&lt;/span&gt; &lt;/P&gt;&lt;P&gt;i got a Function how give out this String as a unlimited String sperated by ; and ending with line feed. I used this Code to Break out the strings in Multipli rows looks like these:&lt;/P&gt;&lt;P&gt;input1=&lt;/P&gt;&lt;P&gt;"&lt;/P&gt;&lt;P&gt;18;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n&lt;/P&gt;&lt;P&gt;19;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n&lt;/P&gt;&lt;P&gt;1;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n&lt;/P&gt;&lt;P&gt;19;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n&lt;/P&gt;&lt;P&gt;18;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n&lt;/P&gt;&lt;P&gt;195;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n&lt;/P&gt;&lt;P&gt;145;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n&lt;/P&gt;&lt;P&gt;"&lt;/P&gt;&lt;P&gt;These String are devided by this Script:&lt;/P&gt;&lt;P&gt;String input = input1; // Assuming your input string is available in a field named "inputString"&lt;/P&gt;&lt;P&gt;String[] lines = input.split("\\n"); // Split the input into individual lines&lt;/P&gt;&lt;P&gt;for (String line : lines) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;String[] fields = line.split(";"); // Split each line into fields based on the semicolon separator&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;String field1 = fields[0]; // Retrieve the first field&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;output_row.newColumn = fields[0];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;String field2 = fields[1]; // Retrieve the second field&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;output_row.newColumn1 = fields[1];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;String field3 = fields[2]; // Retrieve the third field&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;output_row.newColumn2 = fields[2];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;String field4 = fields[3]; // Retrieve the fourth field&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;output_row.newColumn3 = fields[3];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;String field5 = fields[4]; // Retrieve the fifth field&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;output_row.newColumn4 = fields[4];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;// Perform further processing or output the parsed fields as needed&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;System.out.println("Field 1: " + field1);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;System.out.println("Field 2: " + field2);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;System.out.println("Field 3: " + field3);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;System.out.println("Field 4: " + field4);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;System.out.println("Field 5: " + field5);&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;If i try to give out to output_row i only get the last line of these output.&lt;/P&gt;&lt;P&gt;Can somone Help me or move my mind i a direction how to do it?&lt;/P&gt;&lt;P&gt;DB INPUT ==&amp;gt; TJAVAROW ==&amp;gt; tmap all rows how a given by &lt;/P&gt;&lt;P&gt;TJAVAROW from these Output&lt;/P&gt;&lt;P&gt;Thank you&lt;/P&gt;&lt;P&gt;SceniX&lt;/P&gt;</description>
    <pubDate>Thu, 22 Jun 2023 17:26:59 GMT</pubDate>
    <dc:creator>SceniX</dc:creator>
    <dc:date>2023-06-22T17:26:59Z</dc:date>
    <item>
      <title>Split tjavarow from 1 input in multiple rows</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Split-tjavarow-from-1-input-in-multiple-rows/m-p/2350499#M117347</link>
      <description>&lt;P&gt;Hey, this is my first time that i need help &lt;span class="lia-unicode-emoji" title=":grinning_face_with_smiling_eyes:"&gt;😄&lt;/span&gt; &lt;/P&gt;&lt;P&gt;i got a Function how give out this String as a unlimited String sperated by ; and ending with line feed. I used this Code to Break out the strings in Multipli rows looks like these:&lt;/P&gt;&lt;P&gt;input1=&lt;/P&gt;&lt;P&gt;"&lt;/P&gt;&lt;P&gt;18;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n&lt;/P&gt;&lt;P&gt;19;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n&lt;/P&gt;&lt;P&gt;1;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n&lt;/P&gt;&lt;P&gt;19;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n&lt;/P&gt;&lt;P&gt;18;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n&lt;/P&gt;&lt;P&gt;195;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n&lt;/P&gt;&lt;P&gt;145;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n&lt;/P&gt;&lt;P&gt;"&lt;/P&gt;&lt;P&gt;These String are devided by this Script:&lt;/P&gt;&lt;P&gt;String input = input1; // Assuming your input string is available in a field named "inputString"&lt;/P&gt;&lt;P&gt;String[] lines = input.split("\\n"); // Split the input into individual lines&lt;/P&gt;&lt;P&gt;for (String line : lines) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;String[] fields = line.split(";"); // Split each line into fields based on the semicolon separator&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;String field1 = fields[0]; // Retrieve the first field&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;output_row.newColumn = fields[0];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;String field2 = fields[1]; // Retrieve the second field&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;output_row.newColumn1 = fields[1];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;String field3 = fields[2]; // Retrieve the third field&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;output_row.newColumn2 = fields[2];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;String field4 = fields[3]; // Retrieve the fourth field&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;output_row.newColumn3 = fields[3];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;String field5 = fields[4]; // Retrieve the fifth field&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;output_row.newColumn4 = fields[4];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;// Perform further processing or output the parsed fields as needed&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;System.out.println("Field 1: " + field1);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;System.out.println("Field 2: " + field2);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;System.out.println("Field 3: " + field3);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;System.out.println("Field 4: " + field4);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;System.out.println("Field 5: " + field5);&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;If i try to give out to output_row i only get the last line of these output.&lt;/P&gt;&lt;P&gt;Can somone Help me or move my mind i a direction how to do it?&lt;/P&gt;&lt;P&gt;DB INPUT ==&amp;gt; TJAVAROW ==&amp;gt; tmap all rows how a given by &lt;/P&gt;&lt;P&gt;TJAVAROW from these Output&lt;/P&gt;&lt;P&gt;Thank you&lt;/P&gt;&lt;P&gt;SceniX&lt;/P&gt;</description>
      <pubDate>Thu, 22 Jun 2023 17:26:59 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Split-tjavarow-from-1-input-in-multiple-rows/m-p/2350499#M117347</guid>
      <dc:creator>SceniX</dc:creator>
      <dc:date>2023-06-22T17:26:59Z</dc:date>
    </item>
    <item>
      <title>Re: Split tjavarow from 1 input in multiple rows</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Split-tjavarow-from-1-input-in-multiple-rows/m-p/2350500#M117348</link>
      <description>&lt;P&gt;Hi @Patrik Kajs​&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I believe it's not possible to "create" rows from tJavaRow, because the code you write there only affects the "main" part of component execution. So any loop you define there will iterate over a single row and that's why you're getting only the last record of your input data. It is iterating over all the records on the input, but it only outputs data after completing the loop and then there's only the last values recovered during loop.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However, you can achieve this using tJavaFlex by spliting your code on Start, Main and End sections:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;B&gt;Start code:&lt;/B&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;String input1 = "18;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n19;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n1;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n19;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n18;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n195;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n145;25.05.2023;64;24.05.2023;2023-05-24 13:03:37.390\n";&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;String input = input1; // Assuming your input string is available in a field named "inputString"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;String[] lines = input.split("\\n"); // Split the input into individual lines&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;for (String line : lines) { //just the loop header here to create rows for each record on the input data&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;B&gt;Main code: &lt;/B&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;//now we can split the columns and output them, remember to replace the output_row by the corresponding output row name connecting tJavaFlex to next component&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;String[] fields = line.split(";"); // Split each line into fields based on the semicolon separator&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;String field1 = fields[0]; // Retrieve the first field&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;row1.newColumn = fields[0];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;String field2 = fields[1]; // Retrieve the second field&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;row1.newColumn1 = fields[1];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;String field3 = fields[2]; // Retrieve the third field&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;row1.newColumn2 = fields[2];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;String field4 = fields[3]; // Retrieve the fourth field&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;row1.newColumn3 = fields[3];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;String field5 = fields[4]; // Retrieve the fifth field&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;row1.newColumn4 = fields[4];&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;// Perform further processing or output the parsed fields as needed&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;//System.out.println("Field 1: " + field1);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;//System.out.println("Field 2: " + field2);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;//System.out.println("Field 3: " + field3);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;//System.out.println("Field 4: " + field4);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;//System.out.println("Field 5: " + field5);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;B&gt;End code:&lt;/B&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;} //yes, just close the loop here&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I hope this helps you.&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Anselmo&lt;/P&gt;</description>
      <pubDate>Thu, 22 Jun 2023 20:54:01 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Split-tjavarow-from-1-input-in-multiple-rows/m-p/2350500#M117348</guid>
      <dc:creator>anselmopeixoto</dc:creator>
      <dc:date>2023-06-22T20:54:01Z</dc:date>
    </item>
  </channel>
</rss>

