<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic tFlowToIterate passing database details into in Talend Studio</title>
    <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340050#M108117</link>
    <description>Hi, 
&lt;BR /&gt; 
&lt;BR /&gt;I have written a job previously (with help from guys on here) that reads a list of delete statements from a table and runs them against a database. 
&lt;BR /&gt; 
&lt;BR /&gt;I'd like to expand this job to read some target database details from a table then apply the delete statements, so using the first solution but by adding a tFlowToIterate. 
&lt;BR /&gt; 
&lt;BR /&gt;Screenshots are below; 
&lt;BR /&gt; 
&lt;BR /&gt; - tInformixInput3 - get target details for all target databases 
&lt;BR /&gt; - tFlowToIterate 
&lt;BR /&gt; - tInformixConnection2 - accept database details from tInformixInput3 as input parameters 
&lt;BR /&gt; - tInformixInput2 - read delete statements 
&lt;BR /&gt; - tJavaRow2 - apply deletes to the connection defined in tInformixConnection2 
&lt;BR /&gt; 
&lt;BR /&gt;I get the following error, which is strange because the machine mentioned in the error message is actually my desktop, all the databases are held on other servers. 
&lt;BR /&gt; 
&lt;BR /&gt;Exception in component tInformixConnection_2 
&lt;BR /&gt;java.sql.SQLException: Incorrect password or user com.informix.asf.IfxASFRemoteException: informix@st-iptv05.uk.tiscali.intl is not known on the database server. 
&lt;BR /&gt; at 
&lt;BR /&gt; 
&lt;BR /&gt;I would be grateful for any ideas.</description>
    <pubDate>Sat, 16 Nov 2024 12:20:51 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2024-11-16T12:20:51Z</dc:date>
    <item>
      <title>tFlowToIterate passing database details into</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340050#M108117</link>
      <description>Hi, 
&lt;BR /&gt; 
&lt;BR /&gt;I have written a job previously (with help from guys on here) that reads a list of delete statements from a table and runs them against a database. 
&lt;BR /&gt; 
&lt;BR /&gt;I'd like to expand this job to read some target database details from a table then apply the delete statements, so using the first solution but by adding a tFlowToIterate. 
&lt;BR /&gt; 
&lt;BR /&gt;Screenshots are below; 
&lt;BR /&gt; 
&lt;BR /&gt; - tInformixInput3 - get target details for all target databases 
&lt;BR /&gt; - tFlowToIterate 
&lt;BR /&gt; - tInformixConnection2 - accept database details from tInformixInput3 as input parameters 
&lt;BR /&gt; - tInformixInput2 - read delete statements 
&lt;BR /&gt; - tJavaRow2 - apply deletes to the connection defined in tInformixConnection2 
&lt;BR /&gt; 
&lt;BR /&gt;I get the following error, which is strange because the machine mentioned in the error message is actually my desktop, all the databases are held on other servers. 
&lt;BR /&gt; 
&lt;BR /&gt;Exception in component tInformixConnection_2 
&lt;BR /&gt;java.sql.SQLException: Incorrect password or user com.informix.asf.IfxASFRemoteException: informix@st-iptv05.uk.tiscali.intl is not known on the database server. 
&lt;BR /&gt; at 
&lt;BR /&gt; 
&lt;BR /&gt;I would be grateful for any ideas.</description>
      <pubDate>Sat, 16 Nov 2024 12:20:51 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340050#M108117</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2024-11-16T12:20:51Z</dc:date>
    </item>
    <item>
      <title>Re: tFlowToIterate passing database details into</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340051#M108118</link>
      <description>Sorry,  screenshots here.</description>
      <pubDate>Tue, 28 Feb 2012 08:49:55 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340051#M108118</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-02-28T08:49:55Z</dc:date>
    </item>
    <item>
      <title>Re: tFlowToIterate passing database details into</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340052#M108119</link>
      <description>Hi&lt;BR /&gt;You type wrong strings in tInformixConnection. It should be like "row1.host".&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt;Pedro</description>
      <pubDate>Tue, 28 Feb 2012 08:54:35 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340052#M108119</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-02-28T08:54:35Z</dc:date>
    </item>
    <item>
      <title>Re: tFlowToIterate passing database details into</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340053#M108120</link>
      <description>Hi, 
&lt;BR /&gt;First of all, why doesn't the tInformixInput_1 component use the connection available through tInformixConnection_2 ? 
&lt;BR /&gt; 
&lt;BR /&gt;Second: I think the connection parameters used in the tInformixConnection_2 should not refer to row2. The flow to iterate should put the row into global map variables making them directly accessible to the connection component. However I'm not sure this is the case. 
&lt;BR /&gt;Hope this helps! 
&lt;BR /&gt;Regards, 
&lt;BR /&gt;Arno</description>
      <pubDate>Tue, 28 Feb 2012 08:55:02 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340053#M108120</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-02-28T08:55:02Z</dc:date>
    </item>
    <item>
      <title>Re: tFlowToIterate passing database details into</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340054#M108121</link>
      <description>Hi Pedro, 
