<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/" version="2.0">
    <channel>
        <title>Lightning Tools Blog</title>
        <link>http://lightningtools.com/blog/Default.aspx</link>
        <description>SharePoint Tools, Web Parts and Discussions</description>
        <language>en-GB</language>
        <copyright>Lightning Tools</copyright>
        <managingEditor>support@lightningtools.com</managingEditor>
        <generator>Subtext Version 1.9.5.177</generator>
        <image>
            <title>Lightning Tools Blog</title>
            <url>http://lightningtools.com/blog/images/RSS2Image.gif</url>
            <link>http://lightningtools.com/blog/Default.aspx</link>
            <width>77</width>
            <height>60</height>
        </image>
        <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/LightningToolsBlog" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="lightningtoolsblog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">LightningToolsBlog</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://feedburner.google.com</feedburner:feedburnerHostname><item>
            <title>Social Squared version 6.1 release</title>
            <link>http://lightningtools.com/blog/archive/2012/02/09/social-squared-version-6.1-release.aspx</link>
            <description>&lt;h1&gt;Social Squared 6.1 has been released&lt;/h1&gt;  &lt;p&gt;A new version of Social Squared has been released with a couple of bug fixes and a few nice new features to kick start February&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.lightningtools.com/pages/downloads/socialsquared.aspx"&gt;Click here to download Social Squared.&lt;/a&gt;&lt;/p&gt;  &lt;h1&gt;What’s new?&lt;/h1&gt;  &lt;h2&gt;Email Digest&lt;/h2&gt;  &lt;p&gt;In the latest release of Social Squared users have the ability to sign up for digest emails to notify them of changes inside of the forums. It was always possible to have an email alert to come through when someone replies or a new topic is created but now it is possible to daily or weekly notifications instead!   &lt;br /&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e99db6ec1158_B770/clip_image002_2.gif"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e99db6ec1158_B770/clip_image002_thumb.gif" width="244" height="136" /&gt;&lt;/a&gt;    &lt;br /&gt;The emails come through with a nice listing of what has changed    &lt;br /&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e99db6ec1158_B770/clip_image004_2.gif"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image004" border="0" alt="clip_image004" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e99db6ec1158_B770/clip_image004_thumb.gif" width="244" height="177" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h2&gt;Email Timer Job Log&lt;/h2&gt;  &lt;p&gt;It is now easier to view information from the time job log via Site Settings. Any issues with sending or receiving emails to the Social Squared forums can be easily identified. If you want a reminder of what you can do with Social Squared and email check out the short video from Nick Swan here: &lt;a href="http://lightningtools.com/blog/archive/2011/01/27/social-squaredndashreply-via-email.aspx"&gt;http://lightningtools.com/blog/archive/2011/01/27/social-squaredndashreply-via-email.aspx&lt;/a&gt;&lt;/p&gt;  &lt;h2&gt;&lt;b&gt;Search Forum Group&lt;/b&gt;&lt;/h2&gt;  &lt;p&gt;It is possible to now restrict searches using the Social Squared search to just the current forum group making it easier to find the content you want.&lt;/p&gt;  &lt;h2&gt;&lt;b&gt;Next Version&lt;/b&gt;&lt;/h2&gt;  &lt;p&gt;We’re working really hard behind the scenes here at Lightning Tools to bring some great new improvements to Social Squared version 7! As soon as we can we will make details of these exciting additions available on our blog&lt;/p&gt;  &lt;p&gt;If you have any feedback send it through to &lt;a href="mailto:contact@lightningtools.com"&gt;contact@lightningtools.com&lt;/a&gt; and I will see what you have to say!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.lightningtools.com/pages/downloads/socialsquared.aspx"&gt;Click here to download Social Squared.&lt;/a&gt;&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://twitter.com/phillduffy" target="_blank"&gt;&amp;lt;Phill /&amp;gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/312.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=NC0SyK9PLio:0yGUbBsJ2ME:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=NC0SyK9PLio:0yGUbBsJ2ME:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2012/02/09/social-squared-version-6.1-release.aspx</guid>
            <pubDate>Thu, 09 Feb 2012 13:26:59 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/312.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2012/02/09/social-squared-version-6.1-release.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/312.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Using Twilio with SharePoint to send SMS messages</title>
            <category>NickSwan</category>
            <category>SharePoint 2010</category>
            <link>http://lightningtools.com/blog/archive/2012/02/03/using-twilio-with-sharepoint-to-send-sms-messages.aspx</link>
            <description>&lt;p&gt;Twilio is a Software as a Service platform that you can use when you want to integrate voice or SMS text messages into your applications. There are a few instances where this could be interesting for SharePoint such as sending SMS messages when certain things happen in SharePoint either through event handlers or workflows. Let’s see how we can easily register for an account, setup a number and start getting SharePoint sending SMS messages using an Event Handler!&lt;/p&gt;  &lt;p&gt;1, Visit &lt;a href="http://www.twilio.com"&gt;www.twilio.com&lt;/a&gt; and click Try Twilio button – the good news is at the time of writing you get $30 of credit to try Twilio out!&lt;/p&gt;  &lt;p&gt;2, Once logged in click on the ‘Upgrade Now’ link to add a credit card to your Twilio account and add a small amount, say $20. You can’t purchase a phone number to send messages from with the trial account (you still get $30 free though once you upgrade)&lt;/p&gt;  &lt;p&gt;3, Once upgraded, click Numbers from the main menu and then the ‘Buy a new Twilio Number’ link.&lt;/p&gt;  &lt;p&gt;4, You can put in an area code if you like for your number to be based off, or if like me you are in the UK just press search and it will give you numbers to chose from with a London area code&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Using-Twilio-with-SharePoint_C626/image_14.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Buy a Twilio number" border="0" alt="Buy a Twilio number" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Using-Twilio-with-SharePoint_C626/image_thumb_6.png" width="244" height="173" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;[click the images for a larger view]&lt;/p&gt;  &lt;p&gt;5, Find the number you like the look of, and click the ‘Buy’ button to grab it! &lt;/p&gt;  &lt;p&gt;6, We need to get our AccountId and Password to use later on in our code. Click on the Dashboard link in Twilio. At the top you’ll see your AccountId, and if you click the padlock to the right your account password will also be displayed. Copy these down for later…&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Using-Twilio-with-SharePoint_C626/image_16.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Get your Twilio account details" border="0" alt="Get your Twilio account details" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Using-Twilio-with-SharePoint_C626/image_thumb_7.png" width="411" height="68" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;7, The Twilio rest API all runs under https which is a good thing, but means a little extra configuration if you want to use it with SharePoint 2010. We’ll need to do an extra step of uploading the client certificate to SharePoint 2010 for SharePoint to trust the url. Open the following url in Firefox:&lt;/p&gt;  &lt;p&gt;&lt;a title="https://api.twilio.com/2010-04-01" href="https://api.twilio.com/2010-04-01"&gt;https://api.twilio.com/2010-04-01&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;8, Click on the Twilio icon in the address bar that indicates the certificate for this url is trusted&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Using-Twilio-with-SharePoint_C626/image_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Click the Twilio icon in Firefox" border="0" alt="Click the Twilio icon in Firefox" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Using-Twilio-with-SharePoint_C626/image_thumb.png" width="138" height="60" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;9, In the panel that opens up click on the ‘More Information’ button:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Using-Twilio-with-SharePoint_C626/image_4.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Click the More Information button" border="0" alt="Click the More Information button" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Using-Twilio-with-SharePoint_C626/image_thumb_1.png" width="244" height="148" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;10, In the Page Information window that opens up click on ‘View Certificate’&lt;/p&gt;  &lt;p&gt;11, In the certificate viewer window move to the details tab, and then click the top line in the ‘Certificate Hierarchy’ window and then click the ‘Export’ button. This should allow you to save the certificate.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Using-Twilio-with-SharePoint_C626/image_6.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Export the Twilio certificate" border="0" alt="Export the Twilio certificate" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Using-Twilio-with-SharePoint_C626/image_thumb_2.png" width="204" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;12, Now we can add the certificate to SharePoint 2010. Open up Central Administration, Click on the Security Link and then ‘Manage Trust’.&lt;/p&gt;  &lt;p&gt;13, Click on the New button in the ribbon and a dialog form will pop up. Give the trust relationship a name of Twilio and browse to the certificate file you downloaded in step 10. Finally click on OK.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Using-Twilio-with-SharePoint_C626/image_8.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="In Central Administration add the certificate" border="0" alt="In Central Administration add the certificate" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Using-Twilio-with-SharePoint_C626/image_thumb_3.png" width="244" height="221" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;14, Hurrah – now we can start writing some code. Open up Visual Studio 2010 and create a new SharePoint 2010 Event Receiver project.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Using-Twilio-with-SharePoint_C626/image_10.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Create a new SharePoint Event Receiver project" border="0" alt="Create a new SharePoint Event Receiver project" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Using-Twilio-with-SharePoint_C626/image_thumb_4.png" width="244" height="170" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;15, In the proceeding windows that show as part of creating your Visual Studio project chose to deploy it as a Farm Solution.&lt;/p&gt;  &lt;p&gt;16, When setting up the event receiver, pick List Item Events, the Announcement list type and finally the ‘An item was added’ event type – then click Finish&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Using-Twilio-with-SharePoint_C626/image_12.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Connect to the announcement list and the added event" border="0" alt="Connect to the announcement list and the added event" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Using-Twilio-with-SharePoint_C626/image_thumb_5.png" width="244" height="193" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;17, Open EventReceiver1.cs and paste in the following code:&lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:025a1056-47cf-4c50-9878-24bb63094afa" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #0000FF;"&gt;private&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; CreateFormattedPostRequest(Dictionary&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt;, &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt; values)
{
    var paramterBuilder &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; StringBuilder();
    var counter &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800080;"&gt;0&lt;/span&gt;&lt;span style="color: #000000;"&gt;;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;foreach&lt;/span&gt;&lt;span style="color: #000000;"&gt; (var value &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;in&lt;/span&gt;&lt;span style="color: #000000;"&gt; values)
    {
        paramterBuilder.AppendFormat(&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;{0}={1}&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;, value.Key, HttpUtility.UrlEncode(value.Value));

        &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;if&lt;/span&gt;&lt;span style="color: #000000;"&gt; (counter &lt;/span&gt;&lt;span style="color: #000000;"&gt;!=&lt;/span&gt;&lt;span style="color: #000000;"&gt; values.Count &lt;/span&gt;&lt;span style="color: #000000;"&gt;-&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800080;"&gt;1&lt;/span&gt;&lt;span style="color: #000000;"&gt;)
        {
            paramterBuilder.Append(&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;&amp;amp;&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;);
        }

        counter&lt;/span&gt;&lt;span style="color: #000000;"&gt;++&lt;/span&gt;&lt;span style="color: #000000;"&gt;;
    }

    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;return&lt;/span&gt;&lt;span style="color: #000000;"&gt; paramterBuilder.ToString();
}

&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;private&lt;/span&gt;&lt;span style="color: #000000;"&gt; HttpWebRequest CreateWebRequest(&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; endPoint, Int32 contentLength)
{
    var request &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; (HttpWebRequest)WebRequest.Create(endPoint);

    request.Method &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;POST&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;;
    request.ContentLength &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; contentLength;
    request.ContentType &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;application/x-www-form-urlencoded&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;;

    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;return&lt;/span&gt;&lt;span style="color: #000000;"&gt; request;
}  &lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;These two small helper methods will help us format out rest requests to the Twilio rest web service. &lt;a href="http://devlicio.us/blogs/derik_whittaker/archive/2009/02/14/posting-data-to-a-rest-service-using-c.aspx" target="_blank"&gt;Thanks to Derik for these two sections of code…&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;18, Add the following code to your ItemAdded method &lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:f101b18d-7df2-458a-9dcb-74b9c57d4b05" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; accountId &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;""&lt;/span&gt;&lt;span style="color: #000000;"&gt;;
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; password &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;""&lt;/span&gt;&lt;span style="color: #000000;"&gt;;
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; from &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;""&lt;/span&gt;&lt;span style="color: #000000;"&gt;;
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; to &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;""&lt;/span&gt;&lt;span style="color: #000000;"&gt;;

&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; title &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; properties.ListItem[&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;Title&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;].ToString();

&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; endPoint &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt;.Format(&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;https://api.twilio.com/2010-04-01/Accounts/{0}/SMS/Messages.xml&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;, accountId);


Dictionary&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt;, &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt; parameters &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; Dictionary&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt;, &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;();
parameters.Add(&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;From&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;, from);
parameters.Add(&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;To&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;, to);
parameters.Add(&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;Body&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;, title);

var populatedEndPoint &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; CreateFormattedPostRequest(parameters);
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;byte&lt;/span&gt;&lt;span style="color: #000000;"&gt;[] bytes &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; Encoding.UTF8.GetBytes(populatedEndPoint);

HttpWebRequest request &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; CreateWebRequest(endPoint, bytes.Length);

request.Credentials &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; NetworkCredential(accountId, password);

&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;using&lt;/span&gt;&lt;span style="color: #000000;"&gt; (var requestStream &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; request.GetRequestStream())
{
    requestStream.Write(bytes, &lt;/span&gt;&lt;span style="color: #800080;"&gt;0&lt;/span&gt;&lt;span style="color: #000000;"&gt;, bytes.Length);
}

&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;using&lt;/span&gt;&lt;span style="color: #000000;"&gt; (var response &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; (HttpWebResponse)request.GetResponse())
{
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;if&lt;/span&gt;&lt;span style="color: #000000;"&gt; (response.StatusCode &lt;/span&gt;&lt;span style="color: #000000;"&gt;!=&lt;/span&gt;&lt;span style="color: #000000;"&gt; HttpStatusCode.Created)
    {
        &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; message &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; String.Format(&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;POST failed. Received HTTP {0}&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;, response.StatusCode);
        &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;throw&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; ApplicationException(message);
    }
}

&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;base&lt;/span&gt;&lt;span style="color: #000000;"&gt;.ItemAdded(properties);&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;Set the values of accountId and password to the values we got in step 6. The value for ‘from’ should be the number you bought at Twilio, and the ‘to’ value is the number you want to send an SMS to.&lt;/p&gt;

&lt;p&gt;19, Tada – we are good to go. Press F5 and Visual Studio will compile and deploy your event receiver to SharePoint. If you do not have an Announcements list at the site Visual Studio opens up simply create one. Then go ahead and add an announcement and wait for the SMS text message to come through! Woot!&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;Hopefully this has given you a taster to see how easy it is to use Twilio to send SMS text messages from SharePoint. If you have any other ideas how this service would be useful with SharePoint leave them in the comments!&lt;/p&gt;

&lt;p&gt;&amp;lt;&lt;a href="http://www.twitter.com/nickswan" target="_blank"&gt;nickswan&lt;/a&gt;/&amp;gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/311.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=AaByfEXNpmA:zi0ETFFFTrw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=AaByfEXNpmA:zi0ETFFFTrw:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2012/02/03/using-twilio-with-sharepoint-to-send-sms-messages.aspx</guid>
            <pubDate>Fri, 03 Feb 2012 10:04:45 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/311.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2012/02/03/using-twilio-with-sharepoint-to-send-sms-messages.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/311.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Mobile solutions for on premise data with Azure Service Bus</title>
            <category>Azure</category>
            <category>HTML5</category>
            <category>Mobile</category>
            <category>NickSwan</category>
            <link>http://lightningtools.com/blog/archive/2012/01/23/mobile-solutions-for-on-premise-data-with-azure-service-bus.aspx</link>
            <description>&lt;p&gt;&lt;strong&gt;&lt;u&gt;Note: &lt;/u&gt;I’m learning about Azure and Mobile Web App development as I go along. If you see any mistakes or better ways of doing things please drop me an email : &lt;a href="mailto:nick@lightningtools.com"&gt;nick@lightningtools.com&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;With more people becoming mobile workers, or working from home - business data that is stored away in on premise databases needs to be set free for people to use wherever they are, on whatever device they like. Accomplishing this can be a challenge for any size organization, opening firewall ports, active directory federated services, WCF service endpoints etc...&lt;/p&gt;  &lt;p&gt;&lt;u&gt;Setting the data free&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;If you have an on premise data source that you want to make available to mobile workers you do have a number of options:&lt;/p&gt;  &lt;p&gt;1, SharePoint 2010, BCS + SharePoint Workspace    &lt;br /&gt;This is good for users who may not always have Internet connectivity as they can work offline and resync&lt;/p&gt;  &lt;p&gt;2, Present the data to the outside world through a WCF service hosted on premise.    &lt;br /&gt;This does mean exposing parts of the network to the outside world and needing to manage authentication to the WCF service. Certainly not impossible, but it does present challenges and risks.&lt;/p&gt;  &lt;p&gt;3, Using bits and pieces now available in Windows Azure    &lt;br /&gt;Using the Service Bus, we can expose the data through the firewall without needing to open up any extra ports. The authentication and security is managed through Azure Service Bus and ACS.&lt;/p&gt;  &lt;p&gt;I'm presuming we are working with a business that does not want to configure and setup ADFSv2. With many companies these days allowing employees to buy and use their own mobile or tablet devices managing these internally becomes a challenge.&lt;/p&gt;  &lt;p&gt;The actual data presentation solution will be an ASP.NET MVC web application running on Windows Azure. We'll use the jQueryMobile javascript library to present the data in a nice mobile looking way. This saves us having to build separate mobile applications for iPhone, Windows Phone, Android etc... Also having it as a web application allows us to easily rollout changes rather than expecting users to manually upgrade a native application.&lt;/p&gt;  &lt;p&gt;We'll use a simple example. In our company we have a product stock control system, and our people on the road need to be able to check the stock levels before placing an order. Working with a simple Products table:&lt;/p&gt;  &lt;p&gt;ProductId - int, primary key    &lt;br /&gt;Name - varchar(256)     &lt;br /&gt;Price – money     &lt;br /&gt;StockLevel - int&lt;/p&gt;  &lt;p&gt;We will use the Azure Service Bus to allow on premise data to be made available to the outside world. The Service Bus has 2 endpoints. The Listener endpoints will sit inside the organization, constantly running and listening for calls to execute methods that return data. The second component is a caller application, that calls the Listener methods over the service bus. The service bus makes sure the connection between the caller and listener are secure.&lt;/p&gt;  &lt;p&gt;Assumption : this walk through assumes you already have an Azure account up and running, with the necessary Azure SDK's and tools installed. To get an account setup and download the tools you need visit &lt;a href="http://www.azure.com" target="_blank"&gt;www.azure.com&lt;/a&gt;&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;&lt;u&gt;Configure the Service Bus&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;1, Log in to &lt;a href="http://www.azure.com/"&gt;www.azure.com&lt;/a&gt; and click the Manage button to open up the management portal.&lt;/p&gt;  &lt;p&gt;2, Once in the management portal, click on the 'Service Bus, Access Control &amp;amp; Caching' tab&lt;/p&gt;  &lt;p&gt;3, Click on the 'New' button within the 'Service Namespace' section&lt;/p&gt;  &lt;p&gt;4, Give the new service bus you want to create a name, such as MobileProducts and select a location for the ServiceBus to run that makes sense geographically&lt;/p&gt;  &lt;p&gt;5, Once your Service Bus is successfully created, click on the MobileProducts name in the list of buses available. This will display a list of properties down the right side.&lt;/p&gt;  &lt;p&gt;6, Click on the 'View' button in the 'Default Key' section. Listed in the pop up you shall see the Default Issuer and Default Key that you will need shortly.&lt;/p&gt;  &lt;p&gt;&lt;u&gt;Create a Model project&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;1, Open Visual Studio 2010 and create a new blank solution called MobileProducts. Add a new Class Library project to the solution called MobileProducts.Model. The target Framework should be .NET 4.0&lt;/p&gt;  &lt;p&gt;The Listener and Calling projects need to understand what object is being passed over the service bus, so it makes sense to create a project where you will define all these objects in classes in a central place where they can be referenced.&lt;/p&gt;  &lt;p&gt;2, Add a reference to System.Runtime.Serialization&lt;/p&gt;  &lt;p&gt;3, Rename the existing Class1.cs file to Product.cs, and amend/add the following attributes and properties to the class:&lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:962e18d5-1a50-4292-8854-762b0f2932f3" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #000000;"&gt;[DataContract]
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;class&lt;/span&gt;&lt;span style="color: #000000;"&gt; Product
{
    [DataMember]
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;int&lt;/span&gt;&lt;span style="color: #000000;"&gt; ProductId { &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;get&lt;/span&gt;&lt;span style="color: #000000;"&gt;; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;set&lt;/span&gt;&lt;span style="color: #000000;"&gt;; }
       
    [DataMember]
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; Name { &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;get&lt;/span&gt;&lt;span style="color: #000000;"&gt;; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;set&lt;/span&gt;&lt;span style="color: #000000;"&gt;; }
       
    [DataMember]
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;decimal&lt;/span&gt;&lt;span style="color: #000000;"&gt; Price { &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;get&lt;/span&gt;&lt;span style="color: #000000;"&gt;; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;set&lt;/span&gt;&lt;span style="color: #000000;"&gt;; }
       
    [DataMember]
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;int&lt;/span&gt;&lt;span style="color: #000000;"&gt; StockLevel { &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;get&lt;/span&gt;&lt;span style="color: #000000;"&gt;; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;set&lt;/span&gt;&lt;span style="color: #000000;"&gt;; }

}
&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;I’m not going to list the using references you should add at the top of your code. If you get red squiggly lines when compiling, put your cursor on the code in question and do ctrl + . and Visual Studio will assist you in adding the necessary using references.&lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;

&lt;p&gt;&lt;u&gt;Creating the Listener project&lt;/u&gt;&lt;/p&gt;

&lt;p&gt;1, Add a new Console application to the Visual Studio Solution called MobileProducts.Listener. &lt;/p&gt;

&lt;p&gt;2, Ensure the project type is .NET Framework 4.0 (rather than .NET 4.0 client profile)&lt;/p&gt;

&lt;p&gt;3, Add a reference to our local project MobileProducts.Model.&lt;/p&gt;

&lt;p&gt;4, Add references to the necessary Azure libraries we will be using. There are:&lt;/p&gt;

&lt;p&gt;System.ServiceModel.dll - this can be found from the standard .NET reference list&lt;/p&gt;

&lt;p&gt;Microsoft.ServiceBus.dll - you'll need to browse to C:\Program Files\Windows Azure SDK\v1.6\ServiceBus\ref\Microsoft.ServiceBus.dll to find it.&lt;/p&gt;

&lt;p&gt;5, Add a Linq 2 SQL class to the project and call it Database.dbml, add the Products table from the simple database you setup and created earlier.&lt;/p&gt;

&lt;p&gt;6, We want to create a method that can be called over the Service Bus that returns a list of products. We'll use a contract/interface so add an interface class to your project called IGetData.cs and ensure it has the following code added:&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:2c61a974-6332-44e5-8346-34c48dd4be8d" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #000000;"&gt;[ServiceContract(Name &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;MobileProductsContract&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;, Namespace &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;http://MobileProductsContract&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;)]
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;interface&lt;/span&gt;&lt;span style="color: #000000;"&gt; IGetData
{
    [OperationContract]
    IEnumerable&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;MobileProducts.Model.Product&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt; GetProducts();

    [OperationContract]
    MobileProducts.Model.Product GetProductById(&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;int&lt;/span&gt;&lt;span style="color: #000000;"&gt; Id);
}
&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;7, Next we can add a class that implements this contract, add a class to the project called GetData.cs and implement the following code...&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:36dcf2b0-1161-40f6-adb8-f5aa77b0ea09" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #000000;"&gt;[ServiceBehavior(Name &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;MobileProductsContract&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;, Namespace &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;http://MobileProductsContract&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;)]
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;class&lt;/span&gt;&lt;span style="color: #000000;"&gt; GetData : IGetData
{
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt; IEnumerable&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;MobileProducts.Model.Product&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt; GetProducts()
    {
        DatabaseDataContext db &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; DatabaseDataContext();
        IEnumerable&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;MobileProducts.Model.Product&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt; products &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; from p &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;in&lt;/span&gt;&lt;span style="color: #000000;"&gt; db.Products
                                                             select &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; MobileProducts.Model.Product
                                                             {
                                                                 Name &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; p.Name,
                                                                 Price &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; p.Price,
                                                                 ProductId &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; p.ProductId,
                                                                 StockLevel &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; p.StockLevel
                                                             };

        &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;return&lt;/span&gt;&lt;span style="color: #000000;"&gt; products;
    }

    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt; MobileProducts.Model.Product GetProductById(&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;int&lt;/span&gt;&lt;span style="color: #000000;"&gt; Id)
    {
        DatabaseDataContext db &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; DatabaseDataContext();
        var product &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; db.Products.SingleOrDefault(p &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt; p.ProductId &lt;/span&gt;&lt;span style="color: #000000;"&gt;==&lt;/span&gt;&lt;span style="color: #000000;"&gt; Id);

        &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;return&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; MobileProducts.Model.Product
                            { Name &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; product.Name,
                              Price &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; product.Price,
                              ProductId &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; product.ProductId,
                              StockLevel &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; product.StockLevel
                            };
    }
}
&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;8, In App.Config we need to describe the bindings we want to use, add the following just beneath the connection strings elements:&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:6ec9a081-2875-4da0-83eb-9f52250cbdca" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;system.serviceModel&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;services&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
      &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;service &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;name&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="MobileProducts.Listener.GetData"&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
        &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;endpoint &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;contract&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="MobileProducts.Listener.IGetData"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; binding&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="netTcpRelayBinding"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;/&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
      &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;service&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;services&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;extensions&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
      &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;bindingExtensions&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
        &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;add &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;name&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="netTcpRelayBinding"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; type&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="Microsoft.ServiceBus.Configuration.NetTcpRelayBindingCollectionElement, Microsoft.ServiceBus, Version=1.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;/&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
      &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;bindingExtensions&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;extensions&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
  &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;system.serviceModel&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;9, We can now write the code in Program.cs to connect to our service bus and start listening for calls to execute methods...add this code within the Main method:&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:d3145cc2-4e02-415b-bc30-136a86ef6fda" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #000000;"&gt;Console.Title &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;Mobile Products Listener Service&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;;

&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; nsDmn &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;""&lt;/span&gt;&lt;span style="color: #000000;"&gt;;
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; issrName &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;""&lt;/span&gt;&lt;span style="color: #000000;"&gt;;
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; issrSecret &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;""&lt;/span&gt;&lt;span style="color: #000000;"&gt;;

Uri address &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; ServiceBusEnvironment.CreateServiceUri(&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;sb&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;, nsDmn, &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;MobileProducts&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;);

TransportClientEndpointBehavior sharedCreds &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; TransportClientEndpointBehavior();
sharedCreds.TokenProvider &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; TokenProvider.CreateSharedSecretTokenProvider(issrName, issrSecret);

&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;try&lt;/span&gt;&lt;span style="color: #000000;"&gt;
{
    ServiceHost serviceHost &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; ServiceHost(&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;typeof&lt;/span&gt;&lt;span style="color: #000000;"&gt;(GetData), address);
    IEndpointBehavior serviceRegSettings &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; ServiceRegistrySettings(DiscoveryType.Public);
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;foreach&lt;/span&gt;&lt;span style="color: #000000;"&gt; (ServiceEndpoint serviceEndpoint &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;in&lt;/span&gt;&lt;span style="color: #000000;"&gt; serviceHost.Description.Endpoints)
    {
        serviceEndpoint.Behaviors.Add(sharedCreds);
    }

    serviceHost.Open();

    Console.WriteLine(&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;Service Information: &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #000000;"&gt;+&lt;/span&gt;&lt;span style="color: #000000;"&gt; address);
    Console.WriteLine(&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;Hit [Enter] to exit application...&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;);
    Console.ReadLine();

}
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;catch&lt;/span&gt;&lt;span style="color: #000000;"&gt; (Exception ex)
{
    Console.WriteLine(ex.ToString());
    Console.ReadLine();
}
&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;10, Set the following variables:&lt;/p&gt;

&lt;p&gt;nsDmn = the name you gave the Service Bus instance you created&lt;/p&gt;

&lt;p&gt;issrName = the owner&lt;/p&gt;

&lt;p&gt;issrSecret = the default key you got once your Service Bus was created &lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;&lt;u&gt;Create a test Caller project&lt;/u&gt;&lt;/p&gt;

&lt;p&gt;It's always good to take mini steps and test things a we go along. Eventually our caller project will be the ASP.NET MVC web application, but initially lets create another console application that will act as a caller. If we get any issues it will be much easier to debug each time, make sure we have the Service Bus component working, and then move onto the next stage of building a mobile web app.&lt;/p&gt;

&lt;p&gt;1, Add a new console application to your solution called MobileProducts.Caller.&lt;/p&gt;

&lt;p&gt;2, Change the project from .Net 4.0 Client Profile to standard .Net Framework 4.0 again.&lt;/p&gt;

&lt;p&gt;3, Add a reference to our local project dll, MobileProduct.Model and also Microsoft.ServiceBus and System.ServiceModel&lt;/p&gt;

&lt;p&gt;4, We want to define the contract again, so our program understands the method it will be calling over the Service Bus and the data it will be getting back. Add an interface class to the project called IGetData and add the same code as when we created the contract for our Listener class&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:21054825-29f3-44a1-b654-eedc9add4a91" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #000000;"&gt;[ServiceContract(Name &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;MobileProductsContract&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;, Namespace &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;http://MobileProductsContract&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;)]
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;interface&lt;/span&gt;&lt;span style="color: #000000;"&gt; IGetData
{
    [OperationContract]
    IEnumerable&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;Product&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt; GetProducts();

    [OperationContract]
    Product GetProductById(&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;int&lt;/span&gt;&lt;span style="color: #000000;"&gt; Id);
}
&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;5, Add an application configuration (app.config) file to the project and add the following service model definition:&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:31234bce-c2c7-4a16-8a39-c9143d1d8d1e" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #000000;"&gt;  &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;system.serviceModel&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;client&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
      &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;endpoint &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;name&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="RelayEndpoint"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; contract&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="MobileProducts.Caller.IGetData"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; binding&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="netTcpRelayBinding"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;/&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;client&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;extensions&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
      &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;bindingExtensions&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
        &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;add &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;name&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="netTcpRelayBinding"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; type&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="Microsoft.ServiceBus.Configuration.NetTcpRelayBindingCollectionElement, Microsoft.ServiceBus, Version=1.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;/&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
      &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;bindingExtensions&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;extensions&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
  &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;system.serviceModel&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;6, Add the following code to the Main method of Program.cs&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:6a02dc43-b5da-4bc5-af82-96e193d103a8" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #000000;"&gt;Console.Title &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;Mobile Products Test Caller&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;;

&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; nsDmn &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;""&lt;/span&gt;&lt;span style="color: #000000;"&gt;;
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; issrName &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;""&lt;/span&gt;&lt;span style="color: #000000;"&gt;;
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; issrSecret &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;""&lt;/span&gt;&lt;span style="color: #000000;"&gt;;

Uri serviceUri &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; ServiceBusEnvironment.CreateServiceUri(&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;sb&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;, nsDmn, &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;MobileProducts&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;);

TransportClientEndpointBehavior sharedCreds &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; TransportClientEndpointBehavior();
sharedCreds.TokenProvider &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; TokenProvider.CreateSharedSecretTokenProvider(issrName, issrSecret);

ChannelFactory&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;IGetData&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt; channelFactory &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; ChannelFactory&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;IGetData&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;(&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;RelayEndpoint&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;, &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; EndpointAddress(serviceUri));

channelFactory.Endpoint.Behaviors.Add(sharedCreds);

IGetData channel &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; channelFactory.CreateChannel();

((ICommunicationObject)channel).Open();

&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;try&lt;/span&gt;&lt;span style="color: #000000;"&gt;
{
    IEnumerable&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;MobileProducts.Model.Product&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt; products &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; channel.GetProducts();
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;foreach&lt;/span&gt;&lt;span style="color: #000000;"&gt; (var product &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;in&lt;/span&gt;&lt;span style="color: #000000;"&gt; products)
    {
        Console.WriteLine(product.Name);
    }
}
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;catch&lt;/span&gt;&lt;span style="color: #000000;"&gt; (Exception ex)
{
    Console.WriteLine(ex.ToString());
}

((ICommunicationObject)channel).Close();
channelFactory.Close();

Console.WriteLine(&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;Press [Enter] to continue...&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;);
Console.ReadLine();
&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;7, As with the Listener project, set the same values for nsDmn, issrName and issrSecret.&lt;/p&gt;

&lt;p&gt;8, Assuming you have some products created in your database table, you can now try the Service Bus out!&lt;/p&gt;

&lt;p&gt;First right click on the MobileProducts.Listener project and choose Debug -&amp;gt; Start New Instance&lt;/p&gt;

&lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/9cdd75cddf45_DC7B/image_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Azure Service Bus Listener Application" border="0" alt="Azure Service Bus Listener Application" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/9cdd75cddf45_DC7B/image_thumb.png" width="644" height="101" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Wait for the Service Information to be displayed in the console window&lt;/p&gt;

&lt;p&gt;9, Now right click on the MobileProducts.Caller project and also choose Debug -&amp;gt; Start New Instance&lt;/p&gt;

&lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/9cdd75cddf45_DC7B/image_4.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Azure Service Bus Caller Application" border="0" alt="Azure Service Bus Caller Application" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/9cdd75cddf45_DC7B/image_thumb_1.png" width="343" height="102" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the Caller console window you should see a list of product names from your database table! Woot Woot! This means the Caller program is calling the GetData method over the Service Bus, and the Listener is executing this method and returning the data back across the Bus. Pretty awesome!&lt;/p&gt;

&lt;p&gt;The MobileProducts.Caller application has served its purpose. We can now move forward knowing the service bus is working and look at building a mobile application to surface our data.&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;&lt;u&gt;Create a mobile web app&lt;/u&gt;&lt;/p&gt;

&lt;p&gt;Now that we know our Service Bus is setup and working through using the Listener and Caller projects we built, we can move forward and build a Mobile Web Application. We might as well host this in Windows Azure as well.&lt;/p&gt;

&lt;p&gt;1, Right click on the Solution in Visual Studio and choose to Add -&amp;gt; New Project&lt;/p&gt;

&lt;p&gt;2, From the Cloud section pick the Windows Azure Project and call it MobileProducts.Azure&lt;/p&gt;

&lt;p&gt;3, When presented with the list of Azure Projects to create, move the ASP.NET MVC 3 Web Role over.&lt;/p&gt;

&lt;p&gt;4, Right click on the project when it is in the right hand pane and choose 'Rename'. Give it a new name of MobileProducts.WebApp&lt;/p&gt;

&lt;p&gt;5, In the ASP.NET MVC 3 new project dialog use the Empty project template, ensure Razor is selected as the view engine, and tick the box for using HTML 5 semantic markup&lt;/p&gt;

&lt;p&gt;6, Lets do the backend work first and get our web application able to talk to the Service Bus. Add a reference to our local project MobileProducts.Model. Also add a reference to Microsoft.ServiceBus and System.ServiceModel. You should be able to easily pick these from the Recent tab in the 'Add Reference...' dialogue.&lt;/p&gt;

&lt;p&gt;7, In solution explorer, right click on the Models folder in your MVC web app and add a new interface class called IGetData. Add the same code that we previously have done for this interface class:&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:eb078a52-ad1b-42af-b054-d07d2184eac2" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #000000;"&gt;[ServiceContract(Name &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;MobileProductsContract&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;, Namespace &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;http://MobileProductsContract&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;)]
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;interface&lt;/span&gt;&lt;span style="color: #000000;"&gt; IGetData
{
    [OperationContract]
    IEnumerable&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;Product&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt; GetProducts();

    [OperationContract]
    Product GetProductById(&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;int&lt;/span&gt;&lt;span style="color: #000000;"&gt; Id);
}
&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;8, Right click on the Models folder and choose to add a new class. Give the class a name of ProductWorker.cs&lt;/p&gt;

&lt;p&gt;9, In the class add the following static methods:&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:3f93217e-0bd6-4da3-92ea-a1f6e96a13a6" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;static&lt;/span&gt;&lt;span style="color: #000000;"&gt; IEnumerable&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;Product&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt; GetProducts()
{
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; nsDmn &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;""&lt;/span&gt;&lt;span style="color: #000000;"&gt;;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; issrName &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;""&lt;/span&gt;&lt;span style="color: #000000;"&gt;;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; issrSecret &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;""&lt;/span&gt;&lt;span style="color: #000000;"&gt;;

    Uri serviceUri &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; ServiceBusEnvironment.CreateServiceUri(&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;sb&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;, nsDmn, &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;MobileProducts&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;);

    TransportClientEndpointBehavior sharedCreds &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; TransportClientEndpointBehavior();
    sharedCreds.TokenProvider &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; TokenProvider.CreateSharedSecretTokenProvider(issrName, issrSecret);

    ChannelFactory&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;IGetData&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt; channelFactory &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; ChannelFactory&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;IGetData&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;(&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;RelayEndpoint&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;, &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; EndpointAddress(serviceUri));

    channelFactory.Endpoint.Behaviors.Add(sharedCreds);

    IGetData channel &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; channelFactory.CreateChannel();

    ((ICommunicationObject)channel).Open();

    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;return&lt;/span&gt;&lt;span style="color: #000000;"&gt; channel.GetProducts();
}

&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;static&lt;/span&gt;&lt;span style="color: #000000;"&gt; Product GetProductById(&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;int&lt;/span&gt;&lt;span style="color: #000000;"&gt; Id)
{
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; nsDmn &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;""&lt;/span&gt;&lt;span style="color: #000000;"&gt;;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; issrName &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;""&lt;/span&gt;&lt;span style="color: #000000;"&gt;;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt; issrSecret &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #800000;"&gt;""&lt;/span&gt;&lt;span style="color: #000000;"&gt;;

    Uri serviceUri &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; ServiceBusEnvironment.CreateServiceUri(&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;sb&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;, nsDmn, &lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;MobileProducts&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;);

    TransportClientEndpointBehavior sharedCreds &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; TransportClientEndpointBehavior();
    sharedCreds.TokenProvider &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; TokenProvider.CreateSharedSecretTokenProvider(issrName, issrSecret);

    ChannelFactory&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;IGetData&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt; channelFactory &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; ChannelFactory&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;IGetData&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;(&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;RelayEndpoint&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;, &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;new&lt;/span&gt;&lt;span style="color: #000000;"&gt; EndpointAddress(serviceUri));

    channelFactory.Endpoint.Behaviors.Add(sharedCreds);

    IGetData channel &lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt; channelFactory.CreateChannel();

    ((ICommunicationObject)channel).Open();

    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;return&lt;/span&gt;&lt;span style="color: #000000;"&gt; channel.GetProductById(Id);
}
&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;10, In the Views folder, right click and add a new folder called Home. Right click the Home folder and add a View called Index, and then add a View called Product&lt;/p&gt;

&lt;p&gt;11, Right click the Controllers folder and add a new Controller called 'HomeController' created using the 'Empty controller' template&lt;/p&gt;

&lt;p&gt;12, In HomeController.cs amend the code to look like this:&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:c86dd1bf-d2b5-47d9-96fd-a8251574be51" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt; ActionResult Index()
{
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;return&lt;/span&gt;&lt;span style="color: #000000;"&gt; View(ProductWorker.GetProducts());
}

&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt; ActionResult Product(&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;int&lt;/span&gt;&lt;span style="color: #000000;"&gt; Id)
{
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;return&lt;/span&gt;&lt;span style="color: #000000;"&gt; View(ProductWorker.GetProductById(Id));
}
&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;13, Open up web.config and paste in the following XML fragment just after the opening &amp;lt;Configuration&amp;gt;&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:515b1f2d-0b74-4196-8195-11f8d937b895" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;system.serviceModel&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;client&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
      &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;endpoint &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;name&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="RelayEndpoint"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; contract&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="MobileProducts.WebApp.IGetData"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; binding&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="netTcpRelayBinding"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;/&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;client&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;extensions&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
      &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;bindingExtensions&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
        &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;add &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;name&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="netTcpRelayBinding"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; type&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="Microsoft.ServiceBus.Configuration.NetTcpRelayBindingCollectionElement, Microsoft.ServiceBus, Version=1.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;/&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
      &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;bindingExtensions&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;extensions&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
  &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;system.serviceModel&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;14, Open up Index.cshtml and paste in the following:&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:05f57e87-736d-45eb-a0be-9dee6a86f5f6" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #000000;"&gt;@model IEnumerable&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;MobileProducts&lt;/span&gt;&lt;span style="color: #FF0000;"&gt;.Model.Product&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
@{
    ViewBag.Title = "Available Products";
}

&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;h2&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;Available Products&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;h2&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;

@foreach (var product in Model)
{
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;p&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;@product.Name&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;p&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
}
&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;15, Hurrah - it's time to test again. Right click your Listener project and Debug - Start new instance, and once that has fired up and is connected to the Service Bus right click your MVC web app and do the same. You should get your list of products displayed.&lt;/p&gt;

&lt;p&gt;Pretty simple, but it shows the data is coming through the Service Bus ok.&lt;/p&gt;

&lt;p&gt;16, We want to make our application really nice to use on mobiles, so lets add in jQueryMobile. In Views -&amp;gt; Shared open _Layout.cshtml. Before the closing &amp;lt;/head&amp;gt; tag add in:&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:abd28bf1-3d2c-4a86-b4a6-d1f70b467c00" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;link &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;rel&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="stylesheet"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; href&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="http://code.jquery.com/mobile/1.0/jquery.mobile-1.0.min.css"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;/&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;script &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;type&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="text/javascript"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; src&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="http://code.jquery.com/mobile/1.0/jquery.mobile-1.0.min.js"&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;script&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;Also change jQuery so it is using the latest version:&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:da6c8580-4bde-49ec-a3f8-775ae62e1f93" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;script &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;type&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="text/javascript"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; src&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="http://code.jquery.com/jquery-1.6.4.min.js"&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;script&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;17, Final thing to add in the head section is:&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:7ec533eb-e927-4950-89c2-dcbe7945fda6" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;meta &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;name&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="viewport"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; content&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="width=device-width, initial-scale=1"&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;18, Modify the html in your Index.cshtml file to look like this:&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:793786f2-d06a-4526-b386-b9c6d8a55dae" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #000000;"&gt;@model IEnumerable&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;MobileProducts&lt;/span&gt;&lt;span style="color: #FF0000;"&gt;.Model.Product&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
@{
    ViewBag.Title = "Available Products";
}

&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;div &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;data-role&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="page"&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;

    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;div &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;data-role&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="header"&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
        &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;h2&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;Available Products&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;h2&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;div&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;

    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;div &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;data-role&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="content"&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;

        &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;ul &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;data-role&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="listview"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; data-inset&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="true"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; data-filter&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="true"&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
            @foreach (var product in Model)
            {
                &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;li&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;a &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;href&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="/home/product/@product.ProductId"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; data-transition&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="pop"&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;@product.Name&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;a&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;li&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
            }
        &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;ul&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;

    &lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;div&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;

&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;div&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;19, Open up Product.cshtml add get your code looking like:&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:f0e30b41-9529-4e31-9b84-aa4eff46aa2f" class="wlWriterEditableSmartContent"&gt;&lt;pre style="background-color:#FFFFFF;overflow: auto;"&gt;&lt;span style="color: #000000;"&gt;@model MobileProducts.Model.Product

@{
    ViewBag.Title = "Product";
}

&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;h2&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;@Model.Name&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;h2&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;p&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;Price : @Model.Price&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;p&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;p&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;Stock Level : @Model.StockLevel&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;p&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;

&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;a &lt;/span&gt;&lt;span style="color: #FF0000;"&gt;href&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="#"&lt;/span&gt;&lt;span style="color: #FF0000;"&gt; data-rel&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;="back"&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;Back&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;a&lt;/span&gt;&lt;span style="color: #0000FF;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;
&lt;/span&gt;&lt;/pre&gt;&lt;!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --&gt;&lt;/div&gt;

&lt;p&gt;20, Go through the process of starting up your Listener project, and then your Web App. Hopefully the UI will look a lot nicer and more jQueryMobile like:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/9cdd75cddf45_DC7B/image_6.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="ASP.NET web app running in a standard browser" border="0" alt="ASP.NET web app running in a standard browser" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/9cdd75cddf45_DC7B/image_thumb_2.png" width="425" height="193" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now we are going to publish our web app to Azure so we can test it on our own mobiles.&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;&lt;u&gt;Publish to Azure&lt;/u&gt;&lt;/p&gt;

&lt;p&gt;Running locally is all good fun, but for our app to be viewable on mobile devices we want to publish it to Azure. Lets go do that...&lt;/p&gt;

&lt;p&gt;1, Right click on MobileProducts.Azure in the solution explorer and choose 'Package...'&lt;/p&gt;

&lt;p&gt;2, Open up &lt;a href="http://www.azure.com/"&gt;www.azure.com&lt;/a&gt; and log in. Click on 'New Hosted Service in the ribbon&lt;/p&gt;

&lt;p&gt;3, Give your hosted service a name, url, pick a region, deployment name - and then browse to the MobileProducts.Azure.cspkg and ServiceConfiguration.Cloud.cscfg files that Visual Studio created for you as part of the Packaging process.&lt;/p&gt;

&lt;p&gt;4, The finally click OK. You can accept the warning that is displayed upon clicking OK as this is just a test app, but if it was a real production level app you'd want to take a bit more notice of it.&lt;/p&gt;

&lt;p&gt;Once Azure has gone through the process of provisioning your new hosted service and uploading your application get out your smartphone and browse to the url you gave your application in Azure. Hopefully you will see something similar to below:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/9cdd75cddf45_DC7B/image_8.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="jQueryMobile app running in Windows Phone 7 browser" border="0" alt="jQueryMobile app running in Windows Phone 7 browser" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/9cdd75cddf45_DC7B/image_thumb_3.png" width="132" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;[Click for a larger image]&lt;/p&gt;

&lt;p&gt;Check out how cool the search and page transitions are. jQueryMobile really is nice!&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;&lt;u&gt;Things to think about&lt;/u&gt;&lt;/p&gt;

&lt;p&gt;Authentication…We’ll be looking into this in future blog posts. At the moment our web app is open to the public so anybody can hit up our url. In most situation’s with company sensitive data we wouldn’t want this to happen.&lt;/p&gt;

&lt;p&gt;Thanks for reading this far, hopefully this post has been useful and has got you excited about Azure and Mobile web apps. Any thoughts or feedback, please leave a comment or email &lt;a href="mailto:nick@lightningtools.com"&gt;nick@lightningtools.com&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&amp;lt;&lt;a href="http://www.twitter.com/nickswan" target="_blank"&gt;nickswan&lt;/a&gt; /&amp;gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/310.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=I4xBitAzpb4:eQieqz5t5U8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=I4xBitAzpb4:eQieqz5t5U8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2012/01/23/mobile-solutions-for-on-premise-data-with-azure-service-bus.aspx</guid>
            <pubDate>Mon, 23 Jan 2012 08:10:11 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/310.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2012/01/23/mobile-solutions-for-on-premise-data-with-azure-service-bus.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/310.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Lightning conductor 2010 web part version 2.0.0.2</title>
            <link>http://lightningtools.com/blog/archive/2011/11/23/lightning-conductor-2010-web-part-version-2.0.0.2.aspx</link>
            <description>&lt;p&gt;An interim release of the Lightning Conductor 2010 Web Part is available in the following versions:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Lightning Conductor 2010 Express&lt;/strong&gt; – Free web part which aggregates from the current site collection only but provides an easier way to display your content through the SPGridView wizard.&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.lightningtools.com/lightning-conductor-2010-express-web-part.aspx" href="http://www.lightningtools.com/lightning-conductor-2010-express-web-part.aspx"&gt;http://www.lightningtools.com/lightning-conductor-2010-express-web-part.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Lightning Conductor 2010 Web Part Trial&lt;/strong&gt; – The 30 day trial of the Cross Site Collection and Cross Web Application rollup web part providing you with the ability to aggregate content and display meta data via a wizard.&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.lightningtools.com/lightning-conductor-2010-web-part.aspx" href="http://www.lightningtools.com/lightning-conductor-2010-web-part.aspx"&gt;http://www.lightningtools.com/lightning-conductor-2010-web-part.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Lightning Conductor 2010 Web Part Full&lt;/strong&gt;– The 30 day trial of the Cross Site Collection and Cross Web Application rollup web part providing you with the ability to aggregate content and display meta data via a wizard.&lt;/p&gt;  &lt;p&gt;To download the full version, please download from the customer downloads centre on our site: &lt;a href="http://www.lightningtools.com"&gt;www.lightningtools.com&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;You can view the release notes of version 2.0.0.2 by navigating to: &lt;a title="http://www.lightningtools.com/lightning-conductor-2010/LatestReleaseNotes.aspx" href="http://www.lightningtools.com/lightning-conductor-2010/LatestReleaseNotes.aspx"&gt;http://www.lightningtools.com/lightning-conductor-2010/LatestReleaseNotes.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Regards&lt;/p&gt;  &lt;p&gt;&amp;lt;Brett/&amp;gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/309.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=lF2FhMkuJt0:gW_eXEqJyhE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=lF2FhMkuJt0:gW_eXEqJyhE:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2011/11/23/lightning-conductor-2010-web-part-version-2.0.0.2.aspx</guid>
            <pubDate>Wed, 23 Nov 2011 14:44:52 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/309.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2011/11/23/lightning-conductor-2010-web-part-version-2.0.0.2.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/309.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Firebird and the Business Connectivity Services in SharePoint 2010</title>
            <category>BCS</category>
            <category>BCS Meta Man</category>
            <category>Business Connectivity Services</category>
            <category>SharePoint 2010</category>
            <link>http://lightningtools.com/blog/archive/2011/11/22/firebird-and-the-business-connectivity-services-in-sharepoint-2010.aspx</link>
            <description>&lt;p&gt;In this walkthrough we will demonstrate how to integrate Firebird database with Microsoft SharePoint 2010 through ODBC and display Firebird data on SharePoint 2010 page. In order to do that we will describe how to create a new external content type by means of &lt;a href="http://www.lightningtools.com/bcs/bcs-meta-man.aspx" target="_blank"&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;BCS Meta Man&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;.&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Prerequisites:      &lt;ul&gt;       &lt;li&gt;Microsoft SharePoint Server 2010 &lt;/li&gt;        &lt;li&gt;Microsoft Visual Studio 2010 Professional or higher &lt;/li&gt;        &lt;li&gt;&lt;a href="http://www.lightningtools.com/bcs/bcs-meta-man.aspx"&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;BCS Meta Man&lt;/font&gt;&lt;/u&gt;&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;Download and install &lt;span id="BugEvents"&gt;Firebird ODBC driver (Windows 32-bit Full Install) for Microsoft Windows 32-bit &lt;a href="http://www.firebirdsql.org/en/odbc-driver/"&gt;http://www.firebirdsql.org/en/odbc-driver/&lt;/a&gt; &lt;/span&gt;on a machine where BCS Meta Man runs &lt;/li&gt;        &lt;li&gt;Download and install &lt;span id="BugEvents"&gt;Firebird ODBC driver (Windows 64-bit Full Install) for Microsoft Windows 64-bit&lt;/span&gt; &lt;a href="http://www.firebirdsql.org/en/odbc-driver/"&gt;http://www.firebirdsql.org/en/odbc-driver/&lt;/a&gt; on a machine where SharePoint 2010 runs &lt;/li&gt;        &lt;li&gt;&lt;span id="BugEvents"&gt;Firebird client component (it’s a part of Firebird server installer) for Microsoft Windows 32-bit &lt;a href="http://www.firebirdsql.org/en/downloads/"&gt;http://www.firebirdsql.org/en/downloads/&lt;/a&gt; on a machine where BCS Meta Man runs&lt;/span&gt;  &lt;/li&gt;        &lt;li&gt;&lt;span id="BugEvents"&gt;Firebird client component (it’s a part of Firebird server installer) for Microsoft Windows 64-bit &lt;a href="http://www.firebirdsql.org/en/downloads/"&gt;http://www.firebirdsql.org/en/downloads/&lt;/a&gt; on a machine where SharePoint 2010 runs&lt;/span&gt; &lt;span&gt;&lt;/span&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/1_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Firebird client component installation" border="0" alt="Firebird client component installation" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/1_thumb.png" width="244" height="188" /&gt;&lt;/a&gt;  &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Open Visual Studio 2010 &lt;/li&gt;    &lt;li&gt;Add a New Project &lt;/li&gt;    &lt;li&gt;Expand the “SharePoint” node, select “Lightning Tools (2010)” node and then the “BCS Meta Man” project type &lt;/li&gt;    &lt;li&gt;Give your project a name i.e FirebirdBCSMetaManDemo and click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/5_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Create FirebirdBCSMetaManDemo project" border="0" alt="Create FirebirdBCSMetaManDemo project" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/5_thumb.png" width="244" height="182" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;On the next dialog box, enter the name of where you want to deploy your model, and click “Finish” button      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/6_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Deploy as a farm solution" border="0" alt="Deploy as a farm solution" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/6_thumb.png" width="244" height="194" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;If prompted, click “Trial” on the licensing dialog &lt;/li&gt;    &lt;li&gt;To show the “BCS Meta Man Data Source Explorer” we need to enable it from the Menu item, this new window can be docked so it doesn’t get in your way      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/8_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Open the BCS MetaMan data source explorer" border="0" alt="Open the BCS MetaMan data source explorer" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/8_thumb.png" width="244" height="111" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click the “Add Connection” button to show the “Connection Dialog” &lt;/li&gt;    &lt;li&gt;Select “ODBC Server” as Data Source type, enter Firebird ODBC connection string (for example it can be “&lt;strong&gt;DbName=cygnus:C:\Program Files\Firebird\Firebird_2_5\examples\empbuild\EMPLOYEE.FDB; Driver=Firebird/InterBase(r) driver;Uid=SYSDBA;Pwd=masterkey;Trusted_Connection=true;”&lt;/strong&gt;), enter double quotes as left and right delimiters and “&lt;strong&gt;?&lt;/strong&gt;” as parameter symbol and click “Connect” button       &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/10_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Firebird ODBC connection string" border="0" alt="Firebird ODBC connection string" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/10_thumb.png" width="244" height="201" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The Data Source Explorer will now be populated with your Firebird data      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/11_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="See the tables and views available to use" border="0" alt="See the tables and views available to use" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/11_thumb.png" width="244" height="212" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;We will be working with the ”DEPARTMENT” table, to add it to the Model , just drag it from the “Data Source Explorer” onto the “Diagram” &lt;/li&gt;    &lt;li&gt;When you drop the table you will be shown the following dialog, we should choose “Database , click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/13_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Choose the model type &amp;quot;Database&amp;quot;" border="0" alt="Choose the model type &amp;quot;Database&amp;quot;" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/13_thumb.png" width="244" height="117" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Accept the default entity name by clicking “Next”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/14_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Accept the default entity name" border="0" alt="Accept the default entity name" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/14_thumb.png" width="244" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Accept the default “Identifiers” by clicking “Next”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/15_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Accept the Identifiers selected" border="0" alt="Accept the Identifiers selected" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/15_thumb.png" width="244" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Accept the default 3 methods to be created, click “Generate” (The default 3 methods are: “Finder” – Returns all items, “Specific Finder” – Returns a single item by identifier, “IdEnumerator” – Returns just the Identifiers for all of the items )      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/16_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Accept the methods" border="0" alt="Accept the methods" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/16_thumb.png" width="244" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Press F5 to deploy, this will load up your SharePoint Page once deployed &lt;/li&gt;    &lt;li&gt;Add a new External list by selection on SharePoint page “Site Action”-&amp;gt;“More Options”-&amp;gt;“External List”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/18_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Add a new External List" border="0" alt="Add a new External List" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/18_thumb.png" width="244" height="148" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click on the icon to show the available External Content Types      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/19_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Select the External Content Type" border="0" alt="Select the External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/19_thumb.png" width="218" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Select our FirebirdBCSMetaManDemo.DEPARTMENT External Content Type, click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/20_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Select the the Department External Content Type" border="0" alt="Select the the Department External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/20_thumb.png" width="244" height="73" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click “Create” &lt;/li&gt;    &lt;li&gt;Your External System data from Firebird database is now displayed in the SharePoint External List      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/22_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Data from Firebird is now shown within SharePoint 2010" border="0" alt="External Data from Firebird is now shown within SharePoint 2010" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/555488938a6f_12D3/22_thumb.png" width="244" height="157" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;We hope this walkthrough will be useful for you. If you have any questions feel free to email them to &lt;a href="mailto:support@lightningtools.com"&gt;&lt;font color="#0072bc"&gt;support@lightningtools.com&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;lt;Dmitry Kaloshin/&amp;gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/308.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=BeCnIL_oMcg:49bKMZP2KTs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=BeCnIL_oMcg:49bKMZP2KTs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2011/11/22/firebird-and-the-business-connectivity-services-in-sharepoint-2010.aspx</guid>
            <pubDate>Tue, 22 Nov 2011 21:16:27 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/308.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2011/11/22/firebird-and-the-business-connectivity-services-in-sharepoint-2010.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/308.aspx</wfw:commentRss>
        </item>
        <item>
            <title>SharePoint technical support engineer</title>
            <link>http://lightningtools.com/blog/archive/2011/11/21/sharepoint-technical-support-engineer.aspx</link>
            <description>&lt;p&gt;Lightning Tools is seeking the help of a support engineer with good SharePoint experience. We are a fast growing company who thrive on providing great SharePoint tools and web parts to companies of all sizes worldwide. We provide a great level of customer service, and in order to maintain that we need to expand our support team. &lt;/p&gt;  &lt;p&gt;The role will involve answering technical questions from our customers either by email or telephone in a professional manner, providing remote assistance to the customer and feed back bug reports to our product managers.&lt;/p&gt;  &lt;p&gt;The successful candidate will be professional, able to work within the hours of 8:30am US Eastern to 5pm US Eastern and will have good knowledge of SharePoint. Experience of SharePoint Business Connectivity Services, SharePoint administration and web part configuration would be very advantageous. &lt;/p&gt;  &lt;p&gt;Full training will be given on all of our products as well as SharePoint Administration/Development.&lt;/p&gt;  &lt;p&gt;This is an opportunity to work with a great team while expanding your SharePoint knowledge and have the ability to work from the comfort of your own home.&lt;/p&gt;  &lt;p&gt;Salary will be negotiable depending on experience.&lt;/p&gt;  &lt;p&gt;If you are interested in the role, please submit your resume to &lt;a href="mailto:brett@lightningtools.com"&gt;brett@lightningtools.com&lt;/a&gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/307.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=pRb_veHQGuM:oQoRFXddV2s:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=pRb_veHQGuM:oQoRFXddV2s:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2011/11/21/sharepoint-technical-support-engineer.aspx</guid>
            <pubDate>Mon, 21 Nov 2011 12:53:46 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/307.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2011/11/21/sharepoint-technical-support-engineer.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/307.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Article by brett lonsdale on content aggregation techniques</title>
            <link>http://lightningtools.com/blog/archive/2011/10/28/article-by-brett-lonsdale-on-content-aggregation-techniques.aspx</link>
            <description>&lt;p&gt;In last months Dutch Information Workers Group e magazine Brett Lonsdale (co-founder of Lightning Tools) wrote an article on all of the possible ways to aggregate content in SharePoint 2010 and discussed the pro’s and cons of each method. You can subscribe and download the magazine for free from: &lt;a title="http://www.diwug.nl/Pages/downloads.aspx" href="http://www.diwug.nl/Pages/downloads.aspx"&gt;http://www.diwug.nl/Pages/downloads.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/8c4fc44b0df4_AA81/image_2.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/8c4fc44b0df4_AA81/image_thumb.png" width="287" height="413" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;lt;Brett/&amp;gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/306.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=GQo8FM4cMB8:WEDxxNDl5V4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=GQo8FM4cMB8:WEDxxNDl5V4:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2011/10/28/article-by-brett-lonsdale-on-content-aggregation-techniques.aspx</guid>
            <pubDate>Fri, 28 Oct 2011 11:11:33 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/306.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2011/10/28/article-by-brett-lonsdale-on-content-aggregation-techniques.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/306.aspx</wfw:commentRss>
        </item>
        <item>
            <title>sharepoint saturday uk&amp;ndash;12th november 2011</title>
            <link>http://lightningtools.com/blog/archive/2011/10/25/sharepoint-saturday-ukndash12th-november-2011.aspx</link>
            <description>&lt;p&gt;Brett Lonsdale from Lightning Tools is co-hosting &lt;a href="http://www.sharepointsaturday.org" target="_blank"&gt;SharePoint Saturday&lt;/a&gt; UK with  Mark Macrae and Tony Pounder from &lt;a href="www.id-live.com" target="_blank"&gt;ID Live&lt;/a&gt;. If you are interested in attending a totally free one day SharePoint event on Saturday 12th November, please sign up using the following url: &lt;a title="http://www.sharepointsaturday.org/uk/default.aspx" href="http://www.sharepointsaturday.org/uk/default.aspx"&gt;http://www.sharepointsaturday.org/uk/default.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The event is being held in Nottingham with over 30 speakers presenting from all over the world. Lightning Tools is one of the many sponsors of the event who make it possible for you as an attendee to receive expert SharePoint education. &lt;/p&gt;  &lt;p&gt;If you are attending the event, we would love to meet you and show you our latest offerings.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Lightning-tools_E9DF/image_2.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Lightning-tools_E9DF/image_thumb.png" width="175" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;lt;Brett/&amp;gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/305.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=2jYfQvbVsSg:00T6A_dTy_w:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=2jYfQvbVsSg:00T6A_dTy_w:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2011/10/25/sharepoint-saturday-ukndash12th-november-2011.aspx</guid>
            <pubDate>Tue, 25 Oct 2011 08:45:34 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/305.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2011/10/25/sharepoint-saturday-ukndash12th-november-2011.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/305.aspx</wfw:commentRss>
        </item>
        <item>
            <title>compare sharepoint site permissions and clone permissions</title>
            <link>http://lightningtools.com/blog/archive/2011/09/27/compare-sharepoint-site-permissions-and-clone-permissions.aspx</link>
            <description>&lt;p&gt;Have you ever spent hours trying to figure out SharePoint site permissions and perhaps wonder why you can access some sites but not others? If you rely on SharePoint’s out of the box permission reporting you will have probably become frustrated when trying to determine what permissions your users have to the sites, lists, and list items. &lt;/p&gt;  &lt;p&gt;In our next release which is due in November, as well as all of the existing permission reports that DeliverPoint provides such as Permission Inheritance reports, and Unique Permission reports, DeliverPoint will offer comparison reports.  You can literally spend hours trying to figure out permissions for one site without having to compare them to others.  With DeliverPoint, you can now select as many sites as you like and compare the permissions across all of those sites within a matter of seconds.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/ac3a75cec96c_BD4A/image_2.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/ac3a75cec96c_BD4A/image_thumb.png" width="518" height="207" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;em&gt;Compare Permission Report (Click the image to enlarge)&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Once you have compared the sites, you may decide that the permissions should be the same across all of the selected sites. Doing this manually using SharePoint would be cumbersome even for a small SharePoint environment. DeliverPoint allows you to select a source and a target site and then synchronise the permissions:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/ac3a75cec96c_BD4A/image_4.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/ac3a75cec96c_BD4A/image_thumb_1.png" width="515" height="185" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Clone Site Permissions (Click the image to enlarge)&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Managing Permission inheritance can also be a frustrating task and also risky as changing your site inheritance options can often mean somebody is accidentally granted permissions. DeliverPoint allows you to easily see the Sites, Lists and List items that have unique permissions and also provides the option to re-inherit the permissions or break permission inheritance.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/ac3a75cec96c_BD4A/image_6.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/ac3a75cec96c_BD4A/image_thumb_2.png" width="334" height="258" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Manage Site Permission Inheritance (Click the image to enlarge)&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Our treeview shows clearly which sites inherit permissions and which sites have unique permissions:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/ac3a75cec96c_BD4A/image_8.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/ac3a75cec96c_BD4A/image_thumb_3.png" width="407" height="66" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Legend for the DeliverPoint Treeview (Click the image to enlarge)&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;As well as showing the permission inheritance for the sites, we also allow you to report on Lists with unique permissions as well as List Items within a list:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/ac3a75cec96c_BD4A/image_10.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/ac3a75cec96c_BD4A/image_thumb_4.png" width="411" height="121" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Unique Inheritance Reports (Click the image to enlarge)&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;DeliverPoint also shows you exactly why users have the permissions that they have even if they are granted permissions through a Domain Group&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/ac3a75cec96c_BD4A/image_14.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/ac3a75cec96c_BD4A/image_thumb_6.png" width="414" height="159" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Enumeration of AD Groups (Click the image to enlarge)&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;DeliverPoint is not just another Farm Administrators permission management tool, its a permission management tool that is fully embedded into SharePoint and is accessible for Site Collection Administrators and Site Administrators.&lt;/p&gt;  &lt;p&gt;If you are interested in beta testing this version, please contact &lt;a href="mailto:brett@lightningtools.com"&gt;brett@lightningtools.com&lt;/a&gt; or visit our booth for a demo at SharePoint Conference Anaheim.&lt;/p&gt;  &lt;p&gt;&amp;lt;brett/&amp;gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/304.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=mYmMOmyU3rA:UhnLENBBmpU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=mYmMOmyU3rA:UhnLENBBmpU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2011/09/27/compare-sharepoint-site-permissions-and-clone-permissions.aspx</guid>
            <pubDate>Tue, 27 Sep 2011 14:03:42 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/304.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2011/09/27/compare-sharepoint-site-permissions-and-clone-permissions.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/304.aspx</wfw:commentRss>
        </item>
        <item>
            <title>why visit lightningtools at spc?</title>
            <link>http://lightningtools.com/blog/archive/2011/09/22/why-visit-lightningtools-at-spc.aspx</link>
            <description>&lt;p&gt;Lightning Tools is proud to be sponsoring the &lt;a href="http://www.mssharepointconference.com" target="_blank"&gt;SharePoint Conference&lt;/a&gt; again and this time will be there in force. Julia Ito, Chris Ryan, Nick Swan (SharePoint MVP), Brett Lonsdale, Phill Duffy, Richard Young and Phillip McMillan will be at the Lightning Tools booth to greet you!&lt;/p&gt;  &lt;p&gt;At the Lightning Tools booth we’ll not only provide you with a warm welcome, but we’ll take the time to show you our up and coming product releases which include a new improved &lt;a href="http://www.lightningtools.com/social-squared/default.aspx" target="_blank"&gt;Social Squared&lt;/a&gt;, &lt;a href="http://www.lightningtools.com/sharepoint-user-management.aspx" target="_blank"&gt;Permissions Management&lt;/a&gt; for the cloud, and &lt;a href="http://www.lightningtools.com/list-rollup-web-parts.aspx" target="_blank"&gt;content aggregation&lt;/a&gt; for the cloud. If you haven’t taken the chance to read about or try our &lt;a href="http://www.lightningtools.com/lightning-data-masher.aspx" target="_blank"&gt;Data Masher&lt;/a&gt; tool, come and ask us for a demo! The Data Masher now allows syncing data to Office 365!!&lt;/p&gt;  &lt;p&gt;Not only do we have some fantastic new products to show you, but we also have the one and only Steve Fox giving away &lt;strong&gt;FREE&lt;/strong&gt; signed copies of his Developing SharePoint Applications with Windows Azure &lt;a href="http://shop.oreilly.com/product/0790145316462.do" target="_blank"&gt;book&lt;/a&gt;, Dux Raymond Sy will be providing &lt;strong&gt;FREE&lt;/strong&gt; signed copies of his SharePoint for Project Management &lt;a href="http://shop.oreilly.com/product/9780596520151.do" target="_blank"&gt;book&lt;/a&gt; and will be performing a rap at the Lightning Tools booth and finally Bill English (SharePoint MVP) and Ben Curry (SharePoint MVP) will also be giving away &lt;strong&gt;FREE&lt;/strong&gt; signed copies of the Administrators Companion &lt;a href="http://shop.oreilly.com/product/9780735627208.do" target="_blank"&gt;book&lt;/a&gt;. “I did actually contribute a chapter to this so i’ll be more than happy to sign it too &lt;img style="border-bottom-style: none; border-right-style: none; border-top-style: none; border-left-style: none" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/2c3d4b8ba5ec_92F8/wlEmoticon-smile_2.png" /&gt;“ &lt;strong&gt;(Print the flyer below as a reminder of the times or come and get one from us at booth 651)&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/2c3d4b8ba5ec_92F8/image_2.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/2c3d4b8ba5ec_92F8/image_thumb.png" width="510" height="657" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;If you are a fan of the &lt;a href="http://www.sharepointpodshow.com/" target="_blank"&gt;SharePoint Pod Show&lt;/a&gt;, you’ll find Rob Foster (SharePoint MVP), Nick Swan (SharePoint MVP), and myself hanging around the booth most of the time. We’ll be really happy to meet some of our listeners and perhaps share a beer or discuss some of Robs BBQ techniques with you. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/2c3d4b8ba5ec_92F8/image_4.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/2c3d4b8ba5ec_92F8/image_thumb_1.png" width="139" height="111" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Finally, this year we have a bit of a racing theme and you could be the lucky winner of a Nitro powered radio controlled car. Come and visit us for details.&lt;/p&gt;  &lt;p&gt;If you don’t want to come and see us for any of the above, just pop by and say hi!&lt;/p&gt;  &lt;p&gt;&amp;lt;Brett/&amp;gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/303.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=9UWjmInLpDM:ONXfXAtIJQU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=9UWjmInLpDM:ONXfXAtIJQU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2011/09/22/why-visit-lightningtools-at-spc.aspx</guid>
            <pubDate>Thu, 22 Sep 2011 10:03:15 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/303.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2011/09/22/why-visit-lightningtools-at-spc.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/303.aspx</wfw:commentRss>
        </item>
        <item>
            <title>MySQL Stored Procedures and the Business Connectivity Services in SharePoint 2010</title>
            <category>BCS</category>
            <category>BCS Meta Man</category>
            <category>Business Connectivity Services</category>
            <category>SharePoint 2010</category>
            <link>http://lightningtools.com/blog/archive/2011/09/16/mysql-stored-procedures-and-the-business-connectivity-services-in-sharepoint.aspx</link>
            <description>&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;In this walkthrough we will demonstrate how to integrate MySQL stored procedures with Microsoft SharePoint 2010 and display the data on SharePoint 2010 page. In order to do that we will describe how to create a new external content type by means of &lt;a href="http://www.lightningtools.com/bcs/bcs-meta-man.aspx" target="_blank"&gt;BCS Meta Man&lt;/a&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;/font&gt;&lt;/u&gt;.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Prerequisites&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Microsoft SharePoint Server 2010 &lt;/li&gt;    &lt;li&gt;Microsoft Visual Studio 2010 Professional or higher &lt;/li&gt;    &lt;li&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;a href="http://www.lightningtools.com/bcs/bcs-meta-man.aspx" target="_blank"&gt;BCS Meta Man&lt;/a&gt;&lt;/font&gt;&lt;/u&gt; &lt;/li&gt;    &lt;li&gt;Download and install “Windows (x86, 32-bit), MSI Installer Connector-ODBC” &lt;a href="http://www.mysql.com/downloads/connector/odbc/"&gt;http://www.mysql.com/downloads/connector/odbc/&lt;/a&gt; on a machine where BCS Meta Man runs &lt;/li&gt;    &lt;li&gt;Download and install “Windows (x86, 64-bit), MSI Installer Connector-ODBC” &lt;a href="http://www.mysql.com/downloads/connector/odbc/"&gt;http://www.mysql.com/downloads/connector/odbc/&lt;/a&gt; on a machine where SharePoint 2010 runs &lt;/li&gt;    &lt;li&gt;MySQL stored procedures for CRUD operations such as:      &lt;ol&gt;       &lt;li&gt;CREATE DEFINER = 'root'@'localhost'          &lt;br /&gt;PROCEDURE classicmodels.get_all_offices()           &lt;br /&gt;BEGIN           &lt;br /&gt;  SELECT * FROM offices;           &lt;br /&gt;END &lt;/li&gt;        &lt;li&gt;CREATE DEFINER = 'root'@'localhost'          &lt;br /&gt;PROCEDURE classicmodels.get_office_by_id(IN p_id INT)           &lt;br /&gt;BEGIN           &lt;br /&gt;SELECT * FROM offices WHERE officeCode=p_id;           &lt;br /&gt;END &lt;/li&gt;        &lt;li&gt;CREATE DEFINER = 'root'@'localhost'          &lt;br /&gt;PROCEDURE classicmodels.get_office_ids()           &lt;br /&gt;BEGIN           &lt;br /&gt;SELECT officeCode FROM offices;           &lt;br /&gt;END &lt;/li&gt;        &lt;li&gt;CREATE DEFINER = 'root'@'localhost'          &lt;br /&gt;PROCEDURE classicmodels.create_office(IN p_id INT, IN p_city VARCHAR(50),           &lt;br /&gt;IN p_phone VARCHAR(50), IN p_address_line1 VARCHAR(50),           &lt;br /&gt;IN p_address_line2 VARCHAR(50), IN p_state VARCHAR(50),           &lt;br /&gt;IN p_country VARCHAR(50), IN p_postal_code VARCHAR(15),           &lt;br /&gt;IN p_territory VARCHAR(10))           &lt;br /&gt;BEGIN           &lt;br /&gt;INSERT INTO offices values(p_id, p_city, p_phone, p_address_line1, p_address_line2,           &lt;br /&gt;  p_state, p_country, p_postal_code, p_territory);           &lt;br /&gt;END &lt;/li&gt;        &lt;li&gt;CREATE DEFINER = 'root'@'localhost'          &lt;br /&gt;PROCEDURE classicmodels.update_office(IN p_id INT, IN p_city VARCHAR(50),           &lt;br /&gt;IN p_phone VARCHAR(50), IN p_address_line1 VARCHAR(50),           &lt;br /&gt;IN p_address_line2 VARCHAR(50), IN p_state VARCHAR(50),           &lt;br /&gt;IN p_country VARCHAR(50), IN p_postal_code VARCHAR(15),           &lt;br /&gt;IN p_territory VARCHAR(10))           &lt;br /&gt;BEGIN           &lt;br /&gt;UPDATE offices SET city=p_city, phone=p_phone, addressLine1=p_address_line1,           &lt;br /&gt;  addressLine2=p_address_line2, state=p_state, country=p_country, postalCode=p_postal_code,           &lt;br /&gt;   territory=p_territory WHERE officecode=p_id;           &lt;br /&gt;END &lt;/li&gt;        &lt;li&gt;CREATE DEFINER = 'root'@'localhost'          &lt;br /&gt;PROCEDURE classicmodels.delete_office(IN p_id INT)           &lt;br /&gt;BEGIN           &lt;br /&gt;DELETE FROM offices WHERE officecode = p_id;           &lt;br /&gt;END &lt;/li&gt;     &lt;/ol&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Walkthrough&lt;/strong&gt; &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Open Visual Studio 2010 &lt;/li&gt;    &lt;li&gt;Add a New Project &lt;/li&gt;    &lt;li&gt;Expand the “SharePoint” node, select “Lightning Tools (2010)” node and then the “BCS Meta Man” project type &lt;/li&gt;    &lt;li&gt;Give your project a name i.e MySQLStoredProceduresBCSMetaManDemo and click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/4_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Create MySQLStoredProceduresBCSMetaManDemo project" border="0" alt="Create MySQLStoredProceduresBCSMetaManDemo project" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/4_thumb.png" width="244" height="170" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;On the next dialog box, enter the name of where you want to deploy your model, and click “Finish” button      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/5_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Deploy as a farm solution" border="0" alt="Deploy as a farm solution" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/5_thumb.png" width="244" height="194" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;If prompted, click “Trial” on the licensing dialog &lt;/li&gt;    &lt;li&gt;To show the “BCS Meta Man Data Source Explorer” we need to enable it from the Menu item, this new window can be docked so it doesn’t get in your way      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/7_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Open the BCS Meta Man Data Source Explorer" border="0" alt="Open the BCS Meta Man Data Source Explorer" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/7_thumb.png" width="244" height="95" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click the “Add Connection” button to show the “Connection Dialog” &lt;/li&gt;    &lt;li&gt;Select “ODBC Server” as Data Source type, enter MySQL ODBC connection string (for example it can be “&lt;strong&gt;Driver={MySQL ODBC 5.1 Driver};Server=taurus;Port=3306;Database=classicmodels; User=root;Password=12345;Trusted_Connection=yes;&lt;/strong&gt;”), enter “&lt;strong&gt;`&lt;/strong&gt;” as left and right delimiters and “&lt;strong&gt;?&lt;/strong&gt;” as parameter symbol and click “Connect” button       &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/9_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="MySQL ODBC connection string" border="0" alt="MySQL ODBC connection string" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/9_thumb.png" width="244" height="201" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The Data Source Explorer will now be populated with your MySQL data      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/10_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="See the stored procedures available to use" border="0" alt="See the stored procedures available to use" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/10_thumb.png" width="244" height="141" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Drag and drop your Finder Stored Procedure onto the design surface and enter External Content type name, i.e “Office”, click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/11_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and drop a Finder stored procedure and Enter External Content type name" border="0" alt="Drag and drop a Finder stored procedure and Enter External Content type name" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/11_thumb.png" width="244" height="84" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Choose the Finder as the method type and click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/12_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Choose the Finder as the method type" border="0" alt="Choose the Finder as the method type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/12_thumb.png" width="244" height="97" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The External Content Type will be created on the Diagram      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/13_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type created on diagram " border="0" alt="External Content Type created on diagram " src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/13_thumb.png" width="244" height="109" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;In order to set an identifier right-click on the External Content Type, select “Manage External Content type” menu item      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/14_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Manage External Content type" border="0" alt="Manage External Content type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/14_thumb.png" width="244" height="68" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click “Edit Identifiers” button on the “Entity Management” dialog, select an identifier and click “OK” and “Update” button then      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/15_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Set identifier " border="0" alt="Set identifier " src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/15_thumb.png" width="244" height="159" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The External Content Type will update with the new identifier      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/16_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with identifier" border="0" alt="External Content Type with identifier" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/16_thumb.png" width="244" height="117" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;From the “BCS Meta Man Data Source Explorer” drag and drop your Specific Finder stored procedure onto the existing External Content Type      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/17_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and drop Specific Finder stored procedure onto existing External Content Type" border="0" alt="Drag and drop Specific Finder stored procedure onto existing External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/17_thumb.png" width="244" height="101" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The “Stored Procedure Configuration” dialog will be displayed. Select “SpecificFinder” as the Method Type. Select the first Parameter – p_id and set the Filter Type as Comparison and the Default Value as ‘0’. Click “OK”.      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/18_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Configuring a Specific Finder stored procedure" border="0" alt="Configuring a Specific Finder stored procedure" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/18_thumb.png" width="244" height="230" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The External Content Type will update with the new Specific Finder Method      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/19_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with Finder and Specific Finder methods" border="0" alt="External Content Type with Finder and Specific Finder methods" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/19_thumb.png" width="244" height="137" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Next drag and drop the Id Enumerator stored procedure onto the existing External Content Type      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/20_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and drop Id Enumerator Stored Procedure onto existing External Content Type" border="0" alt="Drag and drop Id Enumerator Stored Procedure onto existing External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/20_thumb.png" width="244" height="103" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Select “IdEnumerator” as the Method Type, Click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/21_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Configuring Id Enumerator stored procedure" border="0" alt="Configuring Id Enumerator stored procedure" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/21_thumb.png" width="244" height="97" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The External Content Type will update with the new Id Enumerator Method      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/22_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with Finder, Specific Finder and ID Enumerator methods" border="0" alt="External Content Type with Finder, Specific Finder and ID Enumerator methods" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/22_thumb.png" width="244" height="151" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;From the “BCS Meta Man Data Source Explorer” drag and drop your Creator stored procedure onto the existing External Content Type      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/23_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and drop Creator stored procedure onto existing External Content Type" border="0" alt="Drag and drop Creator stored procedure onto existing External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/23_thumb.png" width="244" height="109" /&gt;&lt;/a&gt; &lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The “Stored Procedure Configuration” dialog will be displayed. Select “Creator” as the Method Type. For each Parameter select the appropriate column to map it to. Click “OK”.      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/24_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Configuring Creator stored procedure" border="0" alt="Configuring Creator stored procedure" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/24_thumb.png" width="229" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The External Content Type will update with the new Creator Method      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/25_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator methods" border="0" alt="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator methods" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/25_thumb.png" width="244" height="167" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Next drag and drop your Updater stored procedure onto the existing External Content Type &lt;/li&gt;    &lt;li&gt;Again the “Stored Procedure Configuration” dialog will be displayed. Select “Updater” as the Method Type. For each Parameter select the appropriate column to map it to. Click “OK”. &lt;/li&gt;    &lt;li&gt;The External Content Type will update with the new Updater Method      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/28_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator and Updater methods" border="0" alt="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator and Updater methods" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/28_thumb.png" width="244" height="182" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Finally drag and drop your Deleter stored procedure onto the existing External Content Type &lt;/li&gt;    &lt;li&gt;Again the “Stored Procedure Configuration” dialog will be displayed. Select “Deleter” as the Method Type. Click “OK”. &lt;/li&gt;    &lt;li&gt;The complete External Content Type will look like the following      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/31_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator, Updater and Deleter methods" border="0" alt="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator, Updater and Deleter methods" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/31_thumb.png" width="244" height="194" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Press F5 to deploy The External Content Type, this will load up your SharePoint Page once deployed &lt;/li&gt;    &lt;li&gt;Add a new External list by selection on SharePoint page “Site Action”-&amp;gt;“More Options…”-&amp;gt;“External List”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/33_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Add a new external list" border="0" alt="Add a new external list" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/33_thumb.png" width="244" height="148" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Give your External List a name and Click on the icon to show the available External Content Types      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/34_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Select the available External Content Type" border="0" alt="Select the available External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/34_thumb.png" width="214" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Select created MySQLStoredProceduresBCSMetaManDemo.Office External Content Type, click “OK”. Click “Create” button then.      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/35_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Select Office External Content Type" border="0" alt="Select Office External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/35_thumb.png" width="244" height="63" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The external data provided by MySQL stored procedure is now displayed in the SharePoint External List      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/36_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External data provided by MySQL stored procedure is now shown within SharePoint 2010" border="0" alt="External data provided by MySQL stored procedure is now shown within SharePoint 2010" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/36_thumb.png" width="244" height="103" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;You can hover over the first column of your list and you’ll see a drop down appear. If you click the drop down arrow you’ll get a number of options for that particular row of data – one of which will be View Item.      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/37_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="View items through External List" border="0" alt="View items through External List" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/37_thumb.png" width="244" height="55" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;You will be presented with the View Item dialog      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/38_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="View Item dialog" border="0" alt="View Item dialog" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/38_thumb.png" width="244" height="197" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Now click “Edit item” on the ribbon of the dialog. This option is only available if you create an Updater method for your External Content Type. Clicking on this link will open up a dialog form that allows you to edit that row of data and save it.      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/39_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Edit Item dialog" border="0" alt="Edit Item dialog" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/39_thumb.png" width="244" height="200" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;While viewing the external list, if you click the Items tab on the ribbon you’ll see a New Item button      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/40_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Add new data to MySQL database through the external list" border="0" alt="Add new data to MySQL database through the external list" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/40_thumb.png" width="244" height="85" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;This will bring up the “New Item” dialog where you can add a new Office. We will enter information about new Office and click “Save”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/41_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="New Item Dialog" border="0" alt="New Item Dialog" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/41_thumb.png" width="244" height="211" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;This will insert a new row directly to your MySQL database      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/42_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Updated External data provided by MySQL stored procedure is now shown within SharePoint 2010" border="0" alt="Updated External data provided by MySQL stored procedure is now shown within SharePoint 2010" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/MySQL-Stored-Procedures-and-the-Business_14C0/42_thumb.png" width="244" height="104" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;We hope this walkthrough will be useful for you. If you have any questions feel free to email them to &lt;a href="mailto:support@lightningtools.com"&gt;&lt;font color="#0072bc"&gt;support@lightningtools.com&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;lt;Dmitry Kaloshin/&amp;gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/302.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=vsasPbqvlcM:Ek5Ngp0f1xo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=vsasPbqvlcM:Ek5Ngp0f1xo:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2011/09/16/mysql-stored-procedures-and-the-business-connectivity-services-in-sharepoint.aspx</guid>
            <pubDate>Fri, 16 Sep 2011 15:54:09 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/302.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2011/09/16/mysql-stored-procedures-and-the-business-connectivity-services-in-sharepoint.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/302.aspx</wfw:commentRss>
        </item>
        <item>
            <title>BCS filters and DB2 Stored Procedures with Parameters in SharePoint 2010</title>
            <category>BCS</category>
            <category>BCS Meta Man</category>
            <category>Business Connectivity Services</category>
            <category>SharePoint 2010</category>
            <link>http://lightningtools.com/blog/archive/2011/09/14/bcs-filters-and-db2-stored-procedures-with-parameters-in-sharepoint.aspx</link>
            <description>&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;In this tutorial we will show you how to connect to a DB2 Database using &lt;a href="http://www.lightningtools.com/bcs/bcs-meta-man.aspx" target="_blank"&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;BCS Meta Man&lt;/font&gt;&lt;/u&gt;&lt;/a&gt; and a Stored Procedure to return filtered data to a SharePoint Business Data List. In this walkthrough we will be creating a Finder Method with filters so our DB2 Stored Procedure needs to have parameters defined.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Prerequisites&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Microsoft SharePoint Server 2010 &lt;/li&gt;    &lt;li&gt;Microsoft Visual Studio 2010 Professional or higher &lt;/li&gt;    &lt;li&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;a href="http://www.lightningtools.com/bcs/bcs-meta-man.aspx" target="_blank"&gt;BCS Meta Man&lt;/a&gt;&lt;/font&gt;&lt;/u&gt; &lt;/li&gt;    &lt;li&gt;Download and install “IBM Data Server Runtime Client (Windows 32-bit AMD and Intel x86)” &lt;a href="http://www-01.ibm.com/support/docview.wss?rs=4020&amp;amp;uid=swg21385217"&gt;http://www-01.ibm.com/support/docview.wss?rs=4020&amp;amp;uid=swg21385217&lt;/a&gt; on a machine where BCS Meta Man runs &lt;/li&gt;    &lt;li&gt;Download and install “IBM Data Server Runtime Client (Windows AMD64 and Intel EM64T)” &lt;a href="http://www-01.ibm.com/support/docview.wss?rs=4020&amp;amp;uid=swg21385217"&gt;http://www-01.ibm.com/support/docview.wss?rs=4020&amp;amp;uid=swg21385217&lt;/a&gt; on a machine where SharePoint 2010 runs &lt;/li&gt;    &lt;li&gt;DB2 stored procedure such as:      &lt;ol&gt;       &lt;li&gt;CREATE PROCEDURE GET_EMPLOYEES_FILTERED(IN P_FIRST_NAME VARCHAR(12), IN P_BONUS DECIMAL(9,2))          &lt;br /&gt;DYNAMIC RESULT SETS 1           &lt;br /&gt;P1: BEGIN  &lt;br /&gt;DECLARE v_employees CURSOR WITH RETURN for  &lt;br /&gt;select * from EMPLOYEE where FIRSTNME like '%' || P_FIRST_NAME || '%' and BONUS &amp;gt; P_BONUS;           &lt;br /&gt;OPEN v_employees;           &lt;br /&gt;END P1 &lt;/li&gt;     &lt;/ol&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Walkthrough&lt;/strong&gt; &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Open Visual Studio 2010 &lt;/li&gt;    &lt;li&gt;Add a New Project &lt;/li&gt;    &lt;li&gt;Expand the “SharePoint” node, select “Lightning Tools (2010)” node and then the “BCS Meta Man” project type &lt;/li&gt;    &lt;li&gt;Give your project a name i.e BCSMetaManFilteredDB2StoredProcedure and click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/4_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Create BCSMetaManFilteredDB2StoredProcedure project" border="0" alt="Create BCSMetaManFilteredDB2StoredProcedure project" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/4_thumb.png" width="244" height="174" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;On the next dialog box, enter the name of where you want to deploy your model, and click “Finish” button      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/5_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Deploy as a farm solution" border="0" alt="Deploy as a farm solution" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/5_thumb.png" width="244" height="194" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;If prompted, click “Trial” on the licensing dialog &lt;/li&gt;    &lt;li&gt;To show the “BCS Meta Man Data Source Explorer” we need to enable it from the Menu item, this new window can be docked so it doesn’t get in your way      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/7_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Open the BCS Meta Man Data Source Explorer" border="0" alt="Open the BCS Meta Man Data Source Explorer" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/7_thumb.png" width="244" height="122" /&gt;&lt;/a&gt; &lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click the “Add Connection” button to show the “Connection Dialog” &lt;/li&gt;    &lt;li&gt;Select “ODBC Server” as Data Source type, enter DB2 ODBC connection string (for example it can be “&lt;strong&gt;Driver={IBM DB2 ODBC DRIVER};Database=SAMPLE; Hostname=cygnus;port=50000;Protocol=TCPIP;Uid=Administrator;Pwd=12345;Trusted_Connection=false;&lt;/strong&gt;”), enter double quotes as left and right delimiters and “&lt;strong&gt;?&lt;/strong&gt;” as parameter symbol and click “Connect” button.       &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/9_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="DB2 ODBC connection string" border="0" alt="DB2 ODBC connection string" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/9_thumb.png" width="244" height="201" /&gt;&lt;/a&gt; &lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The Data Source Explorer will now be populated with your DB2 data      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/10_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="See the stored procedures available to use" border="0" alt="See the stored procedures available to use" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/10_thumb.png" width="244" height="200" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Drag and drop your Finder Stored Procedure with parameters onto the design surface and enter External Content type name, i.e “FilteredEmployee”, click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/11_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and drop a Finder stored procedure and Enter External Content type name" border="0" alt="Drag and drop a Finder stored procedure and Enter External Content type name" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/11_thumb.png" width="244" height="105" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Select the Method Type as “Finder’' &lt;/li&gt;    &lt;li&gt;Select the first Parameter (p_first_name) and set it’s Filter Type to Comparison and the Default Value to ‘A’      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/13_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Configuring Finder DB2 stored procedure and first parameter" border="0" alt="Configuring Finder DB2 stored procedure and first parameter" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/13_thumb.png" width="244" height="230" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Next select the second Parameter (p_bonus) and also set it’s Filter Type to Comparison and the Default Value to ‘100’      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/14_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Configuring Finder DB2 stored procedure and second parameter" border="0" alt="Configuring Finder DB2 stored procedure and second parameter" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/14_thumb.png" width="244" height="230" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click ‘OK’ &lt;/li&gt;    &lt;li&gt;The External Content Type will be created on the Diagram      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/16_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type created on diagram " border="0" alt="External Content Type created on diagram " src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/16_thumb.png" width="244" height="90" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;In order to set an identifier right-click on the External Content Type, select “Manage External Content type” menu item      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/17_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Manage External Content type" border="0" alt="Manage External Content type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/17_thumb.png" width="244" height="55" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click “Edit Identifiers” button on the “Entity Management” dialog, select an identifier and click “OK” and “Update” button then      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/18_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Set identifier" border="0" alt="Set identifier" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/18_thumb.png" width="244" height="159" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The External Content Type will update with the new identifier      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/19_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with identifier" border="0" alt="External Content Type with identifier" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/19_thumb.png" width="244" height="100" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Press F5 to deploy, this will load up your SharePoint Page once deployed &lt;/li&gt;    &lt;li&gt;Add a new Business Data List Web Part to your SharePoint page      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/21_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Add Business Data List Web Part " border="0" alt="Add Business Data List Web Part " src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/21_thumb.png" width="244" height="111" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click on the ‘Open the tool pane’ link &lt;/li&gt;    &lt;li&gt;Click on the icon to show the available External Content Types      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/23_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Open the picker to select your External Content Type" border="0" alt="Open the picker to select your External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/23_thumb.png" width="244" height="165" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Select our ‘BCSMetaManFilteredDB2StoredProcedure.FilteredEmployee’ External Content Type, click ‘OK’      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/24_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Select the FilteredEmployee External Content Type" border="0" alt="Select the FilteredEmployee External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/24_thumb.png" width="244" height="59" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click ‘OK’ on the tool pane &lt;/li&gt;    &lt;li&gt;Click the ‘Add’ link on the Business Data List Web Part to add the second Filter option      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/26_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="To use multiple BCS filters click the Add link" border="0" alt="To use multiple BCS filters click the Add link" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/26_thumb.png" width="244" height="44" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Change the second Filter to be the P_BONUS and enter values for the filters and click ‘Retrieve Data’ &lt;/li&gt;    &lt;li&gt;Your DB2 data provided by Stored Procedure is now displayed in the SharePoint Web Part      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/28_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="View your filtered data provided by DB2 stored procedure" border="0" alt="View your filtered data provided by DB2 stored procedure" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/bbdff1fff509_2B3F/28_thumb.png" width="244" height="51" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;We hope this walkthrough will be useful for you. If you have any questions feel free to email them to &lt;a href="mailto:support@lightningtools.com"&gt;&lt;font color="#0072bc"&gt;support@lightningtools.com&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;lt;Dmitry Kaloshin/&amp;gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/301.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=_WKP4k_GAKo:c-9F89mcEv8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=_WKP4k_GAKo:c-9F89mcEv8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2011/09/14/bcs-filters-and-db2-stored-procedures-with-parameters-in-sharepoint.aspx</guid>
            <pubDate>Wed, 14 Sep 2011 20:11:45 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/301.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2011/09/14/bcs-filters-and-db2-stored-procedures-with-parameters-in-sharepoint.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/301.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Business Connectivity Service Associations using DB2 Stored Procedures in SharePoint 2010</title>
            <category>BCS</category>
            <category>BCS Meta Man</category>
            <category>Business Connectivity Services</category>
            <category>SharePoint 2010</category>
            <link>http://lightningtools.com/blog/archive/2011/09/13/business-connectivity-service-associations-using-db2-stored-procedures-in-sharepoint.aspx</link>
            <description>&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;In this walkthrough we will demonstrate you how to connect to DB2 Database and use stored procedures to create an association between two External Content Types using &lt;a href="http://www.lightningtools.com/bcs/bcs-meta-man.aspx" target="_blank"&gt;BCS Meta Man&lt;/a&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;/font&gt;&lt;/u&gt;.&lt;/p&gt;  &lt;p&gt;We are going to follow on from the ‘&lt;a href="http://lightningtools.com/blog/archive/2011/09/09/db2-stored-procedures-and-the-business-connectivity-services-in-sharepoint.aspx" target="_blank"&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;DB2 Stored Procedures and the Business Connectivity Services in SharePoint 2010&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;’&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Prerequisites&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Microsoft SharePoint Server 2010 &lt;/li&gt;    &lt;li&gt;Microsoft Visual Studio 2010 Professional or higher &lt;/li&gt;    &lt;li&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;a href="http://www.lightningtools.com/bcs/bcs-meta-man.aspx" target="_blank"&gt;BCS Meta Man&lt;/a&gt;&lt;/font&gt;&lt;/u&gt; &lt;/li&gt;    &lt;li&gt;Download and install “IBM Data Server Runtime Client (Windows 32-bit AMD and Intel x86)” &lt;a href="http://www-01.ibm.com/support/docview.wss?rs=4020&amp;amp;uid=swg21385217"&gt;http://www-01.ibm.com/support/docview.wss?rs=4020&amp;amp;uid=swg21385217&lt;/a&gt; on a machine where BCS Meta Man runs &lt;/li&gt;    &lt;li&gt;Download and install “IBM Data Server Runtime Client (Windows AMD64 and Intel EM64T)” &lt;a href="http://www-01.ibm.com/support/docview.wss?rs=4020&amp;amp;uid=swg21385217"&gt;http://www-01.ibm.com/support/docview.wss?rs=4020&amp;amp;uid=swg21385217&lt;/a&gt; on a machine where SharePoint 2010 runs &lt;/li&gt;    &lt;li&gt;DB2 stored procedures  such as:      &lt;ol&gt;       &lt;li&gt;CREATE PROCEDURE GET_ALL_DEPARTMENTS()          &lt;br /&gt;DYNAMIC RESULT SETS 1           &lt;br /&gt;P1: BEGIN           &lt;br /&gt;DECLARE v_departments CURSOR WITH RETURN for           &lt;br /&gt;SELECT * FROM DEPARTMENT;           &lt;br /&gt;OPEN v_departments;           &lt;br /&gt;END P1 &lt;/li&gt;        &lt;li&gt;CREATE PROCEDURE GET_DEPARTMENT_BY_ID(IN P_ID CHAR(3))          &lt;br /&gt;DYNAMIC RESULT SETS 1           &lt;br /&gt;P1: BEGIN           &lt;br /&gt;DECLARE v_departments CURSOR WITH RETURN for           &lt;br /&gt;select * from DEPARTMENT where DEPTNO=P_ID;           &lt;br /&gt;OPEN v_departments;           &lt;br /&gt;END P1 &lt;/li&gt;        &lt;li&gt;CREATE PROCEDURE GET_ALL_EMPLOYEES()          &lt;br /&gt;DYNAMIC RESULT SETS 1           &lt;br /&gt;P1: BEGIN           &lt;br /&gt;DECLARE v_employees CURSOR WITH RETURN for           &lt;br /&gt;SELECT * FROM EMPLOYEE;           &lt;br /&gt;OPEN v_employees;           &lt;br /&gt;END P1 &lt;/li&gt;        &lt;li&gt;CREATE PROCEDURE GET_EMPLOYEE_BY_ID(IN P_ID CHAR(6))          &lt;br /&gt;DYNAMIC RESULT SETS 1           &lt;br /&gt;P1: BEGIN           &lt;br /&gt;DECLARE v_employees CURSOR WITH RETURN for           &lt;br /&gt;select * from EMPLOYEE where EMPNO=P_ID;           &lt;br /&gt;OPEN v_employees;           &lt;br /&gt;END P1 &lt;/li&gt;        &lt;li&gt;CREATE PROCEDURE GET_EMPLOYEE_BY_DEPARTMENT_ID(IN P_ID CHAR(3))          &lt;br /&gt;DYNAMIC RESULT SETS 1           &lt;br /&gt;P1: BEGIN           &lt;br /&gt;DECLARE v_employees CURSOR WITH RETURN for           &lt;br /&gt;select * from EMPLOYEE where WORKDEPT=P_ID;           &lt;br /&gt;OPEN v_employees;           &lt;br /&gt;END P1 &lt;/li&gt;     &lt;/ol&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Walkthrough&lt;/strong&gt; &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Using the ‘&lt;a href="http://lightningtools.com/blog/archive/2011/09/09/db2-stored-procedures-and-the-business-connectivity-services-in-sharepoint.aspx" target="_blank"&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;DB2 Stored Procedures and the Business Connectivity Services in SharePoint 2010&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;’ Tutorial create two External Content Types “Department” and “Employee” with Finder (Read List operation) and SpecificFinder (Read Item operation) methods only. &lt;/li&gt;    &lt;li&gt;You should have the following External Content Types on your Diagram      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/2_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Both External Content Types on the design surface" border="0" alt="Both External Content Types on the design surface" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/2_thumb.png" width="244" height="98" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Switch to the ‘Toolbox’ pane in Visual Studio (Ctrl-Alt-X) &lt;/li&gt;    &lt;li&gt;Select the ‘Association’ toolbox item from the list      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/4_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Select the Association toolbox control" border="0" alt="Select the Association toolbox control" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/4_thumb.png" width="244" height="83" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;With the Association selected, Click and Drag from ‘Department’ to ‘Employee’      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/5_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and Drop between your two External Content Types" border="0" alt="Drag and Drop between your two External Content Types" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/5_thumb.png" width="244" height="97" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;When you release the ‘Association Configuration’ dialog will show &lt;/li&gt;    &lt;li&gt;Switch back to the ‘BCS Meta Man Data Source Explorer’ tool window pane &lt;/li&gt;    &lt;li&gt;Drag the Association Stored Procedure onto the Arrow in the ‘Association Configuration’ dialog, it will turn green when OK to release      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/8_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and Drop the DB2 Association Stored Procedure" border="0" alt="Drag and Drop the DB2 Association Stored Procedure" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/8_thumb.png" width="244" height="87" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The dialog will update with the selected Stored Procedure      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/9_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Association Configuration dialog" border="0" alt="Association Configuration dialog" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/9_thumb.png" width="244" height="176" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Select ‘P_ID’ in the Parameter and ‘DEPTNO’ in the Identifier drop-down list boxes, Click ‘Save’      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/10_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Map the DB2 stored procedure parameter to identifier" border="0" alt="Map the DB2 stored procedure parameter to identifier" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/10_thumb.png" width="244" height="176" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The diagram will update to show an arrow indicating we have an association between the two External Content Types      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/11_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Association has been created" border="0" alt="Association has been created" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/11_thumb.png" width="244" height="99" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Press F5 to deploy, this will load up your SharePoint Page once deployed &lt;/li&gt;    &lt;li&gt;Add a new Business Data List Web Part to your SharePoint page      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/13_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Add Business Data List Web Part " border="0" alt="Add Business Data List Web Part " src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/13_thumb.png" width="244" height="111" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click on the ‘Open the tool pane’ link &lt;/li&gt;    &lt;li&gt;Click on the icon to show the available External Content Types      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/15_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Open the picker to select your External Content Type" border="0" alt="Open the picker to select your External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/15_thumb.png" width="244" height="165" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Select our ‘BCSMetaMan1.Department’ External Content Type, click OK      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/16_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Select the Department External Content Type" border="0" alt="Select the Department External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/16_thumb.png" width="244" height="78" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click ‘OK’ on the tool pane &lt;/li&gt;    &lt;li&gt;The external data provided by DB2 stored procedure is now displayed in the SharePoint Web Part      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/18_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External data provided by DB2 stored procedure is now shown within SharePoint 2010" border="0" alt="External data provided by DB2 stored procedure is now shown within SharePoint 2010" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/18_thumb.png" width="244" height="125" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Next, Add a new ‘Business Data Related List’ Web Part to the page &lt;/li&gt;    &lt;li&gt;Configure the Web Part to use the ‘BCSMetaMan1.Employee’ External Content Type &lt;/li&gt;    &lt;li&gt;The Web Part will display a message saying the following      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/21_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Need to setup web part connection" border="0" alt="Need to setup web part connection" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/21_thumb.png" width="244" height="33" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;To do this we can set up the connection using the small arrow from the top right of our Web Part      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/22_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Use a web part menu to create a connection" border="0" alt="Use a web part menu to create a connection" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/22_thumb.png" width="244" height="105" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Once this is done we can click on the arrows next to an item in our ‘Department’ web part and the employees related to this department will display on our ‘Employee’ web part      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/23_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Related list web part now shows the association data provided by DB2 stored procedure" border="0" alt="Related list web part now shows the association data provided by DB2 stored procedure" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/470b5ebbcb16_1069/23_thumb.png" width="244" height="138" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;We hope this walkthrough will be useful for you. If you have any questions feel free to email them to &lt;a href="mailto:support@lightningtools.com"&gt;&lt;font color="#0072bc"&gt;&lt;u&gt;support@lightningtools.com&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;lt;Dmitry Kaloshin/&amp;gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/300.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=d2nGzxnNvc8:INpcWqD_LNs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=d2nGzxnNvc8:INpcWqD_LNs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2011/09/13/business-connectivity-service-associations-using-db2-stored-procedures-in-sharepoint.aspx</guid>
            <pubDate>Tue, 13 Sep 2011 13:15:09 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/300.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2011/09/13/business-connectivity-service-associations-using-db2-stored-procedures-in-sharepoint.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/300.aspx</wfw:commentRss>
        </item>
        <item>
            <title>DB2 Stored Procedures and the Business Connectivity Services in SharePoint 2010</title>
            <category>BCS</category>
            <category>BCS Meta Man</category>
            <category>Business Connectivity Services</category>
            <category>SharePoint 2010</category>
            <link>http://lightningtools.com/blog/archive/2011/09/09/db2-stored-procedures-and-the-business-connectivity-services-in-sharepoint.aspx</link>
            <description>&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;In this walkthrough we will demonstrate how to integrate DB2 stored procedures with Microsoft SharePoint 2010 and display the data on SharePoint 2010 page. In order to do that we will describe how to create a new external content type by means of &lt;a href="http://www.lightningtools.com/bcs/bcs-meta-man.aspx" target="_blank"&gt;BCS Meta Man&lt;/a&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;/font&gt;&lt;/u&gt;.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Prerequisites&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Microsoft SharePoint Server 2010 &lt;/li&gt;    &lt;li&gt;Microsoft Visual Studio 2010 Professional or higher &lt;/li&gt;    &lt;li&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;a href="http://www.lightningtools.com/bcs/bcs-meta-man.aspx" target="_blank"&gt;BCS Meta Man&lt;/a&gt;&lt;/font&gt;&lt;/u&gt; &lt;/li&gt;    &lt;li&gt;Download and install “IBM Data Server Runtime Client (Windows 32-bit AMD and Intel x86)” &lt;a href="http://www-01.ibm.com/support/docview.wss?rs=4020&amp;amp;uid=swg21385217"&gt;http://www-01.ibm.com/support/docview.wss?rs=4020&amp;amp;uid=swg21385217&lt;/a&gt; on a machine where BCS Meta Man runs &lt;/li&gt;    &lt;li&gt;Download and install “IBM Data Server Runtime Client (Windows AMD64 and Intel EM64T)” &lt;a href="http://www-01.ibm.com/support/docview.wss?rs=4020&amp;amp;uid=swg21385217"&gt;http://www-01.ibm.com/support/docview.wss?rs=4020&amp;amp;uid=swg21385217&lt;/a&gt; on a machine where SharePoint 2010 runs &lt;/li&gt;    &lt;li&gt;DB2 stored procedures for CRUD operations such as:      &lt;ol&gt;       &lt;li&gt;CREATE PROCEDURE GET_ALL_DEPARTMENTS()          &lt;br /&gt;DYNAMIC RESULT SETS 1           &lt;br /&gt;P1: BEGIN           &lt;br /&gt;DECLARE v_departments CURSOR WITH RETURN for           &lt;br /&gt;SELECT * FROM DEPARTMENT;           &lt;br /&gt;OPEN v_departments;           &lt;br /&gt;END P1 &lt;/li&gt;        &lt;li&gt;CREATE PROCEDURE GET_DEPARTMENT_BY_ID(IN P_ID CHAR(3))          &lt;br /&gt;DYNAMIC RESULT SETS 1           &lt;br /&gt;P1: BEGIN           &lt;br /&gt;DECLARE v_departments CURSOR WITH RETURN for           &lt;br /&gt;select * from DEPARTMENT where DEPTNO=P_ID;           &lt;br /&gt;OPEN v_departments;           &lt;br /&gt;END P1 &lt;/li&gt;        &lt;li&gt;CREATE PROCEDURE GET_DEPARTMENT_IDS()          &lt;br /&gt;DYNAMIC RESULT SETS 1           &lt;br /&gt;P1: BEGIN           &lt;br /&gt;DECLARE v_department_ids CURSOR WITH RETURN for           &lt;br /&gt;select DEPTNO from DEPARTMENT;           &lt;br /&gt;OPEN v_department_ids;           &lt;br /&gt;END P1 &lt;/li&gt;        &lt;li&gt;CREATE PROCEDURE CREATE_DEPARTMENT(IN P_ID CHAR(3), IN P_NAME VARCHAR(36), IN P_MGRNO CHAR(6), IN P_ADMID CHAR(3), IN P_LOCATION CHAR(16))          &lt;br /&gt;DYNAMIC RESULT SETS 1           &lt;br /&gt;P1: BEGIN           &lt;br /&gt;insert into DEPARTMENT values(P_ID, P_NAME, P_MGRNO, P_ADMID, P_LOCATION);           &lt;br /&gt;END P1 &lt;/li&gt;        &lt;li&gt;CREATE PROCEDURE UPDATE_DEPARTMENT(IN P_ID CHAR(3), IN P_NAME VARCHAR(36), IN P_MGRNO CHAR(6), IN P_ADMID CHAR(3), IN P_LOCATION CHAR(16))          &lt;br /&gt;DYNAMIC RESULT SETS 1           &lt;br /&gt;P1: BEGIN           &lt;br /&gt;update DEPARTMENT set DEPTNAME=P_NAME, MGRNO=P_MGRNO, ADMRDEPT=P_ADMID, LOCATION=P_LOCATION where DEPTNO=P_ID;           &lt;br /&gt;END P1 &lt;/li&gt;        &lt;li&gt;CREATE PROCEDURE DELETE_DEPARTMENT(IN P_ID CHAR(3))          &lt;br /&gt;DYNAMIC RESULT SETS 1           &lt;br /&gt;P1: BEGIN           &lt;br /&gt;delete from DEPARTMENT where DEPTNO=P_ID;           &lt;br /&gt;END P1 &lt;/li&gt;     &lt;/ol&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Walkthrough&lt;/strong&gt; &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Open Visual Studio 2010 &lt;/li&gt;    &lt;li&gt;Add a New Project &lt;/li&gt;    &lt;li&gt;Expand the “SharePoint” node, select “Lightning Tools (2010)” node and then the “BCS Meta Man” project type &lt;/li&gt;    &lt;li&gt;Give your project a name i.e DB2StoredProceduresBCSMetaManDemo and click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/4_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Create DB2StoredProceduresBCSMetaManDemo project" border="0" alt="Create DB2StoredProceduresBCSMetaManDemo project" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/4_thumb.png" width="244" height="170" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;On the next dialog box, enter the name of where you want to deploy your model, and click “Finish” button      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/5_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Deploy as a farm solution" border="0" alt="Deploy as a farm solution" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/5_thumb.png" width="244" height="194" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;If prompted, click “Trial” on the licensing dialog &lt;/li&gt;    &lt;li&gt;To show the “BCS Meta Man Data Source Explorer” we need to enable it from the Menu item, this new window can be docked so it doesn’t get in your way      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/7_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Open the BCS Meta Man Data Source Explorer" border="0" alt="Open the BCS Meta Man Data Source Explorer" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/7_thumb.png" width="244" height="90" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click the “Add Connection” button to show the “Connection Dialog” &lt;/li&gt;    &lt;li&gt;Select “ODBC Server” as Data Source type, enter DB2 ODBC connection string (for example it can be “&lt;strong&gt;Driver={IBM DB2 ODBC DRIVER};Database=SAMPLE;Hostname=cygnus;port=50000;Protocol=TCPIP;Uid=Administrator;Pwd=12345;Trusted_Connection=false;&lt;/strong&gt;”), enter double quotes as left and right delimiters and “&lt;strong&gt;?&lt;/strong&gt;” as parameter symbol and click “Connect” button.       &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/9_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="DB2 ODBC connection string" border="0" alt="DB2 ODBC connection string" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/9_thumb.png" width="244" height="201" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The Data Source Explorer will now be populated with your DB2 data      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/10_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="See the stored procedures available to use" border="0" alt="See the stored procedures available to use" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/10_thumb.png" width="244" height="132" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Drag and drop your Finder Stored Procedure onto the design surface and enter External Content type name, i.e “Department”, click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/11_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and drop a Finder stored procedure and Enter External Content type name" border="0" alt="Drag and drop a Finder stored procedure and Enter External Content type name" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/11_thumb.png" width="244" height="100" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Choose the Finder as the method type and click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/12_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Choose the Finder as the method type" border="0" alt="Choose the Finder as the method type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/12_thumb.png" width="338" height="134" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The External Content Type will be created on the Diagram      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/13_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type created on diagram " border="0" alt="External Content Type created on diagram " src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/13_thumb.png" width="301" height="117" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;In order to set an identifier right-click on the External Content Type, select “Manage External Content type” menu item      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/14_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Manage External Content type" border="0" alt="Manage External Content type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/14_thumb.png" width="244" height="54" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click “Edit Identifiers” button on the “Entity Management” dialog, select an identifier and click “OK” and “Update” button then      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/15_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Set identifier " border="0" alt="Set identifier " src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/15_thumb.png" width="244" height="159" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The External Content Type will update with the new identifier      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/16_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with identifier" border="0" alt="External Content Type with identifier" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/16_thumb.png" width="302" height="134" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;From the “BCS Meta Man Data Source Explorer” drag and drop your Specific Finder stored procedure onto the existing External Content Type      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/17_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and drop Specific Finder stored procedure onto existing External Content Type" border="0" alt="Drag and drop Specific Finder stored procedure onto existing External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/17_thumb.png" width="244" height="93" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The “Stored Procedure Configuration” dialog will be displayed. Select “SpecificFinder” as the Method Type. Select the first Parameter – P_ID and set the Filter Type as Comparison and the Default Value as ‘0’. Click “OK”.      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/18_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Configuring a Specific Finder stored procedure" border="0" alt="Configuring a Specific Finder stored procedure" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/18_thumb.png" width="244" height="230" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The External Content Type will update with the new Specific Finder Method      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/19_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with Finder and Specific Finder methods" border="0" alt="External Content Type with Finder and Specific Finder methods" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/19_thumb.png" width="300" height="150" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Next drag and drop the Id Enumerator stored procedure onto the existing External Content Type      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/20_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and drop Id Enumerator Stored Procedure onto existing External Content Type" border="0" alt="Drag and drop Id Enumerator Stored Procedure onto existing External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/20_thumb.png" width="244" height="99" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Select “IdEnumerator” as the Method Type, Click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/21_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Configuring Id Enumerator stored procedure" border="0" alt="Configuring Id Enumerator stored procedure" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/21_thumb.png" width="338" height="134" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The External Content Type will update with the new Id Enumerator Method      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/22_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with Finder, Specific Finder and ID Enumerator methods" border="0" alt="External Content Type with Finder, Specific Finder and ID Enumerator methods" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/22_thumb.png" width="302" height="164" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;From the “BCS Meta Man Data Source Explorer” drag and drop your Creator stored procedure onto the existing External Content Type      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/23_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and drop Creator stored procedure onto existing External Content Type" border="0" alt="Drag and drop Creator stored procedure onto existing External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/23_thumb.png" width="244" height="104" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The “Stored Procedure Configuration” dialog will be displayed. Select “Creator” as the Method Type. For each Parameter select the appropriate column to map it to. Click “OK”.      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/24_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Configuring Creator stored procedure" border="0" alt="Configuring Creator stored procedure" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/24_thumb.png" width="244" height="202" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The External Content Type will update with the new Creator Method      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/25_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator methods" border="0" alt="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator methods" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/25_thumb.png" width="299" height="181" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Next drag and drop your Updater stored procedure onto the existing External Content Type &lt;/li&gt;    &lt;li&gt;Again the “Stored Procedure Configuration” dialog will be displayed. Select “Updater” as the Method Type. For each Parameter select the appropriate column to map it to. Click “OK”. &lt;/li&gt;    &lt;li&gt;The External Content Type will update with the new Updater Method      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/28_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator and Updater methods" border="0" alt="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator and Updater methods" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/28_thumb.png" width="299" height="196" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Finally drag and drop your Deleter stored procedure onto the existing External Content Type &lt;/li&gt;    &lt;li&gt;Again the “Stored Procedure Configuration” dialog will be displayed. Select “Deleter” as the Method Type. Click “OK”. &lt;/li&gt;    &lt;li&gt;The complete External Content Type will look like the following      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/31_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator, Updater and Deleter methods" border="0" alt="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator, Updater and Deleter methods" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/31_thumb.png" width="299" height="210" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Press F5 to deploy The External Content Type, this will load up your SharePoint Page once deployed &lt;/li&gt;    &lt;li&gt;Add a new External list by selection on SharePoint page “Site Action”-&amp;gt;“More Options…”-&amp;gt;“External List”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/33_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Add a new external list" border="0" alt="Add a new external list" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/33_thumb.png" width="244" height="148" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Give your External List a name and Click on the icon to show the available External Content Types      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/34_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Select the available External Content Type" border="0" alt="Select the available External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/34_thumb.png" width="216" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Select created DB2StoredProceduresBCSMetaManDemo.Department External Content Type, click “OK”. Click “Create” button then.      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/35_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Select Department External Content Type" border="0" alt="Select Department External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/35_thumb.png" width="244" height="69" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The external data provided by DB2 stored procedure is now displayed in the SharePoint External List      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/36_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External data provided by DB2 stored procedure is now shown within SharePoint 2010" border="0" alt="External data provided by DB2 stored procedure is now shown within SharePoint 2010" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/36_thumb.png" width="244" height="125" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;You can hover over the first column of your list and you’ll see a drop down appear. If you click the drop down arrow you’ll get a number of options for that particular row of data – one of which will be View Item.      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/37_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="View items through External List" border="0" alt="View items through External List" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/37_thumb.png" width="244" height="55" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;You will be presented with the View Item dialog      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/38_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="View Item dialog" border="0" alt="View Item dialog" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/38_thumb.png" width="244" height="162" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Now click “Edit item” on the ribbon of the dialog. This option is only available if you create an Updater method for your External Content Type. Clicking on this link will open up a dialog form that allows you to edit that row of data and save it.      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/39_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Edit Item dialog" border="0" alt="Edit Item dialog" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/39_thumb.png" width="244" height="158" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;While viewing the external list, if you click the Items tab on the ribbon you’ll see a New Item button      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/40_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Add new data to DB2 database through the external list" border="0" alt="Add new data to DB2 database through the external list" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/40_thumb.png" width="244" height="85" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;This will bring up the “New Item” dialog where you can add a new Department. We will enter information about new Department and click “Save”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/41_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="New Item Dialog" border="0" alt="New Item Dialog" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/41_thumb.png" width="244" height="169" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;This will insert a new row directly to your DB2 database      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/42_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Updated External data provided by DB2 stored procedure is now shown within SharePoint 2010" border="0" alt="Updated External data provided by DB2 stored procedure is now shown within SharePoint 2010" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/DB2-Stored-Procedures-and-the-Business-C_14718/42_thumb.png" width="244" height="54" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;We hope this walkthrough will be useful for you. If you have any questions feel free to email them to &lt;a href="mailto:support@lightningtools.com"&gt;&lt;font color="#0072bc"&gt;support@lightningtools.com&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;lt;Dmitry Kaloshin/&amp;gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/299.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=LoTJJaoBOhI:l2-2SgGHsG0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=LoTJJaoBOhI:l2-2SgGHsG0:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2011/09/09/db2-stored-procedures-and-the-business-connectivity-services-in-sharepoint.aspx</guid>
            <pubDate>Fri, 09 Sep 2011 13:16:51 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/299.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2011/09/09/db2-stored-procedures-and-the-business-connectivity-services-in-sharepoint.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/299.aspx</wfw:commentRss>
        </item>
        <item>
            <title>BCS filters and Oracle Stored Procedures with Parameters in SharePoint 2010</title>
            <category>BCS</category>
            <category>BCS Meta Man</category>
            <category>Business Connectivity Services</category>
            <category>SharePoint 2010</category>
            <link>http://lightningtools.com/blog/archive/2011/09/07/bcs-filters-and-oracle-stored-procedures-with-parameters-in-sharepoint.aspx</link>
            <description>&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;In this tutorial we will show you how to connect to a Oracle Database Server using &lt;a href="http://www.lightningtools.com/bcs/bcs-meta-man.aspx" target="_blank"&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;BCS Meta Man&lt;/font&gt;&lt;/u&gt;&lt;/a&gt; and a Stored Procedure to return filtered data to a SharePoint Business Data List. In this walkthrough we will be creating a Finder Method with filters so our Oracle Stored Procedure needs to have parameters defined.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Prerequisites&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Microsoft SharePoint Server 2010 &lt;/li&gt;    &lt;li&gt;Microsoft Visual Studio 2010 Professional or higher &lt;/li&gt;    &lt;li&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;a href="http://www.lightningtools.com/bcs/bcs-meta-man.aspx" target="_blank"&gt;BCS Meta Man&lt;/a&gt;&lt;/font&gt;&lt;/u&gt; &lt;/li&gt;    &lt;li&gt;Oracle clients (This &lt;a href="http://www.lightningtools.com/bcs-meta-man/faq.aspx" target="_blank"&gt;FAQ&lt;/a&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;/font&gt;&lt;/u&gt; describes what should be installed) &lt;/li&gt;    &lt;li&gt;Oracle stored procedure for such as:      &lt;ol&gt;       &lt;li&gt;create or replace function get_employees_filtered(p_last_name in varchar2, p_salary in number)          &lt;br /&gt;return sys_refcursor           &lt;br /&gt;is           &lt;br /&gt;  v_employees sys_refcursor;           &lt;br /&gt;begin           &lt;br /&gt;  open v_employees for select * from employees where last_name like '%' || p_last_name || '%' and salary &amp;lt; p_salary;           &lt;br /&gt;  return v_employees;           &lt;br /&gt;end get_employees_filtered; &lt;/li&gt;     &lt;/ol&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Walkthrough&lt;/strong&gt; &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Open Visual Studio 2010 &lt;/li&gt;    &lt;li&gt;Add a New Project &lt;/li&gt;    &lt;li&gt;Expand the “SharePoint” node, select “Lightning Tools (2010)” node and then the “BCS Meta Man” project type &lt;/li&gt;    &lt;li&gt;Give your project a name i.e BCSMetaManFilteredOracleStoredProcedure and click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/4_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Create BCSMetaManFilteredOracleStoredProcedure project" border="0" alt="Create BCSMetaManFilteredOracleStoredProcedure project" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/4_thumb.png" width="244" height="170" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;On the next dialog box, enter the name of where you want to deploy your model, and click “Finish” button      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/5_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Deploy as a farm solution" border="0" alt="Deploy as a farm solution" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/5_thumb.png" width="244" height="194" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;If prompted, click “Trial” on the licensing dialog &lt;/li&gt;    &lt;li&gt;To show the “BCS Meta Man Data Source Explorer” we need to enable it from the Menu item, this new window can be docked so it doesn’t get in your way      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/7_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Open the BCS Meta Man Data Source Explorer" border="0" alt="Open the BCS Meta Man Data Source Explorer" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/7_thumb.png" width="244" height="128" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click the “Add Connection” button to show the “Connection Dialog” &lt;/li&gt;    &lt;li&gt;Select “ODBC Server” as Data Source type, enter Oracle ODBC connection string (for example it can be “&lt;strong&gt;Driver={Oracle in OraClient11g_home1};Dbq=XE_AURIGA;Uid=hr;Pwd=hr;Trusted_Connection=yes;&lt;/strong&gt;”), enter double quotes as left and right delimiters and “&lt;strong&gt;?&lt;/strong&gt;” as parameter symbol and click “Connect” button.       &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/9_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Oracle ODBC connection string" border="0" alt="Oracle ODBC connection string" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/9_thumb.png" width="244" height="201" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The Data Source Explorer will now be populated with your Oracle data      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/10_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="See the stored procedures available to use" border="0" alt="See the stored procedures available to use" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/10_thumb.png" width="244" height="241" /&gt;&lt;/a&gt; &lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Drag and drop your Finder Stored Procedure with parameters onto the design surface and enter External Content type name, i.e “FilteredEmployee”, click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/11_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and drop a Finder stored procedure and Enter External Content type name" border="0" alt="Drag and drop a Finder stored procedure and Enter External Content type name" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/11_thumb.png" width="244" height="104" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Select the Method Type as “Finder’' &lt;/li&gt;    &lt;li&gt;Select the first Parameter (p_last_name) and set it’s Filter Type to Comparison and the Default Value to ‘a’      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/13_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Configuring Finder Oracle stored procedure and first parameter" border="0" alt="Configuring Finder Oracle stored procedure and first parameter" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/13_thumb.png" width="244" height="230" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Next select the second Parameter (p_salary) and also set it’s Filter Type to Comparison and the Default Value to ‘4000’      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/14_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Configuring Finder Oracle stored procedure and second parameter" border="0" alt="Configuring Finder Oracle stored procedure and second parameter" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/14_thumb.png" width="244" height="230" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click ‘OK’ &lt;/li&gt;    &lt;li&gt;The External Content Type will be created on the Diagram      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/16_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type created on diagram " border="0" alt="External Content Type created on diagram " src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/16_thumb.png" width="243" height="118" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;In order to set an identifier right-click on the External Content Type, select “Manage External Content type” menu item      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/17_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Manage External Content type" border="0" alt="Manage External Content type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/17_thumb.png" width="244" height="57" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click “Edit Identifiers” button on the “Entity Management” dialog, select an identifier and click “OK” and “Update” button then      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/18_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Set identifier" border="0" alt="Set identifier" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/18_thumb.png" width="244" height="159" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The External Content Type will update with the new identifier      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/19_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with identifier" border="0" alt="External Content Type with identifier" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/19_thumb.png" width="245" height="130" /&gt;&lt;/a&gt; &lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Press F5 to deploy, this will load up your SharePoint Page once deployed &lt;/li&gt;    &lt;li&gt;Add a new Business Data List Web Part to your SharePoint page      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/21_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Add Business Data List Web Part " border="0" alt="Add Business Data List Web Part " src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/21_thumb.png" width="244" height="111" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click on the ‘Open the tool pane’ link &lt;/li&gt;    &lt;li&gt;Click on the icon to show the available External Content Types      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/23_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Open the picker to select your External Content Type" border="0" alt="Open the picker to select your External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/23_thumb.png" width="248" height="168" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Select our ‘ BCSMetaManFilteredOracleStoredProcedure.FilteredEmployee’ External Content Type, click ‘OK’      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/24_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Select the FilteredEmployee External Content Type" border="0" alt="Select the FilteredEmployee External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/24_thumb.png" width="244" height="59" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click ‘OK’ on the tool pane &lt;/li&gt;    &lt;li&gt;Click the ‘Add’ link on the Business Data List Web Part to add the second Filter option      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/26_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="To use multiple BCS filters click the Add link" border="0" alt="To use multiple BCS filters click the Add link" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/26_thumb.png" width="244" height="43" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Change the second Filter to be the P_SALARY and enter values for the filters and click ‘Retrieve Data’ &lt;/li&gt;    &lt;li&gt;Your Oracle data provided by Stored Procedure is now displayed in the SharePoint Web Part  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/28_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="View your filtered data provided by Oracle stored procedure" border="0" alt="View your filtered data provided by Oracle stored procedure" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e47d1727ebbb_E99/28_thumb.png" width="244" height="61" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;We hope this walkthrough will be useful for you. If you have any questions feel free to email them to &lt;a href="mailto:support@lightningtools.com"&gt;&lt;font color="#0072bc"&gt;support@lightningtools.com&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;lt;Dmitry Kaloshin/&amp;gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/298.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=EWl6b-fEpwc:3eOBgAAph6A:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=EWl6b-fEpwc:3eOBgAAph6A:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2011/09/07/bcs-filters-and-oracle-stored-procedures-with-parameters-in-sharepoint.aspx</guid>
            <pubDate>Wed, 07 Sep 2011 13:35:51 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/298.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2011/09/07/bcs-filters-and-oracle-stored-procedures-with-parameters-in-sharepoint.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/298.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Business Connectivity Service Associations using Oracle Stored Procedures in SharePoint 2010</title>
            <category>BCS</category>
            <category>BCS Meta Man</category>
            <category>Business Connectivity Services</category>
            <category>SharePoint 2010</category>
            <link>http://lightningtools.com/blog/archive/2011/09/06/business-connectivity-service-associations-using-oracle-stored-procedures-in-sharepoint.aspx</link>
            <description>&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;In this walkthrough we will demonstrate you how to connect to Oracle Database Server and use stored procedures to create an association between two External Content Types using &lt;a href="http://www.lightningtools.com/bcs/bcs-meta-man.aspx" target="_blank"&gt;BCS Meta Man&lt;/a&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;/font&gt;&lt;/u&gt;.&lt;/p&gt;  &lt;p&gt;We are going to follow on from the ‘&lt;a href="http://www.lightningtools.com/blog/archive/2011/09/05/oracle-stored-procedures-and-the-business-connectivity-services-in-sharepoint.aspx" target="_blank"&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;Oracle Stored Procedures and the Business Connectivity Services in SharePoint 2010&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;’&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Prerequisites&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Microsoft SharePoint Server 2010 &lt;/li&gt;    &lt;li&gt;Microsoft Visual Studio 2010 Professional or higher &lt;/li&gt;    &lt;li&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;a href="http://www.lightningtools.com/bcs/bcs-meta-man.aspx" target="_blank"&gt;BCS Meta Man&lt;/a&gt;&lt;/font&gt;&lt;/u&gt; &lt;/li&gt;    &lt;li&gt;Oracle clients (This &lt;a href="http://www.lightningtools.com/bcs-meta-man/faq.aspx" target="_blank"&gt;FAQ&lt;/a&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;/font&gt;&lt;/u&gt; describes what should be installed) &lt;/li&gt;    &lt;li&gt;Oracle stored procedures for such as:      &lt;ol&gt;       &lt;li&gt;create or replace function get_all_countries  &lt;br /&gt;return sys_refcursor           &lt;br /&gt;is           &lt;br /&gt;  v_countries sys_refcursor;           &lt;br /&gt;begin           &lt;br /&gt;  open v_countries for select * from countries;           &lt;br /&gt;  return v_countries;           &lt;br /&gt;end get_all_countries; &lt;/li&gt;        &lt;li&gt;create or replace function get_country_by_id(p_id in char)  &lt;br /&gt;return sys_refcursor           &lt;br /&gt;is           &lt;br /&gt;  v_countries sys_refcursor;           &lt;br /&gt;begin           &lt;br /&gt;  open v_countries for select * from countries where country_id=p_id;           &lt;br /&gt;  return v_countries;           &lt;br /&gt;end get_country_by_id; &lt;/li&gt;        &lt;li&gt;create or replace function get_all_regions  &lt;br /&gt;return sys_refcursor           &lt;br /&gt;is           &lt;br /&gt;  v_regions sys_refcursor;           &lt;br /&gt;begin           &lt;br /&gt;  open v_regions for select * from regions;           &lt;br /&gt;  return v_regions;           &lt;br /&gt;end get_all_regions; &lt;/li&gt;        &lt;li&gt;create or replace function get_region_by_id(p_id in number)          &lt;br /&gt;return sys_refcursor           &lt;br /&gt;is           &lt;br /&gt;  v_regions sys_refcursor;           &lt;br /&gt;begin           &lt;br /&gt;  open v_regions for select * from regions where region_id=p_id;           &lt;br /&gt;  return v_regions;           &lt;br /&gt;end get_region_by_id; &lt;/li&gt;        &lt;li&gt;create or replace function get_countries_by_region_id(p_id in number)          &lt;br /&gt;return sys_refcursor           &lt;br /&gt;is           &lt;br /&gt;  v_countries sys_refcursor;           &lt;br /&gt;begin           &lt;br /&gt;  open v_countries for select * from countries where region_id=p_id;           &lt;br /&gt;  return v_countries;           &lt;br /&gt;end get_countries_by_region_id; &lt;/li&gt;     &lt;/ol&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Walkthrough&lt;/strong&gt; &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Using the ‘&lt;a href="http://www.lightningtools.com/blog/archive/2011/09/05/oracle-stored-procedures-and-the-business-connectivity-services-in-sharepoint.aspx" target="_blank"&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;Oracle Stored Procedures and the Business Connectivity Services in SharePoint 2010&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;’ Tutorial create two External Content Types “Country” and “Region” with Finder (Read List operation) and SpecificFinder (Read Item operation) methods only. &lt;/li&gt;    &lt;li&gt;You should have the following External Content Types on your Diagram      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/2_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Both External Content Types on the design surface" border="0" alt="Both External Content Types on the design surface" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/2_thumb.png" width="244" height="151" /&gt;&lt;/a&gt; &lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Switch to the ‘Toolbox’ pane in Visual Studio (Ctrl-Alt-X) &lt;/li&gt;    &lt;li&gt;Select the ‘Association’ toolbox item from the list      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/4_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Select the Association toolbox control" border="0" alt="Select the Association toolbox control" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/4_thumb.png" width="299" height="101" /&gt;&lt;/a&gt; &lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;With the Association selected, Click and Drag from ‘Region’ to ‘Country’      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/5_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and Drop between your two External Content Types" border="0" alt="Drag and Drop between your two External Content Types" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/5_thumb.png" width="244" height="148" /&gt;&lt;/a&gt; &lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;When you release the ‘Association Configuration’ dialog will show &lt;/li&gt;    &lt;li&gt;Switch back to the ‘BCS Meta Man Data Source Explorer’ tool window pane &lt;/li&gt;    &lt;li&gt;Drag the Association Stored Procedure onto the Arrow in the ‘Association Configuration’ dialog, it will turn green when OK to release      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/8_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and Drop the Oracle Association Stored Procedure" border="0" alt="Drag and Drop the Oracle Association Stored Procedure" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/8_thumb.png" width="244" height="131" /&gt;&lt;/a&gt; &lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The dialog will update with the selected Stored Procedure      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/9_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Association Configuration dialog" border="0" alt="Association Configuration dialog" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/9_thumb.png" width="244" height="193" /&gt;&lt;/a&gt; &lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Select ‘P_ID’ in the Parameter and ‘REGION_ID’ in the Identifier drop-down list boxes, Click ‘Save’      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/10_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Map the Oracle stored procedure parameter to identifier" border="0" alt="Map the Oracle stored procedure parameter to identifier" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/10_thumb.png" width="244" height="193" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The diagram will update to show an arrow indicating we have an association between the two External Content Types      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/11_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Association has been created" border="0" alt="Association has been created" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/11_thumb.png" width="244" height="163" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Press F5 to deploy, this will load up your SharePoint Page once deployed &lt;/li&gt;    &lt;li&gt;Add a new Business Data List Web Part to your SharePoint page      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/13_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Add Business Data List Web Part " border="0" alt="Add Business Data List Web Part " src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/13_thumb.png" width="244" height="111" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click on the ‘Open the tool pane’ link &lt;/li&gt;    &lt;li&gt;Click on the icon to show the available External Content Types      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/15_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Open the picker to select your External Content Type" border="0" alt="Open the picker to select your External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/15_thumb.png" width="244" height="165" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Select our ‘BCSMetaMan1.Region’ External Content Type, click OK  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/16_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Select the Region External Content Type" border="0" alt="Select the Region External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/16_thumb.png" width="244" height="79" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click ‘OK’ on the tool pane &lt;/li&gt;    &lt;li&gt;The external data provided by Oracle stored procedure is now displayed in the SharePoint Web Part      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/18_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External data provided by Oracle stored procedure is now shown within SharePoint 2010" border="0" alt="External data provided by Oracle stored procedure is now shown within SharePoint 2010" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/18_thumb.png" width="244" height="88" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Next, Add a new ‘Business Data Related List’ Web Part to the page &lt;/li&gt;    &lt;li&gt;Configure the Web Part to use the ‘BCSMetaMan1.Country’ External Content Type &lt;/li&gt;    &lt;li&gt;The Web Part will display a message saying the following      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/21_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Need to setup web part connection" border="0" alt="Need to setup web part connection" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/21_thumb.png" width="244" height="47" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;To do this we can set up the connection using the small arrow from the top right of our Web Part      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/22_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Use a web part menu to create a connection" border="0" alt="Use a web part menu to create a connection" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/22_thumb.png" width="244" height="86" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Once this is done we can click on the arrows next to an item in our ‘Region’ web part and the countries related to this region will display on our ‘Country’ web part      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/23_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Related list web part now shows the association data provided by Oracle stored procedure" border="0" alt="Related list web part now shows the association data provided by Oracle stored procedure" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/e122eaa9a95b_EBD1/23_thumb.png" width="244" height="155" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;We hope this walkthrough will be useful for you. If you have any questions feel free to email them to &lt;a href="mailto:support@lightningtools.com"&gt;&lt;font color="#0072bc"&gt;&lt;u&gt;support@lightningtools.com&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;lt;Dmitry Kaloshin/&amp;gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/297.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=zemZM7qngmk:go54-xYGQEA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=zemZM7qngmk:go54-xYGQEA:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2011/09/06/business-connectivity-service-associations-using-oracle-stored-procedures-in-sharepoint.aspx</guid>
            <pubDate>Tue, 06 Sep 2011 13:21:05 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/297.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2011/09/06/business-connectivity-service-associations-using-oracle-stored-procedures-in-sharepoint.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/297.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Oracle Stored Procedures and the Business Connectivity Services in SharePoint 2010</title>
            <category>BCS</category>
            <category>BCS Meta Man</category>
            <category>Business Connectivity Services</category>
            <category>SharePoint 2010</category>
            <link>http://lightningtools.com/blog/archive/2011/09/05/oracle-stored-procedures-and-the-business-connectivity-services-in-sharepoint.aspx</link>
            <description>&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;In this walkthrough we will demonstrate how to integrate Oracle stored procedures with Microsoft SharePoint 2010 and display the data on SharePoint 2010 page. In order to do that we will describe how to create a new external content type by means of &lt;a href="http://www.lightningtools.com/bcs/bcs-meta-man.aspx" target="_blank"&gt;BCS Meta Man&lt;/a&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;/font&gt;&lt;/u&gt;.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Prerequisites&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Microsoft SharePoint Server 2010 &lt;/li&gt;    &lt;li&gt;Microsoft Visual Studio 2010 Professional or higher &lt;/li&gt;    &lt;li&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;a href="http://www.lightningtools.com/bcs/bcs-meta-man.aspx" target="_blank"&gt;BCS Meta Man&lt;/a&gt;&lt;/font&gt;&lt;/u&gt; &lt;/li&gt;    &lt;li&gt;Oracle clients (This &lt;a href="http://www.lightningtools.com/bcs-meta-man/faq.aspx" target="_blank"&gt;FAQ&lt;/a&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;/font&gt;&lt;/u&gt; describes what should be installed) &lt;/li&gt;    &lt;li&gt;Oracle stored procedures for CRUD operations such as:      &lt;ol&gt;       &lt;li&gt;create or replace function get_all_countries  &lt;br /&gt;return sys_refcursor           &lt;br /&gt;is           &lt;br /&gt;  v_countries sys_refcursor;           &lt;br /&gt;begin           &lt;br /&gt;  open v_countries for select * from countries;           &lt;br /&gt;  return v_countries;           &lt;br /&gt;end get_all_countries; &lt;/li&gt;        &lt;li&gt;create or replace function get_country_by_id(p_id in char)  &lt;br /&gt;return sys_refcursor           &lt;br /&gt;is           &lt;br /&gt;  v_countries sys_refcursor;           &lt;br /&gt;begin           &lt;br /&gt;  open v_countries for select * from countries where country_id=p_id;           &lt;br /&gt;  return v_countries;           &lt;br /&gt;end get_country_by_id; &lt;/li&gt;        &lt;li&gt;create or replace function get_country_ids  &lt;br /&gt;return sys_refcursor           &lt;br /&gt;is           &lt;br /&gt;  v_country_ids sys_refcursor;           &lt;br /&gt;begin           &lt;br /&gt;  open v_country_ids for select country_id from countries;           &lt;br /&gt;  return v_country_ids;           &lt;br /&gt;end get_country_ids; &lt;/li&gt;        &lt;li&gt;create or replace procedure create_country(p_id in char, p_name in varchar2, p_region in number)          &lt;br /&gt;is           &lt;br /&gt;begin           &lt;br /&gt;  insert into countries values(p_id, p_name, p_region);           &lt;br /&gt;end create_country; &lt;/li&gt;        &lt;li&gt;create or replace procedure update_country(p_id in char, p_name in varchar2, p_region in number)          &lt;br /&gt;is           &lt;br /&gt;begin           &lt;br /&gt;  update countries set country_name=p_name, region_id=p_region where country_id=p_id;           &lt;br /&gt;end update_country; &lt;/li&gt;        &lt;li&gt;create or replace procedure delete_country(p_id in char)          &lt;br /&gt;is           &lt;br /&gt;begin           &lt;br /&gt;  delete from countries where country_id=p_id;           &lt;br /&gt;end delete_country; &lt;/li&gt;     &lt;/ol&gt;   &lt;/li&gt; &lt;/ul&gt; &lt;strong&gt;&lt;/strong&gt;&lt;strong&gt;Walkthrough&lt;/strong&gt;   &lt;ol&gt;   &lt;li&gt;Open Visual Studio 2010 &lt;/li&gt;    &lt;li&gt;Add a New Project &lt;/li&gt;    &lt;li&gt;Expand the “SharePoint” node, select “Lightning Tools (2010)” node and then the “BCS Meta Man” project type &lt;/li&gt;    &lt;li&gt;Give your project a name i.e OracleStoredProceduresBCSMetaManDemo and click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/4_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Create OracleStoredProceduresBCSMetaManDemo project" border="0" alt="Create OracleStoredProceduresBCSMetaManDemo project" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/4_thumb.png" width="334" height="235" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;On the next dialog box, enter the name of where you want to deploy your model, and click “Finish” button      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/5_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Deploy as a farm solution" border="0" alt="Deploy as a farm solution" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/5_thumb.png" width="334" height="266" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;If prompted, click “Trial” on the licensing dialog &lt;/li&gt;    &lt;li&gt;To show the “BCS Meta Man Data Source Explorer” we need to enable it from the Menu item, this new window can be docked so it doesn’t get in your way      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/7_4.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Open the BCS Meta Man Data Source Explorer" border="0" alt="Open the BCS Meta Man Data Source Explorer" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/7_thumb_1.png" width="334" height="168" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click the “Add Connection” button to show the “Connection Dialog” &lt;/li&gt;    &lt;li&gt;Select “ODBC Server” as Data Source type, enter Oracle ODBC connection string (for example it can be “&lt;strong&gt;Driver={Oracle in OraClient11g_home1};Dbq=XE_TAURUS;Uid=hr;Pwd=hr;Trusted_Connection=yes;&lt;/strong&gt;”), enter double quotes as left and right delimiters and “&lt;strong&gt;?&lt;/strong&gt;” as parameter symbol and click “Connect” button.       &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/9_4.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Oracle ODBC connection string" border="0" alt="Oracle ODBC connection string" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/9_thumb_1.png" width="334" height="274" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The Data Source Explorer will now be populated with your Oracle data      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/10_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="See the stored procedures available to use" border="0" alt="See the stored procedures available to use" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/10_thumb.png" width="225" height="334" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Drag and drop your Finder Stored Procedure onto the design surface and enter External Content type name, i.e “Country”, click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/11_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and drop a Finder stored procedure and Enter External Content type name" border="0" alt="Drag and drop a Finder stored procedure and Enter External Content type name" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/11_thumb.png" width="334" height="172" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Choose the Finder as the method type and click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/12_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Choose the Finder as the method type" border="0" alt="Choose the Finder as the method type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/12_thumb.png" width="338" height="134" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The External Content Type will be created on the Diagram      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/13_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type created on diagram " border="0" alt="External Content Type created on diagram " src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/13_thumb.png" width="214" height="113" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;In order to set an identifier right-click on the External Content Type, select “Manage External Content type” menu item      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/14_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Manage External Content type" border="0" alt="Manage External Content type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/14_thumb.png" width="334" height="99" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Click “Edit Identifiers” button on the “Entity Management” dialog, select an identifier and click “OK” and “Update” button then      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/15_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Set identifier " border="0" alt="Set identifier " src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/15_thumb.png" width="334" height="215" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The External Content Type will update with the new identifier      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/16_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with identifier" border="0" alt="External Content Type with identifier" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/16_thumb.png" width="213" height="127" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;From the “BCS Meta Man Data Source Explorer” drag and drop your Specific Finder stored procedure onto the existing External Content Type      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/17_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and drop Specific Finder stored procedure onto existing External Content Type" border="0" alt="Drag and drop Specific Finder stored procedure onto existing External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/17_thumb.png" width="334" height="160" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The “Stored Procedure Configuration” dialog will be displayed. Select “SpecificFinder” as the Method Type. Select the first Parameter – P_ID and set the Filter Type as Comparison and the Default Value as ‘0’. Click “OK”.      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/18_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Configuring a Specific Finder stored procedure" border="0" alt="Configuring a Specific Finder stored procedure" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/18_thumb.png" width="338" height="318" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The External Content Type will update with the new Specific Finder Method      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/19_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with Finder and Specific Finder methods" border="0" alt="External Content Type with Finder and Specific Finder methods" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/19_thumb.png" width="216" height="146" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Next drag and drop the Id Enumerator stored procedure onto the existing External Content Type      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/20_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and drop Id Enumerator Stored Procedure onto existing External Content Type" border="0" alt="Drag and drop Id Enumerator Stored Procedure onto existing External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/20_thumb.png" width="334" height="140" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Select “IdEnumerator” as the Method Type, Click “OK”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/21_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Configuring Id Enumerator stored procedure" border="0" alt="Configuring Id Enumerator stored procedure" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/21_thumb.png" width="338" height="134" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The External Content Type will update with the new Id Enumerator Method      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/22_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with Finder, Specific Finder and ID Enumerator methods" border="0" alt="External Content Type with Finder, Specific Finder and ID Enumerator methods" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/22_thumb.png" width="217" height="162" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;From the “BCS Meta Man Data Source Explorer” drag and drop your Creator stored procedure onto the existing External Content Type      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/23_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Drag and drop Creator stored procedure onto existing External Content Type" border="0" alt="Drag and drop Creator stored procedure onto existing External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/23_thumb.png" width="334" height="163" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The “Stored Procedure Configuration” dialog will be displayed. Select “Creator” as the Method Type. For each Parameter select the appropriate column to map it to. Click “OK”.      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/24_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Configuring Creator stored procedure" border="0" alt="Configuring Creator stored procedure" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/24_thumb.png" width="338" height="276" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The External Content Type will update with the new Creator Method      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/25_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator methods" border="0" alt="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator methods" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/25_thumb.png" width="219" height="180" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Next drag and drop your Updater stored procedure onto the existing External Content Type &lt;/li&gt;    &lt;li&gt;Again the “Stored Procedure Configuration” dialog will be displayed. Select “Updater” as the Method Type. For each Parameter select the appropriate column to map it to. Click “OK”. &lt;/li&gt;    &lt;li&gt;The External Content Type will update with the new Updater Method      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/28_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator and Updater methods" border="0" alt="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator and Updater methods" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/28_thumb.png" width="220" height="195" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Finally drag and drop your Deleter stored procedure onto the existing External Content Type &lt;/li&gt;    &lt;li&gt;Again the “Stored Procedure Configuration” dialog will be displayed. Select “Deleter” as the Method Type. Click “OK”. &lt;/li&gt;    &lt;li&gt;The complete External Content Type will look like the following      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/31_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator, Updater and Deleter methods" border="0" alt="External Content Type with with Finder, Specific Finder, ID Enumerator, Creator, Updater and Deleter methods" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/31_thumb.png" width="216" height="210" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Press F5 to deploy The External Content Type, this will load up your SharePoint Page once deployed &lt;/li&gt;    &lt;li&gt;Add a new External list by selection on SharePoint page “Site Action”-&amp;gt;“More Options…”-&amp;gt;“External List”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/33_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Add a new external list" border="0" alt="Add a new external list" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/33_thumb.png" width="334" height="202" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Give your External List a name and Click on the icon to show the available External Content Types      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/34_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Select the available External Content Type" border="0" alt="Select the available External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/34_thumb.png" width="278" height="334" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Select created OracleStoredProceduresBCSMetaManDemo.Country External Content Type, click “OK”. Click “Create” button then.      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/35_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Select Country External Content Type" border="0" alt="Select Country External Content Type" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/35_thumb.png" width="334" height="83" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;The external data provided by Oracle stored procedure is now displayed in the SharePoint External List      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/36_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="External data provided by Oracle stored procedure is now shown within SharePoint 2010" border="0" alt="External data provided by Oracle stored procedure is now shown within SharePoint 2010" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/36_thumb.png" width="334" height="211" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;You can hover over the first column of your list and you’ll see a drop down appear. If you click the drop down arrow you’ll get a number of options for that particular row of data – one of which will be View Item.      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/37_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="View items through External List" border="0" alt="View items through External List" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/37_thumb.png" width="334" height="86" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;You will be presented with the View Item dialog      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/38_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="View Item dialog" border="0" alt="View Item dialog" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/38_thumb.png" width="334" height="183" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;Now click “Edit item” on the ribbon of the dialog. This option is only available if you create an Updater method for your External Content Type. Clicking on this link will open up a dialog form that allows you to edit that row of data and save it.      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/39_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Edit Item dialog" border="0" alt="Edit Item dialog" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/39_thumb.png" width="334" height="186" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;While viewing the external list, if you click the Items tab on the ribbon you’ll see a New Item button      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/40_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Add new data to Oracle database through the external list" border="0" alt="Add new data to Oracle database through the external list" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/40_thumb.png" width="334" height="141" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;This will bring up the “New Item” dialog where you can add a new Country. We will enter information about new Country and  click “Save”      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/41_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="New Item Dialog" border="0" alt="New Item Dialog" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/41_thumb.png" width="334" height="201" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;This will insert a new row directly to your Oracle database      &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/42_2.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Updated External data provided by Oracle stored procedure is now shown within SharePoint 2010" border="0" alt="Updated External data provided by Oracle stored procedure is now shown within SharePoint 2010" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/Oracle-Stored_F4B4/42_thumb.png" width="334" height="79" /&gt;&lt;/a&gt;&lt;/p&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;We hope this walkthrough will be useful for you. If you have any questions feel free to email them to &lt;a href="mailto:support@lightningtools.com"&gt;&lt;font color="#0072bc"&gt;support@lightningtools.com&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;lt;Dmitry Kaloshin/&amp;gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/296.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=jNLXhcMNUjM:6E-0105i0go:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=jNLXhcMNUjM:6E-0105i0go:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2011/09/05/oracle-stored-procedures-and-the-business-connectivity-services-in-sharepoint.aspx</guid>
            <pubDate>Mon, 05 Sep 2011 19:35:03 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/296.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2011/09/05/oracle-stored-procedures-and-the-business-connectivity-services-in-sharepoint.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/296.aspx</wfw:commentRss>
        </item>
        <item>
            <title>partner company Combined knowledge offer end user adoption tool</title>
            <link>http://lightningtools.com/blog/archive/2011/09/01/partner-company-combined-knowledge-offer-end-user-adoption-tool.aspx</link>
            <description>&lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/d1c0a11dd65c_9B96/clip_image002_2.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image002" border="0" hspace="12" alt="clip_image002" align="right" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/d1c0a11dd65c_9B96/clip_image002_thumb.jpg" width="133" height="112" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Combined Knowledge Launches SharePoint 2010 End User Adoption Product&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Combined Knowledge, one of the World’s leading SharePoint Training Providers has launched a new SharePoint 2010 End User Adoption Product, which provides organizations with the ability to support their end users following the deployment of SharePoint 2010.&lt;/p&gt;  &lt;p&gt;Our SharePoint End User Adoption Product provides companies with a global training and central support solution enabling users to have access to Over 1000 SharePoint Support actions for 2007 or 2010 , Just in Time Training , Task Based Support, Task Based Training, User Support Training, User Support System, SharePoint Helpdesk, End User Helpdesk, Online Support Modules, Online Training Materials, Virtual Training, ‘Show me’ Topics, Over 360 ‘How to’ Videos, and Quick Reference ‘Step by Step’ Guides&lt;/p&gt;  &lt;p&gt;The solution can also be extended to support users of Office 2007 or 2010 and Windows 7, along with additional applications such as Lync and OneNote providing users with a central support on demand solution.&lt;/p&gt;  &lt;p&gt;This web based product is easily deployed and also provides organizations with the ability to customize and enhance the content to suit their own environments and corporate branding.&lt;/p&gt;  &lt;p&gt;Combined Knowledge, Headquartered in the UK, has been specialising in the development and delivery of SharePoint Training, Education and Adoption since 2001.&lt;/p&gt;  &lt;p&gt;Combined Knowledge’s key aim in developing the business was to not only offer training classes but to provide organisations with a solution for their SharePoint deployment, from the product installation through to development, customisation and then ensuring successful user adoption.   &lt;br /&gt;Combined Knowledge extended their deliverables beyond the extensive training portfolio of classes offered to also incorporate The End User Adoption Solution Product as we understood that for a SharePoint implementation to be successful, the organisations user community had to understand and adopt the product.&lt;/p&gt;  &lt;p&gt;Full product demo’s and trials are available on request visit the Combined Knowledge website for further information: &lt;a href="http://www.combined-knowledge.com"&gt;www.combined-knowledge.com&lt;/a&gt; or email: &lt;a href="mailto:sales@combined-knowledge.com"&gt;sales@combined-knowledge.com&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.youtube.com/watch?v=OIlO2RBm8g0&amp;amp;feature=related"&gt;http://www.youtube.com/watch?v=OIlO2RBm8g0&amp;amp;feature=related&lt;/a&gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/295.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=sMBlkW-UGsA:6dzt0Z0MVZk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=sMBlkW-UGsA:6dzt0Z0MVZk:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2011/09/01/partner-company-combined-knowledge-offer-end-user-adoption-tool.aspx</guid>
            <pubDate>Thu, 01 Sep 2011 10:09:22 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/295.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2011/09/01/partner-company-combined-knowledge-offer-end-user-adoption-tool.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/295.aspx</wfw:commentRss>
        </item>
        <item>
            <title>BCS Meta Man - Using a Connection String stored in the Secure Store</title>
            <category>BCS</category>
            <category>BCS Meta Man</category>
            <category>SharePoint 2010</category>
            <category>SharePoint</category>
            <category>Business Connectivity Services</category>
            <link>http://lightningtools.com/blog/archive/2011/08/24/bcs-meta-manndashusing-a-connection-string-stored-in-the-secure.aspx</link>
            <description>&lt;p&gt;In this blog post I will show you how you can update your code to use a connection string in the Secure Store rather than having the value hard coded in your BCS Meta Man generated c# file.  The reason why you may wish to put the connection details within the Secure Store is that the names of the database and server are likely to be different in my development environment than in my staging and production environments. In order to do this you will need to have the use of the secure store which is only available in SharePoint Server 2010 and not SharePoint Foundations.&lt;/p&gt;  &lt;p&gt;To be able to use the details stored within the secure store you will be required to do some manual changes to the code generated by BCS Meta Man. &lt;/p&gt;  &lt;p&gt;First of all create a new Secure Store application with the Connection String Field&lt;/p&gt;  &lt;p&gt;Central Administration &amp;gt; Service Applications &amp;gt; Secure Store &amp;gt; New&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/a4cf3d9bf4f9_A86C/image_12.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Configure Secure Store" border="0" alt="Configure Secure Store" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/a4cf3d9bf4f9_A86C/image_thumb_5.png" width="221" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Using the ‘Add Field’ button add a generic field called ‘Connection String’ and remove the other two fields&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/a4cf3d9bf4f9_A86C/image_18.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Using Generic Field for Connection String in Secure Store" border="0" alt="Using Generic Field for Connection String in Secure Store" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/a4cf3d9bf4f9_A86C/image_thumb_8.png" width="244" height="75" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Click next and then add the Secure Store Administrator on the next screen. Now the Secure Store ID has been created you can click on it and choose to set the credentials, this is where you supply all of the credentials required.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/a4cf3d9bf4f9_A86C/image_16.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Setting Credentials for Secure Store Application" border="0" alt="Setting Credentials for Secure Store Application" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/a4cf3d9bf4f9_A86C/image_thumb_7.png" width="244" height="136" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Enter the connection string and the Credential Owner, Click OK&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/a4cf3d9bf4f9_A86C/image_20.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Setting Credentials for Secure Store Application" border="0" alt="Setting Credentials for Secure Store Application" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/a4cf3d9bf4f9_A86C/image_thumb_9.png" width="244" height="201" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;In BCS Meta Man, create a new BCS Meta Man Project and when connecting to your Data Source choose ‘Use Secure Store’ as your Authentication Mode.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/a4cf3d9bf4f9_A86C/image_8.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Connecting to External System using Secure Store and BCS Meta Man" border="0" alt="Connecting to External System using Secure Store and BCS Meta Man" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/a4cf3d9bf4f9_A86C/image_thumb_3.png" width="244" height="200" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You will be prompted for your credentials again, this is to allow BCS Meta Man to connect to the External System. Next create the External Content Type and choose .Net Assembly connector as the Model Type, generate the External Content Type in the usual way.&lt;/p&gt;  &lt;p&gt;At this point the Model and assembly will be configured to the use Secure Store credentials for the User Name and Password but not for the Server and Database, Deploy the model to ensure the Secure Store details are correct. If it is working and you can see your External Data then it’s time to configure the code to retrieve the Server and Database, if not then check back to the Secure Store and make sure the credentials you entered have the permissions to the External System you are using.&lt;/p&gt;  &lt;p&gt;Locate the BCSMetaMan.cs class and find the following method which retrieves the credentials from the Secure Store&lt;/p&gt;  &lt;pre class="code"&gt;&lt;span style="color: blue"&gt;internal &lt;/span&gt;&lt;span style="color: #00008b"&gt;Dictionary&lt;/span&gt;&amp;lt;&lt;span style="color: blue"&gt;string&lt;/span&gt;, &lt;span style="color: blue"&gt;string&lt;/span&gt;&amp;gt; &lt;span style="color: #008b8b"&gt;ReadCredentialsFromSecureStore&lt;/span&gt;()
{
    &lt;span style="color: green"&gt;// error checking removed for brevity
    &lt;/span&gt;&lt;span style="color: blue"&gt;string &lt;/span&gt;targetId = &lt;span style="color: purple"&gt;LobSystemInstance&lt;/span&gt;.&lt;span style="color: #008b8b"&gt;GetProperties&lt;/span&gt;()[&lt;span style="color: #a31515"&gt;"SsoApplicationId"&lt;/span&gt;] &lt;span style="color: blue"&gt;as string&lt;/span&gt;;
    &lt;span style="color: #00008b"&gt;ISecureStoreProvider &lt;/span&gt;provider = &lt;span style="color: #008b8b"&gt;GetSecureStoreProvider&lt;/span&gt;();

    &lt;span style="color: blue"&gt;var &lt;/span&gt;userCredentials = &lt;span style="color: blue"&gt;new &lt;/span&gt;&lt;span style="color: #00008b"&gt;Dictionary&lt;/span&gt;&amp;lt;&lt;span style="color: blue"&gt;string&lt;/span&gt;, &lt;span style="color: blue"&gt;string&lt;/span&gt;&amp;gt;(2);

    &lt;span style="color: green"&gt;// get the credentials for the user on whose behalf the code 
    // is executing 
    &lt;/span&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;(&lt;span style="color: #00008b"&gt;SecureStoreCredentialCollection &lt;/span&gt;credentials = provider.&lt;span style="color: #008b8b"&gt;GetRestrictedCredentials&lt;/span&gt;(targetId))
    {

        &lt;span style="color: green"&gt;// look for username and password in credentials 
        &lt;/span&gt;&lt;span style="color: blue"&gt;foreach &lt;/span&gt;(&lt;span style="color: #00008b"&gt;ISecureStoreCredential &lt;/span&gt;credential &lt;span style="color: blue"&gt;in &lt;/span&gt;credentials)
        {
            &lt;span style="color: blue"&gt;switch &lt;/span&gt;(credential.&lt;span style="color: purple"&gt;CredentialType&lt;/span&gt;)
            {
                &lt;span style="color: blue"&gt;case &lt;/span&gt;&lt;span style="color: #00008b"&gt;SecureStoreCredentialType&lt;/span&gt;.&lt;span style="color: purple"&gt;UserName&lt;/span&gt;:
                &lt;span style="color: blue"&gt;case &lt;/span&gt;&lt;span style="color: #00008b"&gt;SecureStoreCredentialType&lt;/span&gt;.&lt;span style="color: purple"&gt;WindowsUserName&lt;/span&gt;:
                    userCredentials.&lt;span style="color: #008b8b"&gt;Add&lt;/span&gt;(&lt;span style="color: #a31515"&gt;"UserID"&lt;/span&gt;, &lt;span style="color: #008b8b"&gt;GetStringFromSecureString&lt;/span&gt;(credential.&lt;span style="color: purple"&gt;Credential&lt;/span&gt;));
                    &lt;span style="color: blue"&gt;break&lt;/span&gt;;
                &lt;span style="color: blue"&gt;case &lt;/span&gt;&lt;span style="color: #00008b"&gt;SecureStoreCredentialType&lt;/span&gt;.&lt;span style="color: purple"&gt;Password&lt;/span&gt;:
                &lt;span style="color: blue"&gt;case &lt;/span&gt;&lt;span style="color: #00008b"&gt;SecureStoreCredentialType&lt;/span&gt;.&lt;span style="color: purple"&gt;WindowsPassword&lt;/span&gt;:
                    userCredentials.&lt;span style="color: #008b8b"&gt;Add&lt;/span&gt;(&lt;span style="color: #a31515"&gt;"Password"&lt;/span&gt;, &lt;span style="color: #008b8b"&gt;GetStringFromSecureString&lt;/span&gt;(credential.&lt;span style="color: purple"&gt;Credential&lt;/span&gt;));
                    &lt;span style="color: blue"&gt;break&lt;/span&gt;;
                &lt;span style="color: blue"&gt;default&lt;/span&gt;:
                    &lt;span style="color: blue"&gt;break&lt;/span&gt;;
            }
        }
    }

    &lt;span style="color: blue"&gt;return &lt;/span&gt;userCredentials;
}&lt;/pre&gt;



&lt;p&gt;You should be able to see that by default only the Username and Password are retrieved, replace the method with the following to pick up the Generic Field that we are using for the Connection String&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span style="color: blue"&gt;internal &lt;/span&gt;&lt;span style="color: #00008b"&gt;Dictionary&lt;/span&gt;&amp;lt;&lt;span style="color: blue"&gt;string&lt;/span&gt;, &lt;span style="color: blue"&gt;string&lt;/span&gt;&amp;gt; &lt;span style="color: #008b8b"&gt;ReadCredentialsFromSecureStore&lt;/span&gt;()
{
    &lt;span style="color: green"&gt;// error checking removed for brevity
    &lt;/span&gt;&lt;span style="color: blue"&gt;string &lt;/span&gt;targetId = &lt;span style="color: purple"&gt;LobSystemInstance&lt;/span&gt;.&lt;span style="color: #008b8b"&gt;GetProperties&lt;/span&gt;()[&lt;span style="color: #a31515"&gt;"SsoApplicationId"&lt;/span&gt;] &lt;span style="color: blue"&gt;as string&lt;/span&gt;;
    &lt;span style="color: #00008b"&gt;ISecureStoreProvider &lt;/span&gt;provider = &lt;span style="color: #008b8b"&gt;GetSecureStoreProvider&lt;/span&gt;();

    &lt;span style="color: blue"&gt;var &lt;/span&gt;userCredentials = &lt;span style="color: blue"&gt;new &lt;/span&gt;&lt;span style="color: #00008b"&gt;Dictionary&lt;/span&gt;&amp;lt;&lt;span style="color: blue"&gt;string&lt;/span&gt;, &lt;span style="color: blue"&gt;string&lt;/span&gt;&amp;gt;(2);

    &lt;span style="color: green"&gt;// get the credentials for the user on whose behalf the code 
    // is executing 
    &lt;/span&gt;&lt;span style="color: blue"&gt;using &lt;/span&gt;(&lt;span style="color: #00008b"&gt;SecureStoreCredentialCollection &lt;/span&gt;credentials = provider.&lt;span style="color: #008b8b"&gt;GetRestrictedCredentials&lt;/span&gt;(targetId))
    {

        &lt;span style="color: green"&gt;// look for username and password in credentials 
        &lt;/span&gt;&lt;span style="color: blue"&gt;foreach &lt;/span&gt;(&lt;span style="color: #00008b"&gt;ISecureStoreCredential &lt;/span&gt;credential &lt;span style="color: blue"&gt;in &lt;/span&gt;credentials)
        {
            &lt;span style="color: blue"&gt;switch &lt;/span&gt;(credential.&lt;span style="color: purple"&gt;CredentialType&lt;/span&gt;)
            {
                &lt;span style="color: blue"&gt;case &lt;/span&gt;&lt;span style="color: #00008b"&gt;SecureStoreCredentialType&lt;/span&gt;.&lt;span style="color: purple"&gt;UserName&lt;/span&gt;:
                &lt;span style="color: blue"&gt;case &lt;/span&gt;&lt;span style="color: #00008b"&gt;SecureStoreCredentialType&lt;/span&gt;.&lt;span style="color: purple"&gt;WindowsUserName&lt;/span&gt;:
                    userCredentials.&lt;span style="color: #008b8b"&gt;Add&lt;/span&gt;(&lt;span style="color: #a31515"&gt;"UserID"&lt;/span&gt;, &lt;span style="color: #008b8b"&gt;GetStringFromSecureString&lt;/span&gt;(credential.&lt;span style="color: purple"&gt;Credential&lt;/span&gt;));
                    &lt;span style="color: blue"&gt;break&lt;/span&gt;;
                &lt;span style="color: blue"&gt;case &lt;/span&gt;&lt;span style="color: #00008b"&gt;SecureStoreCredentialType&lt;/span&gt;.&lt;span style="color: purple"&gt;Password&lt;/span&gt;:
                &lt;span style="color: blue"&gt;case &lt;/span&gt;&lt;span style="color: #00008b"&gt;SecureStoreCredentialType&lt;/span&gt;.&lt;span style="color: purple"&gt;WindowsPassword&lt;/span&gt;:
                    userCredentials.&lt;span style="color: #008b8b"&gt;Add&lt;/span&gt;(&lt;span style="color: #a31515"&gt;"Password"&lt;/span&gt;, &lt;span style="color: #008b8b"&gt;GetStringFromSecureString&lt;/span&gt;(credential.&lt;span style="color: purple"&gt;Credential&lt;/span&gt;));
                    &lt;span style="color: blue"&gt;break&lt;/span&gt;;
                &lt;span style="color: blue"&gt;case &lt;/span&gt;&lt;span style="color: #00008b"&gt;SecureStoreCredentialType&lt;/span&gt;.&lt;span style="color: purple"&gt;Generic&lt;/span&gt;:
                    userCredentials.&lt;span style="color: #008b8b"&gt;Add&lt;/span&gt;(&lt;span style="color: #a31515"&gt;"ConnectionString"&lt;/span&gt;, &lt;span style="color: #008b8b"&gt;GetStringFromSecureString&lt;/span&gt;(credential.&lt;span style="color: purple"&gt;Credential&lt;/span&gt;));
                    &lt;span style="color: blue"&gt;break&lt;/span&gt;;
            }
        }
    }

    &lt;span style="color: blue"&gt;return &lt;/span&gt;userCredentials;
}&lt;/pre&gt;


&lt;p&gt; &lt;/p&gt;



















&lt;p&gt;Next switch to the *EntityService.cs class for your External Content Type i.e if your ECT was called Product the filename will be ProductEntityServiceClass.cs&lt;/p&gt;

&lt;p&gt;Update the following method&lt;/p&gt;

&lt;pre class="code"&gt;&lt;span style="color: blue"&gt;public string &lt;/span&gt;&lt;span style="color: #008b8b"&gt;GetConnectionStringWithCredentials&lt;/span&gt;()
{
    &lt;span style="color: #00008b"&gt;Dictionary&lt;/span&gt;&amp;lt;&lt;span style="color: blue"&gt;string&lt;/span&gt;, &lt;span style="color: blue"&gt;string&lt;/span&gt;&amp;gt; credentialsFromSecureStore = &lt;span style="color: #008b8b"&gt;ReadCredentialsFromSecureStore&lt;/span&gt;();
    &lt;span style="color: blue"&gt;var &lt;/span&gt;connectionStringBuilder = &lt;span style="color: blue"&gt;new &lt;/span&gt;&lt;span style="color: #00008b"&gt;SqlConnectionStringBuilder&lt;/span&gt;(&lt;span style="color: purple"&gt;ConnectionString&lt;/span&gt;) { &lt;span style="color: purple"&gt;UserID &lt;/span&gt;= credentialsFromSecureStore[&lt;span style="color: #a31515"&gt;"UserID"&lt;/span&gt;], &lt;span style="color: purple"&gt;Password &lt;/span&gt;= credentialsFromSecureStore[&lt;span style="color: #a31515"&gt;"Password"&lt;/span&gt;] };
    &lt;span style="color: blue"&gt;return &lt;/span&gt;connectionStringBuilder.&lt;span style="color: #008b8b"&gt;ToString&lt;/span&gt;();
}&lt;/pre&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;with the following, this method now just returns the connection string&lt;/p&gt;
&lt;span style="color: blue"&gt;
  &lt;pre class="code"&gt;&lt;span style="color: blue"&gt;public string &lt;/span&gt;&lt;span style="color: #008b8b"&gt;GetConnectionStringWithCredentials&lt;/span&gt;()
{
    &lt;span style="color: blue"&gt;return &lt;/span&gt;&lt;span style="color: #008b8b"&gt;ReadCredentialsFromSecureStore&lt;/span&gt;()[&lt;span style="color: #a31515"&gt;"ConnectionString"&lt;/span&gt;];
}&lt;/pre&gt;
  

  

  
Now deploy the solution and it will be using the connection string from the Central Administration secure store, one thing which is worth noting is that when you go to change the credentials again you will not be shown what they were previously.  You also need to make sure that the same secure store setup is used in each of your environments.&lt;/span&gt;

&lt;p&gt;So there you have it not only can you use BCS Meta man to generate your c# code and configure the model with a few simple changes you can make the connection string configurable via the secure store.&lt;/p&gt;

&lt;p&gt;&amp;lt;Phill /&amp;gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/294.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=Pn6OjU7lZ0A:GpAPam7iIys:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=Pn6OjU7lZ0A:GpAPam7iIys:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2011/08/24/bcs-meta-manndashusing-a-connection-string-stored-in-the-secure.aspx</guid>
            <pubDate>Wed, 24 Aug 2011 15:32:00 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/294.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2011/08/24/bcs-meta-manndashusing-a-connection-string-stored-in-the-secure.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/294.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Going to SharePoint Saturday &amp;ldquo;The Conference&amp;rdquo;?</title>
            <link>http://lightningtools.com/blog/archive/2011/08/08/going-to-sharepoint-saturday-ldquothe-conferencerdquo.aspx</link>
            <description>&lt;p&gt; Lightning Tools is exhibiting at &lt;a href="http://www.sharepointsaturday.org" target="_blank"&gt;SharePoint Saturday&lt;/a&gt; “The Conference” in Washington DC – Thursday 11th – Saturday 12th August. If you happen to be going to the conference, make sure you stop by Lightning Tools to say hello to the team and to see our latest developments of our products. Its been a busy year, and we have a lot to show you!&lt;/p&gt;  &lt;p&gt;Brett Lonsdale from Lightning Tools will be demonstrating how Business Connectivity Services can help turn SharePoint into your central information hub for your organization allowing all stakeholders in the business to access external data. Brett’s session is on Friday 12th August at 1:30pm.&lt;/p&gt;  &lt;p&gt;Also at the Lightning Tools booth you will have you chance to meet Steve Fox and Jennifer Mason and receive a signed copy of their latest books. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/2767fe450ac3_10369/SPSTCDC_2.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="SPSTCDC" border="0" alt="SPSTCDC" src="http://lightningtools.com/blog/images/lightningtools_com/blog/Windows-Live-Writer/2767fe450ac3_10369/SPSTCDC_thumb.jpg" width="191" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Finally, if you struggle with SharePoint permission management in SharePoint. Brett will be demonstrating in our sponsorship session how &lt;a href="http://www.lightningtools.com/sharepoint-2010-permissions-management.aspx" target="_blank"&gt;DeliverPoint&lt;/a&gt; resolves many issues for permission management. Come and see how we can help you take away all of your permission management problems and put you back in control.&lt;/p&gt;  &lt;p&gt;&amp;lt;Brett/&amp;gt;&lt;/p&gt;&lt;img src="http://lightningtools.com/blog/aggbug/293.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=O2Jlfc9g978:MpI4YHjG_L0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/LightningToolsBlog?a=O2Jlfc9g978:MpI4YHjG_L0:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/LightningToolsBlog?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Lightning Tools</dc:creator>
            <guid>http://lightningtools.com/blog/archive/2011/08/08/going-to-sharepoint-saturday-ldquothe-conferencerdquo.aspx</guid>
            <pubDate>Mon, 08 Aug 2011 22:37:50 GMT</pubDate>
            <wfw:comment>http://lightningtools.com/blog/comments/293.aspx</wfw:comment>
            <comments>http://lightningtools.com/blog/archive/2011/08/08/going-to-sharepoint-saturday-ldquothe-conferencerdquo.aspx#feedback</comments>
            <wfw:commentRss>http://lightningtools.com/blog/comments/commentRss/293.aspx</wfw:commentRss>
        </item>
    </channel>
</rss>

