<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4011997376355783864</id><updated>2019-03-31T10:45:59.400-07:00</updated><category term="Ubuntu"/><category term="Android App"/><category term="Android"/><category term="Talend"/><category term="Talend Studio"/><category term="Google Play"/><category term="Youtube"/><category term="Sql Server"/><category term="Terminal"/><category term="Android Studio"/><category term="Perl"/><category term="Big Data"/><category term="Learning"/><category term="Time Management"/><category term="Google Chrome"/><category term="MongoDB"/><category term="Python"/><category term="Android Developer"/><category term="Games"/><category term="WhatsApp"/><category term="productivity"/><category term="Andorid Developer"/><category term="Hadoop"/><category term="IDM"/><category term="Ubuntu Apps"/><category term="Facebook"/><category term="HealthCare IT"/><category term="SSIS"/><category term="Songs"/><category term="Udemy"/><category term="ETL"/><category term="Google"/><category term="edX"/><category term="Apache Spark"/><category term="BitTorrent"/><category term="Linkedin"/><category term="Machine Learning"/><category term="Movie"/><category term="Sql"/><category term="WebApp"/><category term="blog"/><category term="Canva"/><category term="Certification Dumps"/><category term="Design"/><category term="DevOps"/><category term="Excel Tricks"/><category term="Fun"/><category term="GIT"/><category term="GRE"/><category term="Guitar"/><category term="Jquery"/><category term="Lynda"/><category term="Mozilla"/><category term="Oracle"/><category term="Oracle Developer"/><category term="Ruby On Rails"/><category term="SSC-CGL"/><category term="Tricks"/><category term="Trizetto Facets"/><category term="Website"/><category term="Windows 10"/><category term="Windows Apps"/><category term="Apple"/><category term="Claims Payment"/><category term="Fitness"/><category term="Flickr"/><category term="GIF"/><category term="Gaana"/><category term="Gmail Tricks"/><category term="Google Chromebook"/><category term="HortonWorks"/><category term="Java"/><category term="JavaScript"/><category term="Magazine"/><category term="Moto E"/><category term="Music"/><category term="Pluralsight"/><category term="PyCharm"/><category term="PyMongo"/><category term="Resume"/><category term="SAT"/><category term="SSAS"/><category term="SmPlayer"/><category term="Soundcloud"/><category term="Transport App"/><category term="Twitter"/><category term="Uber"/><category term="Udacity"/><category term="VCE"/><category term="Video Subtitles"/><category term="Vocabulary"/><title type='text'>Techie&#39;s House</title><subtitle type='html'>Tech Tutorials and Tips On Talend ETL Development </subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.tricksfind.in/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>408</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-2499953262131085845</id><published>2018-10-02T00:08:00.001-07:00</published><updated>2018-10-02T00:11:33.494-07:00</updated><title type='text'>Privacy Policy For Racoon Bubble Shooter</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;html&gt;    &lt;head&gt;                    &lt;title&gt;Privacy Policy&lt;/title&gt;      &lt;style&gt; body { font-family: &#39;Helvetica Neue&#39;, Helvetica, Arial, sans-serif; padding:1em; } &lt;/style&gt;    &lt;/head&gt;    &lt;body&gt;    &lt;h2&gt;Privacy Policy&lt;/h2&gt;Praveen Kumar Singh built the Raccoon Bubble Shooter app as a Free app. This SERVICE is provided by                     Praveen Kumar Singh at no cost and is intended for use as is.                   &lt;br /&gt; This page is used to inform visitors regarding my policies with the collection, use, and disclosure                     of Personal Information if anyone decided to use my Service.                   &lt;br /&gt; If you choose to use my Service, then you agree to the collection and use of information in                     relation to this policy. The Personal Information that I collect is used for providing and improving                     the Service. I will not use or share your information with anyone except as described                     in this Privacy Policy.                   &lt;br /&gt; The terms used in this Privacy Policy have the same meanings as in our Terms and Conditions, which is                     accessible at Raccoon Bubble Shooter unless otherwise defined in this Privacy Policy.                   &lt;br /&gt; &lt;strong&gt;Information Collection and Use&lt;/strong&gt;&lt;br /&gt; For a better experience, while using our Service, I may require you to provide us with certain                     personally identifiable information. The information that I request will be retained on your device and is not collected by me in any way.                   &lt;br /&gt; The app does use third party services that may collect information used to identify you.&lt;br /&gt; &lt;div&gt;Link to privacy policy of third party service providers used by the app&lt;br /&gt; &lt;ul&gt;&lt;li&gt;&lt;a href=&quot;https://www.google.com/policies/privacy/&quot; target=&quot;_blank&quot;&gt;Google Play Services&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;https://support.google.com/admob/answer/6128543?hl=en&quot; target=&quot;_blank&quot;&gt;AdMob&lt;/a&gt;&lt;/li&gt;&amp;lt;!--&lt;/ul&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;!----&gt;&lt;/div&gt;&lt;strong&gt;Log Data&lt;/strong&gt;&lt;br /&gt;  I want to inform you that whenever you use my Service, in a case of                     an error in the app I collect data and information (through third party products) on your phone                     called Log Data. This Log Data may include information such as your device Internet Protocol (“IP”) address,                     device name, operating system version, the configuration of the app when utilizing my Service,                     the time and date of your use of the Service, and other statistics.                   &lt;br /&gt; &lt;strong&gt;Cookies&lt;/strong&gt;&lt;br /&gt; Cookies are files with a small amount of data that are commonly used as anonymous unique identifiers.                     These are sent to your browser from the websites that you visit and are stored on your device&#39;s internal                     memory.                   &lt;br /&gt; This Service does not use these “cookies” explicitly. However, the app may use third party code and                     libraries that use “cookies” to collect information and improve their services. You have the option to                     either accept or refuse these cookies and know when a cookie is being sent to your device. If you choose                     to refuse our cookies, you may not be able to use some portions of this Service.                   &lt;br /&gt; &lt;strong&gt;Service Providers&lt;/strong&gt;&lt;br /&gt;  I may employ third-party companies and individuals due to the following reasons:&lt;br /&gt; &lt;ul&gt;&lt;li&gt;To facilitate our Service;&lt;/li&gt;&lt;li&gt;To provide the Service on our behalf;&lt;/li&gt;&lt;li&gt;To perform Service-related services; or&lt;/li&gt;&lt;li&gt;To assist us in analyzing how our Service is used.&lt;/li&gt;&lt;/ul&gt;I want to inform users of this Service that these third parties have access to                     your Personal Information. The reason is to perform the tasks assigned to them on our behalf. However,                     they are obligated not to disclose or use the information for any other purpose.                   &lt;br /&gt; &lt;strong&gt;Security&lt;/strong&gt;&lt;br /&gt;  I value your trust in providing us your Personal Information, thus we are striving                     to use commercially acceptable means of protecting it. But remember that no method of transmission over                     the internet, or method of electronic storage is 100% secure and reliable, and I cannot guarantee                     its absolute security.                   &lt;br /&gt; &lt;strong&gt;Links to Other Sites&lt;/strong&gt;&lt;br /&gt; This Service may contain links to other sites. If you click on a third-party link, you will be directed                     to that site. Note that these external sites are not operated by me. Therefore, I strongly                     advise you to review the Privacy Policy of these websites. I have no control over                     and assume no responsibility for the content, privacy policies, or practices of any third-party sites                     or services.                   &lt;br /&gt; &lt;strong&gt;Children’s Privacy&lt;/strong&gt;&lt;br /&gt; These Services do not address anyone under the age of 13. I do not knowingly collect                     personally identifiable information from children under 13. In the case I discover that a child                     under 13 has provided me with personal information, I immediately delete this from                     our servers. If you are a parent or guardian and you are aware that your child has provided us with personal                     information, please contact me so that I will be able to do necessary actions.                   &lt;br /&gt; &lt;strong&gt;Changes to This Privacy Policy&lt;/strong&gt;&lt;br /&gt;  I may update our Privacy Policy from time to time. Thus, you are advised to review                     this page periodically for any changes. I will notify you of any changes by posting                     the new Privacy Policy on this page. These changes are effective immediately after they are posted on                     this page.                   &lt;br /&gt; &lt;strong&gt;Contact Us&lt;/strong&gt;&lt;br /&gt; If you have any questions or suggestions about my Privacy Policy, do not hesitate to contact                     me.                   &lt;br /&gt; This privacy policy page was created at &lt;a href=&quot;https://www.blogger.com/%22https://privacypolicytemplate.net%22&quot; target=&quot;&amp;quot;_blank&amp;quot;&quot;&gt;privacypolicytemplate.net&lt;/a&gt;                    and modified/generated by &lt;a href=&quot;https://www.blogger.com/%22https://app-privacy-policy-generator.firebaseapp.com/%22&quot; target=&quot;&amp;quot;_blank&amp;quot;&quot;&gt;App                       Privacy Policy Generator&lt;/a&gt;&lt;br /&gt;          --&amp;gt;       </content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/2499953262131085845/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2018/10/privacy-policy-for-racoon-bubble-shooter.html#comment-form' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/2499953262131085845'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/2499953262131085845'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2018/10/privacy-policy-for-racoon-bubble-shooter.html' title='Privacy Policy For Racoon Bubble Shooter'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-6926726892948639404</id><published>2017-03-19T04:57:00.003-07:00</published><updated>2018-05-15T22:03:31.373-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Do Data Validation Using tSchemaComplianceCheck Component</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-ndQBXMcYdYI/WM5xGKDIm7I/AAAAAAAAIig/KrNnHra2UBEnG5DXFo7kmhrnnmYFMM4jgCLcB/s1600/How%2Bto%2Bvalidate%2Brecords%2BtSchemaComplianceCheck-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://4.bp.blogspot.com/-ndQBXMcYdYI/WM5xGKDIm7I/AAAAAAAAIig/KrNnHra2UBEnG5DXFo7kmhrnnmYFMM4jgCLcB/s640/How%2Bto%2Bvalidate%2Brecords%2BtSchemaComplianceCheck-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Thanks for your visit !!&lt;br /&gt;&lt;br /&gt;The article has been moved here:&amp;nbsp;&lt;a href=&quot;https://techytacos.us/2017/08/06/talend-etl-tutorial-data-validation-using-tschemacompliancecheck-component/&quot; target=&quot;_blank&quot;&gt;Talend ETL Tutorial : Data Validation&lt;/a&gt;&lt;br /&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/6926726892948639404/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2017/03/talend-etl-tutorial-how-to-do-data.html#comment-form' title='21 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/6926726892948639404'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/6926726892948639404'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2017/03/talend-etl-tutorial-how-to-do-data.html' title='Talend ETL Tutorial : How To Do Data Validation Using tSchemaComplianceCheck Component'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://4.bp.blogspot.com/-ndQBXMcYdYI/WM5xGKDIm7I/AAAAAAAAIig/KrNnHra2UBEnG5DXFo7kmhrnnmYFMM4jgCLcB/s72-c/How%2Bto%2Bvalidate%2Brecords%2BtSchemaComplianceCheck-min.png" height="72" width="72"/><thr:total>21</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-7254996974153407676</id><published>2017-03-12T10:36:00.000-07:00</published><updated>2018-05-15T22:06:25.181-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Check For Reject Row Option In Talend Components</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-8HibwfX7JVU/WMVzT3HbJZI/AAAAAAAAIdk/oihEr6gq_XMjXZbzAG1mkZ2M-YryZPuUACLcB/s1600/How%2BTo%2BIdentify%2BReject%2BRow%2BOptions-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://2.bp.blogspot.com/-8HibwfX7JVU/WMVzT3HbJZI/AAAAAAAAIdk/oihEr6gq_XMjXZbzAG1mkZ2M-YryZPuUACLcB/s640/How%2BTo%2BIdentify%2BReject%2BRow%2BOptions-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;Thanks for your visit !!&lt;br /&gt;&lt;br /&gt;The article has been moved to new website :&amp;nbsp;&lt;a href=&quot;https://techytacos.us/2017/08/06/talend-etl-tutorial-check-reject-row-option-talend-components/&quot; target=&quot;_blank&quot;&gt;Talend ETL Tutorial : How To Check For Reject Row Option&lt;/a&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/7254996974153407676/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2017/03/talend-etl-tutorial-how-to-check-for.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/7254996974153407676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/7254996974153407676'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2017/03/talend-etl-tutorial-how-to-check-for.html' title='Talend ETL Tutorial : How To Check For Reject Row Option In Talend Components'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://2.bp.blogspot.com/-8HibwfX7JVU/WMVzT3HbJZI/AAAAAAAAIdk/oihEr6gq_XMjXZbzAG1mkZ2M-YryZPuUACLcB/s72-c/How%2BTo%2BIdentify%2BReject%2BRow%2BOptions-min.png" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-8862125144494346641</id><published>2017-03-04T21:33:00.001-08:00</published><updated>2018-05-15T22:08:51.218-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Run Talend Jobs Externally (Without Talend Open Studio)</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-XTcemTHkYi8/WLuh2PU9VNI/AAAAAAAAIYU/nzEVUNYRJsoJw8sXxsaI_tY98KHQ1VvkwCLcB/s1600/How%2BTo%2Brun%2BTalend%2BJobs%2BExternally-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://3.bp.blogspot.com/-XTcemTHkYi8/WLuh2PU9VNI/AAAAAAAAIYU/nzEVUNYRJsoJw8sXxsaI_tY98KHQ1VvkwCLcB/s640/How%2BTo%2Brun%2BTalend%2BJobs%2BExternally-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Thanks for your visit !!&lt;br /&gt;&lt;br /&gt;This article has been moved to new website :&amp;nbsp;&lt;a href=&quot;https://techytacos.us/2017/08/06/talend-etl-tutorial-run-talend-jobs-externally-without-talend-open-studio/&quot; target=&quot;_blank&quot;&gt;Talend ETL Tutorial : How To Run Talend Jobs Externally&lt;/a&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/8862125144494346641/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2017/03/talend-etl-tutorial-how-to-run-talend-jobs-externally.html#comment-form' title='19 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/8862125144494346641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/8862125144494346641'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2017/03/talend-etl-tutorial-how-to-run-talend-jobs-externally.html' title='Talend ETL Tutorial : How To Run Talend Jobs Externally (Without Talend Open Studio)'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://3.bp.blogspot.com/-XTcemTHkYi8/WLuh2PU9VNI/AAAAAAAAIYU/nzEVUNYRJsoJw8sXxsaI_tY98KHQ1VvkwCLcB/s72-c/How%2BTo%2Brun%2BTalend%2BJobs%2BExternally-min.png" height="72" width="72"/><thr:total>19</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-6712480173662313285</id><published>2017-02-26T06:26:00.000-08:00</published><updated>2018-05-15T22:11:46.376-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Run Jobs In Sequential And Parallel Mode In Talend Studio</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-F9hvNnOBSJs/WK5liHXk3xI/AAAAAAAAISI/PjUzMMbsJqwkgGvt9qsc6Fb1uMA_NVs5ACLcB/s1600/Talend%2BRun%2BJobs%2BIn%2BSequential%2BAnd%2BParallel-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://4.bp.blogspot.com/-F9hvNnOBSJs/WK5liHXk3xI/AAAAAAAAISI/PjUzMMbsJqwkgGvt9qsc6Fb1uMA_NVs5ACLcB/s640/Talend%2BRun%2BJobs%2BIn%2BSequential%2BAnd%2BParallel-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;Thanks for your visit !!&lt;/span&gt;&lt;/h2&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;This article has been moved to new website :&lt;/span&gt;&lt;/h3&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;&lt;a href=&quot;https://techytacos.us/?s=Talend+ETL+Tutorial+%3A+How+To+Run+Jobs+In+Sequential+And+Parallel+Mode+In+Talend+Studio&quot; style=&quot;font-weight: normal;&quot; target=&quot;_blank&quot;&gt;Talend ETL Tutorial : How To Run Jobs In Sequential and Parallel Mode&lt;/a&gt;&lt;/h3&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/6712480173662313285/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2017/02/talend-etl-tutorial-how-to-run-jobs-in-parallel.html#comment-form' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/6712480173662313285'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/6712480173662313285'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2017/02/talend-etl-tutorial-how-to-run-jobs-in-parallel.html' title='Talend ETL Tutorial : How To Run Jobs In Sequential And Parallel Mode In Talend Studio'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://4.bp.blogspot.com/-F9hvNnOBSJs/WK5liHXk3xI/AAAAAAAAISI/PjUzMMbsJqwkgGvt9qsc6Fb1uMA_NVs5ACLcB/s72-c/Talend%2BRun%2BJobs%2BIn%2BSequential%2BAnd%2BParallel-min.png" height="72" width="72"/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-447637360936726312</id><published>2017-02-20T21:10:00.001-08:00</published><updated>2017-02-20T21:10:57.557-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Implement Right Outer Join Functionality In Talend </title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;br /&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-oqMlhr9e3Og/WKvLEUEZJuI/AAAAAAAAIRA/KaLTmRRz2Bg_ZiVbAJozqfMLWkms5bozgCEw/s1600/implement%2Bright%2Bouter%2Bjoin-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://2.bp.blogspot.com/-oqMlhr9e3Og/WKvLEUEZJuI/AAAAAAAAIRA/KaLTmRRz2Bg_ZiVbAJozqfMLWkms5bozgCEw/s640/implement%2Bright%2Bouter%2Bjoin-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Yesterday, I was going through the unanswered posts of Talendforge forum and one question caught my eye. It was titled as &lt;b&gt;Problem with Joins&lt;/b&gt;. First, I thought it would be related to some settings problem but it was not. It was related to one scenario that required the implementation of &lt;i&gt;Right Outer Join&lt;/i&gt;. In Talend, we can join using two components: &lt;i&gt;tJoin and tMap&lt;/i&gt;. The problem is: tJoin only supports&lt;b&gt; Inner Join&lt;/b&gt; whereas tMap supports only &lt;b&gt;Inner Join and Left Outer Join&lt;/b&gt;. So, we have no way of direct usage of Right Outer Join. You have to find another way of implementing it. This is my workaround for the mentioned problem, you can think of another approach also.&lt;br /&gt;&lt;br /&gt;Talendforgre forum question:&amp;nbsp;&lt;a href=&quot;https://www.talendforge.org/forum/viewtopic.php?id=55853&quot; target=&quot;_blank&quot;&gt;Problem with the joins&lt;/a&gt;&lt;br /&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Requirement&amp;nbsp;&lt;/h2&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-3yeVD8leg7A/WKu30_BffEI/AAAAAAAAIPM/O3cR_r4B82cgPLBJ8xv3kkqpRqqhjkk3gCLcB/s1600/TalendForgeForum_JoinQuestion.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;300&quot; src=&quot;https://4.bp.blogspot.com/-3yeVD8leg7A/WKu30_BffEI/AAAAAAAAIPM/O3cR_r4B82cgPLBJ8xv3kkqpRqqhjkk3gCLcB/s640/TalendForgeForum_JoinQuestion.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Click To Enlarge&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;Final Job Design:&lt;/h2&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-xGuD5X_Qe1c/WKu4MGKQpEI/AAAAAAAAIPQ/PAs-DGTk2EM6NjSTYYCdlujCsFrLoA8DACLcB/s1600/Job_design.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;374&quot; src=&quot;https://3.bp.blogspot.com/-xGuD5X_Qe1c/WKu4MGKQpEI/AAAAAAAAIPQ/PAs-DGTk2EM6NjSTYYCdlujCsFrLoA8DACLcB/s640/Job_design.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Steps For Processing:&lt;/h2&gt;&lt;div&gt;First, I have created 3 delimited files with a comma (,) as a delimiter and placed all these records as per the requirement in the files. Now, to read all these input files, I am using &lt;i&gt;tFileInputDelimited&lt;/i&gt; component.My thought is to create two data sets and then merge them to Right Outer Join way. To achieve this, I am joining first two input files &lt;i&gt;Literacy_rate.csv and Graduation_rate.csv. &lt;/i&gt;As I don&#39;t have to skip any records from here, I am using tJoin component for INNER JOIN.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-L2nAEs9INwk/WKu8sUc-XjI/AAAAAAAAIPo/BirIAeMSuysRrGN4G4DEcq7tSc9LO0wNACLcB/s1600/Talend_tInnerJoin.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;206&quot; src=&quot;https://2.bp.blogspot.com/-L2nAEs9INwk/WKu8sUc-XjI/AAAAAAAAIPo/BirIAeMSuysRrGN4G4DEcq7tSc9LO0wNACLcB/s640/Talend_tInnerJoin.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div&gt;We want all columns from both input files. To get this, go to &lt;i&gt;Edit Schema&lt;/i&gt; and add columns as per your need.You can just simply use -&amp;gt; (arrow symbol) to move columns from one panel to another.We will get &lt;i&gt;Year, Grade_Rate and Literacy_Rate&lt;/i&gt; columns from the input files but we also have to add one extra column specifically so that it can work with the &lt;i&gt;tUnite&lt;/i&gt; component. &lt;i&gt;&lt;b&gt;tUnite&lt;/b&gt;&lt;/i&gt; expects same schema structure from its sources. So, this will give me the first dataset. And, it will have all records from both input files.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-1Q5dQJGWcP0/WKu88Adq8KI/AAAAAAAAIPs/-7uaN-1bKFgSepIvOMrodEeieDpekGv9wCLcB/s1600/Talend_tJoinMatchingOutput.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;246&quot; src=&quot;https://1.bp.blogspot.com/-1Q5dQJGWcP0/WKu88Adq8KI/AAAAAAAAIPs/-7uaN-1bKFgSepIvOMrodEeieDpekGv9wCLcB/s640/Talend_tJoinMatchingOutput.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In the second dataset, we will try to capture the records from &lt;i&gt;Grade_count.csv&lt;/i&gt;. In the output, we should have matched records for the year 2011 and 2012 as these years are present in the above-mentioned input files. In the output, we should have the values for the respective columns.Also, we should have an entry for Year 2013. &lt;i&gt;Grade_count.csv&lt;/i&gt; data will be our &lt;i&gt;Main records&lt;/i&gt; and rest two files records will be &lt;i&gt;lookup &lt;/i&gt;and the join mode will be &lt;i&gt;Left Outer Join&lt;/i&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-gM_EdTE9GFk/WKvAgsLNggI/AAAAAAAAIQA/8gj64e1stGAiVsVaxyDNWhisHbrKW_A1QCLcB/s1600/Talend_tMap.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;298&quot; src=&quot;https://4.bp.blogspot.com/-gM_EdTE9GFk/WKvAgsLNggI/AAAAAAAAIQA/8gj64e1stGAiVsVaxyDNWhisHbrKW_A1QCLcB/s640/Talend_tMap.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The next step is to merge this dataset with the other dataset. To merge it, I am going to use &lt;i&gt;&lt;b&gt;tUnite &lt;/b&gt;&lt;/i&gt;component. Also, in this case, and as per our requirement, set the order as mentioned in the below screenshot.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-t63qcKoZ29w/WKvEgH21lAI/AAAAAAAAIQU/OCjeW2R8zAsWtQ0eej4_DScPvch5692VwCLcB/s1600/Talend_tUniteOrder.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://1.bp.blogspot.com/-t63qcKoZ29w/WKvEgH21lAI/AAAAAAAAIQU/OCjeW2R8zAsWtQ0eej4_DScPvch5692VwCLcB/s320/Talend_tUniteOrder.png&quot; width=&quot;264&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The next step is to remove the duplicate records. We would be getting two sets of records for the year 2011 and 2012 form the first and second dataset and we just have to keep the values from the second dataset as it will have correct values for all the columns. I have defined the key as &lt;b&gt;&lt;i&gt;Year&lt;/i&gt;&lt;/b&gt; to filter out records.&lt;b&gt;&lt;i&gt; tUnique&lt;/i&gt;&lt;/b&gt; will take first records and drop the second occurrence. To make sure the tUnique picks the dataset coming from tMap. We have &lt;i&gt;defined the merge order&lt;/i&gt; as mentioned in the above screenshot.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-xeDbqjJQfq8/WKvHV-peDVI/AAAAAAAAIQk/91qENdypgSY9InthK3cj1IRPuoZErIcvACLcB/s1600/Talend_tUniqueRow.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;402&quot; src=&quot;https://2.bp.blogspot.com/-xeDbqjJQfq8/WKvHV-peDVI/AAAAAAAAIQk/91qENdypgSY9InthK3cj1IRPuoZErIcvACLcB/s640/Talend_tUniqueRow.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I am using &lt;b&gt;&lt;i&gt;tSort&lt;/i&gt;&lt;/b&gt; row next to just align the data in the ascending order of the years.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-2-G4tgQgl2Y/WKvH8_XkmnI/AAAAAAAAIQo/hgKYk6OuUWQKGM6OV70rkLzfc3HnBPWwgCLcB/s1600/Talend_tSortRow.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;198&quot; src=&quot;https://3.bp.blogspot.com/-2-G4tgQgl2Y/WKvH8_XkmnI/AAAAAAAAIQo/hgKYk6OuUWQKGM6OV70rkLzfc3HnBPWwgCLcB/s640/Talend_tSortRow.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Once you execute this job, you will get an output like this:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-6zziKyFzSiU/WKvIVG2DgcI/AAAAAAAAIQw/9CnTqdZ3xUIDyNDV8_6GGYKFnU5T8NtFACLcB/s1600/Output.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;241&quot; src=&quot;https://1.bp.blogspot.com/-6zziKyFzSiU/WKvIVG2DgcI/AAAAAAAAIQw/9CnTqdZ3xUIDyNDV8_6GGYKFnU5T8NtFACLcB/s400/Output.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/447637360936726312/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2017/02/talend-etl-tutorial-implement-right-outer-join.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/447637360936726312'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/447637360936726312'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2017/02/talend-etl-tutorial-implement-right-outer-join.html' title='Talend ETL Tutorial : How To Implement Right Outer Join Functionality In Talend '/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://2.bp.blogspot.com/-oqMlhr9e3Og/WKvLEUEZJuI/AAAAAAAAIRA/KaLTmRRz2Bg_ZiVbAJozqfMLWkms5bozgCEw/s72-c/implement%2Bright%2Bouter%2Bjoin-min.png" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-3473156281208446295</id><published>2017-02-11T00:08:00.003-08:00</published><updated>2017-02-11T00:08:55.471-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Extract Records From Multiple Sheets Of Different Schemas In Excel</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/br&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-KH4j541ocN4/WJ3JdfH3RPI/AAAAAAAAIJw/eqtZslsnC6Eymib5mSlWBFT6VC4xpQaIQCLcB/s1600/Read%2BMultiple%2BSheets%2BOf%2BAn%2BExcel%2BFile-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://4.bp.blogspot.com/-KH4j541ocN4/WJ3JdfH3RPI/AAAAAAAAIJw/eqtZslsnC6Eymib5mSlWBFT6VC4xpQaIQCLcB/s640/Read%2BMultiple%2BSheets%2BOf%2BAn%2BExcel%2BFile-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;In the last post, we covered how to write records into multiple sheets of an excel from a single delimited input file. This post is about reading the records from multiple sheets present in an excel file. You can&#39;t directly read and write records from different schemas excel sheets so we need to involve few more Talend components while doing the transformation. We have already seen how to use &lt;i&gt;tBufferInput and tBufferOutput&lt;/i&gt; component for the purpose of temporary storing records while writing into Excel. For the reading purpose, we will use &lt;i&gt;tMap&lt;/i&gt; component to define different schemas as per our output requirement.&lt;/div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Requirement&lt;/h2&gt;&lt;div&gt;The requirement is to read multiple sheets present in an excel file. Also, the schema of each sheet is different. Extract all records available in the sheets and place it into two different CSV files based on the sheet name.&lt;br /&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Input&amp;nbsp;&lt;/h3&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-suBU2YzM6kY/WJ3tYBrR0HI/AAAAAAAAILQ/Y14_CMLdY28swJgZFArWfBhfO69ocWUGQCLcB/s1600/Talend_InputDetails.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://4.bp.blogspot.com/-suBU2YzM6kY/WJ3tYBrR0HI/AAAAAAAAILQ/Y14_CMLdY28swJgZFArWfBhfO69ocWUGQCLcB/s400/Talend_InputDetails.png&quot; width=&quot;232&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-3zuvXjqM_hU/WJ3tYG_wsmI/AAAAAAAAILM/dUi2ukgtfq4z1q79xYP36ZFL-4YUaqybQCLcB/s1600/Talend_InputNames.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://2.bp.blogspot.com/-3zuvXjqM_hU/WJ3tYG_wsmI/AAAAAAAAILM/dUi2ukgtfq4z1q79xYP36ZFL-4YUaqybQCLcB/s400/Talend_InputNames.png&quot; width=&quot;262&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Output&lt;/h3&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-TK9RMM9AsD8/WJ3sfRqqziI/AAAAAAAAILE/uMDD76CExecBUXAV6baMuLhptaciVn61wCLcB/s1600/Talend_OutputMultipleSheets.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;514&quot; src=&quot;https://2.bp.blogspot.com/-TK9RMM9AsD8/WJ3sfRqqziI/AAAAAAAAILE/uMDD76CExecBUXAV6baMuLhptaciVn61wCLcB/s640/Talend_OutputMultipleSheets.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Final Job Diagram&amp;nbsp;&lt;/h2&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-WFhY9xeYedo/WJ3J2N5P9dI/AAAAAAAAIJ4/xWH_GQuFcukM0bk6a3Y72ptFnUbqSWZVgCLcB/s1600/Talend_finalJob-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;318&quot; src=&quot;https://4.bp.blogspot.com/-WFhY9xeYedo/WJ3J2N5P9dI/AAAAAAAAIJ4/xWH_GQuFcukM0bk6a3Y72ptFnUbqSWZVgCLcB/s640/Talend_finalJob-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Steps For Processing&amp;nbsp;&lt;/h2&gt;&lt;div&gt;The first step is to read the excel file. The first step is to create a Metadata for this excel file. We will define the schema as the Repository level. Also, our excel has sheets with different schemas so we can&#39;t read both sheets with the predefined schemas specific to one sheet. The trick is to &lt;b&gt;&lt;i&gt;first,&lt;/i&gt;&lt;/b&gt; select &lt;i&gt;All Sheets&lt;/i&gt; while defining the schema and &lt;b style=&quot;font-style: italic;&quot;&gt;second, &lt;/b&gt;take the &lt;b&gt;schema of the sheet which has the most number of columns&lt;/b&gt;. Please check below screenshots:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-LnGgHHiF7SU/WJ3JuIasK0I/AAAAAAAAIJ0/ZF3K68S9Pb0gfQgEaIrHn4aSeSJ7gG2wACLcB/s1600/Talend_tFileInputExcelAllSheets-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;468&quot; src=&quot;https://3.bp.blogspot.com/-LnGgHHiF7SU/WJ3JuIasK0I/AAAAAAAAIJ0/ZF3K68S9Pb0gfQgEaIrHn4aSeSJ7gG2wACLcB/s640/Talend_tFileInputExcelAllSheets-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In next screen, you will get the preview of the records. You may not get the desired sheet record as per your requirement. You need not bother about the records. Just make sure you get the number the exact number of columns as per your need. In my input, the max number of columns(4) are on the &lt;i&gt;&lt;b&gt;Details sheet&lt;/b&gt;&lt;/i&gt;. Even though I am getting the &lt;b&gt;&lt;i&gt;Name sheet&lt;/i&gt;&lt;/b&gt; records are here but I am ok with as the number of columns is 4 here.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-axCd9L2ekKI/WJ3Lr-RSVpI/AAAAAAAAIKM/L6k2-mpcxgU2AhFnXV0DT57IzyCxE2M1QCLcB/s1600/Talend_tFileInputSchema-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;466&quot; src=&quot;https://1.bp.blogspot.com/-axCd9L2ekKI/WJ3Lr-RSVpI/AAAAAAAAIKM/L6k2-mpcxgU2AhFnXV0DT57IzyCxE2M1QCLcB/s640/Talend_tFileInputSchema-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In the next screen, you will get the preview of the Metadata. You can rename the column&#39;s name based on your whim. But in this scenario, just keep the column names as general as possible. As these 4 columns will only store the records of both sheets. Later, we will define the exact schema as per our need.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-g_WOjqOXlM8/WJ3MvYBHqqI/AAAAAAAAIKU/weDvkmsGK54k_pakXT3GR7hbkAZq0XvlACLcB/s1600/Talend_tFileInputExcelMetadata-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://3.bp.blogspot.com/-g_WOjqOXlM8/WJ3MvYBHqqI/AAAAAAAAIKU/weDvkmsGK54k_pakXT3GR7hbkAZq0XvlACLcB/s640/Talend_tFileInputExcelMetadata-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The next step is to split records as per our need. In our requirement, we have to split records based on our sheets. To split the records, we are going to use &lt;i&gt;&lt;b&gt;tMap component&lt;/b&gt;&lt;/i&gt;. To read the CURRENT SHEET , we are going to use the global variable : &lt;i&gt;((String)globalMap.get(&quot;tFileInputExcel_1_CURRENT_SHEET&quot;))&amp;nbsp;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;I am just storing this Expression under Variable&amp;nbsp;&lt;i&gt;var1&lt;/i&gt;. If you want, you can use it directly in the &lt;i&gt;ou1 and out2&lt;/i&gt; expression editor. Using a variable here makes code clean and concise.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-QGAWje_v5Zc/WJ3YwWAj0uI/AAAAAAAAIKo/9XRkATFOH24VBZYszW8PUiUTYIZ-eE3xgCLcB/s1600/Talend_tMapMultipleSheets-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;298&quot; src=&quot;https://1.bp.blogspot.com/-QGAWje_v5Zc/WJ3YwWAj0uI/AAAAAAAAIKo/9XRkATFOH24VBZYszW8PUiUTYIZ-eE3xgCLcB/s640/Talend_tMapMultipleSheets-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So. once done with the mapping, you can rename the columns based on your output requirement. As you can see it here, the input columns will store both sheets records. I am detecting the current sheet to be read and then mapping the input columns to output based on the current sheet&#39;s schema. This is the only trick that you have to apply while using multiple sheets of an excel file.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The next step is to just map this output to the two different CSV file. The configuration would be like this:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-CxGHr1w7fCw/WJ3rhHFxteI/AAAAAAAAIK4/Dp1HeGJ9aKsENPIngxMa2lcf14ECoDhkQCLcB/s1600/Talend_tFileOutputDetails-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;424&quot; src=&quot;https://4.bp.blogspot.com/-CxGHr1w7fCw/WJ3rhHFxteI/AAAAAAAAIK4/Dp1HeGJ9aKsENPIngxMa2lcf14ECoDhkQCLcB/s640/Talend_tFileOutputDetails-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-0NrhljAYz20/WJ3rhCJ-pLI/AAAAAAAAIK8/7b8gWDd85p0tf0v--Foayy85XGd0rt86gCLcB/s1600/Talend_tFileOutputNames-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://2.bp.blogspot.com/-0NrhljAYz20/WJ3rhCJ-pLI/AAAAAAAAIK8/7b8gWDd85p0tf0v--Foayy85XGd0rt86gCLcB/s640/Talend_tFileOutputNames-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/br&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/3473156281208446295/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2017/02/talend-etl-tutorial-how-to-extract-records-multiple-sheets-excel.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/3473156281208446295'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/3473156281208446295'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2017/02/talend-etl-tutorial-how-to-extract-records-multiple-sheets-excel.html' title='Talend ETL Tutorial : How To Extract Records From Multiple Sheets Of Different Schemas In Excel'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://4.bp.blogspot.com/-KH4j541ocN4/WJ3JdfH3RPI/AAAAAAAAIJw/eqtZslsnC6Eymib5mSlWBFT6VC4xpQaIQCLcB/s72-c/Read%2BMultiple%2BSheets%2BOf%2BAn%2BExcel%2BFile-min.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-6016893065382140708</id><published>2017-02-08T06:52:00.000-08:00</published><updated>2017-02-11T00:09:43.312-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Create Multiple Sheets In An Excel File </title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/br&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-iVVPOPG4UH0/WJq1TxPektI/AAAAAAAAIIk/hv4iUhzdL8Y5NkmcnUkwdNWoXj2i72VFQCLcB/s1600/How%2BTo%2BCreate%2BMultiple%2BSheets%2BIn%2BExcel-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://3.bp.blogspot.com/-iVVPOPG4UH0/WJq1TxPektI/AAAAAAAAIIk/hv4iUhzdL8Y5NkmcnUkwdNWoXj2i72VFQCLcB/s640/How%2BTo%2BCreate%2BMultiple%2BSheets%2BIn%2BExcel-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;In my previous posts, I have covered how to read an excel and put the data into it. But, it was only related to one sheet of the excel file. What if we have to generate the multiple sheets for the records coming from an input file? It&#39;s possible and there is a way to do it.You can create N number of sheets based on your requirement. In this post, I am going to create two sheets in an excel file. Let&#39;s check how to do it.&lt;/div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Requirement&amp;nbsp;&lt;/h2&gt;&lt;div&gt;The requirement is to process the fixed length file and generates output in the Excel sheet. The output will be displayed in two different sheets of the same Excel file.&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Input&amp;nbsp;&lt;/h3&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-ehI2AwZBpT4/WJstiqxkmsI/AAAAAAAAIJM/nICcW3QlQvYHcJsmdnhPaUJmCbJvnh1xQCLcB/s1600/FilePositional_InputFile.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;292&quot; src=&quot;https://3.bp.blogspot.com/-ehI2AwZBpT4/WJstiqxkmsI/AAAAAAAAIJM/nICcW3QlQvYHcJsmdnhPaUJmCbJvnh1xQCLcB/s640/FilePositional_InputFile.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Output&amp;nbsp;&lt;/h3&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-IxTixp1X9to/WJstXNJbp1I/AAAAAAAAIJI/tfTDkCyyURMtrHkKUU9xBvMs1QsS_tYWgCEw/s1600/OutputExcel_2sheets.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://3.bp.blogspot.com/-IxTixp1X9to/WJstXNJbp1I/AAAAAAAAIJI/tfTDkCyyURMtrHkKUU9xBvMs1QsS_tYWgCEw/s640/OutputExcel_2sheets.png&quot; width=&quot;490&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;The Final Job Diagram&amp;nbsp;&lt;/h2&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-wq1eLOv1GmE/WJi2bxgtsEI/AAAAAAAAIHQ/io9rbSdiUaEQCrGP0AjGDbyB35XQ6lPgQCLcB/s1600/Talend_MulitpleSheetExcel-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;394&quot; src=&quot;https://3.bp.blogspot.com/-wq1eLOv1GmE/WJi2bxgtsEI/AAAAAAAAIHQ/io9rbSdiUaEQCrGP0AjGDbyB35XQ6lPgQCLcB/s640/Talend_MulitpleSheetExcel-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Steps For The Processing&amp;nbsp;&lt;/h2&gt;The first step is to read our input file.The input file is the fixed length file.To read this file, define the metadata using &lt;i&gt;File Positional&lt;/i&gt; option.To define the Metadata, go to the &lt;i&gt;File Positiona&lt;/i&gt;l option and define the positions as per your input file. I have defined the &lt;i&gt;Metadata&lt;/i&gt; as per my input file:&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-epmORqOG-qc/WJi2mn2HAnI/AAAAAAAAIHU/h1YD1M7xs5I3UxEXJQ4UPt55Kjb1dvXugCLcB/s1600/Talend_PositionalMetadata-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;484&quot; src=&quot;https://1.bp.blogspot.com/-epmORqOG-qc/WJi2mn2HAnI/AAAAAAAAIHU/h1YD1M7xs5I3UxEXJQ4UPt55Kjb1dvXugCLcB/s640/Talend_PositionalMetadata-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Once you define the Metadata, you can read the input file using &lt;i&gt;tFilePositional&lt;/i&gt; input file. The configuration would be as mentioned in the below screenshot:&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-pByM7zrHvjI/WJsp52pAcWI/AAAAAAAAII8/vnCSUeEfSKUp7vDAdqKLaGcgKqMfBidvQCLcB/s1600/Talend_tFilePositional.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;282&quot; src=&quot;https://2.bp.blogspot.com/-pByM7zrHvjI/WJsp52pAcWI/AAAAAAAAII8/vnCSUeEfSKUp7vDAdqKLaGcgKqMfBidvQCLcB/s640/Talend_tFilePositional.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As we have to split the single input file into multiple sheets, we are going to use tMap components to split the contents. The configuration of tMap component would be as mentioned in the below screenshot:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-FumzExGMZwY/WJi2sefWpbI/AAAAAAAAIHY/13nt412UIJU6TQ50PZo0UvD6KGLOjZf_ACEw/s1600/Talend_tMapConfig-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;228&quot; src=&quot;https://4.bp.blogspot.com/-FumzExGMZwY/WJi2sefWpbI/AAAAAAAAIHY/13nt412UIJU6TQ50PZo0UvD6KGLOjZf_ACEw/s640/Talend_tMapConfig-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now, next thing is to put these records into the Excel file. For this, we are going to use tFileOutputExcel. The configuration would be like this:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-YddG37RPi8Y/WJi3GuFKhiI/AAAAAAAAIHg/vNi6cT3pW2gLG5HsianjDqx23oTC9TnyQCLcB/s1600/Talend_tFileOutputExcel-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;302&quot; src=&quot;https://2.bp.blogspot.com/-YddG37RPi8Y/WJi3GuFKhiI/AAAAAAAAIHg/vNi6cT3pW2gLG5HsianjDqx23oTC9TnyQCLcB/s640/Talend_tFileOutputExcel-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;We can&#39;t define more than one sheet name here. But, there is a workaround for this. We are going to use &lt;i&gt;tBufferOutput&lt;/i&gt; to store the records for the second sheet in memory and later will use the &lt;i&gt;tBufferInput&lt;/i&gt; component to retrieve those values. &lt;i&gt;tBuffer*&lt;/i&gt; components provide you the temporary location to store and retrieve records.&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-M9G5BByvzLY/WJlCYV4voZI/AAAAAAAAIH0/L4-syfGEwtkEsTMsJFxCSjUod1hHFRpfgCLcB/s1600/Talend_tBufferOutput.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;214&quot; src=&quot;https://2.bp.blogspot.com/-M9G5BByvzLY/WJlCYV4voZI/AAAAAAAAIH0/L4-syfGEwtkEsTMsJFxCSjUod1hHFRpfgCLcB/s640/Talend_tBufferOutput.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You can automatically populate the schema for &lt;i&gt;tBufferOutput&lt;/i&gt; by pressing &lt;i&gt;Sync columns&lt;/i&gt;. But, this can&#39;t be done for &lt;i&gt;tBufferInput&lt;/i&gt;, you have to manually define the schema for this component.As we are going to retrieve what we store in memory using &lt;i&gt;tBufferOutput&lt;/i&gt;, we have to use the same schema as in &lt;i&gt;tBufferOutput&lt;/i&gt;. The schema would be same as mentioned in the below screenshot:&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-7uoUoS81BXk/WJqlrqMWWOI/AAAAAAAAIIE/E3zVCB6aM-wvr3mWBjQbTo003SIh-0jlwCLcB/s1600/Talend_tBufferInput.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;328&quot; src=&quot;https://2.bp.blogspot.com/-7uoUoS81BXk/WJqlrqMWWOI/AAAAAAAAIIE/E3zVCB6aM-wvr3mWBjQbTo003SIh-0jlwCLcB/s640/Talend_tBufferInput.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The last step is to link the &lt;i&gt;tBufferOutput&lt;/i&gt; to the Excel using &lt;i&gt;tFileOutputExcel&lt;/i&gt; component. We have to link to the same Excel as we want to write into the same Excel but in a different sheet. Give the new name for the sheet and don&#39;t forget to tick the &lt;i&gt;Append Existing File and Sheet&lt;/i&gt;.&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-dt9IybdYv9w/WJqwQSSBBqI/AAAAAAAAIIU/156XAm8aSCwfnfWaZVK_T_M9XnSVN6v6gCLcB/s1600/Talend_tFileOutputExcelSheet.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;330&quot; src=&quot;https://3.bp.blogspot.com/-dt9IybdYv9w/WJqwQSSBBqI/AAAAAAAAIIU/156XAm8aSCwfnfWaZVK_T_M9XnSVN6v6gCLcB/s640/Talend_tFileOutputExcelSheet.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/br&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/6016893065382140708/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2017/02/talend-etl-tutorial-how-to-create-multiple-sheets-in-excel.html#comment-form' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/6016893065382140708'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/6016893065382140708'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2017/02/talend-etl-tutorial-how-to-create-multiple-sheets-in-excel.html' title='Talend ETL Tutorial : How To Create Multiple Sheets In An Excel File '/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://3.bp.blogspot.com/-iVVPOPG4UH0/WJq1TxPektI/AAAAAAAAIIk/hv4iUhzdL8Y5NkmcnUkwdNWoXj2i72VFQCLcB/s72-c/How%2BTo%2BCreate%2BMultiple%2BSheets%2BIn%2BExcel-min.png" height="72" width="72"/><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-4453397049591421619</id><published>2017-01-14T06:08:00.001-08:00</published><updated>2017-01-14T06:19:17.260-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Filter Records Using tFilterRow In Talend Open Studio </title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/br&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-m_77ZUzD3eI/WHozAzXPUXI/AAAAAAAAH8E/KFyvbAUd9Z4n4st_Iu4BdLD8jxvUNMnFACLcB/s1600/tFilterRow%2BComponent-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://4.bp.blogspot.com/-m_77ZUzD3eI/WHozAzXPUXI/AAAAAAAAH8E/KFyvbAUd9Z4n4st_Iu4BdLD8jxvUNMnFACLcB/s640/tFilterRow%2BComponent-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;In my last Talend tutorial, I have covered how to use &lt;i&gt;tMap&lt;/i&gt; component to reject rows from Input file. There is an alternative to it, instead of using &lt;i&gt;tMap &lt;/i&gt;component, we can also use &lt;i&gt;tFilterRow&lt;/i&gt; component to filter the records. I am going to use same scenario as used in the previous post and will try to achieve same output as we got in the last post.&lt;/div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Requirement&amp;nbsp;&lt;/h2&gt;In this demo, we are going to process an input file. This input file has only one column: &lt;b&gt;NAME&lt;/b&gt;.We are going to pick records which start with only A or B and will reject rest of the records. The input file is as mentioned below:&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-76GSH9Jkl04/WHoml9rk_2I/AAAAAAAAH7E/Ag-AzgtHPwwCY2VqqMksLpCBRjbWcvilACLcB/s1600/Talend_tInputFile.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;250&quot; src=&quot;https://1.bp.blogspot.com/-76GSH9Jkl04/WHoml9rk_2I/AAAAAAAAH7E/Ag-AzgtHPwwCY2VqqMksLpCBRjbWcvilACLcB/s400/Talend_tInputFile.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;The Final Job Diagram :&lt;/h2&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-6XO-mR40TzI/WHoirrPzE8I/AAAAAAAAH64/21SH8DUKuQ4EYcoVgkGm_PhsyRGNtHDqgCLcB/s1600/Talend_tFilterRowJob-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;248&quot; src=&quot;https://3.bp.blogspot.com/-6XO-mR40TzI/WHoirrPzE8I/AAAAAAAAH64/21SH8DUKuQ4EYcoVgkGm_PhsyRGNtHDqgCLcB/s640/Talend_tFilterRowJob-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Steps For The Processing :&lt;/h2&gt;&lt;div&gt;The first step is to read the input file. As used in the previous posts also, I am going to use &lt;i&gt;tFileInputDelimited&lt;/i&gt; component to read the file. The configuration of this components is as below:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-HwT8rCKMcRA/WHojXuEBWBI/AAAAAAAAH68/yuPm4bM7GgUYjeVW8XtM4L0hJHgeelmRwCLcB/s1600/Talend_tFilterInputSchema-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;456&quot; src=&quot;https://3.bp.blogspot.com/-HwT8rCKMcRA/WHojXuEBWBI/AAAAAAAAH68/yuPm4bM7GgUYjeVW8XtM4L0hJHgeelmRwCLcB/s640/Talend_tFilterInputSchema-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The next step is to process records based on our requirement. We have to analyze the first character of the input records and have to check whether it is equal to A or B. For the processing, we are going to use &lt;i&gt;tFilterRow&lt;/i&gt; component. The whole configuration will look like this:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-Jm5-yMERylE/WHoirZuCddI/AAAAAAAAH6w/eIJlUNmqRG02kN-SCIu_2WbrxJiFsV_pQCEw/s1600/Talend_tFilterRowConfig-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;388&quot; src=&quot;https://3.bp.blogspot.com/-Jm5-yMERylE/WHoirZuCddI/AAAAAAAAH6w/eIJlUNmqRG02kN-SCIu_2WbrxJiFsV_pQCEw/s640/Talend_tFilterRowConfig-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;b&gt;The code :&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;input_row.Name.substring(0,1).equals(&quot;A&quot;)||input_row.Name.substring(0,1).equals(&quot;B&quot;)&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;A template is already provided by Talend to use the filter condition in advanced mode. This will give you the hint how to call columns. This window gives us a lot of dynamism as we can write our own custom condition in Java and we don&#39;t have to rely only on the existing functions which are very few and basic for the filter criteria.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Please check &lt;a href=&quot;http://www.javatpoint.com/substring&quot; target=&quot;_blank&quot;&gt;this&lt;/a&gt;&amp;nbsp;link to learn how to use &lt;i&gt;Substring&lt;/i&gt; in Java.&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tFilterRow Demystified..&lt;/h4&gt;&lt;div&gt;&lt;i&gt;tFilterRow&lt;/i&gt; provides us two mode of filtering : &lt;i&gt;Simple and Advanced&lt;/i&gt;. &lt;b&gt;The Simple Mode&lt;/b&gt; filtering requires you to select values from the given options. To add your columns and filter criteria, just click on the (+) button. But, you won&#39;t get so much options to choose from, the given options under Function and Operator are very basic. The next option is the &lt;b&gt;Advanced Mode&lt;/b&gt;. This option add a lot of dynamism in the &lt;i&gt;tFilterRow&lt;/i&gt; and makes it very powerful. Here, you can use your basic Java skills and add the criteria based on your will. If you want to use both mode, then select &lt;i&gt;And&lt;/i&gt; condition from the dropdown under &lt;i&gt;Logical Operator Used To Combine Conditions&lt;/i&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You can get more details from here :&amp;nbsp;&lt;a href=&quot;https://help.talend.com/display/TalendOpenStudioComponentsReferenceGuide521EN/18.12+tFilterRow&quot; target=&quot;_blank&quot;&gt;tFilterRow In Detail&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-N5wvcaqZgTg/WHoirdgkPaI/AAAAAAAAH7A/QTtFrZ8NP88WiRZHmAsddo_hZg7h1l1bACEw/s1600/Talend_tFilterRowNormal-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;296&quot; src=&quot;https://2.bp.blogspot.com/-N5wvcaqZgTg/WHoirdgkPaI/AAAAAAAAH7A/QTtFrZ8NP88WiRZHmAsddo_hZg7h1l1bACEw/s640/Talend_tFilterRowNormal-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Once you are done with the &lt;i&gt;tFilterRow&lt;/i&gt; configuration, just link it to the desired output component. I am using &lt;i&gt;tLogRow&lt;/i&gt; component here. Similarly, you can use &lt;i&gt;tFileOutputDelimited&lt;/i&gt; to put the records in the text file.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-hyzbAf836Yo/WHotWfsrP_I/AAAAAAAAH7c/xPd-l6RckGcd78Iu28R25Shm8sF-Bqq4ACLcB/s1600/Talend_tLogRow%2BConfig.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;217&quot; src=&quot;https://4.bp.blogspot.com/-hyzbAf836Yo/WHotWfsrP_I/AAAAAAAAH7c/xPd-l6RckGcd78Iu28R25Shm8sF-Bqq4ACLcB/s640/Talend_tLogRow%2BConfig.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Also, you don&#39;t have to define anything specifically for the &lt;i&gt;Reject Rows&lt;/i&gt; and to link it to the output component. First, click on the &lt;i&gt;tFilterRow&lt;/i&gt; component, Go to &lt;i&gt;Row-&amp;gt; Filter&lt;/i&gt; and connect first tLogRow component. Next, repeat the same process but this time Talend will only give you Reject option, use this to link other &lt;i&gt;tLogRow&lt;/i&gt; component.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-VyE-_HcH288/WHosCwQhJlI/AAAAAAAAH7U/TYGBnPAoPhE4uH8CALu0idqjL84IYHejgCLcB/s1600/Talend_tFilterRejectRows.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;245&quot; src=&quot;https://3.bp.blogspot.com/-VyE-_HcH288/WHosCwQhJlI/AAAAAAAAH7U/TYGBnPAoPhE4uH8CALu0idqjL84IYHejgCLcB/s320/Talend_tFilterRejectRows.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Click on the &lt;i&gt;Reject Rows&lt;/i&gt; to get more details about it. The Reject row comes with the default &lt;i&gt;Error message&lt;/i&gt; column.&amp;nbsp;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-Rmg3yjOCEvc/WHowkbENO-I/AAAAAAAAH74/fnzgtv4HGqwe02OIqTf6wpd74QTwhAnbgCLcB/s1600/tFilterRow_ErrorMessageColumn.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;144&quot; src=&quot;https://4.bp.blogspot.com/-Rmg3yjOCEvc/WHowkbENO-I/AAAAAAAAH74/fnzgtv4HGqwe02OIqTf6wpd74QTwhAnbgCLcB/s640/tFilterRow_ErrorMessageColumn.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;The Final Job Execution and Output :&lt;/h2&gt;&lt;div&gt;You will get an output like this once you run the Job :&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-G-a_lDKQp0o/WHovctmd3kI/AAAAAAAAH7s/CdGXQebClm4O9SbTprNiCBtTP_j0nttYgCLcB/s1600/Talend_tFilterRowJobExecution-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;244&quot; src=&quot;https://4.bp.blogspot.com/-G-a_lDKQp0o/WHovctmd3kI/AAAAAAAAH7s/CdGXQebClm4O9SbTprNiCBtTP_j0nttYgCLcB/s640/Talend_tFilterRowJobExecution-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-gai_rMvIs0I/WHovcgbkDeI/AAAAAAAAH7w/GI5ozYmxijM_AxQ9cumrL4IDxvNzyC64QCLcB/s1600/Talend_tFilterRowOutput-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;456&quot; src=&quot;https://2.bp.blogspot.com/-gai_rMvIs0I/WHovcgbkDeI/AAAAAAAAH7w/GI5ozYmxijM_AxQ9cumrL4IDxvNzyC64QCLcB/s640/Talend_tFilterRowOutput-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/4453397049591421619/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2017/01/talend-etl-tutorial-how-to-filter.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/4453397049591421619'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/4453397049591421619'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2017/01/talend-etl-tutorial-how-to-filter.html' title='Talend ETL Tutorial : How To Filter Records Using tFilterRow In Talend Open Studio '/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://4.bp.blogspot.com/-m_77ZUzD3eI/WHozAzXPUXI/AAAAAAAAH8E/KFyvbAUd9Z4n4st_Iu4BdLD8jxvUNMnFACLcB/s72-c/tFilterRow%2BComponent-min.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-4460096909934986015</id><published>2017-01-11T21:26:00.000-08:00</published><updated>2017-01-11T21:36:00.893-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Reject Rows From Input File Using Talend Open Studio</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-gi3A7tiTo8U/WHcCdAkb9jI/AAAAAAAAHxw/VcckzHVV8RACeMSwbsxd9uuplV_OB-5AQCLcB/s1600/How%2BTo%2BReject%2BRows%2BIn%2BTalend-min.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://2.bp.blogspot.com/-gi3A7tiTo8U/WHcCdAkb9jI/AAAAAAAAHxw/VcckzHVV8RACeMSwbsxd9uuplV_OB-5AQCLcB/s640/How%2BTo%2BReject%2BRows%2BIn%2BTalend-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;We usually get the requirement where we have to pick some rows and have to drop others based on some conditions. This requires the processing of an input file. If you have worked on some ETL tools before like Datastage, then &lt;i&gt;Transformer&lt;/i&gt; is your component for the processing. Same way, &amp;nbsp;Talend provides &lt;i&gt;tMap&lt;/i&gt; component for processing. In this demo, we are going to filter rows using tMap component.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Let&#39;s check how to get it done...&lt;/div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Requirement&amp;nbsp;&lt;/h2&gt;&lt;div&gt;In this demo, we are going to process an input file. This input file has only one column: &lt;i&gt;CITY&lt;/i&gt;.&lt;/div&gt;&lt;div&gt;We are going to pick records which start&amp;nbsp;with &lt;i&gt;only A or B&lt;/i&gt; and will reject rest of the records. The input file is as mentioned below:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-tuusl3dhzgs/WHZowSkNNuI/AAAAAAAAHxQ/a5A3P8h8WlMUrM4k3EOIssOpAjumgk0bACLcB/s1600/InputRecords.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;211&quot; src=&quot;https://1.bp.blogspot.com/-tuusl3dhzgs/WHZowSkNNuI/AAAAAAAAHxQ/a5A3P8h8WlMUrM4k3EOIssOpAjumgk0bACLcB/s400/InputRecords.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;The Final Job Diagram:&lt;/h2&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-DIeG7cyuF8A/WHcLtvFKexI/AAAAAAAAHyU/QtaxF3JknS4zkJo7VAXA0zc77SIzbvf4gCLcB/s1600/Talend_JobHowToRejectRows-min.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;284&quot; src=&quot;https://4.bp.blogspot.com/-DIeG7cyuF8A/WHcLtvFKexI/AAAAAAAAHyU/QtaxF3JknS4zkJo7VAXA0zc77SIzbvf4gCLcB/s640/Talend_JobHowToRejectRows-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;&amp;nbsp;Steps For The Processing&amp;nbsp;&lt;/h2&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;The first step is to read the input file.&amp;nbsp;As used in the previous posts also, I am going to use tFileInputDelimited component to read the file. The configuration of this components is as below:&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;The next step is to process records based on our requirement. We have to analyze the first character of the input records and have to check whether it is equal to A or B. For the processing, we are going to use tMap component. The whole configuration will look like this:&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-kIbenlbmOps/WHZtnuG2WDI/AAAAAAAAHxg/l6HrKVmqJ2szRnqh5twPBjznHMpXzSE-QCLcB/s1600/Talend_tMapping.png&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;306&quot; src=&quot;https://2.bp.blogspot.com/-kIbenlbmOps/WHZtnuG2WDI/AAAAAAAAHxg/l6HrKVmqJ2szRnqh5twPBjznHMpXzSE-QCLcB/s640/Talend_tMapping.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;(Click To Enlarge)&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&lt;br /&gt;At the left side of the screen, we will get the input columns. As soon as we connect the input to the tMap, all the columns will get automatically populated.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-fb32frAREHk/WHcSi55Oi-I/AAAAAAAAHzA/49fZ4Fi5s5Q_wRpqqqbjSOpgUZdbbz5WQCLcB/s1600/Talend_InputFileSchema.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;448&quot; src=&quot;https://4.bp.blogspot.com/-fb32frAREHk/WHcSi55Oi-I/AAAAAAAAHzA/49fZ4Fi5s5Q_wRpqqqbjSOpgUZdbbz5WQCLcB/s640/Talend_InputFileSchema.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;At the right side of the screen, you can see two output window: &lt;i&gt;out1 and out2&lt;/i&gt;. This is required as we are going to filter the records based on the condition. The &lt;i&gt;out1&lt;/i&gt; window is for the valid records ( The records that will match our criteria). The &lt;i&gt;out2&lt;/i&gt; window is for the rejected records.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-YQ6FK7wFJbo/WHcIcHDFhfI/AAAAAAAAHyA/Wcx1KgpH9XI0HP0n9oAkvW686x8kyMr7wCLcB/s1600/Talend_tMapOut-min.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;555&quot; src=&quot;https://1.bp.blogspot.com/-YQ6FK7wFJbo/WHcIcHDFhfI/AAAAAAAAHyA/Wcx1KgpH9XI0HP0n9oAkvW686x8kyMr7wCLcB/s640/Talend_tMapOut-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;To put the conditional statement, first of all, open the expression editor. Once you are inside the expression editor, you can use the different functions as provided by Talend. Here, I am using LEFT function under StringHandling categories.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-BqlvgI5Ef3M/WHcJ6bGDMSI/AAAAAAAAHyI/MbCKVIXYZm4hNThBl-gvlLMxXEgRY7R5wCLcB/s1600/Talend_tMapFunction-min.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://3.bp.blogspot.com/-BqlvgI5Ef3M/WHcJ6bGDMSI/AAAAAAAAHyI/MbCKVIXYZm4hNThBl-gvlLMxXEgRY7R5wCLcB/s640/Talend_tMapFunction-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;To reject records, we don&#39;t have to put any condition specifically. Talend provides a feature to reject records and we are just using that. Just open the tMap settings and select the value as &lt;b&gt;True&lt;/b&gt; for &lt;i&gt;Catch Output Reject&lt;/i&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Finally, we just have to place records coming out from &lt;i&gt;Ou1 and Out2&lt;/i&gt; to an output file. For this, we are going to use &lt;i&gt;tFileOutputDelimited&lt;/i&gt; component. The VALID.txt file will store the records which are matching our criteria and the rest will go to INVALID.txt.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-GBlDRxBxHp0/WHcL00l8GVI/AAAAAAAAHyc/cdsAR4FgB1QNyS3diHS8x1n05Gg84DB8ACLcB/s1600/Talend_tMapFileOutputValid-min.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;251&quot; src=&quot;https://1.bp.blogspot.com/-GBlDRxBxHp0/WHcL00l8GVI/AAAAAAAAHyc/cdsAR4FgB1QNyS3diHS8x1n05Gg84DB8ACLcB/s640/Talend_tMapFileOutputValid-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-ggzWsk1eKQU/WHcL073feBI/AAAAAAAAHyY/Xh3iJ3JKCy0NpqTlJTu49R5h1HeVgUaXwCEw/s1600/Talend_tMapFileOutputInvalid-min.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;222&quot; src=&quot;https://2.bp.blogspot.com/-ggzWsk1eKQU/WHcL073feBI/AAAAAAAAHyY/Xh3iJ3JKCy0NpqTlJTu49R5h1HeVgUaXwCEw/s640/Talend_tMapFileOutputInvalid-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;The Final Job Execution:&lt;/h3&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-pyIaqKk-KBA/WHcQrtCUjqI/AAAAAAAAHy0/SXhClQxRsYUqvHLd2xMwATVp-znOfIMnwCLcB/s1600/Talend_tMapJobExecution.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;382&quot; src=&quot;https://2.bp.blogspot.com/-pyIaqKk-KBA/WHcQrtCUjqI/AAAAAAAAHy0/SXhClQxRsYUqvHLd2xMwATVp-znOfIMnwCLcB/s640/Talend_tMapJobExecution.gif&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It&#39;s time to execute our designed job. The final result would be like this:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-xKmOu2OTO3M/WHcOPqSKgFI/AAAAAAAAHyo/jQ1c4Qjm64I9saIy3Vf18CWHeS1djoYUgCLcB/s1600/FinalJobOutput.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;228&quot; src=&quot;https://1.bp.blogspot.com/-xKmOu2OTO3M/WHcOPqSKgFI/AAAAAAAAHyo/jQ1c4Qjm64I9saIy3Vf18CWHeS1djoYUgCLcB/s400/FinalJobOutput.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/4460096909934986015/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2017/01/talend-etl-tutorial-how-to-reject-rows.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/4460096909934986015'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/4460096909934986015'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2017/01/talend-etl-tutorial-how-to-reject-rows.html' title='Talend ETL Tutorial : How To Reject Rows From Input File Using Talend Open Studio'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://2.bp.blogspot.com/-gi3A7tiTo8U/WHcCdAkb9jI/AAAAAAAAHxw/VcckzHVV8RACeMSwbsxd9uuplV_OB-5AQCLcB/s72-c/How%2BTo%2BReject%2BRows%2BIn%2BTalend-min.png" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-8963161205568019065</id><published>2016-12-31T22:31:00.000-08:00</published><updated>2016-12-31T22:31:36.487-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Iterate Data Present In An Input File</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;/div&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;a href=&quot;https://4.bp.blogspot.com/-2aKmXLUJtes/WGfoPFceidI/AAAAAAAAHu8/_ik9LJUDcfAya_8jSOG2Oy8zDvtXZm_fgCLcB/s1600/Copy%2Bof%2BHow%2BTo%2BUse%2BVariables%2BIn%2BTalend%2B%25281%2529-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://4.bp.blogspot.com/-2aKmXLUJtes/WGfoPFceidI/AAAAAAAAHu8/_ik9LJUDcfAya_8jSOG2Oy8zDvtXZm_fgCLcB/s640/Copy%2Bof%2BHow%2BTo%2BUse%2BVariables%2BIn%2BTalend%2B%25281%2529-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;In one of my previous posts, I have covered how to iterate through the files present in a directory or subdirectory and display the data present in it. But, what if the requirement is to iterate through the data present in an input file. This requires few more Talend components to be included in the Job design.&lt;br /&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Requirement&amp;nbsp;&lt;/h3&gt;&lt;div&gt;The requirement is to read the input file and create a separate file based on the CITY column present in the file.This requirement is definitely required to read and iterate data from the input file.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-gU52efxxl5w/WGfGiSYTaEI/AAAAAAAAHt8/Pey2bYQPLJk9JMUIx7j2IMDt3S1QdyrbQCLcB/s1600/InputFile.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;233&quot; src=&quot;https://2.bp.blogspot.com/-gU52efxxl5w/WGfGiSYTaEI/AAAAAAAAHt8/Pey2bYQPLJk9JMUIx7j2IMDt3S1QdyrbQCLcB/s400/InputFile.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Steps To Iterate Data Present In Input File&amp;nbsp;&lt;/h3&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;The first step is to read the input file. As used in the previous posts also, I am going to use &lt;i&gt;tFileInputDelimited&lt;/i&gt; component to read the file. The configuration of this components is as below:&lt;/li&gt;&lt;/ul&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-ls2KUkwu9NY/WGfHqnTAZ8I/AAAAAAAAHuA/E2vHv9bgOlAIP1L8pae9TFt2bhWWo8MIgCLcB/s1600/Talend_tFileInputDelimitedComponent.png&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img alt=&quot;Talend_tFileInputDelimited Component&quot; border=&quot;0&quot; height=&quot;254&quot; src=&quot;https://3.bp.blogspot.com/-ls2KUkwu9NY/WGfHqnTAZ8I/AAAAAAAAHuA/E2vHv9bgOlAIP1L8pae9TFt2bhWWo8MIgCLcB/s640/Talend_tFileInputDelimitedComponent.png&quot; title=&quot;Talend_tFileInputDelimited Component&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Talend_tFileInputDelimited Component&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;The next step is to make this input data iterable. Talend has a component for this also: &lt;i&gt;tFlowToIterate. &lt;/i&gt;This component&amp;nbsp;converts &lt;b&gt;Main flow to iterate flow&lt;/b&gt;. It iterates input and converts into global variables. These global variables can be used later to access the data individually from the input file. The surprising thing is that you don&#39;t even have to do any kind of configuration. Everything will be handled by this component only.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-yq-hVWN7tHI/WGfZEylRHOI/AAAAAAAAHuQ/ERoImlR7HRgWRcvsRj3pFjPpsMhe4BuGACLcB/s1600/Talend_tFlowToIterate.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;196&quot; src=&quot;https://3.bp.blogspot.com/-yq-hVWN7tHI/WGfZEylRHOI/AAAAAAAAHuQ/ERoImlR7HRgWRcvsRj3pFjPpsMhe4BuGACLcB/s640/Talend_tFlowToIterate.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Once you use the tFlowToIterate, it will convert your data into an iterable form. And, you can&#39;t put this data directly into a file. Even if you use &lt;i&gt;tFileOutputDelimited&lt;/i&gt;&amp;nbsp;component and try to link &lt;i&gt;tFlowToIterat to tFileOutpuDelimited&lt;/i&gt;, the Talend won&#39;t accept it. You need to convert your data from iterable form to fixed form so that it can be put into a file. And, no surprise, Talend has a component for this also: &lt;i&gt;tFixedFlowInput.&amp;nbsp;&lt;/i&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- tricksfind_sidebar13_AdSense2_336x280_as --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-slot=&quot;1630166097&quot; style=&quot;display: inline-block; height: 280px; width: 336px;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;&lt;i&gt;tFixedFlowInput &lt;/i&gt;component requires config settings. First, define the schema, it will be same as defined in the input file. As soon as you define the columns the same will be populated in the COLUMN section. To map the values, go the value column and hit CTRL + SPACE. This will give you the list of all global variables. Select your global variables from the list.&lt;/li&gt;&lt;/ul&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-vWZO7CCnpyw/WGfg2C8dS-I/AAAAAAAAHug/Q2L_f-Vo7xkaLMDp2ppOBeYaTjabwrsxQCLcB/s1600/Talend_tFixedFlowInputValues.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;216&quot; src=&quot;https://4.bp.blogspot.com/-vWZO7CCnpyw/WGfg2C8dS-I/AAAAAAAAHug/Q2L_f-Vo7xkaLMDp2ppOBeYaTjabwrsxQCLcB/s640/Talend_tFixedFlowInputValues.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Once everything has been set, your component settings will look like this. Notice, these values are the global values. Using these global values, we can access the data available in the specific column.And, we haven&#39;t done anything extra to set these values, just picked the right values from the drop down list. Talend makes it very easy.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-tLETTUaTs7k/WGfhLXVr9qI/AAAAAAAAHuk/2znwEHi1LS0rd3QrCeL47nMYJKifnY3QQCLcB/s1600/Talend_tFixedFlowInput.png&quot; style=&quot;margin-left: 1em; margin-right: 1em; text-align: center;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;270&quot; src=&quot;https://3.bp.blogspot.com/-tLETTUaTs7k/WGfhLXVr9qI/AAAAAAAAHuk/2znwEHi1LS0rd3QrCeL47nMYJKifnY3QQCLcB/s640/Talend_tFixedFlowInput.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;So, once you get all values, you just have to set these values in the output file. To put the values in the output file, we are going to use &lt;i&gt;tFileOutputDelimited&lt;/i&gt; component. You could have guessed it by now how the output will come out with the CITY name. We already have the global variable for the CITY column. We will use this global variable to generate the output file.&lt;/li&gt;&lt;li&gt;&lt;b&gt;File Name :&lt;/b&gt;&amp;nbsp;&quot;C:/TalendTesting/TestingFiles/&quot;+((String)globalMap.get(&quot;row1.CITY&quot;))+&quot;.txt&quot;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-tCrYwAef3eE/WGfkzpTVJSI/AAAAAAAAHuw/vH7iNyc7_04C1MJBNitLGt3x7Jt1yhkVQCLcB/s1600/Talend_tOutputFileValue.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;260&quot; src=&quot;https://2.bp.blogspot.com/-tCrYwAef3eE/WGfkzpTVJSI/AAAAAAAAHuw/vH7iNyc7_04C1MJBNitLGt3x7Jt1yhkVQCLcB/s640/Talend_tOutputFileValue.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;There could be multiple values linked to the same CITY. And, we want all CITY data to be clubbed in one file. To enforce this, please check the &lt;i&gt;APPEND &lt;/i&gt;checkbox. Otherwise, each time when the Job encounters a CITY, it will create a new file. To check this scenario, I will add one more entry for PUNE city.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-LdyTP5QzZfQ/WGiWdk3CSJI/AAAAAAAAHvg/UMwl7cB2diED622FlAr3NkFRGLK-jvm2wCLcB/s1600/Talend_TestingFile.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;187&quot; src=&quot;https://3.bp.blogspot.com/-LdyTP5QzZfQ/WGiWdk3CSJI/AAAAAAAAHvg/UMwl7cB2diED622FlAr3NkFRGLK-jvm2wCLcB/s320/Talend_TestingFile.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Component Details:&lt;/h3&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tFileInputDelimited :&lt;/h4&gt;&lt;div&gt;&lt;i&gt;tFileInputDelimited&lt;/i&gt; reads a given file row by row with simple separated fields. Opens a file and reads it row by row to split them up into fields then sends fields as defined in the Schema to the next Job component, via a Row link.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get more details from here:&amp;nbsp;&lt;a href=&quot;https://help.talend.com/pages/viewpage.action?pageId=261826239&quot; target=&quot;_blank&quot;&gt;tFileInputDelimited Component Detail&lt;/a&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tFlowToIterate :&lt;/h4&gt;&lt;div&gt;&lt;div&gt;&lt;i&gt;tFlowToIterate&lt;/i&gt; iterates on the input data and generates global variables.This component is used to read data line by line from the input flow and store the data entries in iterative global variables.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get more details from here:&amp;nbsp;&lt;a href=&quot;https://help.talend.com/display/TalendOpenStudioComponentsReferenceGuide60EN/tFlowToIterate&quot; target=&quot;_blank&quot;&gt;tFlowToIterate Component Detail&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tFixedFlowInput:&lt;/h4&gt;&lt;div&gt;&lt;i&gt;tFixedFlowInpu&lt;/i&gt;t generates as many lines and columns as you want using the context variables. It allows you to generate fixed flow from internal variables.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get more details from here:&amp;nbsp;&lt;a href=&quot;https://help.talend.com/pages/viewpage.action?pageId=261826340&quot; target=&quot;_blank&quot;&gt;tFixedFlowInput Component Detail&lt;/a&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tFileOutputDelimited:&lt;/h4&gt;&lt;div&gt;&lt;i&gt;tFileOutputDelimited&lt;/i&gt; outputs data to a delimited file. This component writes a delimited file that holds data organized according to the defined schema.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Get more details from here:&amp;nbsp;&lt;a href=&quot;https://help.talend.com/pages/viewpage.action?pageId=261826255&quot; target=&quot;_blank&quot;&gt;tFileOutputDelimited Component Detail&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Final Job Design:&lt;/h3&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-1IKatOOOss8/WGiRqjyWVVI/AAAAAAAAHvU/-vZWfjCiSxgyz4vmyxBjiA1cfROCXJTMACLcB/s1600/Talend_FinalJobDesign.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;218&quot; src=&quot;https://1.bp.blogspot.com/-1IKatOOOss8/WGiRqjyWVVI/AAAAAAAAHvU/-vZWfjCiSxgyz4vmyxBjiA1cfROCXJTMACLcB/s640/Talend_FinalJobDesign.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Talend_FinalJobDesign&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Final Job Execution:&lt;/h3&gt;&lt;/div&gt;&lt;div&gt;So, once I execute this Job, I should be getting 3 files for each CITY. And, for the PUNE city, my output file should have two records.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-DhEyD1OrtC4/WGiX_--VKHI/AAAAAAAAHvo/-eHrRf0p6wEgf0IBi5X5Bt1yh690cIIaQCLcB/s1600/Talend_HowToIterateOnData_Execution.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;444&quot; src=&quot;https://4.bp.blogspot.com/-DhEyD1OrtC4/WGiX_--VKHI/AAAAAAAAHvo/-eHrRf0p6wEgf0IBi5X5Bt1yh690cIIaQCLcB/s640/Talend_HowToIterateOnData_Execution.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Talend_FinalJobExecution&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;The Output:&lt;/h4&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-5WZcxChN2ek/WGihKuTWtBI/AAAAAAAAHv4/8DjwLS9Dv4srW4W6CSDBbHXW6ey_IHfrgCLcB/s1600/Talend_JobExecution.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;476&quot; src=&quot;https://4.bp.blogspot.com/-5WZcxChN2ek/WGihKuTWtBI/AAAAAAAAHv4/8DjwLS9Dv4srW4W6CSDBbHXW6ey_IHfrgCLcB/s640/Talend_JobExecution.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Talend_FinalJobOutput&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/8963161205568019065/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2016/12/talend-etl-tutorial-how-to-iterate-data-present-in-input-file.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/8963161205568019065'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/8963161205568019065'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2016/12/talend-etl-tutorial-how-to-iterate-data-present-in-input-file.html' title='Talend ETL Tutorial : How To Iterate Data Present In An Input File'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://4.bp.blogspot.com/-2aKmXLUJtes/WGfoPFceidI/AAAAAAAAHu8/_ik9LJUDcfAya_8jSOG2Oy8zDvtXZm_fgCLcB/s72-c/Copy%2Bof%2BHow%2BTo%2BUse%2BVariables%2BIn%2BTalend%2B%25281%2529-min.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-1339150076994012519</id><published>2016-12-18T03:53:00.000-08:00</published><updated>2016-12-18T04:00:04.130-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Find Jobs Containing Specific Component </title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-egnAPN6C7AA/WFY2MHJSRUI/AAAAAAAAHp4/qivh79OfXgwFkNehy13GiYA7KfxKwLAIQCEw/s1600/How%2BTo%2BFind%2BComponent%2BIn%2BTalend-min.png&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://4.bp.blogspot.com/-egnAPN6C7AA/WFY2MHJSRUI/AAAAAAAAHp4/qivh79OfXgwFkNehy13GiYA7KfxKwLAIQCEw/s640/How%2BTo%2BFind%2BComponent%2BIn%2BTalend-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Image Source :&amp;nbsp;freepik&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;&lt;br /&gt;Ever wondered how could you find the specific component used in the heap of Jobs? This is required for a lot of reasons. You may want to trace the filenames that you have used in some specific components (eg: tFileInputDelimited ) but there are already 100 Jobs in the environment and you are not sure how many Jobs are actually using this component. So, you don&#39;t have any filter criteria. The last option would be to check all the Jobs one by one. But, what if you can apply some filter to get at least those Jobs which are actually using this specific component?&lt;/span&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Steps To Check For Specific Component In A Job:&lt;/h3&gt;&lt;div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;You may have a lot of Jobs under Talend Repository. The count could be anything. In my Talend Job Designs, I have these many Jobs as of now. And, I am not sure what components are being used in all these Jobs.&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-cD0ZYbBISbA/WFY2M-MU8VI/AAAAAAAAHqA/kPusdMCqlmgbOWtPV5GWJu939IG-lhndACEw/s1600/Talend_RepositoryJobs-min.png&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://3.bp.blogspot.com/-cD0ZYbBISbA/WFY2M-MU8VI/AAAAAAAAHqA/kPusdMCqlmgbOWtPV5GWJu939IG-lhndACEw/s320/Talend_RepositoryJobs-min.png&quot; width=&quot;276&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Talend_RepositoryJobDesign&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span class=&quot;apple-converted-space&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;Now, Go to&lt;/span&gt;&lt;span style=&quot;font-size: 13.5pt; line-height: 107%;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;Palette&#39;s Seach&lt;/span&gt;&lt;span style=&quot;font-size: 13.5pt; line-height: 107%;&quot;&gt;&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;bar. And, search for your component. Or, if you know the exact folder location of the Talend component, you can directly go to the component. In this demo, I am searching for the&amp;nbsp;&lt;/span&gt;tFileInputDelimited&lt;/span&gt;&lt;span style=&quot;font-size: 13.5pt; line-height: 107%;&quot;&gt;&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;component. As you can see in the below screenshot, I have searched with tFileInput and got the list of all components where this string (tFileInput) has been used.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 13.5pt; line-height: 107%;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-AxKpmjcqCf8/WFY2M0O7ilI/AAAAAAAAHp8/Pa7Pi9Rz-iUnpLDuD1itgG5MTv_ivm8OACEw/s1600/Talend_PaletteComponents-min.png&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://3.bp.blogspot.com/-AxKpmjcqCf8/WFY2M0O7ilI/AAAAAAAAHp8/Pa7Pi9Rz-iUnpLDuD1itgG5MTv_ivm8OACEw/s320/Talend_PaletteComponents-min.png&quot; width=&quot;296&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Talend_PaletteComponentSearch&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;So, the&lt;/span&gt;&lt;span style=&quot;font-size: 13.5pt; line-height: 107%;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;tFileInputDelimited&lt;/span&gt;&lt;span style=&quot;font-size: 13.5pt; line-height: 107%;&quot;&gt;&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;component is under&lt;/span&gt;&lt;span style=&quot;font-size: 13.5pt; line-height: 107%;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;File -&amp;gt; Input&lt;/span&gt;&lt;span style=&quot;font-size: 13.5pt; line-height: 107%;&quot;&gt;&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;directory. Right click on the component, and go to&lt;/span&gt;&lt;span style=&quot;font-size: 13.5pt; line-height: 107%;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;Find Component In Jobs&lt;/span&gt;&lt;/i&gt;&lt;i&gt;&lt;span style=&quot;font-size: 13.5pt; line-height: 107%;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;option.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 13.5pt; line-height: 107%;&quot;&gt;&lt;span style=&quot;font-size: 13.5pt; line-height: 107%;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-Uu3RPPzs6RE/WFY2MFx7blI/AAAAAAAAHpw/dQRc1ZanL-UDkUMRpJadHZpmhBLba4ILgCEw/s1600/Talend_FindComponentInJobs-min.png&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://2.bp.blogspot.com/-Uu3RPPzs6RE/WFY2MFx7blI/AAAAAAAAHpw/dQRc1ZanL-UDkUMRpJadHZpmhBLba4ILgCEw/s320/Talend_FindComponentInJobs-min.png&quot; width=&quot;254&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Talend_FindComponentInJobs&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;As soon as you click on it, Talend will scan all the Jobs available in Job designs and give you the list of the Jobs where this specific component is being used. In this case, Talend has given me the list of all Jobs where&lt;/span&gt;&lt;span style=&quot;font-size: 13.5pt; line-height: 107%;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;tFileInputDelimited&lt;/span&gt;&lt;span style=&quot;font-size: 13.5pt; line-height: 107%;&quot;&gt;&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;component has been used.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-nBEmeRAwgMs/WFY2MLKeABI/AAAAAAAAHp0/BCo7Tey7MyEScDb1k-RoGXhwekvMVr4iwCEw/s1600/Talend_FindJobDesigns-min.png&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;310&quot; src=&quot;https://4.bp.blogspot.com/-nBEmeRAwgMs/WFY2MLKeABI/AAAAAAAAHp0/BCo7Tey7MyEScDb1k-RoGXhwekvMVr4iwCEw/s320/Talend_FindJobDesigns-min.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Talend_SearchedJobDesigns&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;century&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;This may seem unimportant at the first sight but you will only get to know the importance of this feature when working in a real environment. I have worked on Datastage before there you may have options to find the Job but not any specific component. There were numerous occasions when I was craving for the feature like this. Fortunately, Talend provides this option and this feature is very helpful and useful.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/1339150076994012519/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2016/12/talend-etl-tutorial-how-to-find-jobs.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/1339150076994012519'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/1339150076994012519'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2016/12/talend-etl-tutorial-how-to-find-jobs.html' title='Talend ETL Tutorial : How To Find Jobs Containing Specific Component '/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://4.bp.blogspot.com/-egnAPN6C7AA/WFY2MHJSRUI/AAAAAAAAHp4/qivh79OfXgwFkNehy13GiYA7KfxKwLAIQCEw/s72-c/How%2BTo%2BFind%2BComponent%2BIn%2BTalend-min.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-5018013360571760052</id><published>2016-12-17T07:18:00.000-08:00</published><updated>2016-12-17T07:18:24.465-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Declare And Use Variables In A Job </title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-cWg99etTThc/WFJNFeW8HYI/AAAAAAAAHk0/3Ry5XutvVdkeEBLZY2Sbxk0-0Uzciw9EwCLcB/s1600/How%2BTo%2BUse%2BVariables%2BIn%2BTalend-min.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://2.bp.blogspot.com/-cWg99etTThc/WFJNFeW8HYI/AAAAAAAAHk0/3Ry5XutvVdkeEBLZY2Sbxk0-0Uzciw9EwCLcB/s640/How%2BTo%2BUse%2BVariables%2BIn%2BTalend-min.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;Variables are the soul of any program. As a programmer, we never code with the static values. Also, the main aim of any program to minimize the redundancy and repetition of the same thing. The Variables make it possible by storing the values dynamically. In Talend world also, we have variables concept and like in any other programming language, it also has the concept of&amp;nbsp;&lt;i&gt;Local and Global variables&lt;/i&gt;. The Local variables are known as&amp;nbsp;&lt;b&gt;&lt;i&gt;Context Variables&lt;/i&gt;&lt;/b&gt;&amp;nbsp;in Talend.&amp;nbsp;A&amp;nbsp;&lt;i&gt;context variable&lt;/i&gt;&amp;nbsp;is a variable which is defined by the user for a particular context.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;Let&#39;s Explore Contexts..&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;Depending on the circumstances the Job is being used in, you might want to manage it differently for various execution types, known as&amp;nbsp;&lt;i&gt;Contexts&lt;/i&gt;&amp;nbsp;(&lt;b&gt;Ex&lt;/b&gt;: Prod and Test environments). The simple example is,&amp;nbsp;&lt;i&gt;testing environments&lt;/i&gt;&amp;nbsp;where we have to run the jobs for different instances. You can consider all these testing environments as&amp;nbsp;&lt;b&gt;&lt;i&gt;Contexts&lt;/i&gt;&lt;/b&gt;. You can set your Job to run in all these Contexts once you set the variables for it.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;How To Define Context Variables For A Job :&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;There are mainly&amp;nbsp;&lt;i&gt;TWO&lt;/i&gt;&amp;nbsp;ways to define variables for the job...&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 4;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;Define Variables Through Context View:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 4;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;You can find the&amp;nbsp;&lt;i&gt;Context View&lt;/i&gt;&amp;nbsp;among the configuration tabs and below the design workspace.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot;&gt; &lt;tbody&gt;&lt;tr&gt;  &lt;td style=&quot;padding: 4.5pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-phuOV3IIaaA/WFVRH2swG1I/AAAAAAAAHoE/SpnBInIEJAoy7D3xROQPMK_KsibTLxJVQCLcB/s1600/Talend_ContextViewtab.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;436&quot; src=&quot;https://1.bp.blogspot.com/-phuOV3IIaaA/WFVRH2swG1I/AAAAAAAAHoE/SpnBInIEJAoy7D3xROQPMK_KsibTLxJVQCLcB/s640/Talend_ContextViewtab.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-fFf_3o8yQQk/WFTvExhigiI/AAAAAAAAHmM/PCPZL-Zl1B4_ygAJ-ThWKEyiNqe1MHngwCLcB/s1600/Talend_ContextViewtab.png&quot;&gt;&lt;span style=&quot;color: blue; font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 12.0pt; text-decoration: none;&quot;&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype    id=&quot;_x0000_t75&quot; coordsize=&quot;21600,21600&quot; o:spt=&quot;75&quot; o:preferrelative=&quot;t&quot;    path=&quot;m@4@5l@4@11@9@11@9@5xe&quot; filled=&quot;f&quot; stroked=&quot;f&quot;&gt;   &lt;v:stroke joinstyle=&quot;miter&quot;/&gt;   &lt;v:formulas&gt;    &lt;v:f eqn=&quot;if lineDrawn pixelLineWidth 0&quot;/&gt;    &lt;v:f eqn=&quot;sum @0 1 0&quot;/&gt;    &lt;v:f eqn=&quot;sum 0 0 @1&quot;/&gt;    &lt;v:f eqn=&quot;prod @2 1 2&quot;/&gt;    &lt;v:f eqn=&quot;prod @3 21600 pixelWidth&quot;/&gt;    &lt;v:f eqn=&quot;prod @3 21600 pixelHeight&quot;/&gt;    &lt;v:f eqn=&quot;sum @0 0 1&quot;/&gt;    &lt;v:f eqn=&quot;prod @6 1 2&quot;/&gt;    &lt;v:f eqn=&quot;prod @7 21600 pixelWidth&quot;/&gt;    &lt;v:f eqn=&quot;sum @8 21600 0&quot;/&gt;    &lt;v:f eqn=&quot;prod @7 21600 pixelHeight&quot;/&gt;    &lt;v:f eqn=&quot;sum @10 21600 0&quot;/&gt;   &lt;/v:formulas&gt;   &lt;v:path o:extrusionok=&quot;f&quot; gradientshapeok=&quot;t&quot; o:connecttype=&quot;rect&quot;/&gt;   &lt;o:lock v:ext=&quot;edit&quot; aspectratio=&quot;t&quot;/&gt;  &lt;/v:shapetype&gt;&lt;v:shape id=&quot;Picture_x0020_10&quot; o:spid=&quot;_x0000_i1031&quot; type=&quot;#_x0000_t75&quot;    alt=&quot;Talend_ContextView&quot;    href=&quot;https://1.bp.blogspot.com/-fFf_3o8yQQk/WFTvExhigiI/AAAAAAAAHmM/PCPZL-Zl1B4_ygAJ-ThWKEyiNqe1MHngwCLcB/s1600/Talend_ContextViewtab.png&quot;    style=&#39;width:480pt;height:328.5pt;visibility:visible;mso-wrap-style:square&#39;    o:button=&quot;t&quot;&gt;   &lt;v:imagedata src=&quot;file:///C:\Users\Praveen\AppData\Local\Temp\msohtmlclip1\01\clip_image001.png&quot;     o:title=&quot;Talend_ContextView&quot;/&gt;  &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 12.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;&lt;tr&gt;  &lt;td style=&quot;padding: 3.0pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 9.5pt;&quot;&gt;Talend_ContextView&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 9.5pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;In simple words, It&#39;s more of &amp;nbsp;&lt;i&gt;Job Properties&lt;/i&gt;&amp;nbsp;as used in Datastage. In this window, you can define all the parameters value that are going to be used in your Job. Just define it once, so that you don&#39;t have to define it again and again.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-nm7C-U094vs/WFVRjjaHLHI/AAAAAAAAHoI/8R8-BAPJs7cty-6BjmE23xa2CZ_CYH_6wCLcB/s1600/Talend_SetContextVariables.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;242&quot; src=&quot;https://1.bp.blogspot.com/-nm7C-U094vs/WFVRjjaHLHI/AAAAAAAAHoI/8R8-BAPJs7cty-6BjmE23xa2CZ_CYH_6wCLcB/s640/Talend_SetContextVariables.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot;&gt; &lt;tbody&gt;&lt;tr&gt;  &lt;td style=&quot;padding: 4.5pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-OOfnerBli2c/WFTyfO0-CuI/AAAAAAAAHmY/GcITxAEOuLcgx16yzMcohSU3iY9BoVkJACLcB/s1600/Talend_SetContextVariables.png&quot;&gt;&lt;span style=&quot;color: blue; font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 12.0pt; text-decoration: none;&quot;&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id=&quot;Picture_x0020_9&quot;    o:spid=&quot;_x0000_i1030&quot; type=&quot;#_x0000_t75&quot; alt=&quot;Talend_SetContextVariables&quot;    href=&quot;https://1.bp.blogspot.com/-OOfnerBli2c/WFTyfO0-CuI/AAAAAAAAHmY/GcITxAEOuLcgx16yzMcohSU3iY9BoVkJACLcB/s1600/Talend_SetContextVariables.png&quot;    style=&#39;width:480pt;height:181.5pt;visibility:visible;mso-wrap-style:square&#39;    o:button=&quot;t&quot;&gt;   &lt;v:imagedata src=&quot;file:///C:\Users\Praveen\AppData\Local\Temp\msohtmlclip1\01\clip_image002.png&quot;     o:title=&quot;Talend_SetContextVariables&quot;/&gt;  &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 12.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;&lt;tr&gt;  &lt;td style=&quot;padding: 3.0pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 9.5pt;&quot;&gt;Talend_SetContextVariables&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&amp;nbsp;To define, new environments or contexts, you can just click on the&amp;nbsp;&lt;i&gt;PLUS&lt;/i&gt;&amp;nbsp;button as shown in below screenshot.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-STRVdHA4G0w/WFVSDfXDgWI/AAAAAAAAHoQ/bpn-IRsOVYYLNKduy0RFgL2kgdVWAekZgCLcB/s1600/Talend_DefaultContexts.png&quot; imageanchor=&quot;1&quot; style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;, serif; font-size: 18px; margin-left: 1em; margin-right: 1em; text-align: center;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;166&quot; src=&quot;https://3.bp.blogspot.com/-STRVdHA4G0w/WFVSDfXDgWI/AAAAAAAAHoQ/bpn-IRsOVYYLNKduy0RFgL2kgdVWAekZgCLcB/s640/Talend_DefaultContexts.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-KqMg1s7nGh4/WFT2Uya1DLI/AAAAAAAAHmk/yTVery7VnJMKLUpgWen7ef-9M6yb4wZiQCLcB/s1600/Talend_DefaultContexts.png&quot;&gt;&lt;span style=&quot;color: blue; font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt; text-decoration: none;&quot;&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id=&quot;Picture_x0020_8&quot;  o:spid=&quot;_x0000_i1029&quot; type=&quot;#_x0000_t75&quot; alt=&quot;https://2.bp.blogspot.com/-KqMg1s7nGh4/WFT2Uya1DLI/AAAAAAAAHmk/yTVery7VnJMKLUpgWen7ef-9M6yb4wZiQCLcB/s640/Talend_DefaultContexts.png&quot;  href=&quot;https://2.bp.blogspot.com/-KqMg1s7nGh4/WFT2Uya1DLI/AAAAAAAAHmk/yTVery7VnJMKLUpgWen7ef-9M6yb4wZiQCLcB/s1600/Talend_DefaultContexts.png&quot;  style=&#39;width:480pt;height:124.5pt;visibility:visible;mso-wrap-style:square&#39;  o:button=&quot;t&quot;&gt; &lt;v:imagedata src=&quot;file:///C:\Users\Praveen\AppData\Local\Temp\msohtmlclip1\01\clip_image004.png&quot;   o:title=&quot;Talend_DefaultContexts&quot;/&gt;&lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- tricksfind_sidebar13_AdSense2_336x280_as --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-slot=&quot;1630166097&quot; style=&quot;display: inline-block; height: 280px; width: 336px;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;Click on&amp;nbsp;&lt;i&gt;New button&lt;/i&gt;, and give a&amp;nbsp;name to the new contexts. You can give different contexts names for different environments. You can define the default contexts here, also set the position using UP /DOWN button.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-GKbDfcDZquE/WFVUoY6xspI/AAAAAAAAHpA/TCfA2TMC7YUCEG1DuNze5VY1Q5z8SjanwCLcB/s1600/Talend_SettingContexts.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://4.bp.blogspot.com/-GKbDfcDZquE/WFVUoY6xspI/AAAAAAAAHpA/TCfA2TMC7YUCEG1DuNze5VY1Q5z8SjanwCLcB/s400/Talend_SettingContexts.png&quot; width=&quot;358&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-BYTG6kMJakA/WFT3FkuRbOI/AAAAAAAAHms/wHpzmH5BffEphBX41u7I7ykJCtL5BH2ZACLcB/s1600/Talend_SettingContexts.png&quot;&gt;&lt;span style=&quot;color: blue; font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt; text-decoration: none;&quot;&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id=&quot;Picture_x0020_7&quot;  o:spid=&quot;_x0000_i1028&quot; type=&quot;#_x0000_t75&quot; alt=&quot;https://1.bp.blogspot.com/-BYTG6kMJakA/WFT3FkuRbOI/AAAAAAAAHms/wHpzmH5BffEphBX41u7I7ykJCtL5BH2ZACLcB/s400/Talend_SettingContexts.png&quot;  href=&quot;https://1.bp.blogspot.com/-BYTG6kMJakA/WFT3FkuRbOI/AAAAAAAAHms/wHpzmH5BffEphBX41u7I7ykJCtL5BH2ZACLcB/s1600/Talend_SettingContexts.png&quot;  style=&#39;width:268.5pt;height:300pt;visibility:visible;mso-wrap-style:square&#39;  o:button=&quot;t&quot;&gt; &lt;v:imagedata src=&quot;file:///C:\Users\Praveen\AppData\Local\Temp\msohtmlclip1\01\clip_image005.png&quot;   o:title=&quot;Talend_SettingContexts&quot;/&gt;&lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;Now, the new context would be as shown in the below screenshot. Same way, you can set contexts for different environments.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-OrqIlI0EqVs/WFVSVprcqgI/AAAAAAAAHoY/TG0P_cXh9UktAHyqfHQHQwhuaHB9h0-vwCLcB/s1600/Talend_NewContextAdded.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;218&quot; src=&quot;https://1.bp.blogspot.com/-OrqIlI0EqVs/WFVSVprcqgI/AAAAAAAAHoY/TG0P_cXh9UktAHyqfHQHQwhuaHB9h0-vwCLcB/s640/Talend_NewContextAdded.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot;&gt; &lt;tbody&gt;&lt;tr&gt;  &lt;td style=&quot;padding: 4.5pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-oya0JNmXZOs/WFT33bCN56I/AAAAAAAAHm0/b4TMpRJW4gU8by0jDxgmw0cypOX8iuN0QCLcB/s1600/Talend_NewContextAdded.png&quot;&gt;&lt;span style=&quot;color: blue; font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 12.0pt; text-decoration: none;&quot;&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id=&quot;Picture_x0020_6&quot;    o:spid=&quot;_x0000_i1027&quot; type=&quot;#_x0000_t75&quot; alt=&quot;Talend_NewContextGotAdded&quot;    href=&quot;https://2.bp.blogspot.com/-oya0JNmXZOs/WFT33bCN56I/AAAAAAAAHm0/b4TMpRJW4gU8by0jDxgmw0cypOX8iuN0QCLcB/s1600/Talend_NewContextAdded.png&quot;    style=&#39;width:480pt;height:163.5pt;visibility:visible;mso-wrap-style:square&#39;    o:button=&quot;t&quot;&gt;   &lt;v:imagedata src=&quot;file:///C:\Users\Praveen\AppData\Local\Temp\msohtmlclip1\01\clip_image006.png&quot;     o:title=&quot;Talend_NewContextGotAdded&quot;/&gt;  &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 12.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;&lt;tr&gt;  &lt;td style=&quot;padding: 3.0pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 9.5pt;&quot;&gt;Talend_NewContextGotAdded&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;The next step is to set and define variables for the&amp;nbsp;&lt;i&gt;Context view&lt;/i&gt;, Just press the&amp;nbsp;&lt;i&gt;Plus button&lt;/i&gt;&amp;nbsp;at the bottom of the Contexts tab. Set the&amp;nbsp;&lt;i&gt;Name, Type and Values&amp;nbsp;&lt;/i&gt;for the variables. These values can be different or same based on your requirement for different environments.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-PgFVhq01HL4/WFVShTZfyzI/AAAAAAAAHoc/EgVnthRDc-sbLLukv5DsvaYDC6DWXE3pACLcB/s1600/Talend_SetVaraiblesInContextView.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;238&quot; src=&quot;https://1.bp.blogspot.com/-PgFVhq01HL4/WFVShTZfyzI/AAAAAAAAHoc/EgVnthRDc-sbLLukv5DsvaYDC6DWXE3pACLcB/s640/Talend_SetVaraiblesInContextView.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot;&gt; &lt;tbody&gt;&lt;tr&gt;  &lt;td style=&quot;padding: 4.5pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-ueEkIHvvgQw/WFT5Xaon7GI/AAAAAAAAHnE/Dq6K37jfmAgb_ENlixgt2HTGUvLQOCDkQCLcB/s1600/Talend_SetVaraiblesInContextView.png&quot;&gt;&lt;span style=&quot;color: blue; font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 12.0pt; text-decoration: none;&quot;&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id=&quot;Picture_x0020_5&quot;    o:spid=&quot;_x0000_i1026&quot; type=&quot;#_x0000_t75&quot; alt=&quot;Talend_SetVariablesInContextView&quot;    href=&quot;https://4.bp.blogspot.com/-ueEkIHvvgQw/WFT5Xaon7GI/AAAAAAAAHnE/Dq6K37jfmAgb_ENlixgt2HTGUvLQOCDkQCLcB/s1600/Talend_SetVaraiblesInContextView.png&quot;    style=&#39;width:480pt;height:178.5pt;visibility:visible;mso-wrap-style:square&#39;    o:button=&quot;t&quot;&gt;   &lt;v:imagedata src=&quot;file:///C:\Users\Praveen\AppData\Local\Temp\msohtmlclip1\01\clip_image007.png&quot;     o:title=&quot;Talend_SetVariablesInContextView&quot;/&gt;  &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 12.0pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;&lt;tr&gt;  &lt;td style=&quot;padding: 3.0pt 4.5pt 4.5pt 4.5pt;&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; text-align: center;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 9.5pt;&quot;&gt;Talend_SetVariablesInContextView&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;If you want to display prompt for variables before running the Job, Just check the box and mention the prompt name in the next column.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-oO1ckcU9zr8/WFVTMioYSNI/AAAAAAAAHos/cqErlxbz5uY-085iVqFhgTf7suAp1EbswCLcB/s1600/Talend_ContextFilePrompt.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;233&quot; src=&quot;https://3.bp.blogspot.com/-oO1ckcU9zr8/WFVTMioYSNI/AAAAAAAAHos/cqErlxbz5uY-085iVqFhgTf7suAp1EbswCLcB/s400/Talend_ContextFilePrompt.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-IWMWYFzbC1M/WFT9EfwuiDI/AAAAAAAAHnQ/CQXawM53vmsWt00noGMkZluTbeyMGuGwQCLcB/s1600/Talend_ContextFilePrompt.png&quot;&gt;&lt;span style=&quot;color: blue; font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt; text-decoration: none;&quot;&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id=&quot;Picture_x0020_4&quot;  o:spid=&quot;_x0000_i1025&quot; type=&quot;#_x0000_t75&quot; alt=&quot;https://2.bp.blogspot.com/-IWMWYFzbC1M/WFT9EfwuiDI/AAAAAAAAHnQ/CQXawM53vmsWt00noGMkZluTbeyMGuGwQCLcB/s400/Talend_ContextFilePrompt.png&quot;  href=&quot;https://2.bp.blogspot.com/-IWMWYFzbC1M/WFT9EfwuiDI/AAAAAAAAHnQ/CQXawM53vmsWt00noGMkZluTbeyMGuGwQCLcB/s1600/Talend_ContextFilePrompt.png&quot;  style=&#39;width:300pt;height:174.75pt;visibility:visible;mso-wrap-style:square&#39;  o:button=&quot;t&quot;&gt; &lt;v:imagedata src=&quot;file:///C:\Users\Praveen\AppData\Local\Temp\msohtmlclip1\01\clip_image008.png&quot;   o:title=&quot;Talend_ContextFilePrompt&quot;/&gt;&lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;!--[endif]--&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 4;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;Define Variables Through Component View:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 4;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;This is the quickest way to define a single context variable. You can parameterize any field using this.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;Go to the component settings which you want to parameterize. In this example, I am going to use&amp;nbsp;&lt;i&gt;tFileTouch&lt;/i&gt;&amp;nbsp;component. This component requires&amp;nbsp;&lt;i&gt;File Name&lt;/i&gt;&amp;nbsp;value to execute. So, Instead of providing the File Name directly, I will parameterize this field using a variable.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;Go to the field which you want to parameterize and press&amp;nbsp;&lt;b&gt;F5&lt;/b&gt;.&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-0XSyWYHhXGI/WFVTcdHbQiI/AAAAAAAAHow/4L-l2mJGnAoWqawm09tAGbp-8JgUco0CwCLcB/s1600/Talend_ContextVariablesComponentView.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;474&quot; src=&quot;https://1.bp.blogspot.com/-0XSyWYHhXGI/WFVTcdHbQiI/AAAAAAAAHow/4L-l2mJGnAoWqawm09tAGbp-8JgUco0CwCLcB/s640/Talend_ContextVariablesComponentView.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;Hit finish button and you will be back to component config window. Now, you will be able to see new value in&amp;nbsp;&lt;/span&gt;&lt;i style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;, serif; font-size: 13.5pt;&quot;&gt;File Name&lt;/i&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&amp;nbsp;text field.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-ZAw6Z-FNjug/WFVTxsm5eBI/AAAAAAAAHo4/AvMKSRqeZ8QZRZMDFtlx6a9ut91wErWEwCLcB/s1600/Talend_ContextVariable.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;244&quot; src=&quot;https://3.bp.blogspot.com/-ZAw6Z-FNjug/WFVTxsm5eBI/AAAAAAAAHo4/AvMKSRqeZ8QZRZMDFtlx6a9ut91wErWEwCLcB/s640/Talend_ContextVariable.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;The same will get added to the&amp;nbsp;&lt;i&gt;Contexts&lt;/i&gt;&amp;nbsp;tab of the configuration tab automatically. You don&#39;t need to come in the Contexts view tab and define the parameters&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;individually. That&#39;s why this method is the fastest way to create a single contexts variable.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-msvxEsibyy8/WFVUEO9-HcI/AAAAAAAAHo8/5YjeU_bwn6cAgYfrf96dYqZeTXNyc6a8gCLcB/s1600/Talend_ContextsTab.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;236&quot; src=&quot;https://1.bp.blogspot.com/-msvxEsibyy8/WFVUEO9-HcI/AAAAAAAAHo8/5YjeU_bwn6cAgYfrf96dYqZeTXNyc6a8gCLcB/s640/Talend_ContextsTab.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt; line-height: 107%;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&amp;nbsp;If you want to change the file name or the directory, you can do it while running the Job. As we have set the prompt for the file name, Talend will ask you for the filename before running the Job. The benefit of using variables..&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0cm;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;times new roman&amp;quot; , serif; font-size: 13.5pt;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/5018013360571760052/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2016/12/talend-tutorial-how-to-declare-variables.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/5018013360571760052'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/5018013360571760052'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2016/12/talend-tutorial-how-to-declare-variables.html' title='Talend ETL Tutorial : How To Declare And Use Variables In A Job '/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://2.bp.blogspot.com/-cWg99etTThc/WFJNFeW8HYI/AAAAAAAAHk0/3Ry5XutvVdkeEBLZY2Sbxk0-0Uzciw9EwCLcB/s72-c/How%2BTo%2BUse%2BVariables%2BIn%2BTalend-min.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-7858577613268277418</id><published>2016-12-14T10:23:00.000-08:00</published><updated>2016-12-14T10:23:13.555-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Use System Routines And Generate A File With System Date</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-rA5Kew2CtAI/WFGNGF1uXRI/AAAAAAAAHkc/PPlTnwlPRRwGbsaKMOS4WYXRhx_WOtmcgCLcB/s1600/filestamp%2Bin%2Btalend.png&quot; imageanchor=&quot;1&quot;&gt;&lt;img alt=&quot;&amp;lt;a href=&amp;quot;http://www.freepik.com/free-vector/laptop-with-rocket_763378.htm&amp;quot;&amp;gt;Designed by Freepik&amp;lt;/a&amp;gt;&quot; border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://2.bp.blogspot.com/-rA5Kew2CtAI/WFGNGF1uXRI/AAAAAAAAHkc/PPlTnwlPRRwGbsaKMOS4WYXRhx_WOtmcgCLcB/s640/filestamp%2Bin%2Btalend.png&quot; title=&quot;&amp;lt;a href=&amp;quot;http://www.freepik.com/free-vector/laptop-with-rocket_763378.htm&amp;quot;&amp;gt;Designed by Freepik&amp;lt;/a&amp;gt;&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;In most of the ETL tools, we have the option to create routines. The language used to write these routine depends on the ETL platform.Like on the Datastage, it&#39;s the bash script. In Talend language, the routines are well written Java code which is required to do some specific task. The routines are small Java code snippets that we can directly use in our Job design. In Talend, You can use the System defined routines or if you are not able to find the routines based on your requirement, you can always define a new one.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Requirement&amp;nbsp;&lt;/h3&gt;&lt;div&gt;The requirement is to add the timestamp as a suffix while generating the output file using Talend System routine.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Steps To Use System Routine In Talend&lt;/h3&gt;&lt;div&gt;Talend offers two kinds of routines: &lt;i&gt;System and User&lt;/i&gt;. The &lt;b&gt;&lt;i&gt;System routines&lt;/i&gt;&lt;/b&gt; are already existing routines in the Talend. these are classed according to the type of data which they process: numerical, string, date. The &lt;b&gt;&lt;i&gt;User routines&lt;/i&gt;&lt;/b&gt; are defined by the user either by updating current System routines or by creating new from scratch using Java code.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Where Are The System Routines?&lt;/h4&gt;&lt;div&gt;To access the System routines, Go to &lt;i&gt;Repository -&amp;gt; Code -&amp;gt; Routines-&amp;gt; System. &lt;/i&gt;In the below screenshot, I am using TalendDate routine. Once you click on the TalendRoutine, you will get the complete Java code for this routine in the code window. Also, if you check on the left side, you will find all the methods used in this routine at the bottom of the window.&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-enAZB_FirfE/WFAzVu205vI/AAAAAAAAHi8/gBIqov0l9ZsgKGh6emAByMqHwg6hAel1QCLcB/s1600/Talend_SystemRoutine.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;340&quot; src=&quot;https://3.bp.blogspot.com/-enAZB_FirfE/WFAzVu205vI/AAAAAAAAHi8/gBIqov0l9ZsgKGh6emAByMqHwg6hAel1QCLcB/s640/Talend_SystemRoutine.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;Now, the requirement is to append timestamp as a&amp;nbsp;suffix in the generated file name. For this demo, I will create a simple Job. Talend has a component to generate a blank file: &lt;i&gt;tFileTouch &lt;/i&gt;component. This component will help you to generate a new file. You can mention the directory and file name and based on your input, this component will create the blank file under specified folder as per the requirement. You can find this component under &lt;b&gt;&lt;i&gt;File -&amp;gt; Management -&amp;gt; tFileTouch&lt;/i&gt;&lt;/b&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-HFdAjvHEiSo/WFA5mUSwnzI/AAAAAAAAHjM/N25MIff8lqMC67FZZLjvnCwBl_OylNmEgCLcB/s1600/Talend_tFileTouch.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;163&quot; src=&quot;https://4.bp.blogspot.com/-HFdAjvHEiSo/WFA5mUSwnzI/AAAAAAAAHjM/N25MIff8lqMC67FZZLjvnCwBl_OylNmEgCLcB/s400/Talend_tFileTouch.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tFileTouch Component Details:&lt;/h4&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;tFileTouch either creates an empty file or, if the specified file already exists, updates its date of modification and of last access while keeping the contents unchanged.&amp;nbsp;This component creates an empty file or updates the details of an existing file for further operations&amp;nbsp;and creates the destination directory if it does not exist.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get the more details here:&amp;nbsp;&lt;a href=&quot;https://help.talend.com/display/TalendComponentsReferenceGuide61EN/tFileTouch&quot; target=&quot;_blank&quot;&gt;tFileTouch Component&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div align=&quot;center&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- tricksfind_sidebar13_AdSense2_336x280_as --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-slot=&quot;1630166097&quot; style=&quot;display: inline-block; height: 280px; width: 336px;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;How To Use System Routine ?&lt;/h4&gt;&lt;/div&gt;&lt;div&gt;Now, let&#39;s configure this component. I will browse for any existing file and will add the timestamp using TalendDate routine. You can also create a new file and directory. Just mention the path and file name and check &lt;i&gt;Create directory if it doesn&#39;t exist &lt;/i&gt;box.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Once you browse and select your file, it will come like this.&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-q7dokUlgaB4/WFF101t_uTI/AAAAAAAAHkM/BrflctvBPMMmT4BsTsgJD31iDidlVc6iwCEw/s1600/Talend_FileBrowsing.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;114&quot; src=&quot;https://3.bp.blogspot.com/-q7dokUlgaB4/WFF101t_uTI/AAAAAAAAHkM/BrflctvBPMMmT4BsTsgJD31iDidlVc6iwCEw/s640/Talend_FileBrowsing.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now, as per the requirement, I will remove the file extension and will add an underscore ( _ ). Next, will add plus (+) sign. Notice the quotes. Hit &lt;i&gt;CTRL&amp;nbsp;+ SPACE&lt;/i&gt; and you will get a lot of options to choose from.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-oB8TGDpRsdU/WFDGYCavgGI/AAAAAAAAHjk/DOiKnRpGgiszqSWwp-v1A2zOVC8YFPkOACLcB/s1600/Talend_tFileTouchConfig.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;358&quot; src=&quot;https://4.bp.blogspot.com/-oB8TGDpRsdU/WFDGYCavgGI/AAAAAAAAHjk/DOiKnRpGgiszqSWwp-v1A2zOVC8YFPkOACLcB/s640/Talend_tFileTouchConfig.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If you scroll to the bottom, you will find a lot of methods, tagged as &lt;i&gt;TalenDate&lt;/i&gt;. Based on your requirement, you can pick a&amp;nbsp;value from the list. You can also play with the different methods and check what&#39;s the outcome. As I have to attach timestamp, I will go with the &lt;i&gt;GetDate()&lt;/i&gt; option.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;But&lt;/b&gt;, on windows platform, you have to remove colons(:). So, your GetDate() value would be&amp;nbsp;&lt;b&gt;TalendDate.getDate(&quot;CCYY-MM-DD hhmmss&quot;)&lt;/b&gt; in place of&amp;nbsp;&lt;b&gt;TalendDate.getDate(&quot;CCYY-MM-DD hh:mm:ss&quot;)&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-patfxTHavN0/WFFzLeYDXMI/AAAAAAAAHkA/_3mBCDeQ5XYSdep1pd3Ab1izHNn0cizTACLcB/s1600/tFileTouchConfig.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;140&quot; src=&quot;https://3.bp.blogspot.com/-patfxTHavN0/WFFzLeYDXMI/AAAAAAAAHkA/_3mBCDeQ5XYSdep1pd3Ab1izHNn0cizTACLcB/s640/tFileTouchConfig.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Final Job Execution :&lt;/h3&gt;It&#39;s time to run the Job now. Let&#39;s see the Job execution in&amp;nbsp;action:&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-7-n-7E-mYnc/WFF0qRswyuI/AAAAAAAAHkI/EHRR6GFFSTEg2nq9IuAvvLpMUay9UHoIQCLcB/s1600/tFileTouchInAction.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;326&quot; src=&quot;https://3.bp.blogspot.com/-7-n-7E-mYnc/WFF0qRswyuI/AAAAAAAAHkI/EHRR6GFFSTEg2nq9IuAvvLpMUay9UHoIQCLcB/s640/tFileTouchInAction.gif&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/7858577613268277418/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2016/12/talend-how-to-use-system-routines.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/7858577613268277418'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/7858577613268277418'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2016/12/talend-how-to-use-system-routines.html' title='Talend ETL Tutorial : How To Use System Routines And Generate A File With System Date'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://2.bp.blogspot.com/-rA5Kew2CtAI/WFGNGF1uXRI/AAAAAAAAHkc/PPlTnwlPRRwGbsaKMOS4WYXRhx_WOtmcgCLcB/s72-c/filestamp%2Bin%2Btalend.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-2292377431375156302</id><published>2016-12-11T08:50:00.002-08:00</published><updated>2016-12-11T08:50:19.567-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Replace Blank Value With Default Value In Input File</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-qJrQj3Nkbyg/WE2DAKiuH3I/AAAAAAAAHh8/Ho1YAi8L67gu8Tv7Da-ssvnl0pAKc6wNQCLcB/s1600/How%2BTo%2BReplace%2BBlank%2BValue%2BWith%2BDefault%2BValue.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://2.bp.blogspot.com/-qJrQj3Nkbyg/WE2DAKiuH3I/AAAAAAAAHh8/Ho1YAi8L67gu8Tv7Da-ssvnl0pAKc6wNQCLcB/s640/How%2BTo%2BReplace%2BBlank%2BValue%2BWith%2BDefault%2BValue.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Sometimes, we don&#39;t get the proper records in the&amp;nbsp;input file. Some columns come as blank. Based on the requirement, we may have to fill those blank values with some values. As we can&#39;t manipulate the records in the input file, we have to handle it in the Talend while processing it. One scenario could be to replace blank values as NULL.&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Requirement&amp;nbsp;&lt;/h3&gt;&lt;div&gt;The requirement is to replace the blank values coming in the input file with default values. The input file layout is as shown below :&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-e1I9IENIC68/WE1whgWfDSI/AAAAAAAAHhU/pQ2HRvMU4NgQ1w587aax6pDoA4VSf4ifACLcB/s1600/Talend_MissingValues.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;176&quot; src=&quot;https://1.bp.blogspot.com/-e1I9IENIC68/WE1whgWfDSI/AAAAAAAAHhU/pQ2HRvMU4NgQ1w587aax6pDoA4VSf4ifACLcB/s640/Talend_MissingValues.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Steps To Fill Up Blank Values With Default Values&amp;nbsp;&lt;/h3&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;First of all, we are going to read this file using&amp;nbsp;&lt;i&gt;tFileInputDelimited.&amp;nbsp;&lt;/i&gt;As I already discussed, we need to define the schema before reading any input file.&amp;nbsp;&lt;/li&gt;&lt;li style=&quot;border: none; margin: 0px; outline: none; padding: 0px;&quot;&gt;To Define the schema , Go to&amp;nbsp;&lt;i&gt;MetaData -&amp;gt; FileDelimited -&amp;gt; Create File Delimited.&lt;/i&gt;&amp;nbsp;Give any name as per your requirement and click on&amp;nbsp;&lt;i&gt;Next&lt;/i&gt;.&lt;/li&gt;&lt;li style=&quot;border: none; margin: 0px; outline: none; padding: 0px;&quot;&gt;Browse for the file and select the&amp;nbsp;&lt;i&gt;Format&amp;nbsp;&lt;/i&gt;as per your OS. Click &lt;i&gt;Next&lt;/i&gt;.&lt;/li&gt;&lt;li style=&quot;border: none; margin: 0px; outline: none; padding: 0px;&quot;&gt;As I am getting the Header columns in the input file only, I have checked the &lt;i&gt;Set heading row as column name. &lt;/i&gt;As soon as you check this box, the &lt;b&gt;Header&lt;/b&gt; in the &lt;i&gt;Rows To Skip&lt;/i&gt; section will automatically be get selected.&lt;/li&gt;&lt;/ul&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-2kaRKRYj6mI/WE187J_53xI/AAAAAAAAHho/e6yYXTJKEAc9nJk0bRlUZnnm9brdFH9AgCLcB/s1600/Talend_InputFileSettings.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;370&quot; src=&quot;https://3.bp.blogspot.com/-2kaRKRYj6mI/WE187J_53xI/AAAAAAAAHho/e6yYXTJKEAc9nJk0bRlUZnnm9brdFH9AgCLcB/s640/Talend_InputFileSettings.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- tricksfind_sidebar13_AdSense2_336x280_as --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-slot=&quot;1630166097&quot; style=&quot;display: inline-block; height: 280px; width: 336px;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;You can see in the above screenshot, the input file records got properly structured in the table format and it&#39;s easy to identify &lt;i&gt;Blank column &lt;/i&gt;here. It&#39;s &lt;i&gt;Company and City&lt;/i&gt; column. You may have the requirement to fill these columns with some default values instead of leaving it as blank. I am going to take NULL string as filler. Don&#39;t be confused&amp;nbsp;with NULL string. It&#39;s not a NULL value. The NULL string, in this case, is similar to any other string value like XXX or YYY.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-eL1yxQNNeqQ/WE2AkbyfrtI/AAAAAAAAHhw/a5wZoWhkq0obFFWg5OwRW1DDPw4Fw5F5ACLcB/s1600/Talend_InputFileWithBlank_LastScreen.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;384&quot; src=&quot;https://3.bp.blogspot.com/-eL1yxQNNeqQ/WE2AkbyfrtI/AAAAAAAAHhw/a5wZoWhkq0obFFWg5OwRW1DDPw4Fw5F5ACLcB/s640/Talend_InputFileWithBlank_LastScreen.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;You can put any value as per your requirement. Also, as the column type is &lt;i&gt;String&lt;/i&gt;, I am putting these values in double quotes otherwise Talend will throw an error.&lt;/li&gt;&lt;/ul&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;The Final Job :&lt;/h3&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;As expected, the blank values got replaced with NULL string.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-EjhkQddxml8/WE2BX1rSTtI/AAAAAAAAHh0/nnIqUhsgdYYwnmdid8It91v-_QAxRTonQCLcB/s1600/Talend_FinalJob.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;424&quot; src=&quot;https://1.bp.blogspot.com/-EjhkQddxml8/WE2BX1rSTtI/AAAAAAAAHh0/nnIqUhsgdYYwnmdid8It91v-_QAxRTonQCLcB/s640/Talend_FinalJob.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/2292377431375156302/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2016/12/Talend-Replace-Blank-With-Default-In-InputFile.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/2292377431375156302'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/2292377431375156302'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2016/12/Talend-Replace-Blank-With-Default-In-InputFile.html' title='Talend ETL Tutorial : How To Replace Blank Value With Default Value In Input File'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://2.bp.blogspot.com/-qJrQj3Nkbyg/WE2DAKiuH3I/AAAAAAAAHh8/Ho1YAi8L67gu8Tv7Da-ssvnl0pAKc6wNQCLcB/s72-c/How%2BTo%2BReplace%2BBlank%2BValue%2BWith%2BDefault%2BValue.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-371534637324519174</id><published>2016-12-10T08:52:00.000-08:00</published><updated>2016-12-10T08:52:03.590-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Skip Header And Trailer From A File</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-QKlqvt29d4Y/WEwvbnA5r5I/AAAAAAAAHgM/qjJqHAYWKT0Pp-kZLWz3MPmHmdZlxcYrQCLcB/s1600/How%2BTo%2BExclude%2BHeader%2BTrailer%2BFrom%2BA%2BFile.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://4.bp.blogspot.com/-QKlqvt29d4Y/WEwvbnA5r5I/AAAAAAAAHgM/qjJqHAYWKT0Pp-kZLWz3MPmHmdZlxcYrQCLcB/s640/How%2BTo%2BExclude%2BHeader%2BTrailer%2BFrom%2BA%2BFile.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Each input file follows a standard layout. Normally, each input files comes with Header and Trailer records. The Header and Trailer records give some additional information about the file&amp;nbsp;&lt;i&gt;Ex :&lt;/i&gt; When the file gets delivered and what is the record count in the file. But, while processing the file, the Header and Trailer records are not required. And, we only have to deal with the Detailed records present in the file.&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Requirement&amp;nbsp;&lt;/h3&gt;&lt;div&gt;The requirement is to skip Header and Trailer Records from an input file.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-0zBz32jz1C0/WEwRHI0iajI/AAAAAAAAHfI/OGfW1RJ7kCkQvv9G_fLZ5G02px6YVTmGgCLcB/s1600/FileWithHeaderAndTrailer.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;122&quot; src=&quot;https://1.bp.blogspot.com/-0zBz32jz1C0/WEwRHI0iajI/AAAAAAAAHfI/OGfW1RJ7kCkQvv9G_fLZ5G02px6YVTmGgCLcB/s640/FileWithHeaderAndTrailer.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Steps To Exclude Header And Trailer From File&amp;nbsp;&lt;/h3&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;First of all, we are going to read this file using &lt;i&gt;tFileInputDelimited. &lt;/i&gt;As I already discussed, we need to define the schema before reading any input file. And in this case, we will use specifically &lt;i&gt;Repository schema&lt;/i&gt; to read the file.&lt;/li&gt;&lt;li&gt;To Define the schema , Go to &lt;i&gt;MetaData -&amp;gt; FileDelimited -&amp;gt; Create File Delimited.&lt;/i&gt;&amp;nbsp;Give any name as per your requirement and click on &lt;i&gt;Next&lt;/i&gt;.&lt;/li&gt;&lt;li&gt;Browse for the file and select the &lt;i&gt;Format &lt;/i&gt;as per your OS.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-wWgcmZl1Nls/WEwXDJxf-AI/AAAAAAAAHfY/Zpw2_kWDpR06MyXlCrwByrlT36IXXaR0gCEw/s1600/InputFilePreview.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;412&quot; src=&quot;https://3.bp.blogspot.com/-wWgcmZl1Nls/WEwXDJxf-AI/AAAAAAAAHfY/Zpw2_kWDpR06MyXlCrwByrlT36IXXaR0gCEw/s640/InputFilePreview.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Now, in the next screen, we have to do some changes based on our requirement. As you can see my input file is the delimited one and the delimiter is SPACE. I will let the Talend know to split the columns based on the SPACE. Also, to exclude the Header and Trailer , &lt;i&gt;just check the Header and Footer checkbox and put the count as 1&lt;/i&gt;. Click on &lt;i&gt;Refresh Preview&lt;/i&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-1euVBoQIwE8/WEwo9y3r9gI/AAAAAAAAHfo/e-wyduEG7XAJhPgE8-JkPKN8PljSIz5FQCLcB/s1600/ExxludeHeaderAndTrailer.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;432&quot; src=&quot;https://2.bp.blogspot.com/-1euVBoQIwE8/WEwo9y3r9gI/AAAAAAAAHfo/e-wyduEG7XAJhPgE8-JkPKN8PljSIz5FQCLcB/s640/ExxludeHeaderAndTrailer.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- tricksfind_sidebar13_AdSense2_336x280_as --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-slot=&quot;1630166097&quot; style=&quot;display: inline-block; height: 280px; width: 336px;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;&lt;/br&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;The &lt;i&gt;&lt;b&gt;Column name and Column type&lt;/b&gt;&lt;/i&gt; will be automatically selected. If you are not satisfied with it, you can modify it based on your requirement in the next screen. Once done, click Finish and that&#39;s it !!&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-WRflEeGwHEg/WEwqjUuj01I/AAAAAAAAHf0/iBrZZC3zs7EdxqWubMTqHs_Hfc-3th4JgCLcB/s1600/InputFileColumn.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;474&quot; src=&quot;https://3.bp.blogspot.com/-WRflEeGwHEg/WEwqjUuj01I/AAAAAAAAHf0/iBrZZC3zs7EdxqWubMTqHs_Hfc-3th4JgCLcB/s640/InputFileColumn.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Once you are done with the Metadata, the next step is to select it while reading the records. As we are using &lt;i&gt;tFileInputDelimited&lt;/i&gt; component to read the file, we have to select the Repository schema and then the metadata.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-dAHkoCcANpI/WEwsTkFlqJI/AAAAAAAAHgA/mk7AaJbuDastfbY8I-D8b3X_yAyQE-IEgCLcB/s1600/InputFileRepository.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;296&quot; src=&quot;https://3.bp.blogspot.com/-dAHkoCcANpI/WEwsTkFlqJI/AAAAAAAAHgA/mk7AaJbuDastfbY8I-D8b3X_yAyQE-IEgCLcB/s640/InputFileRepository.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;The Final Job Design And Execution&amp;nbsp;&lt;/h4&gt;&lt;div&gt;I have used tLogRow component to display the output. If everything works well, we shouldn&#39;t be getting &lt;i&gt;Header and Trailer&lt;/i&gt; records in the output.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-XPpMreXGeog/WEwxf1e_LsI/AAAAAAAAHgU/uXpovUwS9gAshMD1CSYY5Nhsu2UjMDKBQCLcB/s1600/FinalJobExecution.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;438&quot; src=&quot;https://2.bp.blogspot.com/-XPpMreXGeog/WEwxf1e_LsI/AAAAAAAAHgU/uXpovUwS9gAshMD1CSYY5Nhsu2UjMDKBQCLcB/s640/FinalJobExecution.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/371534637324519174/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2016/12/talend-how-to-skip-header-trailer-using-talend.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/371534637324519174'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/371534637324519174'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2016/12/talend-how-to-skip-header-trailer-using-talend.html' title='Talend ETL Tutorial : How To Skip Header And Trailer From A File'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://4.bp.blogspot.com/-QKlqvt29d4Y/WEwvbnA5r5I/AAAAAAAAHgM/qjJqHAYWKT0Pp-kZLWz3MPmHmdZlxcYrQCLcB/s72-c/How%2BTo%2BExclude%2BHeader%2BTrailer%2BFrom%2BA%2BFile.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-2518780791548441617</id><published>2016-12-05T08:42:00.002-08:00</published><updated>2016-12-05T08:42:39.747-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Club Different Schema Excel Sheets Or WorkSheets Into One</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-f_3Y2LNdCEw/WEWVJ7zVknI/AAAAAAAAHec/FDKzUm_Nlpgldw9HS6jvNU3IU2Y4QcX8wCLcB/s1600/How%2BTo%2BHandle%2BDifferent%2BSchema.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://2.bp.blogspot.com/-f_3Y2LNdCEw/WEWVJ7zVknI/AAAAAAAAHec/FDKzUm_Nlpgldw9HS6jvNU3IU2Y4QcX8wCLcB/s640/How%2BTo%2BHandle%2BDifferent%2BSchema.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;In one of my previous posts. I have covered how to read and Excel File. As you already know, the Excel file comes with a structure. We call this structure the Schema of Excel file. When we read Excel file through Talend, First, we define its schema using &lt;i&gt;Built In or Repository&lt;/i&gt; option. Now, what if we want to read multiple Excel files or the multiple worksheets present in Excel and all have different schemas. We can&#39;t define the fixed schema for these. All we can do is to define separate schemas for separate layout and then find some links to club these records.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Requirement&lt;/h3&gt;&lt;div&gt;The requirement is to read different schemas worksheets present in Excel file and club it into a new Excel File. Instead of different worksheets, there could be different Excel sheets also.&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;Steps To Read Excels With Different Schemas&lt;/h3&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Let&#39;s first explore the Input source. For this demo, I have created an excel file &lt;i&gt;InputExcel&lt;/i&gt;. It has two worksheets with different schemas. The first sheet has columns as &lt;b&gt;Name, ID and Score&lt;/b&gt; whereas in the Second sheet, we have columns as &lt;b&gt;ID, Department&lt;/b&gt;.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-SAIfuuUc5xk/WERETzUwEdI/AAAAAAAAHcw/vdKbERnpuqYEbnJExPo15tHFx_0lGMsSgCLcB/s1600/Talend_InputExcelFirstSheet.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://4.bp.blogspot.com/-SAIfuuUc5xk/WERETzUwEdI/AAAAAAAAHcw/vdKbERnpuqYEbnJExPo15tHFx_0lGMsSgCLcB/s320/Talend_InputExcelFirstSheet.png&quot; width=&quot;249&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-EUTQyATpYUw/WEREWm6wpeI/AAAAAAAAHc0/3FCR6lL2gjYr13EmNtS4cKLaBqxt3V7MQCLcB/s1600/Talend_InputExcelSecondSheet.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://2.bp.blogspot.com/-EUTQyATpYUw/WEREWm6wpeI/AAAAAAAAHc0/3FCR6lL2gjYr13EmNtS4cKLaBqxt3V7MQCLcB/s320/Talend_InputExcelSecondSheet.png&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div align=&quot;center&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- tricksfind_sidebar13_AdSense2_336x280_as --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-slot=&quot;1630166097&quot; style=&quot;display: inline-block; height: 280px; width: 336px;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;In both sheet, we have a &lt;i&gt;common column ID&lt;/i&gt;. We are going to use this column to match records from both worksheets and use this to club data and output the records in a new excel file.&lt;/li&gt;&lt;li&gt;First thing first, we have to define schemas for our Input source. As we are dealing with two schemas, we have to define two different schemas. I have defined &lt;i&gt;Repository&lt;/i&gt; schemas for this.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-nN-OlpRS0Ls/WERJd4AgfaI/AAAAAAAAHdE/HR4DOQjIgHQ_vCCE9ZNXRR0hORBviSTTQCLcB/s1600/Talend_DifferentSchemas.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;274&quot; src=&quot;https://4.bp.blogspot.com/-nN-OlpRS0Ls/WERJd4AgfaI/AAAAAAAAHdE/HR4DOQjIgHQ_vCCE9ZNXRR0hORBviSTTQCLcB/s320/Talend_DifferentSchemas.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;The process of defining the schema is same. For the T&lt;i&gt;alendTestingInputExcel&lt;/i&gt; metadata, I have selected the &lt;i&gt;FirstSheet&lt;/i&gt; as the worksheet and for &lt;i&gt;TalendTestingInputExcel_Sheet2&lt;/i&gt; metadata, I have used &lt;i&gt;SecondSheet&lt;/i&gt; as the worksheet. Now, I don&#39;t have to define these schemas later while configuring the component. I can just use these schemas and everything will be populated automatically in Talend.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-kRkvKFti3ko/WERMa8Mw-RI/AAAAAAAAHdM/ofVn_-Rrgv0TyyslAVWk4UsvmCskloe5ACLcB/s1600/Talend_ExcelMetadata.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;466&quot; src=&quot;https://4.bp.blogspot.com/-kRkvKFti3ko/WERMa8Mw-RI/AAAAAAAAHdM/ofVn_-Rrgv0TyyslAVWk4UsvmCskloe5ACLcB/s640/Talend_ExcelMetadata.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Now, the next question, how to link these two worksheets ? For this, we are going to use a new Talend component &lt;i&gt;tMap&lt;/i&gt;. It&#39;s more like a Transformer of Datastage ETL tool. You can transform and manipulate data using &lt;i&gt;tMap&lt;/i&gt; component.&lt;/li&gt;&lt;li&gt;Using &lt;i&gt;tMap&lt;/i&gt; component, we can join the record based on &lt;i&gt;ID column&lt;/i&gt; and extract the required fields.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-des7iC2t3J4/WERQXBLLn4I/AAAAAAAAHdc/jj9rnexHqJwE4qkAluigfE8M33d0n_XcACLcB/s1600/Talend_tMap.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;326&quot; src=&quot;https://3.bp.blogspot.com/-des7iC2t3J4/WERQXBLLn4I/AAAAAAAAHdc/jj9rnexHqJwE4qkAluigfE8M33d0n_XcACLcB/s640/Talend_tMap.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;In the above screenshot, I am linking both worksheets based on &lt;i&gt;ID column&lt;/i&gt;. You just have drag and drop the &lt;i&gt;row1 ID column&lt;/i&gt; in front of &lt;i&gt;row2 ID column&lt;/i&gt;. By default, the join is &lt;b&gt;Left outer join&lt;/b&gt;. But if you want, you can change it to &lt;i&gt;Inner Join&lt;/i&gt; based on your requirement.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-uq-3fKvJWKg/WERY2HE8kcI/AAAAAAAAHds/DweUkSutsLY1PdJOXS3clOjDHOf4tXooQCLcB/s1600/Talend_tMap_FinalJob.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em; text-align: center;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;344&quot; src=&quot;https://4.bp.blogspot.com/-uq-3fKvJWKg/WERY2HE8kcI/AAAAAAAAHds/DweUkSutsLY1PdJOXS3clOjDHOf4tXooQCLcB/s640/Talend_tMap_FinalJob.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;The final piece is to configure the &lt;i&gt;tFileOutputExcel&lt;/i&gt; component.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-FQGsYAvQdwE/WERcScTyO0I/AAAAAAAAHd4/GkAUmlIlwK8tcbv0XBWBzm_fsZr9JyenQCLcB/s1600/Talend_tOuputExcel.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;322&quot; src=&quot;https://1.bp.blogspot.com/-FQGsYAvQdwE/WERcScTyO0I/AAAAAAAAHd4/GkAUmlIlwK8tcbv0XBWBzm_fsZr9JyenQCLcB/s640/Talend_tOuputExcel.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;The Final output would be like this :&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-pUm9r-1706Q/WEWTIJ1UR9I/AAAAAAAAHeU/6MZoX0Z_xqsVbju7AMdBeUqg6FopsTOmgCLcB/s1600/FinalOutput.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;232&quot; src=&quot;https://3.bp.blogspot.com/-pUm9r-1706Q/WEWTIJ1UR9I/AAAAAAAAHeU/6MZoX0Z_xqsVbju7AMdBeUqg6FopsTOmgCLcB/s320/FinalOutput.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;The Final Job Execution&amp;nbsp;&lt;/h3&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-WyW36Zb0xz0/WEWSvM4vuhI/AAAAAAAAHeQ/khN-sv5QAAEx00k_KxXgnhsIEtQADtN7wCLcB/s1600/Talend_tMapJobRun.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;326&quot; src=&quot;https://3.bp.blogspot.com/-WyW36Zb0xz0/WEWSvM4vuhI/AAAAAAAAHeQ/khN-sv5QAAEx00k_KxXgnhsIEtQADtN7wCLcB/s640/Talend_tMapJobRun.gif&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/2518780791548441617/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2016/12/talend--how-to-club-Different-Schemas-Excel-Sheets.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/2518780791548441617'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/2518780791548441617'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2016/12/talend--how-to-club-Different-Schemas-Excel-Sheets.html' title='Talend ETL Tutorial : How To Club Different Schema Excel Sheets Or WorkSheets Into One'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://2.bp.blogspot.com/-f_3Y2LNdCEw/WEWVJ7zVknI/AAAAAAAAHec/FDKzUm_Nlpgldw9HS6jvNU3IU2Y4QcX8wCLcB/s72-c/How%2BTo%2BHandle%2BDifferent%2BSchema.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-7752459351000101806</id><published>2016-12-03T10:01:00.000-08:00</published><updated>2016-12-03T23:12:26.807-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Execute Multiple SubJobs In Parallel</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-DC3B84y4YRU/WELq5FpYIaI/AAAAAAAAHbA/Iys4ca84Whc0UrGYrsbQxtfFr2UE9IA9gCLcB/s1600/How%2BTo%2BExecute%2BMultiple%2BSubJobs.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://4.bp.blogspot.com/-DC3B84y4YRU/WELq5FpYIaI/AAAAAAAAHbA/Iys4ca84Whc0UrGYrsbQxtfFr2UE9IA9gCLcB/s640/How%2BTo%2BExecute%2BMultiple%2BSubJobs.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;In the last post, I covered how to iterate through files in Parallel execution mode. But what about the jobs that we create in our design. Can we execute jobs also in Parallel ? Let&#39;s check in this post how we can do it...&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;h2 style=&quot;clear: both; text-align: left;&quot;&gt;What Is Parallel Execution ?&lt;/h2&gt;&lt;div&gt;Parallelization in terms of Talend Jobs means to accomplish technical processes through parallel executions. When properly designed, a parallelization-enabled technical process can be completed within a shorter time frame.&lt;/div&gt;&lt;h3 style=&quot;clear: both; text-align: left;&quot;&gt;Requirement&amp;nbsp;&lt;/h3&gt;&lt;div&gt;The requirement is to run the already created jobs in parallel. The execution mode must be in Parallel. So, instead of running the jobs individually, we will combine two jobs and run them simultaneously.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Steps To Execute Jobs In Parallel&amp;nbsp;&lt;/h3&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;You must have some Jobs in Talend so that you can enable the Parallel execution mode for it.&lt;/li&gt;&lt;li&gt;I am going to use the Jobs that I have created and explained in my earlier posts.&lt;/li&gt;&lt;ul&gt;&lt;li&gt;The First Job : &lt;a href=&quot;http://www.tricksfind.in/2016/11/talend-etl-tutorial-how-to-combine.html&quot; target=&quot;_blank&quot;&gt;How To Combine Multiple Files Into One&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-gz6NTbyhVFk/WEL0Ec8ib1I/AAAAAAAAHbQ/27aPSM0Je38kFTMNAQux6xzLOxy9Tz3pwCLcB/s1600/Talend_tUnite.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;322&quot; src=&quot;https://4.bp.blogspot.com/-gz6NTbyhVFk/WEL0Ec8ib1I/AAAAAAAAHbQ/27aPSM0Je38kFTMNAQux6xzLOxy9Tz3pwCLcB/s640/Talend_tUnite.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;ul&gt;&lt;li&gt;The Second Job :&amp;nbsp;&lt;a href=&quot;http://www.tricksfind.in/2016/11/talend-etl-tutorial-how-to-read.html&quot; target=&quot;_blank&quot;&gt;How To Read Multiple Files Using Talend&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-KHKpGRvPd1Q/WEL2H0KqFzI/AAAAAAAAHbY/J7UVAeqJjtM6bbBJC1Lb8lTZQWx-fg6rACLcB/s1600/Talend_MultipleFilesJob.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;182&quot; src=&quot;https://2.bp.blogspot.com/-KHKpGRvPd1Q/WEL2H0KqFzI/AAAAAAAAHbY/J7UVAeqJjtM6bbBJC1Lb8lTZQWx-fg6rACLcB/s640/Talend_MultipleFilesJob.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;We will create a new Job in Talend Open Studio designer and will use &lt;i&gt;two tRunJob &lt;/i&gt;components to call two Jobs. I have used the tRunJob component in one of my previous posts. Please get the details in this post :&amp;nbsp;&lt;a href=&quot;http://www.tricksfind.in/2016/11/talend-etl-tutorial-how-to-loop-using.html&quot; target=&quot;_blank&quot;&gt;How To Use tRunJob Component&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-46swApufn4c/WEL-gQN5GtI/AAAAAAAAHbo/YSgiOinzn0go43zSBJc7UY853nX8b4hLgCLcB/s1600/Talend_JobParallelDesign.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;268&quot; src=&quot;https://1.bp.blogspot.com/-46swApufn4c/WEL-gQN5GtI/AAAAAAAAHbo/YSgiOinzn0go43zSBJc7UY853nX8b4hLgCLcB/s640/Talend_JobParallelDesign.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;First, Set the Calling Jobs In Parallel Execution Mode :&lt;/h4&gt;&lt;div&gt;It&#39;s a simple step. Just go to the called Jobs and open the Designer. Go to the bottom section of Talend Open studio designer. Now, Go to &lt;i&gt;Extra and Check Multi Thread Execution box&lt;/i&gt;. Do this for all the jobs that you are planning to call.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-Rz30LHYOVGg/WEMAJAxao4I/AAAAAAAAHbw/_HtBK280wmQNhmLO82dWLIzueWYBWBumwCLcB/s1600/Multithread%2BExecution%2Bbox.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;472&quot; src=&quot;https://2.bp.blogspot.com/-Rz30LHYOVGg/WEMAJAxao4I/AAAAAAAAHbw/_HtBK280wmQNhmLO82dWLIzueWYBWBumwCLcB/s640/Multithread%2BExecution%2Bbox.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div align=&quot;center&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- tricksfind_sidebar13_AdSense2_336x280_as --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-slot=&quot;1630166097&quot; style=&quot;display: inline-block; height: 280px; width: 336px;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;&lt;/br&gt;Now, once the above setup is done. Do this for your new job design where the child jobs are being called. I have named this new Job as &lt;i&gt;HowToExecuteJobsInParallel&lt;/i&gt;. Now, I am doing the same setting here also.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-FGsknbI3gqM/WEMF6W0ZIgI/AAAAAAAAHb8/bKWQaMJwzpY0WcWNLeCinf4GviPHNOD_gCLcB/s1600/Talend_ExecutingJobsInParallel.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;496&quot; src=&quot;https://3.bp.blogspot.com/-FGsknbI3gqM/WEMF6W0ZIgI/AAAAAAAAHb8/bKWQaMJwzpY0WcWNLeCinf4GviPHNOD_gCLcB/s640/Talend_ExecutingJobsInParallel.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;That&#39;s it !! The Jobs are ready to run in Parallel Execution mode. If you want , you can link the tRunJobs and make them run one after other but you have to link using some condition like &lt;i&gt;OnSubJob Ok&lt;/i&gt;. If you are not linking it, then both tRunJobs execution will happen simultaneously as explained in this demo.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-C734B3Eo6fA/WEMHlMYTqbI/AAAAAAAAHcI/62Higokwg8gYAhxHU35klbMndJUfyAI7gCLcB/s1600/Talend_OnSubJobOk_ParallelExecution.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;250&quot; src=&quot;https://4.bp.blogspot.com/-C734B3Eo6fA/WEMHlMYTqbI/AAAAAAAAHcI/62Higokwg8gYAhxHU35klbMndJUfyAI7gCLcB/s640/Talend_OnSubJobOk_ParallelExecution.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/7752459351000101806/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2016/12/talend-how-to-execute-jobs-in-parallel.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/7752459351000101806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/7752459351000101806'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2016/12/talend-how-to-execute-jobs-in-parallel.html' title='Talend ETL Tutorial : How To Execute Multiple SubJobs In Parallel'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://4.bp.blogspot.com/-DC3B84y4YRU/WELq5FpYIaI/AAAAAAAAHbA/Iys4ca84Whc0UrGYrsbQxtfFr2UE9IA9gCLcB/s72-c/How%2BTo%2BExecute%2BMultiple%2BSubJobs.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-232614588955139692</id><published>2016-12-01T10:00:00.000-08:00</published><updated>2016-12-01T10:01:50.543-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Iterate Data In Parallel Mode In Talend</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-ebfPbT-wPvM/WEAww9Ewm2I/AAAAAAAAHZY/B4-7t6JbJScuIurzz2sToNxlHgbe_xbDwCLcB/s1600/How%2BTo%2BIterate%2BData%2BParallely.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://4.bp.blogspot.com/-ebfPbT-wPvM/WEAww9Ewm2I/AAAAAAAAHZY/B4-7t6JbJScuIurzz2sToNxlHgbe_xbDwCLcB/s640/How%2BTo%2BIterate%2BData%2BParallely.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Requirement :&lt;/h3&gt;&lt;div&gt;The requirement is to iterate through through the multiple files present in a folder and display the content of files. Also, the execution must be in parallel.&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Steps To Iterate In Parallel Mode :&amp;nbsp;&lt;/h4&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;I have already covered a post to process multiple files present in the folder.You can check the post here. &amp;nbsp;But, the execution was not in parallel mode.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://www.tricksfind.in/2016/11/talend-etl-tutorial-how-to-read.html&quot;&gt;How To Read Multiple Files Using Talend&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;I am going to refer the same Job and will make it run in &lt;i&gt;Parallel&lt;/i&gt; mode.&lt;/li&gt;&lt;li&gt;The steps are very simple and you don&#39;t have to do anything fancy for it. Just click on the &lt;i&gt;iterate&lt;/i&gt; link.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-RzpMq4Jc7ow/WEA1lWp3VPI/AAAAAAAAHZo/7Zdya8Jo9yMCzQVE0q5YY9Sarl30OKHcgCLcB/s1600/Talend_IterateParallel.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;228&quot; src=&quot;https://1.bp.blogspot.com/-RzpMq4Jc7ow/WEA1lWp3VPI/AAAAAAAAHZo/7Zdya8Jo9yMCzQVE0q5YY9Sarl30OKHcgCLcB/s640/Talend_IterateParallel.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;As you click on the link, you will be able to see the &lt;i&gt;Enable Execution&lt;/i&gt; box at the bottom section of the Talend studio designer.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-VNVnp38NQus/WEA2LRXbj3I/AAAAAAAAHZs/bpnsBc0d6T03pVLd6Z01-XLLmsckHbOAACLcB/s1600/Talend_ParallelExecution.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;356&quot; src=&quot;https://1.bp.blogspot.com/-VNVnp38NQus/WEA2LRXbj3I/AAAAAAAAHZs/bpnsBc0d6T03pVLd6Z01-XLLmsckHbOAACLcB/s640/Talend_ParallelExecution.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;If anyhow you are not able to get this window after single click on the Iterate link. You can try another way. &lt;i&gt;Right click on link -&amp;gt; Settings&lt;/i&gt;. It will also give you this window.&lt;/li&gt;&lt;li&gt;The next step is to check this box. Once, you check this box , you will get another option. In this option, it will ask you about the &lt;i&gt;Number of Parallel Execution. &lt;/i&gt;Based on your requirement, you can mention the numbers of execution.&amp;nbsp;&lt;/li&gt;&lt;li&gt;In this demo, I am reading 4 input files so I will set the execution number as 4.&lt;/li&gt;&lt;/ul&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-VYEnDWppsSM/WEA9YcnnfkI/AAAAAAAAHZ8/dQaP59v5i04mWsQZD-EPD0D6nGbiwg36QCLcB/s1600/Talend_NumberOfParallelExecution.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;134&quot; src=&quot;https://1.bp.blogspot.com/-VYEnDWppsSM/WEA9YcnnfkI/AAAAAAAAHZ8/dQaP59v5i04mWsQZD-EPD0D6nGbiwg36QCLcB/s640/Talend_NumberOfParallelExecution.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;clear: both; text-align: left;&quot;&gt;&lt;div align=&quot;center&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- tricksfind_sidebar13_AdSense2_336x280_as --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-slot=&quot;1630166097&quot; style=&quot;display: inline-block; height: 280px; width: 336px;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;&lt;br&gt;How To Identify The Execution Mode Of Jobs :&lt;/h3&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;You can easily identify the Iteration execution mode just by looking at the job when it&#39;s running.&lt;/li&gt;&lt;/ul&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Iteration Isn&#39;t In Parallel Mode :&lt;/h4&gt;&lt;div&gt;In this job, the iteration mode is normal. You can compare this screenshot with the parallel execution screenshot and get to know what&#39;s the difference between these two.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/--NWhmnByOt4/WEBXFRpn8qI/AAAAAAAAHaM/F2z_TDMMIhkdJ476HkgprDzJOLjG1_q0wCLcB/s1600/Talend_tSingleThread.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;244&quot; src=&quot;https://3.bp.blogspot.com/--NWhmnByOt4/WEBXFRpn8qI/AAAAAAAAHaM/F2z_TDMMIhkdJ476HkgprDzJOLjG1_q0wCLcB/s640/Talend_tSingleThread.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Iteration Is In Parallel Mode :&lt;/h4&gt;&lt;div&gt;When the iteration happens in parallel mode, the iterate link gets suffixed with the execution number. As in this job, I have declared the &lt;i&gt;Number of Parallel&lt;/i&gt; execution as 4. The same got suffixed with the iterate link. Also, for each file read (execution), there is a separate thread.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-xrz-W9bUR5A/WEBXv6_7fiI/AAAAAAAAHaQ/4IS9WZzzU2AMpE7FeuOssFtRLiASZVARwCLcB/s1600/Talend_ParallelExecution4x.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;270&quot; src=&quot;https://4.bp.blogspot.com/-xrz-W9bUR5A/WEBXv6_7fiI/AAAAAAAAHaQ/4IS9WZzzU2AMpE7FeuOssFtRLiASZVARwCLcB/s640/Talend_ParallelExecution4x.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/232614588955139692/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2016/12/talend--how-to-iterate-in-parallel-mode.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/232614588955139692'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/232614588955139692'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2016/12/talend--how-to-iterate-in-parallel-mode.html' title='Talend ETL Tutorial : How To Iterate Data In Parallel Mode In Talend'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://4.bp.blogspot.com/-ebfPbT-wPvM/WEAww9Ewm2I/AAAAAAAAHZY/B4-7t6JbJScuIurzz2sToNxlHgbe_xbDwCLcB/s72-c/How%2BTo%2BIterate%2BData%2BParallely.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-6904006174704618376</id><published>2016-11-30T08:28:00.002-08:00</published><updated>2016-11-30T08:28:44.017-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Define Schema At Runtime in Talend</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-bTF64GOCYMY/WD79LZb4-oI/AAAAAAAAHYg/ihkKNUuDtnMilA9_IckvAgPYWlaMWnEcgCLcB/s1600/How%2BTo%2BDefine%2BSchema%2BAt%2BRuntime%2Bin%2BTalend.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://2.bp.blogspot.com/-bTF64GOCYMY/WD79LZb4-oI/AAAAAAAAHYg/ihkKNUuDtnMilA9_IckvAgPYWlaMWnEcgCLcB/s640/How%2BTo%2BDefine%2BSchema%2BAt%2BRuntime%2Bin%2BTalend.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;You must have faced a situation in your Job designing career where you have to deal with an ever-changing schema of the input source. Whether the data coming from a database or a simple input file, you can&#39;t define the metadata for it. When you don&#39;t define schema, the system won&#39;t be able to read it properly.The only solution to this problem is to define &lt;i&gt;Runtime &lt;/i&gt;schema. The Runtime schema is being created and read at the run time. But, the question is how to do it in Talend ?&lt;br /&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Requirement :&lt;/h3&gt;&lt;div&gt;The requirement is to read the data from a table and store it in a file. And, the table structure is unknown. Means, we can&#39;t define the metadata structure.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;What is Dynamic Schema ?&lt;/h3&gt;&lt;div&gt;Dynamic schema allows you to design Jobs with an unknown column structure (unknown name and number of columns). If necessary, dynamic columns can be mapped directly to the target using Pass-through mode. For example, if you need to migrate a whole database with hundreds of tables, you can do so without explicitly including the table structure, using a single Job.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Can we define schema at Runtime ?&lt;/h3&gt;&lt;div&gt;The Short answer is &lt;b&gt;NO&lt;/b&gt;. We can&#39;t define a dynamic schema. All schema must be defined at the time of component designing whether &lt;i&gt;Repository or Built In&lt;/i&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;But, there is one feature available in Talend Open Studio &lt;b&gt;&lt;i&gt;Enterprise&lt;/i&gt; &lt;/b&gt;version , not in the &lt;i&gt;Community&lt;/i&gt; version, which &lt;i&gt;solves&lt;/i&gt; this problem. I don&#39;t have subscribed version of Talend, so, I am going to use screenshots from the Talend&#39;s web site.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;How To Process Changing Data Structure ?&lt;/h3&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Read a Table with Dynamic Schema :&lt;/h4&gt;&lt;div&gt;In this example, we are going to read and extract the table records and populate an output file &lt;i&gt;without defining the metadata structure.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;In Talend Open Studio for Data Integration, &lt;b&gt;the community version&lt;/b&gt;, you have to define each column in the schema to map the real table structure. If the table structure is unknown, it is impossible to read the table.&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-dCvKsyUcitg/WD5VAJ9oHXI/AAAAAAAAHX8/Vj7hvUGnNVYc6wbcZpp139ZUs_kRZc6zQCLcB/s1600/Talend_Dynamic.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;466&quot; src=&quot;https://1.bp.blogspot.com/-dCvKsyUcitg/WD5VAJ9oHXI/AAAAAAAAHX8/Vj7hvUGnNVYc6wbcZpp139ZUs_kRZc6zQCLcB/s640/Talend_Dynamic.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;Using this type, you just need to define &lt;b&gt;only one column&lt;/b&gt; with the Dynamic type instead of defining &lt;b&gt;all columns&lt;/b&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;div align=&quot;center&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- tricksfind_sidebar13_AdSense2_336x280_as --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-slot=&quot;1630166097&quot; style=&quot;display: inline-block; height: 280px; width: 336px;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;The Job Design :&lt;/h4&gt;&lt;div&gt;The Job design is very simple. Just one &lt;b&gt;tMysqlInput&lt;/b&gt; component to read the table from database and one &lt;b&gt;tFileOutputDelimited&lt;/b&gt; component to capture the output.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;img src=&quot;https://help.talend.com/download/attachments/190513179/job_design_example1.png?version=1&amp;amp;modificationDate=1401180086000&amp;amp;api=v2&quot; /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;tMysqlInput Component Configuration :&lt;/span&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/h4&gt;&lt;div&gt;In this , we are going to read a table &lt;i&gt;Person. &lt;/i&gt;The query type is &lt;i&gt;Built-in&lt;/i&gt; as we are hard coding the statement and also the schema is &lt;i&gt;Built In&lt;/i&gt;. Just for the reference, the table contents are like this :&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-KJwaMCyWD5s/WD77C98lpmI/AAAAAAAAHYY/UUxu0C534-ksdbqB68OcCBz_M_-qnq1dgCLcB/s1600/PersonTableStructure.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;226&quot; src=&quot;https://4.bp.blogspot.com/-KJwaMCyWD5s/WD77C98lpmI/AAAAAAAAHYY/UUxu0C534-ksdbqB68OcCBz_M_-qnq1dgCLcB/s640/PersonTableStructure.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;img height=&quot;336&quot; src=&quot;https://help.talend.com/download/attachments/190513179/tmysqlInput_1_example1.png?version=2&amp;amp;modificationDate=1403528713000&amp;amp;api=v2&quot; width=&quot;640&quot; /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;tMySqlInput Schema :&lt;/span&gt;&lt;/h4&gt;&lt;div&gt;The Talend &lt;b&gt;Community edition&lt;/b&gt; requires you to define the metadata for all columns under the Built-In schema but in the &lt;b&gt;Enterprise edition&lt;/b&gt;, you can just define the &lt;i&gt;&lt;b&gt;Type as Dynamic&lt;/b&gt;&lt;/i&gt; and &amp;nbsp;that&#39;s it.&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;img height=&quot;456&quot; src=&quot;https://help.talend.com/download/attachments/190513179/tmysqlInput_1_schema_example1.png?version=2&amp;amp;modificationDate=1403528728000&amp;amp;api=v2&quot; width=&quot;640&quot; /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;tFileOutputDelimited Component Configuration :&lt;/span&gt;&lt;/h4&gt;&lt;div&gt;You can configure this component based on your requirement. If you want to include table columns in the output, you can just check &lt;i&gt;Include Header&lt;/i&gt;&amp;nbsp;box. Also, select &lt;i class=&quot;&quot;&gt;Built In&lt;/i&gt; schema and just click on &lt;i&gt;Sync columns&lt;/i&gt; to use the same schema as used by linked components. In this way, you don&#39;t have to define it again and again.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;img src=&quot;https://help.talend.com/download/attachments/190513179/tFileOutputDelimited_Settings_example1.png?version=2&amp;amp;modificationDate=1403515584000&amp;amp;api=v2&quot; /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;The Final Job Execution :&lt;/h4&gt;&lt;div&gt;Once you execute the job finally, it will have the records with the header details as shown below. The one thing to notice here, we haven&#39;t defined any schema for the output file.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-WMd6U38tQmY/WD5YzT7dIsI/AAAAAAAAHYI/39rEPHSdKEUDFQ8moU01DZ_3CsWGmWqoQCLcB/s1600/Talend_DynamicSchemaOutput.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;132&quot; src=&quot;https://2.bp.blogspot.com/-WMd6U38tQmY/WD5YzT7dIsI/AAAAAAAAHYI/39rEPHSdKEUDFQ8moU01DZ_3CsWGmWqoQCLcB/s640/Talend_DynamicSchemaOutput.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/6904006174704618376/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2016/11/talend-how-to-define-schema.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/6904006174704618376'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/6904006174704618376'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2016/11/talend-how-to-define-schema.html' title='Talend ETL Tutorial : How To Define Schema At Runtime in Talend'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://2.bp.blogspot.com/-bTF64GOCYMY/WD79LZb4-oI/AAAAAAAAHYg/ihkKNUuDtnMilA9_IckvAgPYWlaMWnEcgCLcB/s72-c/How%2BTo%2BDefine%2BSchema%2BAt%2BRuntime%2Bin%2BTalend.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-8745930168267616808</id><published>2016-11-26T03:40:00.000-08:00</published><updated>2016-11-27T08:42:09.585-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Combine Multiple Files Data Into One </title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-qs6b1T0qzac/WDXiKCLEt5I/AAAAAAAAHTc/9MMAUqCqK-MMwlBEaEIsp8TaMA2EAVUBACLcB/s1600/How%2BTo%2BCombine%2BMulitple%2BFiles.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://3.bp.blogspot.com/-qs6b1T0qzac/WDXiKCLEt5I/AAAAAAAAHTc/9MMAUqCqK-MMwlBEaEIsp8TaMA2EAVUBACLcB/s640/How%2BTo%2BCombine%2BMulitple%2BFiles.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;This is another very common scenario. We have this common requirement of combining data from multiple sources and insert it into one destination. The destination could be one file or database.In this post, I will cover how to combine data from multiple sources. The condition is that the &lt;i&gt;SCHEMA&lt;/i&gt; must be same of all the input sources. Talend provides a component for this : &lt;i&gt;&lt;b&gt;tUnite&lt;/b&gt;&lt;/i&gt;. If you are aware of the Datastage ETL tool then it&#39;s more like a FUNNEL stage.&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;The Requirement&amp;nbsp;&lt;/h3&gt;&lt;div&gt;The requirement is to take data from 4 input files, combine it and present it as a single output. For this demo, I will be taking data from multiple files and insert it into one file.&lt;/div&gt;&lt;div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Steps To Combine Data Into One File :&lt;/h3&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;The first step is to take the input files. Based on your input file requirement, you can select the Talend component. As I am dealing with text files in this demo, I will take &lt;i&gt;tFileInputDelimited&lt;/i&gt; component. There are two ways to design job for this job.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;First Job Design :&lt;/h4&gt;&lt;/div&gt;&lt;div&gt;In this design, you can take the input files separately and take the &lt;i&gt;tFileInputDelimited&lt;/i&gt; component for each file. But this is not good when you have to deal with a large number of files. The benefit of using this is that you can define the order in which the input files should get processed.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-oHM5P3H4lk0/WDryo_513PI/AAAAAAAAHVw/TnqDZdQ--SQ5p2t8zdvYo6cknxobOAZFQCLcB/s1600/Talend_tUnite.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;322&quot; src=&quot;https://2.bp.blogspot.com/-oHM5P3H4lk0/WDryo_513PI/AAAAAAAAHVw/TnqDZdQ--SQ5p2t8zdvYo6cknxobOAZFQCLcB/s640/Talend_tUnite.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Second Job Design :&lt;/h4&gt;&lt;/div&gt;&lt;div&gt;In this design, you can deal with the multiple files at once. Using &lt;i&gt;tFileList&lt;/i&gt; component, you can iterate&amp;nbsp;through the files at once and you don&#39;t have to use multiple &lt;i&gt;tFileInputDelimited&lt;/i&gt; components.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/--qxdhoA2mGM/WDr0I0BiMtI/AAAAAAAAHV8/uGYm4LrdCDAKJnU-F2AZ6E85ErMqGCYnwCLcB/s1600/talned_tunitecombined.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;156&quot; src=&quot;https://3.bp.blogspot.com/--qxdhoA2mGM/WDr0I0BiMtI/AAAAAAAAHV8/uGYm4LrdCDAKJnU-F2AZ6E85ErMqGCYnwCLcB/s640/talned_tunitecombined.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;If you are not sure how to use &lt;i&gt;tFileList&lt;/i&gt; component then please check this tutorial :&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href=&quot;http://www.tricksfind.in/2016/11/talend-etl-tutorial-how-to-read.html&quot;&gt;Learn To Use tFileList Component In Detail&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;While reading the records from input file, you must define the schema. We can define the schema in two ways either through &lt;i&gt;Repository&lt;/i&gt; or &lt;i class=&quot;&quot;&gt;Built In&lt;/i&gt;&amp;nbsp;option. When you are defining schema through Repository, you always have to describe it first under &lt;i&gt;Metadata &lt;/i&gt;and it will get stored there. Whereas the &lt;i class=&quot;&quot;&gt;Built In&lt;/i&gt; schema doesn&#39;t get stored anywhere and you can define it at the time of component configuration.&lt;/li&gt;&lt;div align=&quot;center&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- tricksfind_sidebar13_AdSense2_336x280_as --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-slot=&quot;1630166097&quot; style=&quot;display: inline-block; height: 280px; width: 336px;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;&lt;li&gt;The next is to use &lt;i&gt;tUnite&lt;/i&gt; component, to combine files coming from multiple sources. The one thing that you have to consider here is the &lt;i&gt;schema must be same in all the input files.&lt;/i&gt;&amp;nbsp;The component configuration is also very simple. You just have to click on &lt;i&gt;Sync column&lt;/i&gt; option to get the schema of the input component.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-tZrpUDREUtI/WDr7Z1oYVWI/AAAAAAAAHWQ/JijbH-_pJUgwwuCQbi23hQ1EgjRdZV_aACLcB/s1600/tUniteScreen.tiff&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;184&quot; src=&quot;https://4.bp.blogspot.com/-tZrpUDREUtI/WDr7Z1oYVWI/AAAAAAAAHWQ/JijbH-_pJUgwwuCQbi23hQ1EgjRdZV_aACLcB/s640/tUniteScreen.tiff&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-jTO_l9Mo1I4/WDr6_rAkUOI/AAAAAAAAHWM/hP69lEsCSO8vhtAPhNKvDDpIeA6yR_bNACLcB/s1600/Talend_tUniteConfig.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;252&quot; src=&quot;https://3.bp.blogspot.com/-jTO_l9Mo1I4/WDr6_rAkUOI/AAAAAAAAHWM/hP69lEsCSO8vhtAPhNKvDDpIeA6yR_bNACLcB/s640/Talend_tUniteConfig.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;As soon as you link the tUnite component to another output component(&lt;i&gt;tFileOutputDelimited&lt;/i&gt;), the same schema structure would get propagated to the output also.If you don&#39;t have any specific requirement of output then you don&#39;t have to do anything extra other than just connecting the &lt;i&gt;tUnite&lt;/i&gt; component to the &lt;i&gt;tFileOutputDelimited&lt;/i&gt; component.&lt;/li&gt;&lt;/ul&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Final Job Execution&amp;nbsp;&lt;/h3&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-UleQ7vhwDXw/WDsLyqdyVJI/AAAAAAAAHWs/zu726HwtacoszDdYVLFG0PsG4WWw-yCNACLcB/s1600/tUniteExecution.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;339&quot; src=&quot;https://1.bp.blogspot.com/-UleQ7vhwDXw/WDsLyqdyVJI/AAAAAAAAHWs/zu726HwtacoszDdYVLFG0PsG4WWw-yCNACLcB/s640/tUniteExecution.gif&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Component Used In The Job Designing&amp;nbsp;&lt;/h3&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tUnite&amp;nbsp;&lt;/h4&gt;&lt;div&gt;Merges data from various sources, based on a common schema.Centralize data from various and heterogeneous sources.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get more details from here :&amp;nbsp;&lt;a href=&quot;https://help.talend.com/display/TalendOpenStudioComponentsReferenceGuide521EN/17.10+tUnite&quot; target=&quot;_blank&quot;&gt;tUnite Component Details&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tFileList&lt;/h4&gt;&lt;div&gt;tFileList iterates on files or folders of a set directory.tFileList retrieves a set of files or folders based on a filemask pattern and iterates on each unity.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get more details from here :&amp;nbsp;&lt;a href=&quot;https://help.talend.com/display/TalendOpenStudioComponentsReferenceGuide521EN/13.23+tFileList&quot; target=&quot;_blank&quot;&gt;tFileList Component Details&lt;/a&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tFileInputDelimited&lt;/h4&gt;&lt;div&gt;&lt;div&gt;tFileInputDelimited reads a given file row by row with simple separated fields.Opens a file and reads it row by row to split them up into fields then sends fields as defined in the Schema to the next Job component, via a Row link.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get more details from here :&amp;nbsp;&lt;a href=&quot;https://help.talend.com/display/TalendOpenStudioComponentsReferenceGuide521EN/13.10+tFileInputDelimited&quot; target=&quot;_blank&quot;&gt;tFileInputDelimited Component Details&lt;/a&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tFileOutputDelimited&lt;/h4&gt;&lt;div&gt;tFileOutputDelimited outputs data to a delimited file.This component writes a delimited file that holds data organized according to the defined schema.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get more details from here :&amp;nbsp;&lt;a href=&quot;https://help.talend.com/display/TalendOpenStudioComponentsReferenceGuide521EN/13.25+tFileOutputDelimited&quot; target=&quot;_blank&quot;&gt;tFileOutputDelimited Component Details&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/8745930168267616808/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2016/11/talend-etl-tutorial-how-to-combine.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/8745930168267616808'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/8745930168267616808'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2016/11/talend-etl-tutorial-how-to-combine.html' title='Talend ETL Tutorial : How To Combine Multiple Files Data Into One '/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://3.bp.blogspot.com/-qs6b1T0qzac/WDXiKCLEt5I/AAAAAAAAHTc/9MMAUqCqK-MMwlBEaEIsp8TaMA2EAVUBACLcB/s72-c/How%2BTo%2BCombine%2BMulitple%2BFiles.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-1090512149420774204</id><published>2016-11-21T22:16:00.002-08:00</published><updated>2016-11-21T22:16:38.117-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Loop Using Talend Component</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-245CKydOchQ/WDPiklnZVmI/AAAAAAAAHTA/fpNxE73tko47ftgwM5QNV7vhH00YkBjrACLcB/s1600/How%2BTo%2BLoop%2BUsing%2BTalend.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://4.bp.blogspot.com/-245CKydOchQ/WDPiklnZVmI/AAAAAAAAHTA/fpNxE73tko47ftgwM5QNV7vhH00YkBjrACLcB/s640/How%2BTo%2BLoop%2BUsing%2BTalend.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; There are multiple scenarios where looping is required. The looping concept is present in all programming language and you must have used it somewhere. The question is how to use it in Talend? Fortunately, Talend provides a lof of looping components for this purpose. And, if any of the components is not able to fulfill your requirement&amp;nbsp;then you can also write your custom code.&lt;br /&gt;&lt;br /&gt;&lt;h2 style=&quot;text-align: left;&quot;&gt;Looping Components Available In Talend&lt;/h2&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;tLoop&lt;/h3&gt;&lt;div&gt;This component is same as your programming language loop. You can define the Start and End of the loop with the incremented step. It operates on the task execution. It allows you to execute a task or job automatically based on a&amp;nbsp;loop.tLoop is to be used as a start component and can only be used with an iterate connection to the next component.You can loop through either using&lt;i&gt; FOR or WHILE&lt;/i&gt; loop.&lt;br /&gt;&lt;br /&gt;Get more details here :&amp;nbsp;&lt;a href=&quot;https://help.talend.com/display/TalendOpenStudioComponentsReferenceGuide521EN/17.5+tLoop&quot;&gt;tLoop Component Details&lt;/a&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;For Loop Settings :&lt;/h4&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-aOSt02kabtY/WDKRPpG-PXI/AAAAAAAAHQc/3MwijxJQg_Mb0hqI5Ohc2oL0oMk5fdEYwCLcB/s1600/tLoop_ForTalend.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;250&quot; src=&quot;https://1.bp.blogspot.com/-aOSt02kabtY/WDKRPpG-PXI/AAAAAAAAHQc/3MwijxJQg_Mb0hqI5Ohc2oL0oMk5fdEYwCLcB/s640/tLoop_ForTalend.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;While Loop Settings :&lt;/h4&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-nAT2cbXSyW0/WDKRYKJneCI/AAAAAAAAHQg/ArjXPe2aiGYD22k2B-WQ2AaIraETL0L_ACLcB/s1600/tLoop_WhileTalend.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;242&quot; src=&quot;https://2.bp.blogspot.com/-nAT2cbXSyW0/WDKRYKJneCI/AAAAAAAAHQg/ArjXPe2aiGYD22k2B-WQ2AaIraETL0L_ACLcB/s640/tLoop_WhileTalend.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;tLoop In Action&amp;nbsp;&lt;/h3&gt;&lt;div&gt;In simple terms, we can use this to iterate a job n number of times. There could be a requirement to execute a specific job multiple times, so instead of calling it multiple times , we can just pass it in the tLoop. So, basically, it works on &lt;i&gt;Parent and Child&lt;/i&gt; relationship. The job where the tLoop component is being used, will work as the Parent component.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For the demo, I am going to use one of &amp;nbsp;the existing jobs (&amp;nbsp;&lt;a href=&quot;http://www.tricksfind.in/2016/11/talend-etl-tutorial-how-to-read.html&quot; target=&quot;_blank&quot;&gt;HowToReadMultipleFiles&lt;/a&gt;&amp;nbsp;). This job will work as a&amp;nbsp;child because it will be called by a &lt;i&gt;tLoop job&lt;/i&gt; multiple times.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Child Job&amp;nbsp;&lt;/h4&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-eHwLvZQgfBA/WDPcJYWA3ZI/AAAAAAAAHSU/NbSeh7BcyAwclfZme2pdt5nLopHkOwIWQCLcB/s1600/Talend_ChildJob.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;186&quot; src=&quot;https://3.bp.blogspot.com/-eHwLvZQgfBA/WDPcJYWA3ZI/AAAAAAAAHSU/NbSeh7BcyAwclfZme2pdt5nLopHkOwIWQCLcB/s640/Talend_ChildJob.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Parent Job&lt;/h4&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-l33EVFNZMls/WDPbYh77hNI/AAAAAAAAHSQ/3bPpMc-CtzMARauJqUQkHUg4-tUwqEtuwCLcB/s1600/Talend_tLoopInAction.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;226&quot; src=&quot;https://1.bp.blogspot.com/-l33EVFNZMls/WDPbYh77hNI/AAAAAAAAHSQ/3bPpMc-CtzMARauJqUQkHUg4-tUwqEtuwCLcB/s640/Talend_tLoopInAction.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Final Job Execution :&lt;/h3&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tLoop Component :&lt;/h4&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-7rRHu7WELCc/WDPeGybprnI/AAAAAAAAHSg/Gj5EgI9PihortDM1k1l3GTzt7ONRFy8-ACLcB/s1600/tLoopCount.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;180&quot; src=&quot;https://1.bp.blogspot.com/-7rRHu7WELCc/WDPeGybprnI/AAAAAAAAHSg/Gj5EgI9PihortDM1k1l3GTzt7ONRFy8-ACLcB/s640/tLoopCount.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tRunJob Component :&lt;/h4&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-OJhgdDrjWs4/WDPeO23xF7I/AAAAAAAAHSk/i_oVp2leLe4aCn9ZxT-ae16T7s4M5nsEgCLcB/s1600/Talend_tRunJob.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;176&quot; src=&quot;https://3.bp.blogspot.com/-OJhgdDrjWs4/WDPeO23xF7I/AAAAAAAAHSk/i_oVp2leLe4aCn9ZxT-ae16T7s4M5nsEgCLcB/s640/Talend_tRunJob.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tSleep Component :&lt;/h4&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-Yt9aZALcMXk/WDPeXDzsZcI/AAAAAAAAHSo/QcJXxWn0spENsHr_uoo2y7xSP6z6IThGQCLcB/s1600/Talend_tSleep.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;204&quot; src=&quot;https://1.bp.blogspot.com/-Yt9aZALcMXk/WDPeXDzsZcI/AAAAAAAAHSo/QcJXxWn0spENsHr_uoo2y7xSP6z6IThGQCLcB/s640/Talend_tSleep.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;div align=&quot;center&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- tricksfind_sidebar13_AdSense2_336x280_as --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-slot=&quot;1630166097&quot; style=&quot;display: inline-block; height: 280px; width: 336px;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;We are going to call our child Job 3 times as per our Loop settings. And in one run , this child job prints 4 lines at the console so it means at the end of our Parent job run, we will see 12 lines of output on the console.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-bhS3eHdXchs/WDPgdmthtTI/AAAAAAAAHS0/jyFYXQfInRwZFxaQwoSFr6zW3LfFwT6kgCLcB/s1600/tLoopOutput.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;426&quot; src=&quot;https://4.bp.blogspot.com/-bhS3eHdXchs/WDPgdmthtTI/AAAAAAAAHS0/jyFYXQfInRwZFxaQwoSFr6zW3LfFwT6kgCLcB/s640/tLoopOutput.gif&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;tForEach&amp;nbsp;&lt;/h3&gt;&lt;div&gt;tForeach creates a loop on a list for an iterate link.&amp;nbsp;tForeach allows you to to create a loop on a list for an iterate link.&amp;nbsp;tForeach is an input component and requires an Iterate link to connect it to another component. You can insert any value in the double quotes to be iterated upon.&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-DI88tXY_kiM/WDKaGtnAfDI/AAAAAAAAHQw/hlURPowaJ-cyMY5AC7gyDI8-Glk_6qBGQCLcB/s1600/tForEach_TalendLoop.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;192&quot; src=&quot;https://1.bp.blogspot.com/-DI88tXY_kiM/WDKaGtnAfDI/AAAAAAAAHQw/hlURPowaJ-cyMY5AC7gyDI8-Glk_6qBGQCLcB/s640/tForEach_TalendLoop.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Get more details here :&amp;nbsp;&lt;a href=&quot;https://help.talend.com/display/TalendOpenStudioComponentsReferenceGuide521EN/17.2+tForeach&quot;&gt;tForEach Component Details&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;tForEach In Action&lt;/h3&gt;&lt;div&gt;For the demo purpose, I have created a simple Job here. We are going to iterate above defined value in the tForEach settings. Will just display the records on the console using &lt;i&gt;tJava&lt;/i&gt; component. tJava component is required when we have to write our custom code. As you could have guessed it already, this should be written in Java.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tJava Component&amp;nbsp;&lt;/h4&gt;&lt;div&gt;This component has an only window : &lt;b&gt;Code&lt;/b&gt;. You can write your desired Java code here and this component will execute it.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-2QCSjDgCkcU/WDPSxdmktgI/AAAAAAAAHR0/KSwrsF9CMuwIC-Vt-7TXVLJCb5stzDmIQCLcB/s1600/Talend_tJavaComponent.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;96&quot; src=&quot;https://1.bp.blogspot.com/-2QCSjDgCkcU/WDPSxdmktgI/AAAAAAAAHR0/KSwrsF9CMuwIC-Vt-7TXVLJCb5stzDmIQCLcB/s640/Talend_tJavaComponent.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tForEach Job Execution :&lt;/h4&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-sqgMpcown1E/WDPUWOxoH1I/AAAAAAAAHR8/fHBW0sEod6IPO49eY4vd8KAM-lMDVoqAgCLcB/s1600/tForEach_Execution.gif&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;370&quot; src=&quot;https://3.bp.blogspot.com/-sqgMpcown1E/WDPUWOxoH1I/AAAAAAAAHR8/fHBW0sEod6IPO49eY4vd8KAM-lMDVoqAgCLcB/s640/tForEach_Execution.gif&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;tFileList&lt;/h3&gt;&lt;div&gt;This component is important when we have to loop through the directories and files.&amp;nbsp;tFileList retrieves a set of files or folders based on a filemask pattern and iterates on each unity. I have covered this component in detail in one of my previous post with the job execution.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Please find the detail here :&amp;nbsp;&lt;a href=&quot;http://www.tricksfind.in/2016/11/talend-etl-tutorial-how-to-read.html&quot;&gt;Job execution with tFileList component &lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/1090512149420774204/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2016/11/talend-etl-tutorial-how-to-loop-using.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/1090512149420774204'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/1090512149420774204'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2016/11/talend-etl-tutorial-how-to-loop-using.html' title='Talend ETL Tutorial : How To Loop Using Talend Component'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://4.bp.blogspot.com/-245CKydOchQ/WDPiklnZVmI/AAAAAAAAHTA/fpNxE73tko47ftgwM5QNV7vhH00YkBjrACLcB/s72-c/How%2BTo%2BLoop%2BUsing%2BTalend.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-2227428110432940161</id><published>2016-11-20T08:02:00.001-08:00</published><updated>2016-11-20T08:02:59.332-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Talend"/><category scheme="http://www.blogger.com/atom/ns#" term="Talend Studio"/><title type='text'>Talend ETL Tutorial : How To Read Multiple Files Using Open Studio Designer</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-u-r9ShcyfaY/WDHCqLoqNxI/AAAAAAAAHP8/tR4k7SWFCpYTcDrcm195QivgcIr-nBMwgCLcB/s1600/How%2BTo%2BRead%2BMultiple%2BFiles%2BUsing%2BTalend.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://2.bp.blogspot.com/-u-r9ShcyfaY/WDHCqLoqNxI/AAAAAAAAHP8/tR4k7SWFCpYTcDrcm195QivgcIr-nBMwgCLcB/s640/How%2BTo%2BRead%2BMultiple%2BFiles%2BUsing%2BTalend.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Till now, we have been reading single Excel and Delimited file. In this Talend tutorial for beginners, we will be reading multiple files using &lt;i&gt;tFileList&lt;/i&gt;&amp;nbsp; Talend component.&lt;br /&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Requirement :&lt;/h3&gt;&lt;div&gt;The requirement is to read multiple text files present in the folder. In this demo tutorial, we will read multiple files available in a folder, pass these files as input and read the contents of the files and display the contents on the console.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Steps To Read Multiple Files At Once :&lt;/h3&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;Let&#39;s have a look at our input files first. For this demo, I have created a folder and put 4 four files under it. You can write anything under it. All these contents will be displayed on the console once we run our job.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-atC8FiS-D9k/WDGi97LFreI/AAAAAAAAHO4/J091vyP1x3869BNXSPZNRV_5EJ96HgWYwCLcB/s1600/Talend_MultipleFiles.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;198&quot; src=&quot;https://3.bp.blogspot.com/-atC8FiS-D9k/WDGi97LFreI/AAAAAAAAHO4/J091vyP1x3869BNXSPZNRV_5EJ96HgWYwCLcB/s640/Talend_MultipleFiles.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;As far as the contents are concerned, I have put just one line in all input files.&amp;nbsp;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-zzJTOZe1u5Q/WDGpladUBVI/AAAAAAAAHPQ/5MktJ447pEs1r5bHIu40xP_hZ0W5SWkfACLcB/s1600/Talend_MultipleInputFiles.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;468&quot; src=&quot;https://2.bp.blogspot.com/-zzJTOZe1u5Q/WDGpladUBVI/AAAAAAAAHPQ/5MktJ447pEs1r5bHIu40xP_hZ0W5SWkfACLcB/s640/Talend_MultipleInputFiles.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;The final job design will be as shown in the below screenshot. As you can see in the screenshot, I have created a new job &lt;i&gt;&lt;b&gt;HowToReadMultipleFiles&lt;/b&gt;&lt;/i&gt;. The job creation process is same as used in the previous tutorials. I have used only 3 components here : &lt;i&gt;tFileList_1, tFileInputDelimited_1 and tLogRow_1.&lt;/i&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-fkPjJcvBP2I/WDGkAzts7qI/AAAAAAAAHO8/VOGQO7D60pU90vsrJ7JFKznhHqnkDXU6QCLcB/s1600/Talend_MultipleFilesJob.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;182&quot; src=&quot;https://2.bp.blogspot.com/-fkPjJcvBP2I/WDGkAzts7qI/AAAAAAAAHO8/VOGQO7D60pU90vsrJ7JFKznhHqnkDXU6QCLcB/s640/Talend_MultipleFilesJob.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;First thing first, to read multiple files, we have to configure the&lt;i&gt;&lt;b&gt; tFileList_1&lt;/b&gt;&lt;/i&gt; component. Browse for the directory where your files are present. Next, you have to select FileList type, you will get 3 options ( &lt;i&gt;Files, Directories and Both&lt;/i&gt;) in the drop down list. Based on your requirement, you can select any one of it.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-iHX2MrJkP8A/WDGtdlvH6EI/AAAAAAAAHPc/c1x-uCv9qpE3eEQ0JA9G74twr65Me5trgCLcB/s1600/Talend_tFileList_Configuration.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;304&quot; src=&quot;https://2.bp.blogspot.com/-iHX2MrJkP8A/WDGtdlvH6EI/AAAAAAAAHPc/c1x-uCv9qpE3eEQ0JA9G74twr65Me5trgCLcB/s640/Talend_tFileList_Configuration.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://ad.linksynergy.com/fs-bin/show?id=EmktzpVGzW8&amp;amp;bids=323058.4949&amp;amp;type=3&amp;amp;subid=0&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;&lt;h4 style=&quot;clear: both; text-align: left;&quot;&gt;Global Parameter To Consider While Using tFileList_1 :&lt;/h4&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;As we are reading the files dynamically, we have to pass dynamic values instead of fixed file name.&lt;/div&gt;&lt;div&gt;&lt;i&gt;Global parameters&lt;/i&gt;&amp;nbsp;help us to resolve this problem. Based on your requirement, you can take any of the values and use it to the files dynamically.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;i&gt;((String)globalMap.get(&quot;tFileList_1_CURRENT_FILE&quot;))&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;This variable holds &lt;b&gt;current file name without complete path&lt;/b&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;((String)globalMap.get(&quot;tFileList_1_CURRENT_FILEPATH&quot;))&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;This variables holds &lt;b&gt;current file name with complete path&lt;/b&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;((String)globalMap.get(&quot;tFileList_1_CURRENT_FILEEXTENSION&quot;))&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;This variable holds &lt;b&gt;current file`s extension&lt;/b&gt;, if file has no extension then it will return null&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;((String)globalMap.get(&quot;tFileList_1_CURRENT_FILEDIRECTORY&quot;))&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;This variable holds &lt;b&gt;only directory name with path&lt;/b&gt; exclude file name.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;((Integer)globalMap.get(&quot;tFileList_1_NB_FILE&quot;))&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;This variables holds &lt;b&gt;the number of files&lt;/b&gt; listed by tFilelist.&lt;/li&gt;&lt;/ul&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;In my job design, I use&amp;nbsp;&lt;i&gt;((String)globalMap.get(&quot;tFileList_1_CURRENT_FILEPATH&quot;)) &lt;/i&gt;as the file name must be there with its directory path. The System must know where your files are located. This parameter is being used in the &lt;i&gt;tFileInputDelimited&lt;/i&gt; component. As this is the place where we mention the input file names and path. If you want to read excel files then you can use &lt;i class=&quot;&quot;&gt;tFileInputExcel in place of tFileInputDelimited..&amp;nbsp;&lt;/i&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- tricksfind_sidebar13_AdSense2_336x280_as --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-slot=&quot;1630166097&quot; style=&quot;display: inline-block; height: 280px; width: 336px;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;i class=&quot;&quot;&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-cLhHYndQlH4/WDG6XGtrK4I/AAAAAAAAHPs/fn3Tq_T4Rr8n_jGRxdPH6hR7NArLlp99wCLcB/s1600/Talend_tFileInputDelimited.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;230&quot; src=&quot;https://4.bp.blogspot.com/-cLhHYndQlH4/WDG6XGtrK4I/AAAAAAAAHPs/fn3Tq_T4Rr8n_jGRxdPH6hR7NArLlp99wCLcB/s640/Talend_tFileInputDelimited.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;i class=&quot;&quot;&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;You don&#39;t have to do any modification in &lt;i&gt;tLogRow.&lt;/i&gt;&amp;nbsp;Just link this component with the tInputFileDemilited component and rest will be taken care of automatically.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Talend Components Used In the Design :&lt;/h3&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tFileList&lt;/h4&gt;&lt;div&gt;&lt;i&gt;tFileList&lt;/i&gt; iterates on files or folders of a set directory. &lt;i&gt;tFileList&lt;/i&gt; retrieves a set of files or folders based on a filemask pattern and iterates on each unity.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get more details from here :&amp;nbsp;&lt;a href=&quot;https://help.talend.com/pages/viewpage.action?pageId=8123128&quot; target=&quot;_blank&quot;&gt;tFileList Component Detail&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tFileInputDelimited&lt;/h4&gt;&lt;div&gt;&lt;div&gt;tFileInputDelimited reads a given file row by row with simple separated fields. Opens a file and reads it row by row to split them up into fields then sends fields as defined in the Schema to the next Job component, via a Row link.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get more details from here :&amp;nbsp;&lt;a href=&quot;https://help.talend.com/pages/viewpage.action?pageId=8123115&quot; target=&quot;_blank&quot;&gt;tFileInputDelimited Component&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;tLogRow&lt;/h4&gt;&lt;div&gt;Displays data or results in the Run console.tLogRow is used to monitor data processed.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get more details from here :&amp;nbsp;&lt;a href=&quot;https://help.talend.com/pages/viewpage.action?pageId=8123203&quot; target=&quot;_blank&quot;&gt;tLogRow Component Details&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;i class=&quot;&quot;&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i class=&quot;&quot;&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;The Final Execution Of Job :&lt;/h3&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-Rayt_CyD7Aw/WDHHz4Rn_FI/AAAAAAAAHQM/zks0HpMqsNQzQVJNVU5ywHfueXmJTnOVQCLcB/s1600/Talend_MultipleFileExecution.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;330&quot; src=&quot;https://2.bp.blogspot.com/-Rayt_CyD7Aw/WDHHz4Rn_FI/AAAAAAAAHQM/zks0HpMqsNQzQVJNVU5ywHfueXmJTnOVQCLcB/s640/Talend_MultipleFileExecution.gif&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;i class=&quot;&quot;&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/2227428110432940161/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2016/11/talend-etl-tutorial-how-to-read.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/2227428110432940161'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/2227428110432940161'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2016/11/talend-etl-tutorial-how-to-read.html' title='Talend ETL Tutorial : How To Read Multiple Files Using Open Studio Designer'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://2.bp.blogspot.com/-u-r9ShcyfaY/WDHCqLoqNxI/AAAAAAAAHP8/tR4k7SWFCpYTcDrcm195QivgcIr-nBMwgCLcB/s72-c/How%2BTo%2BRead%2BMultiple%2BFiles%2BUsing%2BTalend.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-3228337926627200323</id><published>2016-11-11T22:46:00.000-08:00</published><updated>2016-11-11T22:46:12.102-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="HealthCare IT"/><title type='text'>HealthCare Management Certificates</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-YFakWU8E1-k/WCStk5GVd4I/AAAAAAAAHLM/ciPtn5ffWywzd9skfGHHu3lyUtwh359OgCLcB/s1600/Talend%2BIn%2BAction%2B%25281%2529.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://2.bp.blogspot.com/-YFakWU8E1-k/WCStk5GVd4I/AAAAAAAAHLM/ciPtn5ffWywzd9skfGHHu3lyUtwh359OgCLcB/s640/Talend%2BIn%2BAction%2B%25281%2529.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;If you are working in HealthCare Domain then you should try these HealthCare Management Certificates. These certificates will give you the basic and advanced understanding of the Healthcare domain. The courses are structured to cover each topic belong to Healthcare domain.As you move up to the hierarchy of certificates, you will be introduced to the much more advanced knowledge of HealthCare domain. These Healthcare Management Certificates are good for your career as well as for your knowledge.These courses are brought to you by the &lt;i&gt;Academy for Healthcare Management (AHM)&lt;/i&gt;. Sponsored by America’s Health Insurance Plans and the Blue Cross Blue Shield Association, AHM relies on both associations’ decades of experience providing continuing education for health insurance plan professionals. AHM serves more than 1,300 health insurance plans caring for and providing coverage to more than 200 million people.&lt;br /&gt;&lt;br /&gt;For latest updates, you can always visit the official website :&amp;nbsp;&lt;a href=&quot;https://www.ahip.org/&quot;&gt;Official Website&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Academy For HealthCare Management&lt;/h3&gt;&lt;br /&gt;This course will get you up to speed on the basic concepts of healthcare management and its various types of organizational structures. You will learn about major operational areas of health insurance plans as well as legislative, regulatory, and ethical issues that affect the industry.&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/--mPw87qI9v8/WCSxMcshD_I/AAAAAAAAHLY/dktVpWDLHVIvZQzCNlWaipNoQpp3qGH_ACLcB/s1600/ahm250.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://3.bp.blogspot.com/--mPw87qI9v8/WCSxMcshD_I/AAAAAAAAHLY/dktVpWDLHVIvZQzCNlWaipNoQpp3qGH_ACLcB/s640/ahm250.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;/ul&gt;&lt;br /&gt;Please register here to enroll in this course :&amp;nbsp;&lt;a href=&quot;https://topclass.ahipinsuranceeducation.org/topclass/topclass.do?expand-esdSelfRegistration&quot; target=&quot;_blank&quot;&gt;AHM 250 Certificate&lt;/a&gt;&lt;br /&gt;Course Cost :&lt;br /&gt;&lt;ul style=&quot;text-align: left;&quot;&gt;&lt;li&gt;$255 for Non-Members&amp;nbsp;&lt;/li&gt;&lt;li&gt;$195 for AHIP Members&lt;/li&gt;&lt;/ul&gt;Once the registration gets completed, you can log in and download the book for this course.&lt;br /&gt;&lt;br /&gt;&lt;div align=&quot;center&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- tricksfind_sidebar13_AdSense2_336x280_as --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-slot=&quot;1630166097&quot; style=&quot;display: inline-block; height: 280px; width: 336px;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Professional, Academy For HealthCare Management&lt;/h3&gt;&lt;br /&gt;When you earn the Academy for Healthcare Management’s PAHM designation, you show professionals in the industry that you have a thorough grasp on of the fundamental building blocks of health insurance plans and their functions. You have to register for this also as mentioned above.&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-2G3TiHT1kw4/WCXjwR3ThhI/AAAAAAAAHL4/wm3cPWY3SQI6y3T9B9UIGr41aN-apN1WQCLcB/s1600/PAHM.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://4.bp.blogspot.com/-2G3TiHT1kw4/WCXjwR3ThhI/AAAAAAAAHL4/wm3cPWY3SQI6y3T9B9UIGr41aN-apN1WQCLcB/s640/PAHM.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Fellow, Academy For HealthCare Management&lt;/h3&gt;&lt;br /&gt;Take this course, if you’re looking to position yourself as a seasoned healthcare management professional, the Academy for Healthcare Management’s FAHM designation program offers in-depth coursework focusing on specific operational areas. By pursuing this designation, you’ll gain a thorough orientation to current Healthcare developments.&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://4.bp.blogspot.com/-L47j8fFpjDQ/WCXhs4sALLI/AAAAAAAAHLw/1PL0_80cSqwty3X5XNrvqpwt_HH2e3jqwCEw/s1600/FAHM%2B%25281%2529.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://4.bp.blogspot.com/-L47j8fFpjDQ/WCXhs4sALLI/AAAAAAAAHLw/1PL0_80cSqwty3X5XNrvqpwt_HH2e3jqwCEw/s640/FAHM%2B%25281%2529.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The certificates that you need to complete to get this designation :&lt;br /&gt;&lt;br /&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Healthcare Management: An Introduction (AHM 250)&lt;/h4&gt;You can get the details above.&lt;br /&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Governance and Regulation (AHM 510)&lt;/h4&gt;This course describes the formation, types, and structure of healthcare management organizations. Along with the role of healthcare management in government-sponsored programs, you’ll learn the overall purpose and direction of healthcare management, the impact of fraud and abuse, and the role of public policy.&lt;br /&gt;&lt;br /&gt;Get the details here :&amp;nbsp;&lt;a href=&quot;https://www.ahip.org/course/governance-and-regulation-ahm-510/&quot; target=&quot;_blank&quot;&gt;AHM 510&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Health Plan Finance and Risk Management (AHM 520)&lt;/h4&gt;&lt;div&gt;Get a comprehensive look at health insurance plan finance. You’ll learn about financial management techniques, funding, risk management, provider reimbursement, plan risk, pricing, underwriting, and rating methods.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get the details here :&amp;nbsp;&lt;a href=&quot;https://www.ahip.org/course/health-plan-finance-and-risk-management-ahm-520/&quot; target=&quot;_blank&quot;&gt;AHM 520&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Network Management (AHM 530)&lt;/h4&gt;Learn about the network management function in health insurance plans as this course provides you with insight into both network development strategies (risk management, recruiting, selection and contracting) and network maintenance strategies (managing provider performance and feedback). You’ll also learn about considerations for different types of networks.&lt;br /&gt;&lt;br /&gt;Get the details here :&amp;nbsp;&lt;a href=&quot;https://www.ahip.org/course/network-management-ahm-530/&quot; target=&quot;_blank&quot;&gt;AHM 530&lt;/a&gt;&lt;br /&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Medical Management (AHM 540)&lt;/h4&gt;&lt;div&gt;Explore medical policy and technology evaluation, appropriateness of care issues, authorization systems, and clinical practice guidelines. With this course, you’ll discover focused strategies for utilization management, including clinical paths and disease management. Quality management (QM) methods and strategies are also described.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get the details here :&amp;nbsp;&lt;a href=&quot;https://www.ahip.org/course/medical-management-ahm-540/&quot; target=&quot;_blank&quot;&gt;AHM 540&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;Udemy course Featured :&lt;/h3&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;Medical Coding, ICD-10-CM Training&lt;/i&gt;, Take this course to prepare yourself&amp;nbsp;for the transition to ICD-10-CM. Learn medical coding and prepare yourself for today&#39;s healthcare workplace.&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;&lt;div align=&quot;center&quot;&gt;&lt;a href=&quot;http://click.linksynergy.com/link?id=EmktzpVGzW8&amp;amp;offerid=323058.417562&amp;amp;type=2&amp;amp;murl=https%3A%2F%2Fwww.udemy.com%2Fmedical-coding-icd-10-cm-training%2F&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://udemy-images.udemy.com/course/480x270/417562_9743_2.jpg&quot; /&gt;&lt;/a&gt;&lt;img border=&quot;0&quot; src=&quot;http://ad.linksynergy.com/fs-bin/show?id=EmktzpVGzW8&amp;amp;bids=323058.417562&amp;amp;type=2&amp;amp;subid=0&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Managed HealthCare Professional&lt;/div&gt;&lt;/div&gt;&lt;/h3&gt;&lt;/div&gt;This is the biggest in this series. You must have an understanding of below mentioned Healthcare management courses for Managed HealthCare Professional. You need to complete below HealthCare certificates :&lt;br /&gt;&lt;br /&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Fundamentals of Health Insurance, Part A (Basics of Health Insurance)&lt;/h4&gt;&lt;div&gt;This online course is the place to start to master basic concepts and terminology of the health insurance industry. You’ll get a comprehensive overview of the business environment of insurance companies; learn about the various kinds of health insurance; and develop a working knowledge of how the insurance industry works, including contract provisions, underwriting, sales and marketing.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get the details here :&amp;nbsp;&lt;a href=&quot;https://ahip.org/course/fundamentals-of-health-insurance-part-a-basics-of-health-insurance/&quot; target=&quot;_blank&quot;&gt;Part A Details&lt;/a&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;Fundamentals of Health Insurance, Part B (Basics of Company Operations)&lt;/h4&gt;&lt;div&gt;This online course is a survival guide when it comes to understanding health insurance operations. You’ll gain a thorough introduction to business basics, including issuance and installation of policies; policy renewal and changes; premium billing and payment; claims administration; pricing; and state and federal regulation of insurance. Recently expanded and now offered in a convenient online format, this course brings you up to date on new developments, such as wellness programs, the medical home concept.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get the details here :&amp;nbsp;&lt;a href=&quot;https://ahip.org/course/fundamentals-of-health-insurance-part-b-basics-of-company-operations/&quot; target=&quot;_blank&quot;&gt;Part B Details&lt;/a&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Healthcare Management: An Introduction (AHM 250)&lt;/h4&gt;Same as described above.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://2.bp.blogspot.com/-nFUZT1rLU9I/WCXlPrJEwVI/AAAAAAAAHL8/25QxpSTk9AglTSUan2t5007q5PxDD7hjQCLcB/s1600/MHP.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;354&quot; src=&quot;https://2.bp.blogspot.com/-nFUZT1rLU9I/WCXlPrJEwVI/AAAAAAAAHL8/25QxpSTk9AglTSUan2t5007q5PxDD7hjQCLcB/s640/MHP.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;And , one of the following electives :&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Health Insurance Advanced Studies, Part A&lt;/h4&gt;&lt;div&gt;Broaden your knowledge of health insurance with this all-inclusive course. The interactive online curriculum will enhance your knowledge on a full range of topics within health insurance, including plan structures and alternatives, ACOs, Exchanges, Consumer-Directed Health Plans, employer rules, Medicare and Part D, Medicaid, tax treatment of medical expenses and high-benefit plans, HSAs, and planning tools including fraud detection.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get the details here :&amp;nbsp;&lt;a href=&quot;https://ahip.org/course/health-insurance-advanced-studies-part-a/&quot; target=&quot;_blank&quot;&gt;Advanced Studies Details&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Dental Benefits, Part A : An Overview of Dental Benefits And Dental Plans&lt;/h4&gt;&lt;div&gt;Gain insight into why and how dental benefits and current trends evolved. This course provides you with an understanding of the types of dental plans, the similarities and differences between dental and medical insurance, as well as information on coverage inclusions and exclusions.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get the details here :&amp;nbsp;&lt;a href=&quot;https://ahip.org/course/dental-benefits-part-a-an-overview-of-dental-benefits-and-dental-plans/&quot; target=&quot;_blank&quot;&gt;Dental benefits And Dental Plans&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Fraud, Part I ( Introduction )&lt;/h4&gt;&lt;div&gt;You’ll gain valuable insight from this broad overview of health insurance fraud. This self-study course focuses on investigative methods for detecting fraud and delves into the many areas in which fraud occurs, including fraud and abuse by providers, consumers, agents, and others.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Get the details here :&amp;nbsp;&lt;a href=&quot;https://ahip.org/course/fraud-part-i-introduction/&quot; target=&quot;_blank&quot;&gt;Fraud, Part 1 Details&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt; &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/3228337926627200323/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2016/11/healthcare-management-certificates.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/3228337926627200323'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/3228337926627200323'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2016/11/healthcare-management-certificates.html' title='HealthCare Management Certificates'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://2.bp.blogspot.com/-YFakWU8E1-k/WCStk5GVd4I/AAAAAAAAHLM/ciPtn5ffWywzd9skfGHHu3lyUtwh359OgCLcB/s72-c/Talend%2BIn%2BAction%2B%25281%2529.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4011997376355783864.post-606183372723469673</id><published>2016-11-08T10:26:00.000-08:00</published><updated>2016-11-08T20:19:05.508-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android App"/><title type='text'>5 Screen Recorder Apps For Android , NO ROOT Required</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;br /&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-e8paFxBNTKs/WCF_XqBYLoI/AAAAAAAAHIc/JYymlT4Kdms192OfXq7wi858QCih2IsxwCLcB/s1600/ScreenRecorderAndroidApps.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;360&quot; src=&quot;https://3.bp.blogspot.com/-e8paFxBNTKs/WCF_XqBYLoI/AAAAAAAAHIc/JYymlT4Kdms192OfXq7wi858QCih2IsxwCLcB/s640/ScreenRecorderAndroidApps.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;There are multiple scenarios where you want to capture your mobile screen. This could be recording your game play, videos, images or for any tutorial. But, the main question is how? There are so many apps in the play store to complete this task. But most of the apps require rooting before recording your phone screen. Rooting requires super user privilege&amp;nbsp;and you may crash your phone while doing so. So, I am going to cover the best 5 apps to record your screen which doesn&#39;t require ROOTing.&lt;br /&gt;&lt;br /&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Sample Of Android Screen Recording :&lt;/h4&gt;&lt;div align=&quot;center&quot;&gt;&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;https://www.youtube.com/embed/gg-XOq6KWjI&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Mobizen Screen Recorder :&lt;/h4&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Mobizen is the most easy-to-use, convenient screen recorder that allows you to record, capture and edit. It also offers a lot of editing features (Trim, Cut, Images etc..). You can record the screen without any watermark.&amp;nbsp;Anyone can use it with No rooting starting from OS 4.4!!&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;div&gt;Estimated Installs : 10,000,000 - 50,000,000&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Download the app from&amp;nbsp;&lt;a href=&quot;https://play.google.com/store/apps/details?id=com.rsupport.mobizen.sec&quot; target=&quot;_blank&quot;&gt;here.&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-TlMv8SkRfYA/WCHAcR-Y0lI/AAAAAAAAHIs/4I43LLLYk78Wg2ZwFzRiL8Xjw2gVPAWtQCLcB/s1600/MobiZenScreenRecorder.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;366&quot; src=&quot;https://3.bp.blogspot.com/-TlMv8SkRfYA/WCHAcR-Y0lI/AAAAAAAAHIs/4I43LLLYk78Wg2ZwFzRiL8Xjw2gVPAWtQCLcB/s640/MobiZenScreenRecorder.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;AZ Screen Recorder&amp;nbsp;&lt;/h4&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;div&gt;As of now, I am using only this app for the screen recording. This app is very nice to use and gives you the high-quality videos. AZ Screen Recorder is the best app to record the screen of your Lollipop. It does NOT require root access, no time limit, no watermark, ad-free and very easy to use with one action to start and stop recording. This screen recording app will let you make beautiful screencast videos by providing every feature that you need in a simple and elegant user experience design.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;i&gt;Estimated Installs :&lt;/i&gt; 5,000,000 - 10,000,000&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Download the App from&amp;nbsp;&lt;a href=&quot;https://play.google.com/store/apps/details?id=com.hecorat.screenrecorder.free&quot;&gt;here.&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-MysnOIQ1H6Q/WCHC2jhv3qI/AAAAAAAAHI4/ncLsrFxe_1Egy49uFMzliF2Y0gzeYEssgCLcB/s1600/AZ%2BScreen%2BRecorder.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;360&quot; src=&quot;https://3.bp.blogspot.com/-MysnOIQ1H6Q/WCHC2jhv3qI/AAAAAAAAHI4/ncLsrFxe_1Egy49uFMzliF2Y0gzeYEssgCLcB/s640/AZ%2BScreen%2BRecorder.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Rec Screen Recorder :&lt;/h4&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;This app has mixed reviews on the App store. Go for it, if it suits you.&amp;nbsp;REC Screen Recorder PRO is perfect for gamers who want to record their gaming sessions to create tutorial videos or even just to show off. An app developer will find our screen recorder app very useful to create an app video for their apps. Perhaps you are chatting face to face with your friends or family and want to record it to replay it later? There are tons of others situations where REC Screen Recorder PRO can help you.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;i&gt;Estimated Installs&lt;/i&gt; : 1,000,000 - 5,000,000&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Download the app from&amp;nbsp;&lt;a href=&quot;https://play.google.com/store/apps/details?id=com.rec.screen&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://3.bp.blogspot.com/-oIP8XDmXEYM/WCHDr7G9EbI/AAAAAAAAHJA/gpCpzeMeqGMouRQvIZeqO3fkoT9B8o7bQCLcB/s1600/Rec%2BScreen%2BRecorder.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;356&quot; src=&quot;https://3.bp.blogspot.com/-oIP8XDmXEYM/WCHDr7G9EbI/AAAAAAAAHJA/gpCpzeMeqGMouRQvIZeqO3fkoT9B8o7bQCLcB/s640/Rec%2BScreen%2BRecorder.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;&lt;/h3&gt;&lt;div align=&quot;center&quot;&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- tricksfind_sidebar13_AdSense2_336x280_as --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-slot=&quot;1630166097&quot; style=&quot;display: inline-block; height: 300px; width: 500px;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Udemy Course Featured :&lt;/h4&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;b&gt;The Complete Android 7 App Development&lt;/b&gt;&lt;i&gt; , &lt;/i&gt;this course will teach you everything which you want to know about the android app development. From layouts to Ad integration. Click the below screenshot to navigate to the course.&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;div align=&quot;center&quot;&gt;&lt;a href=&quot;http://click.linksynergy.com/link?id=EmktzpVGzW8&amp;amp;offerid=323058.953976&amp;amp;type=2&amp;amp;murl=https%3A%2F%2Fwww.udemy.com%2Fandroid-tutorial-for-beginners%2F&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://udemy-images.udemy.com/course/480x270/953976_4018_4.jpg&quot; /&gt;&lt;/a&gt;&lt;img border=&quot;0&quot; src=&quot;http://ad.linksynergy.com/fs-bin/show?id=EmktzpVGzW8&amp;amp;bids=323058.953976&amp;amp;type=2&amp;amp;subid=0&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;ADV Screen Recorder :&lt;/h4&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;div&gt;This is another Screen recording app which doesn&#39;t require rooting. Need to record your screen in an easy way and without a menu that covers your whole screen?ADV Screen recorder was designed to be fully featured, without any kind of restrictions and without requiring root.&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;i&gt;Estimated Installs : &lt;/i&gt;1,000,000 - 5,000,000&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Download the link from&amp;nbsp;&lt;a href=&quot;https://play.google.com/store/apps/details?id=com.blogspot.byterevapps.lollipopscreenrecorder&quot;&gt;here.&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-eAgqsWytUFY/WCHHoX2QQbI/AAAAAAAAHJQ/aH_DlQpMEBsRAHex3mbWnuwnSUgthHAWgCLcB/s1600/ADVScreenRecorder.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;362&quot; src=&quot;https://1.bp.blogspot.com/-eAgqsWytUFY/WCHHoX2QQbI/AAAAAAAAHJQ/aH_DlQpMEBsRAHex3mbWnuwnSUgthHAWgCLcB/s640/ADVScreenRecorder.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;h4 style=&quot;text-align: left;&quot;&gt;Game Screen Recorder :&lt;/h4&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Use this app for the gameplay recording. It has some cool features specifically for game recording.You can set the transparency of the record button in recording, you can even upload your own picture to customize the Record Button.if you don&#39;t want to show the Record Button, just turn off the &quot;Stop by Record Button&quot;.&amp;nbsp;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;Estimated Installs : 500,000 - 1,000,000&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;div&gt;Download the app from&amp;nbsp;&lt;a href=&quot;https://play.google.com/store/apps/details?id=com.drivergenius.screenrecorder&quot;&gt;here.&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://1.bp.blogspot.com/-erMxBYIgEQg/WCHIOoQRHpI/AAAAAAAAHJU/lIqQFwiChJ0aH9DjuOkc6cxWeNAdQyi4ACLcB/s1600/GameScreenRecorder.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;360&quot; src=&quot;https://1.bp.blogspot.com/-erMxBYIgEQg/WCHIOoQRHpI/AAAAAAAAHJU/lIqQFwiChJ0aH9DjuOkc6cxWeNAdQyi4ACLcB/s640/GameScreenRecorder.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;script async=&quot;&quot; src=&quot;//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js&quot;&gt;&lt;/script&gt; &lt;!-- Inside_Post --&gt;&lt;br /&gt;&lt;ins class=&quot;adsbygoogle&quot; data-ad-client=&quot;ca-pub-6667404740993831&quot; data-ad-format=&quot;auto&quot; data-ad-slot=&quot;8062389299&quot; style=&quot;display: block;&quot;&gt;&lt;/ins&gt;&lt;script&gt;(adsbygoogle = window.adsbygoogle || []).push({}); &lt;/script&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.tricksfind.in/feeds/606183372723469673/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.tricksfind.in/2016/11/5-screen-recorder-apps-for-android.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/606183372723469673'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4011997376355783864/posts/default/606183372723469673'/><link rel='alternate' type='text/html' href='http://www.tricksfind.in/2016/11/5-screen-recorder-apps-for-android.html' title='5 Screen Recorder Apps For Android , NO ROOT Required'/><author><name>Praveen Singh</name><uri>https://plus.google.com/106721487925725080617</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh4.googleusercontent.com/-fQrj3jzFqbY/AAAAAAAAAAI/AAAAAAAAHGU/-0WfW4CR-bY/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://3.bp.blogspot.com/-e8paFxBNTKs/WCF_XqBYLoI/AAAAAAAAHIc/JYymlT4Kdms192OfXq7wi858QCih2IsxwCLcB/s72-c/ScreenRecorderAndroidApps.png" height="72" width="72"/><thr:total>0</thr:total></entry></feed>