<?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>Update a form field with linked data source info from a multi-select field</title><link>https://www.infopathdev.com:443/forums/thread/64838.aspx</link><pubDate>Fri, 04 Mar 2011 19:37:08 GMT</pubDate><guid isPermaLink="false">033a2e2d-04e2-4a9d-be01-a4634161eefd:64838</guid><dc:creator>troywilfred</dc:creator><slash:comments>0</slash:comments><comments>https://www.infopathdev.com:443/forums/thread/64838.aspx</comments><wfw:commentRss>https://www.infopathdev.com:443/forums/commentrss.aspx?SectionID=44&amp;PostID=64838</wfw:commentRss><description>&lt;p&gt;So I&amp;#39;m driving myself crazy with a problem I can&amp;#39;t seem to find solutions for:&lt;/p&gt;
&lt;p&gt;I have a&amp;nbsp; multi-select list box (Teams_Impacted) that gets data from a sharepoint list (Business Units).&amp;nbsp; After I have selected the Business Unit names (BUName), I want to update a text field (Approvals) with the selected BUNames and associated data in for each BUName (Project Officer or PO).&amp;nbsp; I wanted to use&amp;nbsp;&amp;nbsp;msoxd_my_Teams_Impacted_OnAfterChange(eventObj) but it did not fire so I used XDocument_OnContextChange(eventObj) ... See below for code&lt;/p&gt;
&lt;p&gt;&amp;#39;***begin code&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Sub XDocument_OnContextChange(eventObj) &lt;/p&gt;
&lt;p&gt;&amp;nbsp; If eventobj.context.nodename &amp;lt;&amp;gt; &amp;quot;BUName&amp;quot; then &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; strHold = &amp;quot;&amp;quot; &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; On Error Resume Next &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; set objNodes = XDocument.DOM.selectNodes(&amp;quot;/my:myFields/my:Team_Impact_List/my:Teams_Impacted&amp;quot;)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; For each node in objNodes &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If node.text &amp;lt;&amp;gt; &amp;quot;&amp;quot; then &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set objBUNode = XDocument.GetDOM(&amp;quot;Business Units&amp;quot;).selectSingleNode(&amp;quot;/dfs:myFields/dfs:dataFields/dfs:Business_Units/@PO[../@BUName = &amp;#39;&amp;quot; &amp;amp; node.Text &amp;amp;&amp;quot;&amp;#39;]&amp;quot;)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If err.number &amp;lt;&amp;gt; 0 then &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; XDocument.UI.Alert(&amp;quot;Error in PO Get&amp;quot; &amp;amp; &amp;quot; Error &amp;quot; &amp;amp; err.description) &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;err.Clear &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End if&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;strNew = node.Text &amp;amp; objBUnode.Text &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;If err.number &amp;lt;&amp;gt; 0 then &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;xDocument.UI.Alert(&amp;quot;Error in concat&amp;quot; &amp;amp; &amp;quot; Error &amp;quot; &amp;amp; err.description) &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; err.Clear &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;End if &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strHold = strHold &amp;amp; strNew &amp;amp; &amp;quot; &amp;quot; &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;End if &lt;/p&gt;
&lt;p&gt;&amp;nbsp; Next &lt;/p&gt;
&lt;p&gt;&amp;nbsp; set objNodes = XDocument.DOM.selectSingleNode(&amp;quot;/my:myFields/my:Approvals&amp;quot;) &lt;/p&gt;
&lt;p&gt;&amp;nbsp; If strHold = &amp;quot;&amp;quot; then &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strHold = &amp;quot;None&amp;quot; &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; objNodes.Text = strHold&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; End if&amp;nbsp;&lt;/p&gt;
&lt;p&gt;End Sub&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;#39;***end code&lt;/p&gt;
&lt;p&gt;The line -&amp;gt;set objBUNode = XDocument.GetDOM(&amp;quot;Business Units&amp;quot;).selectSingleNode(&amp;quot;/dfs:myFields/dfs:dataFields/dfs:Business_Units/@PO[../@BUName = &amp;#39;&amp;quot; &amp;amp; node.Text &amp;amp;&amp;quot;&amp;#39;]&amp;quot;)&amp;nbsp;&amp;lt;- does not return the PO field node of the current BUName in the loop.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;Please help?&lt;/p&gt;
&lt;p&gt;Troy&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description></item></channel></rss>