<?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 TOS - Help with Data transformation logic in Talend Studio</title>
    <link>https://community.qlik.com/t5/Talend-Studio/TOS-Help-with-Data-transformation-logic/m-p/2303572#M75439</link>
    <description>&lt;P&gt;Hello everyone, I have to make an etl and I stuck on a logic of transformation and maybe someone can help me.&amp;nbsp;Simplifying a lot now my file is structured as below:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE border="0" cellspacing="0" cellpadding="0"&gt;
 &lt;TBODY&gt;
  &lt;TR&gt;
   &lt;TD&gt;ACTIVITY&lt;/TD&gt;
   &lt;TD&gt;IN&lt;/TD&gt;
   &lt;TD&gt;OUT&lt;/TD&gt;
  &lt;/TR&gt;
  &lt;TR&gt;
   &lt;TD&gt;A&lt;/TD&gt;
   &lt;TD&gt;1&lt;/TD&gt;
   &lt;TD&gt;2&lt;/TD&gt;
  &lt;/TR&gt;
  &lt;TR&gt;
   &lt;TD&gt;A&lt;/TD&gt;
   &lt;TD&gt;2&lt;/TD&gt;
   &lt;TD&gt;3&lt;/TD&gt;
  &lt;/TR&gt;
  &lt;TR&gt;
   &lt;TD&gt;A&lt;/TD&gt;
   &lt;TD&gt;3&lt;/TD&gt;
   &lt;TD&gt;4&lt;/TD&gt;
  &lt;/TR&gt;
  &lt;TR&gt;
   &lt;TD&gt;A&lt;/TD&gt;
   &lt;TD&gt;6&lt;/TD&gt;
   &lt;TD&gt;7&lt;/TD&gt;
  &lt;/TR&gt;
 &lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;The logic is that if there are 2 or more rows that are sequential ( OUT corresponding with IN ), I have to aggregate, keeping the minimum IN and the maximum OUT. So the results has&amp;nbsp;to be:&lt;/P&gt;
&lt;TABLE border="0" cellspacing="0" cellpadding="0"&gt;
 &lt;TBODY&gt;
  &lt;TR&gt;
   &lt;TD&gt;ACTIVITY&lt;/TD&gt;
   &lt;TD&gt;IN&lt;/TD&gt;
   &lt;TD&gt;OUT&lt;/TD&gt;
  &lt;/TR&gt;
  &lt;TR&gt;
   &lt;TD&gt;A&lt;/TD&gt;
   &lt;TD&gt;1&lt;/TD&gt;
   &lt;TD&gt;4&lt;/TD&gt;
  &lt;/TR&gt;
  &lt;TR&gt;
   &lt;TD&gt;A&lt;/TD&gt;
   &lt;TD&gt;6&lt;/TD&gt;
   &lt;TD&gt;7&lt;/TD&gt;
  &lt;/TR&gt;
 &lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;If there were just the first 3 rows, it would be easy using a tAggregate, but I don't know how to tell Talend that has&amp;nbsp;to aggregate only sequential ones. (IN and OUT in reality are dates)&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Thu, 11 Jan 2018 11:38:19 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2018-01-11T11:38:19Z</dc:date>
    <item>
      <title>TOS - Help with Data transformation logic</title>
      <link>https://community.qlik.com/t5/Talend-Studio/TOS-Help-with-Data-transformation-logic/m-p/2303572#M75439</link>
      <description>&lt;P&gt;Hello everyone, I have to make an etl and I stuck on a logic of transformation and maybe someone can help me.&amp;nbsp;Simplifying a lot now my file is structured as below:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE border="0" cellspacing="0" cellpadding="0"&gt;
 &lt;TBODY&gt;
  &lt;TR&gt;
   &lt;TD&gt;ACTIVITY&lt;/TD&gt;
   &lt;TD&gt;IN&lt;/TD&gt;
   &lt;TD&gt;OUT&lt;/TD&gt;
  &lt;/TR&gt;
  &lt;TR&gt;
   &lt;TD&gt;A&lt;/TD&gt;
   &lt;TD&gt;1&lt;/TD&gt;
   &lt;TD&gt;2&lt;/TD&gt;
  &lt;/TR&gt;
  &lt;TR&gt;
   &lt;TD&gt;A&lt;/TD&gt;
   &lt;TD&gt;2&lt;/TD&gt;
   &lt;TD&gt;3&lt;/TD&gt;
  &lt;/TR&gt;
  &lt;TR&gt;
   &lt;TD&gt;A&lt;/TD&gt;
   &lt;TD&gt;3&lt;/TD&gt;
   &lt;TD&gt;4&lt;/TD&gt;
  &lt;/TR&gt;
  &lt;TR&gt;
   &lt;TD&gt;A&lt;/TD&gt;
   &lt;TD&gt;6&lt;/TD&gt;
   &lt;TD&gt;7&lt;/TD&gt;
  &lt;/TR&gt;
 &lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;The logic is that if there are 2 or more rows that are sequential ( OUT corresponding with IN ), I have to aggregate, keeping the minimum IN and the maximum OUT. So the results has&amp;nbsp;to be:&lt;/P&gt;