&lt;BR /&gt;I do not understand what you mean by your last post stating that a Talend job cannot support a dynamic connection. Isn't a repository based connection as variable as TT1 is trying to use? 
&lt;BR /&gt;I've been using dynamic connection variables for a long time, they're being passed to my jobs as command line parameters, but what's the difference with reading them from a different database (of which you have the credential already of course 
&lt;span class="lia-inline-image-display-wrapper" image-alt="0683p000009MA9p.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/138034i5F552429DA646D6F/image-size/large?v=v2&amp;amp;px=999" role="button" title="0683p000009MA9p.png" alt="0683p000009MA9p.png" /&gt;&lt;/span&gt; 
&lt;BR /&gt;Or am I completely misunderstanding what you are trying to say? 
&lt;BR /&gt;Regards, 
&lt;BR /&gt;Arno</description>
      <pubDate>Tue, 28 Feb 2012 09:00:36 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340054#M108121</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-02-28T09:00:36Z</dc:date>
    </item>
    <item>
      <title>Re: tFlowToIterate passing database details into</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340055#M108122</link>
      <description>Hi Arno 
&lt;BR /&gt;You are right. 
&lt;span class="lia-inline-image-display-wrapper" image-alt="0683p000009MA9p.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/138034i5F552429DA646D6F/image-size/large?v=v2&amp;amp;px=999" role="button" title="0683p000009MA9p.png" alt="0683p000009MA9p.png" /&gt;&lt;/span&gt; 
&lt;BR /&gt;I reproduced it in a wrong way. 
&lt;BR /&gt;Regards, 
&lt;BR /&gt;Pedro</description>
      <pubDate>Tue, 28 Feb 2012 09:04:31 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340055#M108122</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-02-28T09:04:31Z</dc:date>
    </item>
    <item>
      <title>Re: tFlowToIterate passing database details into</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340056#M108123</link>
      <description>guys, thanks for answering; 
&lt;BR /&gt; 
&lt;BR /&gt;firstly I think you do need the global variables, and not just "row1.host" 
&lt;BR /&gt; 
&lt;BR /&gt;I have a database that contains a table that houses all the target database details, and a table that houses a bunch of delete statements. The target details are read by tInformixInput3, the delete statements in tInformixInput2.</description>
      <pubDate>Tue, 28 Feb 2012 09:34:37 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340056#M108123</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-02-28T09:34:37Z</dc:date>
    </item>
    <item>
      <title>Re: tFlowToIterate passing database details into</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340057#M108124</link>
      <description>I think the answer is to set up a bunch of contexts and run a single job many times.  Shame.</description>
      <pubDate>Tue, 28 Feb 2012 16:04:55 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340057#M108124</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-02-28T16:04:55Z</dc:date>
    </item>
    <item>
      <title>Re: tFlowToIterate passing database details into</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340058#M108125</link>
      <description>Hi,
&lt;BR /&gt;I cannot accept this as a solution, there must be a better way to solve this. So, I've tried to recreate your situation, however I don't have an informix database. 
&lt;BR /&gt;My solution seems to be working, that is: I can iterate over a set of connection details, connect to the different databases and perform selects on their tables.
&lt;BR /&gt;Can you show what is inside the tJavaRow component in your screenshots?
&lt;BR /&gt;If you need it I could post an export of my solution, again: no informix on my side, so it's a bit different.
&lt;BR /&gt;Best regards,
&lt;BR /&gt;Arno</description>
      <pubDate>Wed, 29 Feb 2012 07:53:40 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340058#M108125</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-02-29T07:53:40Z</dc:date>
    </item>
    <item>
      <title>Re: tFlowToIterate passing database details into</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340059#M108126</link>
      <description>avdbrink, thank you for helping.
