<?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 Read MT940 File in Talend Studio</title>
    <link>https://community.qlik.com/t5/Talend-Studio/Read-MT940-File/m-p/2256646#M38971</link>
    <description>&lt;P&gt;&amp;nbsp;Hallo All Experts ,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I have below file format . This is one of standared&amp;nbsp; format of MT940 file&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;{1:F01XXXXXXXXXXXX0000000000}{2:I940XXXXXXXXXXXXN}{4:&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:20:3067310&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:25:514486527783&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:28C:1/1&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:60F:C181128MYR12658,54&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:61:1812281228C125,12NCOL851711644078226&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;851711644078226 NG KIM LAI&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:61:1812281228D25,12NCOL851711644078226&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;851711644078228 NG KIM LAI&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:61:1812281228D2500,00NTRFRCMS&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;FPX One-off Impl'tion Fee-Nov18&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:61:1812281228D355,12NTRFCITI1819387740638659&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;CITI514486527783&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:62F:C181128MYR17271,48&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:64:C181128MYR17271,48&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;-}&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;From This file I have below requirement&amp;nbsp;&lt;/P&gt;
&lt;OL&gt;
 &lt;LI&gt;First and Last Line to be removed&amp;nbsp;&lt;/LI&gt;
 &lt;LI&gt;Read only Line with TAG = :61:&amp;nbsp;&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; Now here is a challange , When I say read only with TAG -61 means we have to read next line of 61 also . In above example , I have to read below lines&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;:61:1812281228C125,12NCOL851711644078226&lt;BR /&gt;851711644078226 NG KIM LAI&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;:61:1812281228D25,12NCOL851711644078226&lt;BR /&gt;851711644078228 NG KIM LAI&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;:61:1812281228D2500,00NTRFRCMS&lt;BR /&gt;FPX One-off Impl'tion Fee-Nov18&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;:61:1812281228D355,12NTRFCITI1819387740638659&lt;BR /&gt;CITI514486527783&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Out of which immediate next line is Transaction Description&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;:61:1812281228D2500,00NTRFRCMS&lt;BR /&gt;FPX One-off Impl'tion Fee-Nov18&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;In final output file I am expecting below Information to be populated&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;181228|D|2500,00|FPX One-off Impl'tion Fee-Nov18&lt;/P&gt;
&lt;P&gt;181228|C|125,12|851711644078226&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;181228|D|25,12|851711644078228&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Now&amp;nbsp; here lets consider one of&amp;nbsp; example of&amp;nbsp; 61 TAG :&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;:61:1812281228C125,12NCOL851711644078226&lt;BR /&gt;851711644078226 NG KIM LAI&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Here '1812281228C125,12NCOL851711644078226'&amp;nbsp; from this string :&amp;nbsp;&lt;/P&gt;
&lt;P&gt;First 6 character are&amp;nbsp; DATE ( YYMMDD) ---&amp;gt;181228&lt;/P&gt;
&lt;P&gt;Next 2 character are FundDATE&amp;nbsp; (MMDD) --&amp;gt;1228&lt;/P&gt;
&lt;P&gt;Next 1 character&amp;nbsp; is indicator ( credit /debit ) --C&lt;/P&gt;
&lt;P&gt;Next 5 chracter&amp;nbsp; is Ammount&amp;nbsp; &amp;nbsp;--125,12&lt;/P&gt;
&lt;P&gt;Rest information is not required&amp;nbsp;&lt;/P&gt;
&lt;P&gt;and from string '851711644078226 NG KIM LAI'&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;if First 15 character are Numeric and does not contain valus as ' CITI' then read only 15 character&amp;nbsp;&lt;/P&gt;
&lt;P&gt;else&amp;nbsp;&lt;/P&gt;
&lt;P&gt;if First 15 character are Non Numeric and does not contain valus as ' CITI' then read all the character&amp;nbsp;&lt;/P&gt;
&lt;P&gt;else&amp;nbsp; First 15 character are Non Numeric and does contain valus as ' CITI' then then ignore that TAG&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hence I am expecting final output as :&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Date | Indicator | Ammount | Reference&amp;nbsp;&lt;/P&gt;
&lt;P&gt;181228|D|2500,00|FPX One-off Impl'tion Fee-Nov18&lt;/P&gt;
&lt;P&gt;181228|C|125,12|851711644078226&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;181228|D|25,12|851711644078228&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I really need to develope a generic approach to read such type of data . Because In future I may have another TAG with same kind of details so that I can utlize the same .&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Also withing that I need to add looging details such as - How many records read , How many as C and D like that . But it is a secondary requirement .&amp;nbsp;&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 04:06:46 GMT</pubDate>
    <dc:creator>gtaware</dc:creator>
    <dc:date>2024-11-16T04:06:46Z</dc:date>
    <item>
      <title>Read MT940 File</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Read-MT940-File/m-p/2256646#M38971</link>
      <description>&lt;P&gt;&amp;nbsp;Hallo All Experts ,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I have below file format . This is one of standared&amp;nbsp; format of MT940 file&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;{1:F01XXXXXXXXXXXX0000000000}{2:I940XXXXXXXXXXXXN}{4:&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:20:3067310&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:25:514486527783&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:28C:1/1&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:60F:C181128MYR12658,54&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:61:1812281228C125,12NCOL851711644078226&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;851711644078226 NG KIM LAI&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:61:1812281228D25,12NCOL851711644078226&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;851711644078228 NG KIM LAI&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:61:1812281228D2500,00NTRFRCMS&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;FPX One-off Impl'tion Fee-Nov18&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:61:1812281228D355,12NTRFCITI1819387740638659&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;CITI514486527783&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:62F:C181128MYR17271,48&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;:64:C181128MYR17271,48&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;-}&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;From This file I have below requirement&amp;nbsp;&lt;/P&gt;
&lt;OL&gt;
 &lt;LI&gt;First and Last Line to be removed&amp;nbsp;&lt;/LI&gt;
 &lt;LI&gt;Read only Line with TAG = :61:&amp;nbsp;&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; Now here is a challange , When I say read only with TAG -61 means we have to read next line of 61 also . In above example , I have to read below lines&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;:61:1812281228C125,12NCOL851711644078226&lt;BR /&gt;851711644078226 NG KIM LAI&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;:61:1812281228D25,12NCOL851711644078226&lt;BR /&gt;851711644078228 NG KIM LAI&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;:61:1812281228D2500,00NTRFRCMS&lt;BR /&gt;FPX One-off Impl'tion Fee-Nov18&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;:61:1812281228D355,12NTRFCITI1819387740638659&lt;BR /&gt;CITI514486527783&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Out of which immediate next line is Transaction Description&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;:61:1812281228D2500,00NTRFRCMS&lt;BR /&gt;FPX One-off Impl'tion Fee-Nov18&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;In final output file I am expecting below Information to be populated&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;181228|D|2500,00|FPX One-off Impl'tion Fee-Nov18&lt;/P&gt;
&lt;P&gt;181228|C|125,12|851711644078226&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;181228|D|25,12|851711644078228&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Now&amp;nbsp; here lets consider one of&amp;nbsp; example of&amp;nbsp; 61 TAG :&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;:61:1812281228C125,12NCOL851711644078226&lt;BR /&gt;851711644078226 NG KIM LAI&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Here '1812281228C125,12NCOL851711644078226'&amp;nbsp; from this string :&amp;nbsp;&lt;/P&gt;
&lt;P&gt;First 6 character are&amp;nbsp; DATE ( YYMMDD) ---&amp;gt;181228&lt;/P&gt;
&lt;P&gt;Next 2 character are FundDATE&amp;nbsp; (MMDD) --&amp;gt;1228&lt;/P&gt;
&lt;P&gt;Next 1 character&amp;nbsp; is indicator ( credit /debit ) --C&lt;/P&gt;
&lt;P&gt;Next 5 chracter&amp;nbsp; is Ammount&amp;nbsp; &amp;nbsp;--125,12&lt;/P&gt;
&lt;P&gt;Rest information is not required&amp;nbsp;&lt;/P&gt;
&lt;P&gt;and from string '851711644078226 NG KIM LAI'&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;if First 15 character are Numeric and does not contain valus as ' CITI' then read only 15 character&amp;nbsp;&lt;/P&gt;
&lt;P&gt;else&amp;nbsp;&lt;/P&gt;
&lt;P&gt;if First 15 character are Non Numeric and does not contain valus as ' CITI' then read all the character&amp;nbsp;&lt;/P&gt;
&lt;P&gt;else&amp;nbsp; First 15 character are Non Numeric and does contain valus as ' CITI' then then ignore that TAG&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hence I am expecting final output as :&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Date | Indicator | Ammount | Reference&amp;nbsp;&lt;/P&gt;
&lt;P&gt;181228|D|2500,00|FPX One-off Impl'tion Fee-Nov18&lt;/P&gt;
&lt;P&gt;181228|C|125,12|851711644078226&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;181228|D|25,12|851711644078228&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I really need to develope a generic approach to read such type of data . Because In future I may have another TAG with same kind of details so that I can utlize the same .&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Also withing that I need to add looging details such as - How many records read , How many as C and D like that . But it is a secondary requirement .&amp;nbsp;&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 04:06:46 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Read-MT940-File/m-p/2256646#M38971</guid>
      <dc:creator>gtaware</dc:creator>
      <dc:date>2024-11-16T04:06:46Z</dc:date>
    </item>
    <item>
      <title>Re: Read MT940 File</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Read-MT940-File/m-p/2256647#M38972</link>
      <description>Hi 
&lt;BR /&gt;You can try to use tFileInputFullRow to read the file line by line, set the Header and Footer as 1 to remove the first line and last line, then link it to tFilterRow to filter the rows which starts with ':61:', and then write some java code to extract the field value from the line on a tJavaRow, as you explained, the length of each field is fixed, such as First 6 character are DATE ( YYMMDD) ---&amp;gt;181228. 
&lt;BR /&gt; 
&lt;BR /&gt;Regards 
&lt;BR /&gt;Shong 
&lt;BR /&gt; 
&lt;BR /&gt;</description>
      <pubDate>Fri, 15 Nov 2019 08:51:04 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Read-MT940-File/m-p/2256647#M38972</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-11-15T08:51:04Z</dc:date>
    </item>
    <item>
      <title>Re: Read MT940 File</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Read-MT940-File/m-p/2256648#M38973</link>
      <description>&lt;P&gt;Thanks Shong .&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;But I am new to Talend tool and to be honest not much aware of how to use tJavaRow . But I can use Tmap .&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Now the solution that you gave provided is to filter our using ':61'&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;This is good but if you observer in my data there is one more line&amp;nbsp; &amp;nbsp;after&amp;nbsp; 61 Tag . Which is&amp;nbsp; also a part of that Tag . I have to use that tag as well . So need to come up with generic approach here .&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Because lets say in my case if I do have :86: Tag and next line is part of that Tag .&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;I have to form a data by using those consucative Lines . Hwo to do that&amp;nbsp; ?&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;One High Level Solution I am&amp;nbsp; thinking is :&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;1. Read a File using &lt;SPAN&gt;tFileInputFullRow&amp;nbsp;. Remove Header and Lats Line&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;2. Add tmap and add extra column name as 'TAG'&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;3. Write some logic which will keep the Tag name like below&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;TAG|Data |&lt;BR /&gt;|=--+----------------------------------------=|&lt;BR /&gt;|20 |3067310 |&lt;BR /&gt;|25 |514486527783 |&lt;BR /&gt;|28C|1/1 |&lt;BR /&gt;|60F|C181128MYR12658,54 |&lt;BR /&gt;|61 |1812281228C125,12NCOL851711644078226 |&lt;BR /&gt;|61 |851711644078226 NG KIM LAI |&lt;BR /&gt;|61 |1812281228D25,12NCOL851711644078226 |&lt;BR /&gt;|61 |851711644078228 NG KIM LAI |&lt;BR /&gt;|61 |1812281228D2500,00NTRFRCMS |&lt;BR /&gt;|61 |FPX One-off Impl'tion Fee-Nov18 |&lt;BR /&gt;|61 |1812281228D355,12NTRFCITI1819387740638659|&lt;BR /&gt;|61 |CITI514486527783 |&lt;BR /&gt;|62F|C181128MYR17271,48&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;4. And then Filter and Aggregate data&amp;nbsp; ( Aggregate only consucative&amp;nbsp; Lines )&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;|Seq3|Tag|data |&lt;BR /&gt;|=---+---+-----------------------------------------------------------------=|&lt;BR /&gt;|1 |61 |1812281228C125,12NCOL851711644078226,851711644078226 NG KIM LAI|&lt;BR /&gt;|2 |61 |1812281228D25,12NCOL851711644078226,851711644078228 NG KIM LAI |&lt;BR /&gt;|3 |61 |1812281228D2500,00NTRFRCMS,FPX One-off Impl'tion Fee-Nov18 |&lt;BR /&gt;|4 |61 |1812281228D355,12NTRFCITI1819387740638659,CITI514486527783 |&lt;BR /&gt;'----+---+------------------------------------------------------------------'&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;5. And the Create a Below Data&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;date | Payload | RefID&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;181228|D|2500,00|FPX One-off Impl'tion Fee-Nov18&lt;/P&gt; 
&lt;P&gt;181228|C|125,12|851711644078226&amp;nbsp;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;181228|D|25,12|851711644078228&amp;nbsp;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;I really need to delope a generic approach for the same .&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 18 Nov 2019 08:34:00 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Read-MT940-File/m-p/2256648#M38973</guid>
      <dc:creator>gtaware</dc:creator>
      <dc:date>2019-11-18T08:34:00Z</dc:date>
    </item>
  </channel>
</rss>