&lt;TABLE border="0" cellspacing="0" cellpadding="0"&gt;
 &lt;TBODY&gt;
  &lt;TR&gt;
   &lt;TD&gt;ACTIVITY&lt;/TD&gt;
   &lt;TD&gt;IN&lt;/TD&gt;
   &lt;TD&gt;OUT&lt;/TD&gt;
  &lt;/TR&gt;
  &lt;TR&gt;
   &lt;TD&gt;A&lt;/TD&gt;
   &lt;TD&gt;1&lt;/TD&gt;
   &lt;TD&gt;4&lt;/TD&gt;
  &lt;/TR&gt;
  &lt;TR&gt;
   &lt;TD&gt;A&lt;/TD&gt;
   &lt;TD&gt;6&lt;/TD&gt;
   &lt;TD&gt;7&lt;/TD&gt;
  &lt;/TR&gt;
 &lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;If there were just the first 3 rows, it would be easy using a tAggregate, but I don't know how to tell Talend that has&amp;nbsp;to aggregate only sequential ones. (IN and OUT in reality are dates)&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 11 Jan 2018 11:38:19 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/TOS-Help-with-Data-transformation-logic/m-p/2303572#M75439</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2018-01-11T11:38:19Z</dc:date>
    </item>
    <item>
      <title>Re: TOS - Help with Data transformation logic</title>
      <link>https://community.qlik.com/t5/Talend-Studio/TOS-Help-with-Data-transformation-logic/m-p/2303573#M75440</link>
      <description>&lt;P&gt;Basically, you should think of creating partition buckets.&amp;nbsp; Once you have your partition buckets, you just do a min on IN and a max on OUT on the bucket group and you will have the answer.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Here is an example using integers.&amp;nbsp; But you can use same logic for dates. I have done it with a tJavaFlex and some code as it is the fastest if your data is sorted on IN and is just like below.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="1.png" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0683p000009LrhR.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/154223i3527F6C3E8F7316E/image-size/large?v=v2&amp;amp;px=999" role="button" title="0683p000009LrhR.png" alt="0683p000009LrhR.png" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="2.png" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0683p000009LryX.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/154872iF0D3DFE26B6139F6/image-size/large?v=v2&amp;amp;px=999" role="button" title="0683p000009LryX.png" alt="0683p000009LryX.png" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="3.png" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0683p000009Ls47.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/142202i3A21D86F84C41398/image-size/large?v=v2&amp;amp;px=999" role="button" title="0683p000009Ls47.png" alt="0683p000009Ls47.png" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="4.png" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0683p000009Ls4H.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/151853iD4AEBBC6D2BEA688/image-size/large?v=v2&amp;amp;px=999" role="button" title="0683p000009Ls4H.png" alt="0683p000009Ls4H.png" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 22 Jan 2018 01:44:28 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/TOS-Help-with-Data-transformation-logic/m-p/2303573#M75440</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2018-01-22T01:44:28Z</dc:date>
    </item>
  </channel>
</rss>