&lt;BR /&gt;Here is the tJavaRow content, as you can see it is picking up the connection detail from tInformixConnection_2 (in turn coming via a globalMap.get from the database connection read.
&lt;BR /&gt;String astring = "Begin work without replication;";
&lt;BR /&gt;String bstring = "; commit;";
&lt;BR /&gt;String cstring = input_row.delete_statement;
&lt;BR /&gt;String delStringtemp = astring.concat(cstring);
&lt;BR /&gt;String delString = delStringtemp.concat(bstring);
&lt;BR /&gt;System.out.println(delString);
&lt;BR /&gt;boolean success = true;
&lt;BR /&gt;java.sql.Connection conn = (java.sql.Connection)globalMap.get("conn_tInformixConnection_2");
&lt;BR /&gt;java.sql.PreparedStatement pstmtDelete_list = null;
&lt;BR /&gt;try{
&lt;BR /&gt;pstmtDelete_list = conn.prepareStatement(delString);
&lt;BR /&gt;}
&lt;BR /&gt;catch (Exception e){
&lt;BR /&gt;success = false;
&lt;BR /&gt;e.printStackTrace();
&lt;BR /&gt;}
&lt;BR /&gt; 
&lt;BR /&gt;if( success &amp;amp;&amp;amp; pstmtDelete_list != null){
&lt;BR /&gt;try {
&lt;BR /&gt;pstmtDelete_list.executeUpdate();
&lt;BR /&gt;System.out.println("List tables truncated"); 
&lt;BR /&gt;}
&lt;BR /&gt;catch (Exception e){
&lt;BR /&gt;e.printStackTrace();
&lt;BR /&gt;}
&lt;BR /&gt;}</description>
      <pubDate>Wed, 29 Feb 2012 09:05:26 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340059#M108126</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-02-29T09:05:26Z</dc:date>
    </item>
    <item>
      <title>Re: tFlowToIterate passing database details into</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340060#M108127</link>
      <description>arno,  would love a screenshot of your solution please.&lt;BR /&gt;john.</description>
      <pubDate>Wed, 29 Feb 2012 09:40:03 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340060#M108127</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-02-29T09:40:03Z</dc:date>
    </item>
    <item>
      <title>Re: tFlowToIterate passing database details into</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340061#M108128</link>
      <description>Hi,&lt;BR /&gt;Couldn't you use a tInformixRow component, instead of the tJavaRow component? I think this could help solving the connection issue. You can activate "Use an existing connection" and put something like the following code in the Query field:&lt;BR /&gt;&lt;PRE&gt;"Begin work without replication; " + row1.delete_statement + "; commit;"&lt;/PRE&gt;&lt;BR /&gt;I've tried this with my sql database, but see no reason why this shouldn't work for Informix.&lt;BR /&gt;Hope this helps!&lt;BR /&gt;Regards,&lt;BR /&gt;Arno</description>
      <pubDate>Wed, 29 Feb 2012 10:08:50 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340061#M108128</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-02-29T10:08:50Z</dc:date>
    </item>
    <item>
      <title>Re: tFlowToIterate passing database details into</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340062#M108129</link>
      <description>Hi,
&lt;BR /&gt;I read about your question for screen shots just after my last post, but here they come:
&lt;BR /&gt;First screenshot shows an overview of the job. For testing purpose I added a Rowgenerator to fill 2 tables in 2 different schemes, you can of course ignore this.
&lt;BR /&gt;tMysqlInput_1 reads connection details from a table named connections Screen 2.
&lt;BR /&gt;On screen 3 the connection details are set into variables using the flow to iterate
&lt;BR /&gt;The tMysqlConnection_1 then uses these connection details in screen 4, and the tMysqlInput then uses this connection in screen 5
&lt;BR /&gt;Screen 6 finally shows the use of tMysqlRow which executes the statement on the existing connection tMysqlConnection_1. 
&lt;BR /&gt;You could of course use an additional connection to perform the delete actions on, this would require an additional tMysqlConnection component, and some extra connection details in the first database.
&lt;BR /&gt;Hope this makes my solution more clear.
&lt;BR /&gt;Best regards,
&lt;BR /&gt;Arno</description>
      <pubDate>Wed, 29 Feb 2012 10:23:36 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340062#M108129</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-02-29T10:23:36Z</dc:date>
    </item>
    <item>
      <title>Re: tFlowToIterate passing database details into</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340063#M108130</link>
      <description>Arno,   many thanks for the screenshots and suggestions,  I'm working on this today,  and will let you know how I get on.  John.</description>
      <pubDate>Wed, 29 Feb 2012 11:49:42 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340063#M108130</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-02-29T11:49:42Z</dc:date>
    </item>
    <item>
      <title>Re: tFlowToIterate passing database details into</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340064#M108131</link>
      <description>Success !!! Arno, many thanks for your help, I'm up and running. 
&lt;BR /&gt; 
&lt;BR /&gt;A database issue was causing problems, the error message was not ideal, but working against your solution allowed me to track through and find the issue. 
&lt;BR /&gt; 
&lt;BR /&gt;Thanks again.</description>
      <pubDate>Wed, 29 Feb 2012 14:56:30 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340064#M108131</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-02-29T14:56:30Z</dc:date>
    </item>
    <item>
      <title>Re: tFlowToIterate passing database details into</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340065#M108132</link>
      <description>Great that it worked out!&lt;BR /&gt;I'm glad I could help.&lt;BR /&gt;Best regards,&lt;BR /&gt;Arno</description>
      <pubDate>Wed, 29 Feb 2012 15:06:50 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340065#M108132</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-02-29T15:06:50Z</dc:date>
    </item>
    <item>
      <title>Re: tFlowToIterate passing database details into</title>
      <link>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340066#M108133</link>
      <description>Here's some clarity on why this didnt work the first time around, but does work with the tDBConnection components:
&lt;BR /&gt;The connection is established when the "Start" section of the components code is executed. Since your entire job was a single subjob, the Start section initializes only once, and youre stuck with whatever values were present when the job started.
&lt;BR /&gt;You can get around that by using a tDBConnection component-- which makes the connection in the "Main" section of its code, or by moving the database components into their own job.</description>
      <pubDate>Wed, 29 Feb 2012 20:48:10 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/tFlowToIterate-passing-database-details-into/m-p/2340066#M108133</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-02-29T20:48:10Z</dc:date>
    </item>
  </channel>
</rss>

