<?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 tHMap - how to group by node in Talend Studio</title>
    <link>https://community.qlik.com/t5/Talend-Studio/tHMap-how-to-group-by-node/m-p/2203855#M4974</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt; 
&lt;P&gt;we have to create a mapping between flat&amp;nbsp;data (returned by a database query) and a complex XML file with child loops at same level.&lt;/P&gt; 
&lt;P&gt;This kind of XML&amp;nbsp;doesn't fit&amp;nbsp; in the common tXMLMap component, so the best solution would be using the tHMap component and the Talend Data Mapper features.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;We are trying to create a very simple test with a simple XML, but I guess we are missing something.&lt;/P&gt; 
&lt;P&gt;This is our input data:&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6617746&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8314186&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6617746&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8314187&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6617746&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8314188&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6617746&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8314189&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6617747&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8314192&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6617747&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8314193&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9240339&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11687576&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9240339&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11687577&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9240339&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11687578&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9240339&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11687579&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9240340&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11687580&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;And&amp;nbsp;the output that we are expeting is the following:&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;PRE&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;
&amp;lt;Container&amp;gt;
  &amp;lt;OUT&amp;gt;
    &amp;lt;ElencoNote&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;1&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;6617746&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;8314186&amp;lt;/idDreale&amp;gt;
              &amp;lt;idDreale&amp;gt;8314187&amp;lt;/idDreale&amp;gt;
              &amp;lt;idDreale&amp;gt;8314188&amp;lt;/idDreale&amp;gt;
              &amp;lt;idDreale&amp;gt;8314189&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;6617747&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;8314192&amp;lt;/idDreale&amp;gt;
              &amp;lt;idDreale&amp;gt;8314193&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;41&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;9240339&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;11687576&amp;lt;/idDreale&amp;gt;
              &amp;lt;idDreale&amp;gt;11687577&amp;lt;/idDreale&amp;gt;
              &amp;lt;idDreale&amp;gt;11687578&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;9240340&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;11687580&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
    &amp;lt;/ElencoNote&amp;gt;
  &amp;lt;/OUT&amp;gt;
&amp;lt;/Container&amp;gt;&lt;/PRE&gt; 
&lt;P&gt;The problem is that the output&amp;nbsp;we are getting&amp;nbsp;creates 1 idNota for each idDreale, so I think that we should somehow group the data.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;PRE&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;
&amp;lt;Container&amp;gt;
  &amp;lt;OUT&amp;gt;
    &amp;lt;ElencoNote&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;1&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;6617746&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;8314186&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;1&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;6617746&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;8314187&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;1&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;6617746&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;8314188&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;1&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;6617746&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;8314189&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;1&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;6617747&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;8314192&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;1&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;6617747&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;8314193&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;41&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;9240339&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;11687576&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;41&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;9240339&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;11687577&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;41&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;9240339&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;11687578&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;41&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;9240339&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;11687579&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;41&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;9240340&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;11687580&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
    &amp;lt;/ElencoNote&amp;gt;
  &amp;lt;/OUT&amp;gt;
&amp;lt;/Container&amp;gt;&lt;/PRE&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Can you help us?&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Thank you,&lt;/P&gt; 
&lt;P&gt;Vincenzo&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Sat, 16 Nov 2024 07:24:06 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2024-11-16T07:24:06Z</dc:date>
    <item>
      <title>tHMap - how to group by node</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tHMap-how-to-group-by-node/m-p/2203855#M4974</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt; 
&lt;P&gt;we have to create a mapping between flat&amp;nbsp;data (returned by a database query) and a complex XML file with child loops at same level.&lt;/P&gt; 
&lt;P&gt;This kind of XML&amp;nbsp;doesn't fit&amp;nbsp; in the common tXMLMap component, so the best solution would be using the tHMap component and the Talend Data Mapper features.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;We are trying to create a very simple test with a simple XML, but I guess we are missing something.&lt;/P&gt; 
&lt;P&gt;This is our input data:&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6617746&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8314186&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6617746&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8314187&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6617746&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8314188&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6617746&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8314189&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6617747&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8314192&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6617747&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8314193&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9240339&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11687576&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9240339&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11687577&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9240339&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11687578&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9240339&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11687579&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;41&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9240340&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11687580&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;And&amp;nbsp;the output that we are expeting is the following:&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;PRE&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;
&amp;lt;Container&amp;gt;
  &amp;lt;OUT&amp;gt;
    &amp;lt;ElencoNote&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;1&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;6617746&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;8314186&amp;lt;/idDreale&amp;gt;
              &amp;lt;idDreale&amp;gt;8314187&amp;lt;/idDreale&amp;gt;
              &amp;lt;idDreale&amp;gt;8314188&amp;lt;/idDreale&amp;gt;
              &amp;lt;idDreale&amp;gt;8314189&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;6617747&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;8314192&amp;lt;/idDreale&amp;gt;
              &amp;lt;idDreale&amp;gt;8314193&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;41&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;9240339&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;11687576&amp;lt;/idDreale&amp;gt;
              &amp;lt;idDreale&amp;gt;11687577&amp;lt;/idDreale&amp;gt;
              &amp;lt;idDreale&amp;gt;11687578&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;9240340&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;11687580&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
    &amp;lt;/ElencoNote&amp;gt;
  &amp;lt;/OUT&amp;gt;
