<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://www.infopathdev.com:443/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Data Connections</title><link>https://www.infopathdev.com:443/forums/44.aspx</link><description> </description><dc:language>en</dc:language><generator>CommunityServer 2007 SP3 (Build: 31118.962)</generator><item><title>Re: Combining multiple secondary data sources</title><link>https://www.infopathdev.com:443/forums/thread/26803.aspx</link><pubDate>Wed, 27 Feb 2008 07:26:04 GMT</pubDate><guid isPermaLink="false">033a2e2d-04e2-4a9d-be01-a4634161eefd:26803</guid><dc:creator>knudde</dc:creator><slash:comments>0</slash:comments><comments>https://www.infopathdev.com:443/forums/thread/26803.aspx</comments><wfw:commentRss>https://www.infopathdev.com:443/forums/commentrss.aspx?SectionID=44&amp;PostID=26803</wfw:commentRss><description>&lt;p&gt;Hi Greg,&lt;/p&gt;
&lt;p&gt;you got a point, but my first oracle Web service is already doing a &amp;#39;select&amp;#39; across multiple tables.&lt;/p&gt;
&lt;p&gt;The reason i had to go with the extra column and joins etc is because the table, containing the information on current machine assignments for a given user, is hosted on a different Oracle Server /Instance. I&amp;#39;m not aware of any Select statement that allows me to join information from 2 different tables on 2 different servers.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;It&amp;#39;s indeed slow(er), and ran into issues getting the InfoPath timeout settings correctly (it can take over 15 min due to the complex parent-child cascading involved)...&lt;/p&gt;
&lt;p&gt;Or rather,&amp;nbsp; issues finding the right syntax to set the timeout settings correctly. :O&lt;/p&gt;
&lt;p&gt;I&amp;#39;ve appreciated your time and effort to give feedback&lt;/p&gt;</description></item><item><title>Re: Combining multiple secondary data sources</title><link>https://www.infopathdev.com:443/forums/thread/26789.aspx</link><pubDate>Tue, 26 Feb 2008 23:13:46 GMT</pubDate><guid isPermaLink="false">033a2e2d-04e2-4a9d-be01-a4634161eefd:26789</guid><dc:creator>Greg Collins</dc:creator><slash:comments>0</slash:comments><comments>https://www.infopathdev.com:443/forums/thread/26789.aspx</comments><wfw:commentRss>https://www.infopathdev.com:443/forums/commentrss.aspx?SectionID=44&amp;PostID=26789</wfw:commentRss><description>&lt;p&gt;Glad you got it working... but it seems as though there is unnecessarily a lot of extra work going on that shouldn&amp;#39;t need to be.&lt;/p&gt;
&lt;p&gt;I&amp;#39;m not familiar with Oracle, but the database should have some sort of a JOIN command that would allow you to get all the information you need with a single Web service, where it queries both tables, joining them together (if it even needs to do a JOIN and not just get a count), and return all the necessary data from a single Web service call.&lt;/p&gt;
&lt;p&gt;Look into it... could be much easier in the long run and save some time by only making a single call rather than two.&lt;/p&gt;</description></item><item><title>Re: Combining multiple secondary data sources</title><link>https://www.infopathdev.com:443/forums/thread/26760.aspx</link><pubDate>Tue, 26 Feb 2008 14:24:42 GMT</pubDate><guid isPermaLink="false">033a2e2d-04e2-4a9d-be01-a4634161eefd:26760</guid><dc:creator>knudde</dc:creator><slash:comments>0</slash:comments><comments>https://www.infopathdev.com:443/forums/thread/26760.aspx</comments><wfw:commentRss>https://www.infopathdev.com:443/forums/commentrss.aspx?SectionID=44&amp;PostID=26760</wfw:commentRss><description>&lt;p&gt;Exactly, i got it working with calling on the other webservice&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;OLD&amp;nbsp; CODE&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;---snip-----&lt;/p&gt;&lt;font color="#008000" size="2"&gt;
&lt;p&gt;// Create the adapter and fill the DataSet&lt;/p&gt;&lt;/font&gt;&lt;font size="2"&gt;System.Data.OracleClient.&lt;/font&gt;&lt;font color="#008080" size="2"&gt;OracleDataAdapter&lt;/font&gt;&lt;font size="2"&gt; adapter =&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;new&lt;/font&gt;&lt;font size="2"&gt; System.Data.OracleClient.&lt;/font&gt;&lt;font color="#008080" size="2"&gt;OracleDataAdapter&lt;/font&gt;&lt;font size="2"&gt;(comm);&lt;/p&gt;&lt;/font&gt;&lt;font color="#008080" size="2"&gt;DataSet&lt;/font&gt;&lt;font size="2"&gt; dsRates = &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;new&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#008080" size="2"&gt;DataSet&lt;/font&gt;&lt;font size="2"&gt;();&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;adapter.Fill(dsRates);&lt;/p&gt;&lt;/font&gt;&lt;font size="2"&gt;
&lt;p&gt;&lt;/font&gt;&lt;font color="#008000" size="2"&gt;// Convert the DataSet into XmlNode&lt;/p&gt;&lt;/font&gt;&lt;font size="2"&gt;
&lt;p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;return&lt;/font&gt;&lt;font size="2"&gt; DataSetToXmlNode(dsRates);&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;}&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;&lt;/font&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;-----snip------&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;&lt;/font&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;&lt;strong&gt;&amp;nbsp;NEW CODE&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;---snip-----&lt;/p&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;font size="2"&gt;
&lt;p&gt;&lt;/font&gt;&lt;font color="#008000" size="2"&gt;// Create the adapter and fill the DataSet&lt;/p&gt;&lt;/font&gt;&lt;font size="2"&gt;System.Data.OracleClient.&lt;/font&gt;&lt;font color="#008080" size="2"&gt;OracleDataAdapter&lt;/font&gt;&lt;font size="2"&gt; adapter =&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;new&lt;/font&gt;&lt;font size="2"&gt; System.Data.OracleClient.&lt;/font&gt;&lt;font color="#008080" size="2"&gt;OracleDataAdapter&lt;/font&gt;&lt;font size="2"&gt;(comm);&lt;/p&gt;&lt;/font&gt;&lt;font color="#008080" size="2"&gt;DataSet&lt;/font&gt;&lt;font size="2"&gt; dsRates = &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;new&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#008080" size="2"&gt;DataSet&lt;/font&gt;&lt;font size="2"&gt;();&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;adapter.Fill(dsRates);&lt;/p&gt;
&lt;p&gt;//Now select the table from the dataset and add a column in which we&amp;#39;ll store the other lookup information&amp;#39;&lt;/p&gt;&lt;/font&gt;&lt;font color="#008080" size="2"&gt;DataTable&lt;/font&gt;&lt;font size="2"&gt; Dt = dsRates.Tables[0];&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;Dt.Columns.Add(&lt;/font&gt;&lt;font color="#800000" size="2"&gt;&amp;quot;machines&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;,&lt;/font&gt;&lt;font color="#008080" size="2"&gt;Type&lt;/font&gt;&lt;font size="2"&gt;.GetType(&lt;/font&gt;&lt;font color="#800000" size="2"&gt;&amp;quot;System.String&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;));&lt;/p&gt;&lt;/font&gt;&lt;font color="#008080" size="2"&gt;DataRowCollection&lt;/font&gt;&lt;font size="2"&gt; tableRows=Dt.Rows;&amp;nbsp;&amp;nbsp; // tablerows in&amp;nbsp; a arraycollection&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;int&lt;/font&gt;&lt;font size="2"&gt; colteller = Dt.Columns.Count;&amp;nbsp;&amp;nbsp;&amp;nbsp; //count number of columns&lt;/p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;for&lt;/font&gt;&lt;font size="2"&gt; (&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;int&lt;/font&gt;&lt;font size="2"&gt; teller= 0; teller &amp;lt; tableRows.Count; teller++)&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;{&lt;/p&gt;&lt;/font&gt;&lt;font color="#008080" size="2"&gt;DataRow&lt;/font&gt;&lt;font size="2"&gt; myrow = tableRows[teller];&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;&lt;/font&gt;&lt;font color="#008080" size="2"&gt;Object&lt;/font&gt;&lt;font size="2"&gt;[] rowItems = myrow.ItemArray;&lt;/p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;string&lt;/font&gt;&lt;font size="2"&gt; Corp = Dt.Rows[teller][3].ToString();&amp;nbsp;&amp;nbsp; // my lookup field to pass to the other Webservice sits in the 4th column&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;string&lt;/font&gt;&lt;font size="2"&gt; x = retrieve_machines(Corp);&amp;nbsp;&amp;nbsp; //here i call my other webservices with the Corporate_ID as a parameter and store the output in a string&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;Dt.Rows[teller][colteller-1] = x;&amp;nbsp; // assign the string to the last column&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;}&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/font&gt;&lt;font color="#008000" size="2"&gt;// Convert the DataSet into XmlNode&lt;/p&gt;&lt;/font&gt;&lt;font size="2"&gt;
&lt;p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;return&lt;/font&gt;&lt;font size="2"&gt; DataSetToXmlNode(dsRates);&lt;/p&gt;&lt;/font&gt;
&lt;p&gt;&amp;nbsp;---snip-----&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;tnxs for the feedback&lt;/p&gt;&lt;/font&gt;&lt;/font&gt;</description></item><item><title>Re: Combining multiple secondary data sources</title><link>https://www.infopathdev.com:443/forums/thread/26725.aspx</link><pubDate>Tue, 26 Feb 2008 00:52:28 GMT</pubDate><guid isPermaLink="false">033a2e2d-04e2-4a9d-be01-a4634161eefd:26725</guid><dc:creator>Greg Collins</dc:creator><slash:comments>0</slash:comments><comments>https://www.infopathdev.com:443/forums/thread/26725.aspx</comments><wfw:commentRss>https://www.infopathdev.com:443/forums/commentrss.aspx?SectionID=44&amp;PostID=26725</wfw:commentRss><description>&lt;p&gt;What you need to do is to have your Web service return the combined data. It should query your Oracle database, joining the two tables appropriately, BEFORE returning the data back to your form. That way, you only make a single WS call and it returns the combined data that you need to fill your table in one fell swoop.&lt;/p&gt;</description></item><item><title>Combining multiple secondary data sources</title><link>https://www.infopathdev.com:443/forums/thread/26702.aspx</link><pubDate>Sat, 23 Feb 2008 16:40:52 GMT</pubDate><guid isPermaLink="false">033a2e2d-04e2-4a9d-be01-a4634161eefd:26702</guid><dc:creator>knudde</dc:creator><slash:comments>0</slash:comments><comments>https://www.infopathdev.com:443/forums/thread/26702.aspx</comments><wfw:commentRss>https://www.infopathdev.com:443/forums/commentrss.aspx?SectionID=44&amp;PostID=26702</wfw:commentRss><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;I&amp;#39;ve got a couple of webservices running that i use to send and receive information from.&lt;/p&gt;
&lt;p&gt;The are all connecting to an oracle database.&lt;/p&gt;
&lt;p&gt;1st web service (VP): fetching all VP&amp;#39;s for a given function ( filtering on Corporate ID (corpid))&lt;/p&gt;
&lt;p&gt;2nd (fetchall) service is running an oracle query to fetch&amp;nbsp;all the siblings from a given VP (&amp;nbsp; &lt;font size="2"&gt;SELECT&amp;nbsp; corpid,CN&amp;nbsp; FROM *a table*&amp;nbsp; CONNECT BY PRIOR corpid=reportsto START WITH corpid= :Parameter )&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;so far so good, i can do a drop down list in Infopath with all the VP&amp;#39;s and then retrieve their CorpID and use an input parameter for the 2nd webservice (fetchall) to retrieve all the siblings.&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;If i drag and drop the secondary datasource (fetchall) onto infopath , it gives me a repeating table that i can then fill with a click on a button.&lt;/p&gt;
&lt;p&gt;works as well, i can get a filled out table of about 1000 items in some cases, see screenshot below&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;img title="infopath form" style="WIDTH:1065px;HEIGHT:286px;" height="450" alt="infopath form" src="http://users.pandora.be/youyounet/infopath.bmp" width="1335" /&gt;&lt;/p&gt;
&lt;p&gt;now comes the tricky part.&lt;/p&gt;
&lt;p&gt;Each of these employees has also a corpID(not visible on the tabled) , from that filled out table i want to perform a lookup onto another webservice (machines) that will take the corpid as input and return the current machines this particular user is using.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;The goal is to post this information in the field after the &amp;quot;Sum&amp;quot; field, which is a (meaningless) field coming from the original fetchall datasource&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;a) how can i combine this in this repeating table? so 2 differerent secondary datasources glued together?&lt;/p&gt;
&lt;p&gt;b) how can i instruct infopath to take, once the table has been filled in, from eachline the CorpID field and use it to query the secondary datasource (machines)?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;for reference, heres the secondary datasource , taking corpid as input and return type and model)&lt;/p&gt;
&lt;p&gt;&lt;img title="secondary datasource" style="WIDTH:720px;HEIGHT:450px;" height="450" alt="secondary datasource" src="http://users.pandora.be/youyounet/infopath2.bmp" width="720" /&gt;&lt;/p&gt;
&lt;p&gt;Perhaps what i want to do (combine 2 different data sources into 1 repeating table (that is completely filled automatically- no &amp;quot;add new item&amp;#39; please- )) not possible at all?.&lt;/p&gt;
&lt;p&gt;I rather know then instead of looking for a solution&amp;nbsp; in vein&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;&lt;/font&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;tnxs&lt;/p&gt;
&lt;p&gt;K&lt;/p&gt;</description></item></channel></rss>