<rss version="2.0" 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/">
    <channel>
        <title>ASP.net 2.0</title>
        <link>http://geekswithblogs.net/synBoogaloo/category/1505.aspx</link>
        <description>ASP.net 2.0</description>
        <language>en-US</language>
        <copyright>Rob Addis</copyright>
        <managingEditor>robsmessages@gmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <item>
            <title>Business Activity Monitoring (BAM) and ASP.net 2.0 Web Parts</title>
            <link>http://geekswithblogs.net/synBoogaloo/archive/2006/07/10/84534.aspx</link>
            <description>&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;Last year at the Microsoft BPI Conference in &lt;st1:place w:st="on"&gt;&lt;st1:city w:st="on"&gt;Seattle&lt;/st1:city&gt;&lt;/st1:place&gt; over a few beers Scott Alan (a Microsoft integration technology specialist) shared with me his idea about using ASP.net 2.0 Web Parts to present BAM data. The idea was to give managers a more precise, flexible and easy to use interface into their business processes, they could essentially go to one dashboard and get a historical and current view of how various areas of their business unit or organisation were doing.&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;I’ve searched the blogosphere half a year later and I’m surprised no one has written about this it’s so simple to build. &lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;The only gripe I have is that ASP.net 2.0 Web Parts cannot be deployed to SharePoint Services 2003 you’ll have to wait until the next version out later this year. You can however get to grips with how build Web Parts to show BAM data on an ASP.net 2.0 page now. (you can use Son of SmartPart see feedback below)&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;This post isn’t going to cover how to enable BAM it also isn’t about how to build Web Parts the basics of which are covered in these 3 tutorials:&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;a href="http://www.ondotnet.com/pub/a/dotnet/2005/05/23/webparts_1.html"&gt;&lt;span style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none"&gt;&lt;span style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none"&gt;&lt;font face="Tahoma" color="#000000" size="2"&gt;WebParts1&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;a href="http://www.ondotnet.com/pub/a/dotnet/2005/06/06/webparts_2.html"&gt;&lt;span style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none"&gt;&lt;span style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none"&gt;&lt;font face="Tahoma" size="2"&gt;WebParts2&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;a href="http://www.ondotnet.com/pub/a/dotnet/2005/06/27/webparts_3.html"&gt;&lt;span style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none"&gt;&lt;span style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none"&gt;&lt;font size="2"&gt;&lt;font face="Tahoma"&gt;WebParts3&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;font face="Tahoma" size="2"&gt; &lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;Here is a simple BAM dashboard (ok I’m not a graphic designer). From the right hand side of the page the manager selects what data in which format they want to view and where on the page it should sit. Once the web part is on the page they can drag it to where ever they want or get rid of it and display another one.&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;o:p&gt;&lt;font face="Tahoma" size="2"&gt;&lt;/font&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;img style="WIDTH: 723px; HEIGHT: 610px" height="749" width="928" alt="" src="/images/geekswithblogs_net/synboogaloo/1515/o_BAMWebParts0.JPG" /&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;All the Web Parts&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;img alt="" src="/images/geekswithblogs_net/synboogaloo/1515/o_BAMWebParts1.JPG" /&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;o:p&gt;&lt;font face="Tahoma" size="2"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" color="#006400" size="2"&gt;&lt;u&gt;&lt;strong&gt;How to plug into BAM&lt;/strong&gt;&lt;/u&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;I know of three ways to access BAM data the first is obvious just grab it from the Views in the BAMPrimaryImport database, the second is by accessing the cubes in SQL Server Anaylsis Services the third is by calling the Web Services which the BAM Portal uses to access BAM data (these are installed with BAM):&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;&lt;a href="http://[server]/BAM/BAMQueryService/BamQueryService.asmx"&gt;http://[server]/BAM/BAMQueryService/BamQueryService.asmx&lt;/a&gt; &lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;img alt="" src="/images/geekswithblogs_net/synboogaloo/1515/o_BAMWebParts2.JPG" /&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;o:p&gt;&lt;font face="Tahoma" size="2"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;&lt;a href="http://[server]/BAM/BAMManagementService/BamManagementService.asmx"&gt;http://[server]/BAM/BAMManagementService/BamManagementService.asmx&lt;/a&gt; &lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;img alt="" src="/images/geekswithblogs_net/synboogaloo/1515/o_BAMWebParts3.JPG" /&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;o:p&gt;&lt;font face="Tahoma" size="2"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;I developed 3 simple Web User Controls to display BAM Data, as a best practice I think it’s a good idea if you develop all your web parts as Web User Controls (these will be later wrapped up as Web Parts).&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style="MARGIN: auto auto auto 4.65pt; WIDTH: 560.7pt; BORDER-COLLAPSE: collapse; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt" cellspacing="0" cellpadding="0" width="748" border="0" class="MsoNormalTable"&gt;
    &lt;tbody&gt;
        &lt;tr style="HEIGHT: 12.75pt; mso-yfti-irow: 0; mso-yfti-firstrow: yes"&gt;
            &lt;td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 100pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; HEIGHT: 12.75pt; BACKGROUND-COLOR: transparent; mso-border-alt: solid windowtext .5pt" valign="bottom" nowrap="nowrap" width="133"&gt;
            &lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Web Part&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
            &lt;/td&gt;
            &lt;td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #d4d0c8; PADDING-BOTTOM: 0cm; WIDTH: 191.35pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; HEIGHT: 12.75pt; BACKGROUND-COLOR: transparent; mso-border-bottom-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt" valign="bottom" width="255"&gt;
            &lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Usage&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
            &lt;/td&gt;
            &lt;td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #d4d0c8; PADDING-BOTTOM: 0cm; WIDTH: 269.35pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; HEIGHT: 12.75pt; BACKGROUND-COLOR: transparent; mso-border-bottom-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt" valign="bottom" width="359"&gt;
            &lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Access method&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="HEIGHT: 24pt; mso-yfti-irow: 1"&gt;
            &lt;td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 100pt; BORDER-TOP-COLOR: #d4d0c8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; HEIGHT: 24pt; BACKGROUND-COLOR: transparent; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt" valign="top" nowrap="nowrap" width="133"&gt;
            &lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Orders for &lt;st1:place w:st="on"&gt;&lt;st1:city w:st="on"&gt;Redmond&lt;/st1:city&gt;&lt;/st1:place&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
            &lt;/td&gt;
            &lt;td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #d4d0c8; PADDING-BOTTOM: 0cm; WIDTH: 191.35pt; BORDER-TOP-COLOR: #d4d0c8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; HEIGHT: 24pt; BACKGROUND-COLOR: transparent; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt" valign="top" width="255"&gt;
            &lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Graph of all the orders for the city of &lt;st1:place w:st="on"&gt;&lt;st1:city w:st="on"&gt;Redmond&lt;/st1:city&gt;&lt;/st1:place&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
            &lt;/td&gt;
            &lt;td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #d4d0c8; PADDING-BOTTOM: 0cm; WIDTH: 269.35pt; BORDER-TOP-COLOR: #d4d0c8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; HEIGHT: 24pt; BACKGROUND-COLOR: transparent; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt" valign="top" width="359"&gt;
            &lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;BAM Query Service GetInstanceData web method&lt;/span&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="HEIGHT: 24pt; mso-yfti-irow: 2"&gt;
            &lt;td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 100pt; BORDER-TOP-COLOR: #d4d0c8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; HEIGHT: 24pt; BACKGROUND-COLOR: transparent; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt" valign="top" nowrap="nowrap" width="133"&gt;
            &lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Subscribe to alert&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
            &lt;/td&gt;
            &lt;td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #d4d0c8; PADDING-BOTTOM: 0cm; WIDTH: 191.35pt; BORDER-TOP-COLOR: #d4d0c8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; HEIGHT: 24pt; BACKGROUND-COLOR: transparent; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt" valign="top" width="255"&gt;
            &lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Allows a user to subscribe to an existing alert&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
            &lt;/td&gt;
            &lt;td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #d4d0c8; PADDING-BOTTOM: 0cm; WIDTH: 269.35pt; BORDER-TOP-COLOR: #d4d0c8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; HEIGHT: 24pt; BACKGROUND-COLOR: transparent; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt" valign="top" width="359"&gt;
            &lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 9pt; FONT-FAMILY: Arial"&gt;BAM Management Service GetAlertsSummary and AddSubscription web methods&lt;/span&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr style="HEIGHT: 24pt; mso-yfti-irow: 3; mso-yfti-lastrow: yes"&gt;
            &lt;td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 100pt; BORDER-TOP-COLOR: #d4d0c8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; HEIGHT: 24pt; BACKGROUND-COLOR: transparent; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt" valign="top" nowrap="nowrap" width="133"&gt;
            &lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Orders by city&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
            &lt;/td&gt;
            &lt;td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #d4d0c8; PADDING-BOTTOM: 0cm; WIDTH: 191.35pt; BORDER-TOP-COLOR: #d4d0c8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; HEIGHT: 24pt; BACKGROUND-COLOR: transparent; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt" valign="top" width="255"&gt;
            &lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;Report with graph displaying the number of orders per city&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
            &lt;/td&gt;
            &lt;td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #d4d0c8; PADDING-BOTTOM: 0cm; WIDTH: 269.35pt; BORDER-TOP-COLOR: #d4d0c8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; HEIGHT: 24pt; BACKGROUND-COLOR: transparent; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt" valign="top" width="359"&gt;
            &lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 9pt; FONT-FAMILY: Arial; mso-ansi-language: EN-US"&gt;View on BAMPrimaryDataBase &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
            &lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;font color="#006400"&gt;&lt;font size="2"&gt;&lt;u&gt;&lt;strong&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma"&gt;1) Orders for &lt;st1:place w:st="on"&gt;&lt;st1:city w:st="on"&gt;Redmond&lt;/st1:city&gt;&lt;/st1:place&gt; web part&lt;/font&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/u&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;Controls: an ASP.net 2.0 GridView&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;Code: (create a web reference to the BAMQueryService)&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Data;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Configuration;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Collections;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Web;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Web.Security;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Web.UI;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Web.UI.WebControls;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Web.UI.WebControls.WebParts;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Web.UI.HtmlControls;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Security.Principal;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;public partial class OrdersForRedmond &lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;: System.Web.UI.UserControl&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;protected void Page_Load(object sender, EventArgs e)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;try&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;//Create the instance query note that the ActivityID is always the first column returned&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;BamQueryService.InstanceQuery instanceQuery = new BamQueryService.InstanceQuery();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;instanceQuery.SelectClauses = new string[] { "city", "product", "amount", "denied", "approved" };&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;//Create a filter expression and add it as a where clause&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;BamQueryService.ArrayOfWhereClausesFilterFilter whereClauseFilter = new BamQueryService.ArrayOfWhereClausesFilterFilter();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;whereClauseFilter.Field = "City";&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;whereClauseFilter.Condition = "=";&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;whereClauseFilter.Logic = "And";&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;whereClauseFilter.Value = "&lt;st1:place w:st="on"&gt;&lt;st1:city w:st="on"&gt;Redmond&lt;/st1:city&gt;&lt;/st1:place&gt;";&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;instanceQuery.WhereClauses = new BamQueryService.ArrayOfWhereClausesFilterFilter[] { whereClauseFilter };&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;//Add credentials to call the WS (integrated security) &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;//Call the GetInstanceData web method and return the result&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;BamQueryService.BamQueryService bamQueryService = new BamQueryService.BamQueryService();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;bamQueryService.Credentials = new System.Net.NetworkCredential("administrator", "pass@word1");&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;BamQueryService.Column[][] result = bamQueryService.GetInstanceData("SalesManager", "OrderMgmt", instanceQuery, 30);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;//Fill a data table this is a quick and dirty way of creating a datasource &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;//probably a better way to bind a 2d array &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;DataTable dataTable = new DataTable("OrdersTable");&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;dataTable.Columns.Add(result[0][0].Name);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;dataTable.Columns.Add(result[0][1].Name);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;dataTable.Columns.Add(result[0][2].Name);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;dataTable.Columns.Add(result[0][3].Name);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;dataTable.Columns.Add(result[0][4].Name);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;dataTable.Columns.Add(result[0][5].Name);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;for (int i = 0; result.GetUpperBound(0) &amp;gt;= i; i++)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;DataRow dataRow = dataTable.NewRow();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;dataRow[0] = result[i][0].Value;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;       &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;         &lt;/span&gt;dataRow[1] = result[i][1].Value;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;dataRow[2] = result[i][2].Value;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;dataRow[3] = result[i][3].Value;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;dataRow[4] = result[i][4].Value;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;dataRow[5] = result[i][5].Value;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;dataTable.Rows.Add(dataRow);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;//Fill the grid with the result&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;gvOrders.DataSource = dataTable;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;gvOrders.DataBind();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;catch (Exception ex)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;System.Diagnostics.EventLog.WriteEntry(this.ToString(), ex.ToString(), System.Diagnostics.EventLogEntryType.Error);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" color="#006400" size="2"&gt;&lt;strong&gt;&lt;u&gt;2) Subscribe to Alert web part&lt;/u&gt;&lt;/strong&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;Note: some alerts must exist already in the BAM Portal&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;Controls: An ASP.net 2.0 Drop Down List, Text Box and a Button&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;Code: (create a web reference to the BAMManagementService)&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Data;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Configuration;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Collections;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Web;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Web.Security;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Web.UI;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Web.UI.WebControls;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Web.UI.WebControls.WebParts;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Web.UI.HtmlControls;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;using System.Security.Principal;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;public partial class SubscribeToAlert : System.Web.UI.UserControl&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;BamManagementService.BamManagementService _BamManagementService;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;protected void Page_Load(object sender, EventArgs e)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;try&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;//Fill the subscriptions combo list box&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;//Add credentials to call the WS (integrated security) &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;//Call the GetAlertsSummary web method&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;_BamManagementService = new BamManagementService.BamManagementService();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;_BamManagementService.Credentials = new System.Net.NetworkCredential("administrator", "pass@word1");&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;BamManagementService.AlertSummary[] alertSummary =&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;_BamManagementService.GetAlertsSummary("SalesManager");&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;//Fill a data table this is a quick and dirty way of creating a datasource &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;//probably a better way to bind a 2d array &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;DataTable dataTable = new DataTable("AlertsTable");&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;dataTable.Columns.Add("Alerts");&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;for (int i = 0; alertSummary.GetUpperBound(0) &amp;gt;= i; i++)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;DataRow dataRow = dataTable.NewRow();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;dataRow[0] = alertSummary[i].Name;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;dataTable.Rows.Add(dataRow);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;       &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;     &lt;/span&gt;//Fill the drop down list&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;ddlAlerts.DataSource = dataTable;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;ddlAlerts.DataTextField = "Alerts";&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;ddlAlerts.DataValueField = "Alerts";&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;ddlAlerts.DataBind();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;catch (Exception ex)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;System.Diagnostics.EventLog.WriteEntry(this.ToString(), ex.ToString(),&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;System.Diagnostics.EventLogEntryType.Error);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;protected void btnSubscribeToAlert_Click(object sender, EventArgs e)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;       &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;try&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;//Create a subscription&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;BamManagementService.Subscription subscription = new BamManagementService.Subscription();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;subscription.ID = new Guid().ToString();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;subscription.Type = BamManagementService.SubscriptionType.email;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;subscription.UserName = System.Security.Principal.WindowsIdentity.GetCurrent().Name;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;subscription.Address = txtEmailAddress.Text;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;_BamManagementService = new BamManagementService.BamManagementService();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;_BamManagementService.Credentials = new System.Net.NetworkCredential("administrator", "pass@word1");&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;_BamManagementService.AddSubscription("SalesManager", ddlAlerts.SelectedValue,&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;                &lt;/span&gt;new BamManagementService.Subscription[] { subscription });&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;catch (Exception ex)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;System.Diagnostics.EventLog.WriteEntry(this.ToString(), ex.ToString(), System.Diagnostics.EventLogEntryType.Error);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal"&gt;&lt;span lang="EN-NZ" style="FONT-SIZE: 8pt; COLOR: navy; FONT-FAMILY: 'Courier New'"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" color="#006400" size="2"&gt;&lt;u&gt;&lt;strong&gt;3) Orders by City web part&lt;/strong&gt;&lt;/u&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;ol type="1"&gt;
    &lt;li class="MsoNormal" style="MARGIN: auto 0cm; mso-list: l0 level1 lfo1; tab-stops: list 36.0pt"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;Create a dataset and connect the BAMPrimaryImport database and select the View which contains the data you’re interested in.&lt;/font&gt;&lt;/span&gt; &lt;/li&gt;
    &lt;li class="MsoNormal" style="MARGIN: auto 0cm; mso-list: l0 level1 lfo1; tab-stops: list 36.0pt"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;Select add new item and choose report&lt;/font&gt;&lt;/span&gt; &lt;/li&gt;
    &lt;li class="MsoNormal" style="MARGIN: auto 0cm; mso-list: l0 level1 lfo1; tab-stops: list 36.0pt"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;Drag a Chart from the toolbox onto the report &lt;/font&gt;&lt;/span&gt;&lt;/li&gt;
    &lt;li class="MsoNormal" style="MARGIN: auto 0cm; mso-list: l0 level1 lfo1; tab-stops: list 36.0pt"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;Go to the Report menu and select Data Sources and then choose the dataset you created above&lt;/font&gt;&lt;/span&gt; &lt;/li&gt;
    &lt;li class="MsoNormal" style="MARGIN: auto 0cm; mso-list: l0 level1 lfo1; tab-stops: list 36.0pt"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;Play with the properties of the graph until you’re happy i.e. add x y cell data&lt;/font&gt;&lt;/span&gt; &lt;/li&gt;
    &lt;li class="MsoNormal" style="MARGIN: auto 0cm; mso-list: l0 level1 lfo1; tab-stops: list 36.0pt"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;Add a Web User Control to the project&lt;/font&gt;&lt;/span&gt; &lt;/li&gt;
    &lt;li class="MsoNormal" style="MARGIN: auto 0cm; mso-list: l0 level1 lfo1; tab-stops: list 36.0pt"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;Add a Report Viewer control and choose the report you just created&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;Code: none&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: auto 0cm"&gt;&lt;span lang="EN-NZ"&gt;&lt;font face="Tahoma" size="2"&gt;Now you’ve got your Web User Controls (soon to be web Parts) if you haven’t already do the 3 web part tutorials above and build your page. This is just a simple example of how you can interface with BAM &amp;amp; use ASP.net 2.0 web parts to empower managers.&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=84534"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=84534" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/synBoogaloo/aggbug/84534.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Rob Addis</dc:creator>
            <guid>http://geekswithblogs.net/synBoogaloo/archive/2006/07/10/84534.aspx</guid>
            <pubDate>Mon, 10 Jul 2006 13:49:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/synBoogaloo/comments/84534.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/synBoogaloo/archive/2006/07/10/84534.aspx#feedback</comments>
            <slash:comments>6</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/synBoogaloo/comments/commentRss/84534.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/synBoogaloo/services/trackbacks/84534.aspx</trackback:ping>
        </item>
        <item>
            <title>Best Practice: Frames Vs MasterPages Vs ICallBackEventHandler Vs DataIslands and the dreaded page refresh</title>
            <link>http://geekswithblogs.net/synBoogaloo/archive/2005/04/27/38504.aspx</link>
            <description>&lt;H2 style="MARGIN: 24pt 0cm auto; TEXT-INDENT: 0cm; mso-list: none; tab-stops: 36.0pt"&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;ASP.NET 2.0 hasn&amp;#8217;t put the final nail in the coffin of Frames. It does however provide some better alternatives depending on what you are trying to achieve.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/H2&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm"&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;I googled up some comparisons of Frames, Master Pages and the ICallBackEventHandler a good overview article on ASP.net 2.0 sates in favour of master pages:&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 78.55pt; TEXT-INDENT: -24.7pt; mso-list: l0 level1 lfo2; tab-stops: list 78.55pt"&gt;&lt;SPAN style="COLOR: #40a115; mso-fareast-font-family: Tahoma; mso-ansi-language: EN-US; mso-bidi-font-family: Tahoma"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Tahoma size=2&gt;&amp;#8226;&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=2&gt;&lt;FONT face=Tahoma&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN lang=EN-NZ&gt;&amp;#8220;&lt;/SPAN&gt;&lt;/I&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="mso-ansi-language: EN-US"&gt;Bookmark a page and recall all the information on the specific page, not just the default frame page. A master page isn't really a frame. It's a single page that contains collated content from the master page and the content page that builds on the master. Therefore it looks and acts like a single Web page rather than a frame. &lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/I&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 78.55pt; TEXT-INDENT: -24.7pt; mso-list: l0 level1 lfo2; tab-stops: list 78.55pt"&gt;&lt;SPAN style="COLOR: #40a115; mso-fareast-font-family: Tahoma; mso-ansi-language: EN-US; mso-bidi-font-family: Tahoma"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Tahoma size=2&gt;&amp;#8226;&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="mso-ansi-language: EN-US"&gt;&lt;FONT size=2&gt;&lt;FONT face=Tahoma&gt;Work by means of controls and tags rather than HTML. Thanks to Visual Studio, you don't have to worry about opening and closing frame tags or modifying countless HTML attributes to ensure that each frame displays in the correct fashion. You can simply create the place holder and modify its properties through Visual Studio. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 78.55pt; TEXT-INDENT: -24.7pt; mso-list: l0 level1 lfo2; tab-stops: list 78.55pt"&gt;&lt;SPAN style="COLOR: #40a115; mso-fareast-font-family: Tahoma; mso-ansi-language: EN-US; mso-bidi-font-family: Tahoma"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Tahoma size=2&gt;&amp;#8226;&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="mso-ansi-language: EN-US"&gt;&lt;FONT size=2&gt;&lt;FONT face=Tahoma&gt;Leverage Visual Studio's code creation to visually design the layout, manage the frames, and provide all of the plumbing to link the content pages into the master page. You can add new content without having to worry that the overall HTML layout of the page will be affected. &amp;#8220;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 36pt"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="mso-ansi-language: EN-US"&gt;&lt;FONT size=2&gt;&lt;FONT face=Tahoma&gt;Migrating from ASP.NET 1.x to ASP.NET 2.0&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 36pt"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;FONT size=2&gt;&lt;FONT face=Tahoma&gt;&lt;SPAN style="mso-ansi-language: EN-US"&gt;By Jayesh Patel, Bryan Acker, Robert McGovern - Infusion Development, July 2004&lt;/SPAN&gt;&lt;SPAN lang=EN-NZ&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 36pt"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN lang=EN-NZ&gt;&lt;A href="https://www.mainfunction.com/DotNetInAction/Technologies/display.aspx?ID=2760&amp;amp;TypeID=17#master"&gt;&lt;SPAN style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; FONT-SIZE: 9pt; BORDER-LEFT: medium none; LINE-HEIGHT: 120%; BORDER-BOTTOM: medium none; FONT-FAMILY: Arial"&gt;&lt;SPAN style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none"&gt;https://www.mainfunction.com/DotNetInAction/Technologies/display.aspx?ID=2760&amp;amp;TypeID=17#master&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm"&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;And this extract from an interview with Scott Guthrie Microsoft&amp;#8217;s ASP.net Architect discusses how the new callback manager (ICallBackEventHandler) which is basically a XMLHTTP wrapper can also help in reducing the amount of visible page refreshes.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 36pt"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT size=2&gt;&lt;FONT face=Tahoma&gt;&amp;#8220;&amp;#8230;So, one is to do what we call, out-of-bound call backs, where you can stay on the same page as an end user, but then through script, you can actually make a call back to the server and fetch new data that you populate down to the client, without having to, again, refresh the entire page, without having to lose scroll position, etc. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 36pt"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="COLOR: #980000; mso-ansi-language: EN-US"&gt;&lt;FONT size=2&gt;&lt;FONT face=Tahoma&gt;&amp;#8230;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 36pt"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="COLOR: black; mso-ansi-language: EN-US"&gt;&lt;A title="click to load the video clip for this question" href="http://www.theserverside.net/talks/videos/ScottGuthrie/56k/q14.html" target=video&gt;&lt;U style="text-underline: #000000"&gt;&lt;SPAN style="BORDER-RIGHT: windowtext 1pt; PADDING-RIGHT: 0cm; BORDER-TOP: windowtext 1pt; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt; COLOR: black; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt; TEXT-DECORATION: none; mso-ansi-language: EN-US; text-underline: none; mso-border-alt: none windowtext 0cm"&gt;&lt;FONT face=Tahoma size=2&gt;So will out-of-bound callbacks spell the end of the evil IFRAME? &lt;/FONT&gt;&lt;/SPAN&gt;&lt;/U&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 36pt"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="mso-ansi-language: EN-US"&gt;&lt;FONT size=2&gt;&lt;FONT face=Tahoma&gt;The IFRAME today has a bum wrap in terms of reputation. I think the combination of out-of-bound callbacks as well as some of the things we're doing in terms of master pages, to provide much cleaner layout of a page, where you can go ahead and rather than have to rely on frames in order to cleanly separate, or integrate content into a site, you can now rely on master pages. I think the combination of those two are going to put the hurt on the IFRAME out there. It's still fully supported, but the nice thing is, there's much richer mechanisms you can rely on now. &amp;#8220;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 36pt"&gt;&lt;I style="mso-bidi-font-style: normal"&gt;&lt;SPAN style="mso-ansi-language: EN-US"&gt;&lt;FONT size=2&gt;&lt;FONT face=Tahoma&gt;http://www.theserverside.net/talks/videos/ScottGuthrie/interview.tss?bandwidth=56k&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm"&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;Well master pages seem a fantastic tool for development. They give you page inheritance, reusability you can even nest them giving the developer a simple way for you to ensure consistent look and feel to an entire application. So from a developer&amp;#8217;s point of view they rock.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm"&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;But what about the user experience well even if a content page &amp;#8220;inherits&amp;#8221; a master page each time the page is requested the entire page will refresh whether it is the content part or the master part of the page. Users hate full page refreshes, developers hate trips to the server to retrieve redundant html, the menu bar and advertisement is already on the client&amp;#8217;s browser so why go and get it again (even if it is cached on the server). &lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm"&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;Can implementing the ICallBackEventHandler help, well yes and no. Use of this technique can only refresh data. For example, enable the user to page through a grid without refreshing the entire page. You can&amp;#8217;t really use this to redisplay the entire content area of the page if it contains asp: web controls (well I have done it but using Frames would be much much easier).&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm"&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;If you haven&amp;#8217;t already come across the concept of &lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:place w:st="on"&gt;&lt;st1:PlaceName w:st="on"&gt;XML&lt;/st1:PlaceName&gt; &lt;st1:PlaceName w:st="on"&gt;Data&lt;/st1:PlaceName&gt; &lt;st1:PlaceType w:st="on"&gt;Islands&lt;/st1:PlaceType&gt;&lt;/st1:place&gt; it has been around for a while along with Frames and XMLHTTP (now the ICallBackEventHandler). This technique requires the use of the DHTML XML tag you use this to build a client side repository of data in XML. For example if a user is entering data to complete a form over a number of pages, it would be more beneficial if you stored the data on the client between pages until the user reaches the final page and presses submit and only then hit the server to update your data source. This potentially has no effect on the dreaded page refresh it is great for relieving the pressure on your database server however. Note this is not the only use for &lt;st1:place w:st="on"&gt;&lt;st1:PlaceName w:st="on"&gt;XML&lt;/st1:PlaceName&gt; &lt;st1:PlaceName w:st="on"&gt;Data&lt;/st1:PlaceName&gt; &lt;st1:PlaceType w:st="on"&gt;Island&lt;/st1:PlaceType&gt;&lt;/st1:place&gt; the example is a common one however.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm"&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;So the only way to stop the entire page refreshing if you are using asp: or user controls on your page (these need to be rendered by the asp.net runtime) and only refreshing the content area of a page is still through the use of Frames. Unfortunately in ASP.net Beta 2 unlike ASP.net 1.X it doesn&amp;#8217;t ship with a Frameset template although there will be an online template available and adding the tags yourself won&amp;#8217;t cause injury.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm"&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;So what are the best practices I have come up with many seasoned web developers will already practice these however for those beginners and intermediates I hope this will be of some help and relive you of trial and error driven development. Some of you may disagree with these and I would like to hear back from you guys. Remember it is the users we are building these web applications for not the developers.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm"&gt;&lt;U&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT size=2&gt;&lt;FONT face=Tahoma&gt;Use master pages when&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/U&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 42.55pt; TEXT-INDENT: -24.7pt; mso-list: l1 level1 lfo3; tab-stops: list 42.55pt"&gt;&lt;SPAN lang=EN-NZ style="COLOR: #40a115; mso-fareast-font-family: Tahoma; mso-bidi-font-family: Tahoma"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Tahoma size=2&gt;&amp;#8226;&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;Not concerned about a full page refresh&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 42.55pt; TEXT-INDENT: -24.7pt; mso-list: l1 level1 lfo3; tab-stops: list 42.55pt"&gt;&lt;SPAN lang=EN-NZ style="COLOR: #40a115; mso-fareast-font-family: Tahoma; mso-bidi-font-family: Tahoma"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Tahoma size=2&gt;&amp;#8226;&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;Development requires a highly modifiable inheritable page standard and users will live with a page refresh&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 42.55pt; TEXT-INDENT: -24.7pt; mso-list: l1 level1 lfo3; tab-stops: list 42.55pt"&gt;&lt;SPAN lang=EN-NZ style="COLOR: #40a115; mso-fareast-font-family: Tahoma; mso-bidi-font-family: Tahoma"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Tahoma size=2&gt;&amp;#8226;&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;Need to be allow the user to bookmark a specific page&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm"&gt;&lt;U&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT size=2&gt;&lt;FONT face=Tahoma&gt;Use the ICallBackEventHandler when &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/U&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 42.55pt; TEXT-INDENT: -24.7pt; mso-list: l4 level1 lfo4; tab-stops: list 42.55pt"&gt;&lt;SPAN lang=EN-NZ style="COLOR: #40a115; mso-fareast-font-family: Tahoma; mso-bidi-font-family: Tahoma"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Tahoma size=2&gt;&amp;#8226;&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;Want to refresh data or images in a control and not refresh the entire page&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 42.55pt; TEXT-INDENT: -24.7pt; mso-list: l4 level1 lfo4; tab-stops: list 42.55pt"&gt;&lt;SPAN lang=EN-NZ style="COLOR: #40a115; mso-fareast-font-family: Tahoma; mso-bidi-font-family: Tahoma"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Tahoma size=2&gt;&amp;#8226;&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;Want to refresh part of the page with simple HTML (no asp: controls) and not refresh the entire page&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm"&gt;&lt;FONT size=2&gt;&lt;FONT face=Tahoma&gt;&lt;st1:place w:st="on"&gt;&lt;st1:PlaceName w:st="on"&gt;&lt;U&gt;&lt;SPAN lang=EN-NZ&gt;Use&lt;/SPAN&gt;&lt;/U&gt;&lt;/st1:PlaceName&gt;&lt;U&gt;&lt;SPAN lang=EN-NZ&gt; &lt;st1:PlaceName w:st="on"&gt;XML&lt;/st1:PlaceName&gt; &lt;st1:PlaceName w:st="on"&gt;Data&lt;/st1:PlaceName&gt; &lt;st1:PlaceType w:st="on"&gt;Islands&lt;/st1:PlaceType&gt;&lt;/SPAN&gt;&lt;/U&gt;&lt;/st1:place&gt;&lt;U&gt;&lt;SPAN lang=EN-NZ&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/U&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 42.55pt; TEXT-INDENT: -24.7pt; mso-list: l2 level1 lfo5; tab-stops: list 42.55pt"&gt;&lt;SPAN lang=EN-NZ style="COLOR: #40a115; mso-fareast-font-family: Tahoma; mso-bidi-font-family: Tahoma"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Tahoma size=2&gt;&amp;#8226;&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;You want to build stores of data on a client and by doing this reduce the number of hits to update the servers data source&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm"&gt;&lt;U&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT size=2&gt;&lt;FONT face=Tahoma&gt;Use Frames when&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/U&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 42.55pt; TEXT-INDENT: -24.7pt; mso-list: l2 level1 lfo5; tab-stops: list 42.55pt"&gt;&lt;SPAN lang=EN-NZ style="COLOR: #40a115; mso-fareast-font-family: Tahoma; mso-bidi-font-family: Tahoma"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Tahoma size=2&gt;&amp;#8226;&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;Don&amp;#8217;t want full page refreshes&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 42.55pt; TEXT-INDENT: -24.7pt; mso-list: l2 level1 lfo5; tab-stops: list 42.55pt"&gt;&lt;SPAN lang=EN-NZ style="COLOR: #40a115; mso-fareast-font-family: Tahoma; mso-bidi-font-family: Tahoma"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Tahoma size=2&gt;&amp;#8226;&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;Have complex asp: control driven pages which can&amp;#8217;t be refreshed by data only i.e. the asp: controls need to be generated into html by the web server first&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm auto 42.55pt; TEXT-INDENT: -24.7pt; mso-list: l2 level1 lfo5; tab-stops: list 42.55pt"&gt;&lt;SPAN lang=EN-NZ style="COLOR: #40a115; mso-fareast-font-family: Tahoma; mso-bidi-font-family: Tahoma"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT face=Tahoma size=2&gt;&amp;#8226;&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-NZ&gt;&lt;FONT face=Tahoma size=2&gt;Need multiple areas of the page to be refreshed at different times by the user&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm"&gt;&lt;SPAN lang=EN-NZ&gt;&lt;o:p&gt;&lt;FONT face=Tahoma size=2&gt;&amp;nbsp;R. Addis &amp;amp; A. Rambabu&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=38504"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=38504" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/synBoogaloo/aggbug/38504.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Rob Addis</dc:creator>
            <guid>http://geekswithblogs.net/synBoogaloo/archive/2005/04/27/38504.aspx</guid>
            <pubDate>Wed, 27 Apr 2005 18:33:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/synBoogaloo/comments/38504.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/synBoogaloo/archive/2005/04/27/38504.aspx#feedback</comments>
            <slash:comments>8</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/synBoogaloo/comments/commentRss/38504.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/synBoogaloo/services/trackbacks/38504.aspx</trackback:ping>
        </item>
        <item>
            <title>Online VS.net 2.0 Tutorials </title>
            <link>http://geekswithblogs.net/synBoogaloo/archive/2005/04/17/36166.aspx</link>
            <description>&lt;P&gt;&lt;FONT face=Arial size=1&gt;Here are a couple of easy tutorials for ASP.net 2.0.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial size=1&gt;&lt;STRONG&gt;Themes and skins&lt;BR&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;A href="http://codeguru.com/vb/vb_internet/aspnet/article.php/c7937/"&gt;&lt;FONT face=Arial size=1&gt;http://codeguru.com/vb/vb_internet/aspnet/article.php/c7937/&lt;/FONT&gt;&lt;/A&gt;&lt;BR&gt;&lt;FONT face=Arial size=1&gt;and&lt;BR&gt;&lt;/FONT&gt;&lt;A href="http://www.ondotnet.com/pub/a/dotnet/2004/08/30/themesandskins.html"&gt;&lt;FONT face=Arial size=1&gt;http://www.ondotnet.com/pub/a/dotnet/2004/08/30/themesandskins.html&lt;/FONT&gt;&lt;/A&gt;&lt;BR&gt;&lt;FONT face=Arial size=1&gt;&amp;nbsp;&lt;BR&gt;&lt;STRONG&gt;Personalisation&lt;/STRONG&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;A href="http://www.ondotnet.com/pub/a/dotnet/2004/08/16/whidbey_personalization.html"&gt;&lt;FONT face=Arial size=1&gt;http://www.ondotnet.com/pub/a/dotnet/2004/08/16/whidbey_personalization.html&lt;/FONT&gt;&lt;/A&gt;&lt;BR&gt;&lt;FONT face=Arial size=1&gt;and (includes &lt;STRONG&gt;master pages&lt;/STRONG&gt;)&lt;BR&gt;&lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsse/html/VWD_SSE.asp"&gt;&lt;FONT face=Arial size=1&gt;http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsse/html/VWD_SSE.asp&lt;/FONT&gt;&lt;/A&gt;&lt;BR&gt;&lt;FONT face=Arial size=1&gt;&amp;nbsp;&lt;BR&gt;&lt;STRONG&gt;Client Script call back (Call back manager)&lt;/STRONG&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;A href="http://www.ondotnet.com/pub/a/dotnet/2004/08/09/callbackmanager.html"&gt;&lt;FONT face=Arial size=1&gt;http://www.ondotnet.com/pub/a/dotnet/2004/08/09/callbackmanager.html&lt;/FONT&gt;&lt;/A&gt;&lt;BR&gt;&lt;FONT face=Arial size=1&gt;and&lt;BR&gt;&lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/msdnmag/issues/04/08/CuttingEdge/"&gt;&lt;FONT face=Arial size=1&gt;http://msdn.microsoft.com/msdnmag/issues/04/08/CuttingEdge/&lt;/FONT&gt;&lt;/A&gt;&lt;BR&gt;&lt;FONT face=Arial size=1&gt;&amp;nbsp;&lt;BR&gt;&lt;STRONG&gt;ASP.net 2 Web config help&lt;/STRONG&gt;&lt;BR&gt;I have found the MSDN doco on the ASP.net 2.0 config file really helpful (especially when adding new sql providers for membership &amp;amp; role management).&lt;BR&gt;&lt;/FONT&gt;&lt;A href="http://winfx.msdn.microsoft.com/library/default.asp?url=/library/en-us/dv_aspnetgenref/html/9e998377-b07f-44c1-ad9b-20a60e83c18f.asp"&gt;&lt;FONT face=Arial size=1&gt;http://winfx.msdn.microsoft.com/library/default.asp?url=/library/en-us/dv_aspnetgenref/html/9e998377-b07f-44c1-ad9b-20a60e83c18f.asp&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial size=1&gt;And this site to help with setting password encryption in web.configs&lt;BR&gt;&lt;/FONT&gt;&lt;A href="http://www.aspnetresources.com/tools/keycreator.aspx"&gt;&lt;FONT face=Arial size=1&gt;http://www.aspnetresources.com/tools/keycreator.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: auto 0cm"&gt;&lt;SPAN lang=EN-NZ&gt;R. Addis&lt;/SPAN&gt;&lt;/P&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=36166"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=36166" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/synBoogaloo/aggbug/36166.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Rob Addis</dc:creator>
            <guid>http://geekswithblogs.net/synBoogaloo/archive/2005/04/17/36166.aspx</guid>
            <pubDate>Mon, 18 Apr 2005 11:41:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/synBoogaloo/comments/36166.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/synBoogaloo/archive/2005/04/17/36166.aspx#feedback</comments>
            <slash:comments>5</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/synBoogaloo/comments/commentRss/36166.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/synBoogaloo/services/trackbacks/36166.aspx</trackback:ping>
        </item>
    </channel>
</rss>