&amp;lt;/Container&amp;gt;&lt;/PRE&gt; 
&lt;P&gt;The problem is that the output&amp;nbsp;we are getting&amp;nbsp;creates 1 idNota for each idDreale, so I think that we should somehow group the data.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;PRE&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;
&amp;lt;Container&amp;gt;
  &amp;lt;OUT&amp;gt;
    &amp;lt;ElencoNote&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;1&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;6617746&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;8314186&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;1&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;6617746&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;8314187&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;1&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;6617746&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;8314188&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;1&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;6617746&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;8314189&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;1&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;6617747&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;8314192&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;1&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;6617747&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;8314193&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;41&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;9240339&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;11687576&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;41&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;9240339&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;11687577&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;41&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;9240339&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;11687578&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;41&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;9240339&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;11687579&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
      &amp;lt;Nota&amp;gt;
        &amp;lt;idNota&amp;gt;41&amp;lt;/idNota&amp;gt;
        &amp;lt;ElencoContraenti&amp;gt;
          &amp;lt;Contraente&amp;gt;
            &amp;lt;idContraente&amp;gt;9240340&amp;lt;/idContraente&amp;gt;
            &amp;lt;ElencoDreali&amp;gt;
              &amp;lt;idDreale&amp;gt;11687580&amp;lt;/idDreale&amp;gt;
            &amp;lt;/ElencoDreali&amp;gt;
          &amp;lt;/Contraente&amp;gt;
        &amp;lt;/ElencoContraenti&amp;gt;
      &amp;lt;/Nota&amp;gt;
    &amp;lt;/ElencoNote&amp;gt;
  &amp;lt;/OUT&amp;gt;
&amp;lt;/Container&amp;gt;&lt;/PRE&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Can you help us?&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Thank you,&lt;/P&gt; 
&lt;P&gt;Vincenzo&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 16 Nov 2024 07:24:06 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tHMap-how-to-group-by-node/m-p/2203855#M4974</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2024-11-16T07:24:06Z</dc:date>
    </item>
    <item>
      <title>Re: tHMap - how to group by node</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tHMap-how-to-group-by-node/m-p/2203856#M4975</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt; 
&lt;P&gt;Do your output structure have invisible group and the representation is avro/xml?&lt;/P&gt; 
&lt;P&gt;Here exists a jira issue on talend bug tracker:&lt;A title="https://jira.talendforge.org/browse/TDM-6355" href="https://jira.talendforge.org/browse/TDM-6355" target="_self" rel="nofollow noopener noreferrer"&gt;https://jira.talendforge.org/browse/TDM-6355&lt;/A&gt;&lt;/P&gt; 
&lt;P&gt;Best regards&lt;/P&gt; 
&lt;P&gt;Sabrina&lt;/P&gt;</description>
      <pubDate>Tue, 13 Nov 2018 07:46:26 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tHMap-how-to-group-by-node/m-p/2203856#M4975</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2018-11-13T07:46:26Z</dc:date>
    </item>
    <item>
      <title>Re: tHMap - how to group by node</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tHMap-how-to-group-by-node/m-p/2203857#M4976</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;basically we created the output structure only using an XML sample, so we don't have a schema to follow, we just&amp;nbsp;know that we need to do a&amp;nbsp;kind of group by.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 16 Nov 2018 12:01:42 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tHMap-how-to-group-by-node/m-p/2203857#M4976</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2018-11-16T12:01:42Z</dc:date>
    </item>
    <item>
      <title>Re: tHMap - how to group by node</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tHMap-how-to-group-by-node/m-p/2203858#M4977</link>
      <description>&lt;P&gt;I think you can do this with an aggregate function, as explained here:&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&lt;A href="https://help.talend.com/reader/YTUJp4~lScETGDBqSSOt5g/pI7YtMQR5f9q1iK10yXXDw" target="_blank" rel="nofollow noopener noreferrer"&gt;https://help.talend.com/reader/YTUJp4~lScETGDBqSSOt5g/pI7YtMQR5f9q1iK10yXXDw&lt;/A&gt;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;The AgConcatFirstPresentValue&amp;nbsp;should work, although you could also use AgMaximum (since the values for each node are identical within that node). You might also look at the looping cookbook, which has some examples of handling looping and non-looping map elements in the same mapper job. I believe you can also split the output schema into multiple sections that loop independently: this might also be helpful (I haven't done it, so YMMV).&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&lt;A href="https://help.talend.com/reader/YTUJp4~lScETGDBqSSOt5g/nyCFXAQTTDEuQ2hiCz28mg" target="_blank" rel="nofollow noopener noreferrer"&gt;https://help.talend.com/reader/YTUJp4~lScETGDBqSSOt5g/nyCFXAQTTDEuQ2hiCz28mg&lt;/A&gt;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Hope this helps. The Data Mapper is a great tool, but it's *not* intuitive.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;David&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 16 Nov 2018 13:42:06 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tHMap-how-to-group-by-node/m-p/2203858#M4977</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2018-11-16T13:42:06Z</dc:date>
    </item>
  </channel>
</rss>

