<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1549777073528793587</id><updated>2012-02-17T10:48:07.978+13:00</updated><category term='asp'/><category term='Employee Portal'/><category term='Approvals'/><category term='Dynamics NAV 5.0'/><category term='Visual Studio'/><category term='Vista'/><category term='WebService'/><category term='SQL'/><category term='CRM'/><category term='Release'/><category term='Jobs'/><category term='New Company Setup'/><category term='MVP'/><category term='Gadgets'/><category term='Dynamics Connector'/><category term='AX'/><category term='Reporting Services'/><category term='Data Migration'/><category term='Dynamics CRM 3.0'/><category term='Dynamics'/><category term='Dynamics CRM 4.0'/><category term='Awards'/><category term='NAV'/><category term='NAV2009'/><category term='RIM Toolkit'/><category term='Dynamics CRM 2011'/><category term='Intergen'/><category term='GP'/><category term='Windows 7'/><title type='text'>Ramblings of a Dynamic Mind</title><subtitle type='html'>Blogging Dynamics NAV, CRM and other random things.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>25</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-5275404678368348497</id><published>2012-01-19T15:56:00.001+13:00</published><updated>2012-01-19T15:56:52.047+13:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='NAV'/><category scheme='http://www.blogger.com/atom/ns#' term='NAV2009'/><title type='text'>Uploading Large Files to RTC</title><content type='html'>&lt;p&gt;Recently I have had a client attempting to load large files to NAV through RTC.&lt;/p&gt;  &lt;p&gt;They are in the process of migrating a company to NAV and have a fairly large number of G/L Entries to load.&lt;/p&gt;  &lt;p&gt;We had already developed a generic G/L Journal upload tool so the data had been mapped into a file that could be loaded though that.&lt;/p&gt;  &lt;p&gt;When the routine was run we almost immediately got a ‘File is too large error’&lt;/p&gt;  &lt;p&gt;After having a dig around I found a setting in the CustomSettings.Config file that limits the size of upload files.&lt;/p&gt;  &lt;p&gt;The setting is &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;!--   &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Limits the size of files that can be uploaded in order to avoid out of memory errors. This value is in megabytes.    &lt;br /&gt;&amp;#160; --&amp;gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;add key=&amp;quot;MaxUploadSize&amp;quot; value=&amp;quot;5&amp;quot;&amp;gt;&amp;lt;/add&amp;gt;&lt;/p&gt;  &lt;p&gt;The default is 5mb. So by extending this and restarting the service tier larger files can be loaded.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-5275404678368348497?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/5275404678368348497/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=5275404678368348497' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/5275404678368348497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/5275404678368348497'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2012/01/uploading-large-files-to-rtc.html' title='Uploading Large Files to RTC'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-4260808467103585744</id><published>2011-07-05T13:05:00.001+12:00</published><updated>2011-07-05T13:05:06.513+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics Connector'/><category scheme='http://www.blogger.com/atom/ns#' term='NAV2009'/><title type='text'>Dynamics CRM – NAV Connector(NAV Customisations)</title><content type='html'>&lt;p&gt;Once the connector is installed you need to configure NAV to publish the web services for it. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Step 1 - Setup the connector.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;This is fairly straight forward. Go to Marketing Setup and on the Synchronisation tab check the box ‘Enable Connector’ This will then prompt you to confirm that you want to setup the connector and when you OK it will build all the correct Web Service settings and Integration Page records.&lt;/p&gt;  &lt;p&gt;When the connector is setup you will see a set of web services inside Dynamics NAV. To check them go to Administration –&amp;gt; IT Administration –&amp;gt; General Setup –&amp;gt; Web Services&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-9VxS6phij9M/ThJjFymv4hI/AAAAAAAAADE/SOpsXdATFQw/s1600-h/image3.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/-h3oKoNzmnPg/ThJjGojM6FI/AAAAAAAAADI/vB-F5g04ygM/image_thumb1.png?imgmax=800" width="383" height="333" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;In the Connector itself&lt;/p&gt;  &lt;p&gt;Inside the connector you can see the entities that are coming from NAV by going into the Settings and then selecting the NAV Configuration Utility.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/-xRC864NHWbM/ThJjHdPBN5I/AAAAAAAAADM/3LRRtplzWb0/s1600-h/connectorsettings3.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="connector settings" border="0" alt="connector settings" src="http://lh4.ggpht.com/-1OvqOolkBaM/ThJjH8Vu4hI/AAAAAAAAADQ/1VUNmZufpUs/connectorsettings_thumb1.jpg?imgmax=800" width="404" height="306" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Once you have connected to the database and selected the companies from it you which to connect with you will get a list of the published entities from it&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/-KBEwc6RRkEA/ThJjJUyXnVI/AAAAAAAAADU/RTf40s3FYV8/s1600-h/connectorentities13.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="connector entities 1" border="0" alt="connector entities 1" src="http://lh5.ggpht.com/-fI6zmsYf1SU/ThJjJ_wrzNI/AAAAAAAAADY/KxGaG9Ou7Qc/connectorentities1_thumb1.jpg?imgmax=800" width="420" height="230" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;This will give you all the standard tables and fields, but often you will want to add new fields and tables that are specific to the customer&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Step 2- Add Custom Fields on tables already mapped&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;To add a new field to a table already mapped you only need to modify the Page. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-MxXYFXz56jI/ThJjKgCzYcI/AAAAAAAAADc/BFQ8QDelokg/s1600-h/NavContact4.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Nav Contact" border="0" alt="Nav Contact" src="http://lh5.ggpht.com/-zaBbfdHWajw/ThJjLYBpuUI/AAAAAAAAADg/ggHDjQ-HMDY/NavContact_thumb2.jpg?imgmax=800" width="434" height="130" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Here I have added Name 2 to the Contact Page&lt;/p&gt;  &lt;p&gt;As all the fields on a Page are exposed as the WSDL this will automatically update the list of available fields when you next refresh the Connector&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/-n0D8csXjM5o/ThJjL5ianGI/AAAAAAAAADk/1fHIwXEyX_I/s1600-h/MapFields23.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Map Fields 2" border="0" alt="Map Fields 2" src="http://lh5.ggpht.com/-31qYxe4tnj4/ThJjM7tHW-I/AAAAAAAAADo/3Ux3yj2uK94/MapFields2_thumb1.jpg?imgmax=800" width="419" height="345" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Here we can see Name 2 has been added to the source fields list in the connector.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Step 3 - Add Custom Tables&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Again this is fairly straight forward.&lt;/p&gt;  &lt;p&gt;In order to get the system to automatically add the entries to the Web Services and the Integration Page tables you need to modify Coudeunit 5150. There are 3 functions you need to modify. &lt;/p&gt;  &lt;p&gt;EnableConnector&lt;/p&gt;  &lt;p&gt;In teh EnableConnector Function you need to add a new line for each new table. This allows the routine to determine what the correct Form and table ID’s are for your new table. If you want to force a specific form you can specify it here.&lt;/p&gt;  &lt;p&gt;In this example I am adding the Vendor to the connector&lt;/p&gt;  &lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;   &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;     &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;EnableConnector()&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;IF&lt;/span&gt; &lt;span style="color: #0000ff"&gt;NOT&lt;/span&gt; IntegrationPage.FINDFIRST &lt;span style="color: #0000ff"&gt;THEN&lt;/span&gt; BEGIN&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::&lt;span style="color: #006080"&gt;&amp;quot;Resource List&amp;quot;&lt;/span&gt;,DATABASE::Resource);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::&lt;span style="color: #006080"&gt;&amp;quot;Payment Terms&amp;quot;&lt;/span&gt;,DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Payment Terms&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::&lt;span style="color: #006080"&gt;&amp;quot;Shipment Methods&amp;quot;&lt;/span&gt;,DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Shipment Method&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::&lt;span style="color: #006080"&gt;&amp;quot;Shipping Agents&amp;quot;&lt;/span&gt;,DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Shipping Agent&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::Currencies,DATABASE::Currency);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::&lt;span style="color: #006080"&gt;&amp;quot;Salespeople/Purchasers&amp;quot;&lt;/span&gt;,DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Salesperson/Purchaser&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::&lt;span style="color: #006080"&gt;&amp;quot;Customer Card&amp;quot;&lt;/span&gt;,DATABASE::Customer);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::&lt;span style="color: #006080"&gt;&amp;quot;Item Card&amp;quot;&lt;/span&gt;,DATABASE::Item);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::&lt;span style="color: #006080"&gt;&amp;quot;Sales Order&amp;quot;&lt;/span&gt;,DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Sales Header&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::&lt;span style="color: #006080"&gt;&amp;quot;Sales Invoice&amp;quot;&lt;/span&gt;,DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Sales Header&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::&lt;span style="color: #006080"&gt;&amp;quot;Posted Sales Invoice&amp;quot;&lt;/span&gt;,DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Sales Invoice Header&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::&lt;span style="color: #006080"&gt;&amp;quot;Units of Measure&amp;quot;&lt;/span&gt;,DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Unit of Measure&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::&lt;span style="color: #006080"&gt;&amp;quot;Ship-to Address&amp;quot;&lt;/span&gt;,DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Ship-to Address&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::&lt;span style="color: #006080"&gt;&amp;quot;Contact Card&amp;quot;&lt;/span&gt;,DATABASE::Contact);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::&lt;span style="color: #006080"&gt;&amp;quot;Currency Exchange Rates&amp;quot;&lt;/span&gt;,DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Currency Exchange Rate&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::&lt;span style="color: #006080"&gt;&amp;quot;Customer Disc. Groups&amp;quot;&lt;/span&gt;,DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Customer Discount Group&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::&lt;span style="color: #006080"&gt;&amp;quot;Item Disc. Groups&amp;quot;&lt;/span&gt;,DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Item Discount Group&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  //&lt;span style="color: #0000ff"&gt;New&lt;/span&gt; Table&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupWebServicePages(FORM::&lt;span style="color: #006080"&gt;&amp;quot;Vendor Card&amp;quot;&lt;/span&gt;,DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Vendor&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  SetupIntegrationService;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;END&lt;/span&gt;;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;MarkDeletedIntegrationRecords;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;SetupIntegrationTables;&lt;/pre&gt;&lt;br /&gt;  &lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;SetupIntegrationTables&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;You need to add a new line for each table here&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;&lt;br /&gt;  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;SetupIntegrationTables()&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;InitializeIntegrationRecords(DATABASE::Resource);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;InitializeIntegrationRecords(DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Payment Terms&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;InitializeIntegrationRecords(DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Shipment Method&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;InitializeIntegrationRecords(DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Shipping Agent&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;InitializeIntegrationRecords(DATABASE::Currency);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;InitializeIntegrationRecords(DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Salesperson/Purchaser&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;InitializeIntegrationRecords(DATABASE::Customer);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;InitializeIntegrationRecords(DATABASE::Item);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;InitializeIntegrationRecords(DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Sales Header&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;InitializeIntegrationRecords(DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Sales Invoice Header&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;InitializeIntegrationRecords(DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Unit of Measure&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;InitializeIntegrationRecords(DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Ship-to Address&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;InitializeIntegrationRecords(DATABASE::Contact);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;InitializeIntegrationRecords(DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Currency Exchange Rate&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;InitializeIntegrationRecords(DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Customer Discount Group&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;InitializeIntegrationRecords(DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Item Discount Group&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;//&lt;span style="color: #0000ff"&gt;New&lt;/span&gt; Table&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;InitializeIntegrationRecords(DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Vendor&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;  &lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;IsIntegrationRecord&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;You also need to add a reference in here so the system knows that the Table is part of the integration.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;&lt;br /&gt;  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;IsIntegrationRecord(TableID : &lt;span style="color: #0000ff"&gt;Integer&lt;/span&gt;) : &lt;span style="color: #0000ff"&gt;Boolean&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;IF&lt;/span&gt; TableID &lt;span style="color: #0000ff"&gt;IN&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;   [DATABASE::Resource,&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Payment Terms&amp;quot;&lt;/span&gt;,&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Shipment Method&amp;quot;&lt;/span&gt;,&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Shipping Agent&amp;quot;&lt;/span&gt;,&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    DATABASE::Currency,&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Salesperson/Purchaser&amp;quot;&lt;/span&gt;,&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    DATABASE::Customer,&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    DATABASE::Item,&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Sales Header&amp;quot;&lt;/span&gt;,&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Sales Invoice Header&amp;quot;&lt;/span&gt;,&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Unit of Measure&amp;quot;&lt;/span&gt;,&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Ship-to Address&amp;quot;&lt;/span&gt;,&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    DATABASE::Contact,&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Currency Exchange Rate&amp;quot;&lt;/span&gt;,&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Customer Discount Group&amp;quot;&lt;/span&gt;,&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Item Discount Group&amp;quot;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    //&lt;span style="color: #0000ff"&gt;New&lt;/span&gt; Table&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    //DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Item Discount Group&amp;quot;&lt;/span&gt;]&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Item Discount Group&amp;quot;&lt;/span&gt;,&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    DATABASE::&lt;span style="color: #006080"&gt;&amp;quot;Vendor&amp;quot;&lt;/span&gt;]&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;THEN&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;  &lt;span style="color: #0000ff"&gt;EXIT&lt;/span&gt;(&lt;span style="color: #0000ff"&gt;TRUE&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;EXIT&lt;/span&gt;(&lt;span style="color: #0000ff"&gt;FALSE&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;  &lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Once this is done you can refresh the integration by Un-checking the&amp;#160; Enable Connector box in Marketing Setup and then rechecking it again. This will refresh the settings. &lt;a href="http://lh3.ggpht.com/-le2S6DqtLGE/ThJjNl6-xfI/AAAAAAAAADs/TZzdZvzRHBo/s1600-h/NAVwebservices3.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="NAV webservices" border="0" alt="NAV webservices" src="http://lh4.ggpht.com/-BKj5Z67Txwo/ThJjOTrspWI/AAAAAAAAADw/_AeW5MATUTw/NAVwebservices_thumb1.jpg?imgmax=800" width="413" height="380" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;When you next refresh the connector you will find the new entity &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://lh3.ggpht.com/-uv0dC1vqdgg/ThJjPRxXegI/AAAAAAAAAD0/haW2byPu6mE/s1600-h/connectorentities26.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="connector entities 2" border="0" alt="connector entities 2" src="http://lh5.ggpht.com/-pRLeg3JTt1A/ThJjQHMCT9I/AAAAAAAAAD4/2ThjVVN4qyU/connectorentities2_thumb2.jpg?imgmax=800" width="421" height="231" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Now the Vendor Card appears in the list of entities and just needs to be enables to be used in a map.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-4260808467103585744?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/4260808467103585744/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=4260808467103585744' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/4260808467103585744'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/4260808467103585744'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2011/07/dynamics-crm-nav-connectornav.html' title='Dynamics CRM – NAV Connector(NAV Customisations)'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/-h3oKoNzmnPg/ThJjGojM6FI/AAAAAAAAADI/vB-F5g04ygM/s72-c/image_thumb1.png?imgmax=800' height='72' width='72'/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-5068218069022255898</id><published>2011-07-05T13:02:00.001+12:00</published><updated>2011-07-05T13:05:34.390+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics Connector'/><category scheme='http://www.blogger.com/atom/ns#' term='NAV2009'/><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics CRM 4.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics CRM 2011'/><title type='text'>Dynamics CRM – NAV Connector</title><content type='html'>&lt;p&gt;With the release of NAV2009R2 Microsoft came the release of the Dynamics Connector for NAV and CRM.&lt;/p&gt;  &lt;p&gt;The connector itself has been around for a while and was in use with Dynamics GP and CRM. Since it came out with NAV I have had a play with it and I have a couple of sites that are at various stages in implementing it.&lt;/p&gt;  &lt;p&gt;Personally I think linking Dynamics NAV with Dynamics CRM gives a very powerful solution. The users access by the method that makes most sense, fairly often we see uses needing to deal with customers or vendors and track interactions but with a limited impact on the ERP. They maybe raising orders or making basic enquires but they don’t need all the functions that the ERP provides. &lt;/p&gt;  &lt;p&gt;Often sales wants to be out and about working in an offline capacity. The offline integration with Outlook in CRM makes this possible, plus it presents a familiar interface.&lt;/p&gt;  &lt;p&gt;The connector provides out of the box integration for these sorts of things.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-ArlUS5UL0NM/ThJimv3J7NI/AAAAAAAAAC0/n10y8eqiS7g/s1600-h/NAVCRMMapping3.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="NAV-CRM Mapping" border="0" alt="NAV-CRM Mapping" src="http://lh3.ggpht.com/-iSme2-0-aqU/ThJing9qcWI/AAAAAAAAAC4/TkIjkpul1nM/NAVCRMMapping_thumb1.jpg?imgmax=800" width="374" height="186" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The connector itself acts as a mapping tool and uses web services on both sides to handle the integration.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/-grjT7uAaCE4/ThJioQ4K0rI/AAAAAAAAAC8/7764035Mmnk/s1600-h/NAVCRMOverview3.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="NAV-CRM Overview" border="0" alt="NAV-CRM Overview" src="http://lh4.ggpht.com/-lXRxKuUZh9c/ThJipNnZ7nI/AAAAAAAAADA/puPzJxLE7WA/NAVCRMOverview_thumb1.jpg?imgmax=800" width="383" height="258" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;While working with it I have found the amount of information on how to add customer fields and tables to the connector to be limited&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;In the next 3 posts I’ll look at how to setup and customise the connector.&lt;/p&gt;  &lt;p&gt;The first will look at Dynamics NAV    &lt;br /&gt;The second Dynamics CRM     &lt;br /&gt;and finally the third will look in more detail at the connector itself&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-5068218069022255898?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/5068218069022255898/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=5068218069022255898' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/5068218069022255898'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/5068218069022255898'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2011/07/dynamics-crm-nav-connector.html' title='Dynamics CRM – NAV Connector'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/-iSme2-0-aqU/ThJing9qcWI/AAAAAAAAAC4/TkIjkpul1nM/s72-c/NAVCRMMapping_thumb1.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-3837048695164991639</id><published>2009-03-09T09:13:00.001+13:00</published><updated>2009-03-09T09:24:23.815+13:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='Gadgets'/><title type='text'>Windows 7 Gadgets and Disabled UAC</title><content type='html'>&lt;p&gt;For some reason Windows Gadgets don’t run in Windows 7 if you disable the UAC. Now I like windows gadgets and I am trailing Windows 7 but some of the software I was using was having a hard time with UAC so we turned it off and all of a sudden all my gadgets disappeared. after a bit of searching around I found the solution of the Windows 7 News &lt;a href="http://windows7news.com/"&gt;blog&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Quote&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;    &lt;br /&gt;The Windows 7 Sidebar and Gadgets do not work correctly if a user disables the User Account Control in Windows 7. There is however an easy way to make the gadgets and sidebar work again without having to replace system files (that was the way suggested in many forums).     &lt;br /&gt;    &lt;br /&gt;All that needs to be done is to change one value of a parameter in the Windows 7 Registry to make the sidebar and gadgets work even with UAC disabled.     &lt;br /&gt;    &lt;br /&gt;Open the Windows 7 Registry by pressing [Windows R], typing [regedit] and hitting [enter]. Now navigate to the Registry key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Sidebar\Setting and change the value of AllowElevatedProcess to 1.     &lt;br /&gt;    &lt;br /&gt;Restart the computer or logout and login again to see if the changes work as intended. The Registry setting ensures that the gadgets and the sidebar are working in Windows 7 properly even if UAC is disabled.    &lt;br /&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Quote&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span class="kwrd"&gt;&lt;/span&gt;    &lt;br /&gt;On my machine that registry value was missing so I added a new DWORD to the setting. Logged out and back in and all my gadgets reappeared. Life is good again :)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-3837048695164991639?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/3837048695164991639/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=3837048695164991639' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/3837048695164991639'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/3837048695164991639'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2009/03/windows-7-gadgets-and-disabled-uac.html' title='Windows 7 Gadgets and Disabled UAC'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-7739841069142667816</id><published>2009-02-13T09:00:00.001+13:00</published><updated>2011-03-22T05:28:47.454+13:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='NAV2009'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><category scheme='http://www.blogger.com/atom/ns#' term='WebService'/><title type='text'>NAV Web Services</title><content type='html'>&lt;p&gt;So we have been doing some integration work between a custom piece of development and NAV2009. Our NAV Dev setup some code and exposed it as a series of web services. To test them a simple console app was written and everything was good.&lt;/p&gt;  &lt;p&gt;Then they tried running the console app on a different machine to the NAV web service, all of a sudden nothing worked.&lt;/p&gt;  &lt;p&gt;We went back over the config settings of the console app and confirmed that it was pointing to the correct URL for the web service, which it was, but for some reason when we ran it it kept trying to look for the service on the localhost. This turned out to be a setting in Visual Studio that by default embeds the URL of the web service when you register it, who knew..... well one of our .NET devs did thankfully. So by changing the GenerateDefaultValueInCode to False your solution will look to the Config file instead.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogpics.shadownet.org.uk/WorkBlogPics/NAVWebServices_6B38/image.png"&gt;&lt;img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="image" src="http://blogpics.shadownet.org.uk/WorkBlogPics/NAVWebServices_6B38/image_thumb.png" width="414" height="219" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;So after changing that and rebuilding the app we tried again. Still not working. After much testing with little joy we tried some simple tests on a different set of machines, on these we managed to get the following&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogpics.shadownet.org.uk/WorkBlogPics/NAVWebServices_6B38/clip_image002.jpg"&gt;&lt;img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="clip_image002" src="http://blogpics.shadownet.org.uk/WorkBlogPics/NAVWebServices_6B38/clip_image002_thumb.jpg" width="413" height="67" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogpics.shadownet.org.uk/WorkBlogPics/NAVWebServices_6B38/clip_image0028.jpg"&gt;&lt;img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="clip_image002[8]" src="http://blogpics.shadownet.org.uk/WorkBlogPics/NAVWebServices_6B38/clip_image0028_thumb.jpg" width="426" height="300" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Turned out that Windows firewall was blocking the port we were using, so after adding an exception to the firewall everything worked fine.&lt;/p&gt;  &lt;p&gt;So next time we do some of this stuff we are going to make sure the server has the port unblocked and that we remember to tell Visual Studio not to imbed the web service URL (its default action) so we can control it with a config file.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-7739841069142667816?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/7739841069142667816/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=7739841069142667816' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/7739841069142667816'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/7739841069142667816'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2009/02/nav-web-services.html' title='NAV Web Services'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-3218315228636808358</id><published>2009-01-08T14:57:00.001+13:00</published><updated>2009-01-08T14:57:09.292+13:00</updated><title type='text'>Another Year Over</title><content type='html'>&lt;p&gt;It's been an exciting one for me. &lt;/p&gt;  &lt;p&gt;First up Dynamics CRM4.0 was released at the start of the year. We have done a number of installation of it now and the team have done some very interesting things with it.&lt;/p&gt;  &lt;p&gt;Next Dynamics NAV5 SP1 was released, while not a major release it did bring some interesting things. Firstly it got rid of the highly confusing SIFT tables and replaced them with views. It also brought access to the Dynamics Mobile client.&lt;/p&gt;  &lt;p&gt;Then December brought us Dynamics NAV 2009. This is a major release and brings us lots of fun stuff. The most obvious is the new Role Tailored Client(RTC). It also gives NAV web services out of the box, something we have been after for a long time. It supports SQL2008, also released this year. We have already started working with this latest version and have a number of upgrades and new installations lined up for the first part of next year.&lt;/p&gt;  &lt;p&gt;Closer to home the Intergen Dynamics team had some significant growth with around a dozen new team members joining over the year.    &lt;br /&gt;Dave Roys in Christchurch was awarded Most Valued Person by Microsoft, this is a great honour as there are only a dozen or so MVP's for NAV worldwide and Dave is the only one in Asia Pacific.     &lt;br /&gt;Craig Keenan was made a Subject Matter Expert for NAV.     &lt;br /&gt;Intergen was involved in the Dynamics NAV Partner Advisory Board and with 7 attendees out of a total of 11 coming from Intergen I think it shows how involved in the future of NAV we intend to be.&lt;/p&gt;  &lt;p&gt;Away from the Dynamics products. Windows 2008 and SQL 2008 were both released.    &lt;br /&gt;Intergen has been doing huge amounts of work with MOSS as well as its more traditional custom builds. We have also been looking at all the new stuff Microsoft announced at the PDC around Cloud Services, Windows 7 etc.&lt;/p&gt;  &lt;p&gt;2009 should be a very interesting year, between all the new things that are coming and the current global economic situation there will be many challenges ahead. More and more I think companies will be looking at ways to work smarter and reduce their overheads. Hopefully that will mean that people like me will still be in demand.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-3218315228636808358?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/3218315228636808358/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=3218315228636808358' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/3218315228636808358'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/3218315228636808358'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2009/01/another-year-over.html' title='Another Year Over'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-5023110519348725115</id><published>2008-12-02T19:36:00.001+13:00</published><updated>2008-12-02T19:36:03.321+13:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='NAV'/><category scheme='http://www.blogger.com/atom/ns#' term='NAV2009'/><title type='text'>NAV 2009 Released</title><content type='html'>&lt;p&gt;NAV 2009 has been released in the 'wave 1' counties.&amp;#160; This means some things that we have been waiting for a couple of years for are finally available.&lt;/p&gt;  &lt;p&gt;There are still some gaps and the new client will take some getting used to but the addition of web-services out of the box and the new architecture is a great leap forwards. &lt;/p&gt;  &lt;p&gt;I have posted before about web-services and since then I have been trying a few different things. In one demo from Microsoft they showed an example of them by adding a 'E#dit in Excel' button to a page that launched Excel, pushed the currently filtered data over and then allowed a user to modify it and update back into NAV.&lt;/p&gt;  &lt;p&gt;Another interesting example has been posted by Dave 'Gaspode' Roys. In his example he is using an infopath form to get NAV data, edit it and submit it back to the system. Take a look &lt;a href="http://gaspodethewonderdog.blogspot.com/2008/11/nav-2009-web-services-and-infopath.html"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;I am also trying a few things using the new client as well. Generally I 'learn' better when I have a project that needs a solution, fortunately I have a pet NAV project to play with. In our office we have a snack club that I current run, while its overkill really I keep track of it all in NAV. This gives me a chance to try to solve the minor problems that come along, and play with the new cool stuff. &lt;/p&gt;  &lt;p&gt;This weeks project was a migration from NAV5.0 to NAV2009. As the basis of the system was fairly standard this was a straight forward exercise, adding a few new fields to tables and the doing a NAV backup and restore to a W2k8 server with SQL2k8 and NAV2009. Then I went through and rebuilt the few special bits of code that I needed. &lt;/p&gt;  &lt;p&gt;Next up will be the addition of some RS reports and a simple app that the team can use to record what they are taking and set up their bills, a task that is currently done in a book. Once I have it figured out I'll post some examples.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-5023110519348725115?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/5023110519348725115/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=5023110519348725115' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/5023110519348725115'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/5023110519348725115'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2008/12/nav-2009-released.html' title='NAV 2009 Released'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-5170572385955701433</id><published>2008-10-07T15:50:00.001+13:00</published><updated>2011-03-22T05:26:39.511+13:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics'/><category scheme='http://www.blogger.com/atom/ns#' term='NAV'/><category scheme='http://www.blogger.com/atom/ns#' term='NAV2009'/><category scheme='http://www.blogger.com/atom/ns#' term='WebService'/><title type='text'>Webservices in NAV2009</title><content type='html'>&lt;p&gt;Anyone that has been reading up on NAV2009 cannot have failed to have noticed that NAV can now publish Webservices. I know clever developers have been building Webservices for NAV for a while now, but they have been building them from scratch. NAV2009 gives a simple form where you can expose a Codeunit, or a Page(the new object type used by the .NET client).&lt;/p&gt;  &lt;p&gt;One of the examples in the Application Developers Guide publishes a Page built against the Customer Table. The example then goes on to build a simple console app that inserts, Modifies and deletes a customer record, displaying the results between each stage.&lt;/p&gt;  &lt;p&gt;Now I know very little C# and the example has a number of bugs in it but even I have managed to get this work and add some very basic error catching in a few hours. One of the devs here told me it would have taken him somewhere between a day and 2 days top achieve the same in the past.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;So the example I am talking about. &lt;/p&gt;  &lt;p&gt;In NAV open Object Designer and run form 810    &lt;br /&gt;Add Page 21 and call it Customer&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogpics.shadownet.org.uk/WorkBlogPics/WebservicesinNAV2009/WebServicesScreen.jpg"&gt;&lt;img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="WebServicesScreen" src="http://blogpics.shadownet.org.uk/WorkBlogPics/WebservicesinNAV2009/WebServicesScreen_thumb.jpg" width="244" height="154" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;In Visual Studio 2008 I started a ConsoleApp Project.&lt;/p&gt;  &lt;p&gt;I then added a reference to the WebService by Right Clicking Service References and selecting Add Service Reference. I then Clicked the Advanced Button&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogpics.shadownet.org.uk/WorkBlogPics/WebservicesinNAV2009/AddServcieRef.jpg"&gt;&lt;img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="AddServcieRef" src="http://blogpics.shadownet.org.uk/WorkBlogPics/WebservicesinNAV2009/AddServcieRef_thumb.jpg" width="351" height="292" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I then clicked Add Web Reference&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogpics.shadownet.org.uk/WorkBlogPics/WebservicesinNAV2009/ServiceReferenceSettings.jpg"&gt;&lt;img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="ServiceReferenceSettings" src="http://blogpics.shadownet.org.uk/WorkBlogPics/WebservicesinNAV2009/ServiceReferenceSettings_thumb.jpg" width="367" height="349" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I then add the webservice and named it WebService(not very original I know)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogpics.shadownet.org.uk/WorkBlogPics/WebservicesinNAV2009/AddWebReference.jpg"&gt;&lt;img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="AddWebReference" src="http://blogpics.shadownet.org.uk/WorkBlogPics/WebservicesinNAV2009/AddWebReference_thumb.jpg" width="391" height="283" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Once I had this I could start with the C# Code. Admittedly most of this was copy -&amp;#160; pasted from the example. But as I said there are a few bugs that I had to resolve, plus I wanted some simple error trapping&lt;/p&gt;  &lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;   &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;     &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   1:&lt;/span&gt; &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; System;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   2:&lt;/span&gt; &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; System.Collections.Generic;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   3:&lt;/span&gt; &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; System.Text;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   4:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   5:&lt;/span&gt; &lt;span style="color: #0000ff"&gt;namespace&lt;/span&gt; ConsoleApplication1&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   6:&lt;/span&gt; {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   7:&lt;/span&gt;    &lt;span style="color: #008000"&gt;// import newly generated Web service proxy&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   8:&lt;/span&gt;    &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; WebService;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   9:&lt;/span&gt;   &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  10:&lt;/span&gt;    &lt;span style="color: #0000ff"&gt;class&lt;/span&gt; Program&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  11:&lt;/span&gt;    {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  12:&lt;/span&gt;        &lt;span style="color: #0000ff"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff"&gt;void&lt;/span&gt; Main(&lt;span style="color: #0000ff"&gt;string&lt;/span&gt;[] args)&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  13:&lt;/span&gt;        {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  14:&lt;/span&gt;            &lt;span style="color: #008000"&gt;//create instance of service and setting credentials&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  15:&lt;/span&gt;            Customer_Service service = &lt;span style="color: #0000ff"&gt;new&lt;/span&gt; Customer_Service();&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  16:&lt;/span&gt;            service.UseDefaultCredentials = &lt;span style="color: #0000ff"&gt;true&lt;/span&gt;;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  17:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  18:&lt;/span&gt;            &lt;span style="color: #008000"&gt;//create instance of customer&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  19:&lt;/span&gt;            Customer cust = &lt;span style="color: #0000ff"&gt;new&lt;/span&gt; Customer();&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  20:&lt;/span&gt;            cust.Name = &lt;span style="color: #006080"&gt;&amp;quot;Customer Name&amp;quot;&lt;/span&gt;;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  21:&lt;/span&gt;            &lt;span style="color: #008000"&gt;//Next line will throw an error. Comment out to get successful passing&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  22:&lt;/span&gt;            cust.Address = &lt;span style="color: #006080"&gt;&amp;quot;12345678901234567890123456789012345678901234567890123456&amp;quot;&lt;/span&gt;;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  23:&lt;/span&gt;            Msg(&lt;span style="color: #006080"&gt;&amp;quot;Pre Insert&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  24:&lt;/span&gt;            PrintCustomer(cust);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  25:&lt;/span&gt;           &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  26:&lt;/span&gt;            &lt;span style="color: #008000"&gt;//insert customer&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  27:&lt;/span&gt;            &lt;span style="color: #008000"&gt;//service.Insert is wrong. Correct and added a Try/Catch for errors&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  28:&lt;/span&gt;            &lt;span style="color: #008000"&gt;//service.Insert(ref cust);&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  29:&lt;/span&gt;            &lt;span style="color: #0000ff"&gt;try&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  30:&lt;/span&gt;            {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  31:&lt;/span&gt;                service.Create(&lt;span style="color: #0000ff"&gt;ref&lt;/span&gt; cust);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  32:&lt;/span&gt;            }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  33:&lt;/span&gt;            &lt;span style="color: #0000ff"&gt;catch&lt;/span&gt; (Exception ex)&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  34:&lt;/span&gt;            {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  35:&lt;/span&gt;                Console.WriteLine(ex.Message);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  36:&lt;/span&gt;            }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  37:&lt;/span&gt;            Msg(&lt;span style="color: #006080"&gt;&amp;quot;Post Insert&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  38:&lt;/span&gt;            PrintCustomer(cust);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  39:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  40:&lt;/span&gt;            &lt;span style="color: #008000"&gt;//create filter for searching for customers&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  41:&lt;/span&gt;            List&amp;amp;lt;Customer_Filter&amp;amp;gt; filter = &lt;span style="color: #0000ff"&gt;new&lt;/span&gt; List&amp;amp;lt;Customer_Filter&amp;amp;gt;();&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  42:&lt;/span&gt;            Customer_Filter nameFilter = &lt;span style="color: #0000ff"&gt;new&lt;/span&gt; Customer_Filter();&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  43:&lt;/span&gt;            nameFilter.Field = Customer_Fields.Name;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  44:&lt;/span&gt;            nameFilter.Criteria = &lt;span style="color: #006080"&gt;&amp;quot;C*&amp;quot;&lt;/span&gt;;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  45:&lt;/span&gt;            filter.Add(nameFilter);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  46:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  47:&lt;/span&gt;            Msg(&lt;span style="color: #006080"&gt;&amp;quot;List before modification&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  48:&lt;/span&gt;            PrintCustomerList(service, filter);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  49:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  50:&lt;/span&gt;            cust.Name = cust.Name + &lt;span style="color: #006080"&gt;&amp;quot;Modified&amp;quot;&lt;/span&gt;;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  51:&lt;/span&gt;            &lt;span style="color: #008000"&gt;//service.Modify is wrong. Correct and added a Try/Catch for errors&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  52:&lt;/span&gt;            &lt;span style="color: #008000"&gt;//service.Modify(ref cust);&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  53:&lt;/span&gt;            &lt;span style="color: #0000ff"&gt;try&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  54:&lt;/span&gt;            {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  55:&lt;/span&gt;                service.Update(&lt;span style="color: #0000ff"&gt;ref&lt;/span&gt; cust);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  56:&lt;/span&gt;            }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  57:&lt;/span&gt;            &lt;span style="color: #0000ff"&gt;catch&lt;/span&gt; (Exception ex)&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  58:&lt;/span&gt;            {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  59:&lt;/span&gt;                Console.WriteLine(ex.Message);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  60:&lt;/span&gt;            }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  61:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  62:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  63:&lt;/span&gt;            Msg(&lt;span style="color: #006080"&gt;&amp;quot;Post Modify&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  64:&lt;/span&gt;            PrintCustomer(cust);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  65:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  66:&lt;/span&gt;            Msg(&lt;span style="color: #006080"&gt;&amp;quot;List after modification&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  67:&lt;/span&gt;            PrintCustomerList(service, filter);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  68:&lt;/span&gt;            &lt;span style="color: #0000ff"&gt;try&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  69:&lt;/span&gt;            {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  70:&lt;/span&gt;                service.Delete(cust.Key);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  71:&lt;/span&gt;            }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  72:&lt;/span&gt;            &lt;span style="color: #0000ff"&gt;catch&lt;/span&gt; (Exception ex)&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  73:&lt;/span&gt;            {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  74:&lt;/span&gt;                Console.WriteLine(ex.Message);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  75:&lt;/span&gt;            }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  76:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  77:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  78:&lt;/span&gt;            Msg(&lt;span style="color: #006080"&gt;&amp;quot;List after deletion&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  79:&lt;/span&gt;            PrintCustomerList(service, filter);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  80:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  81:&lt;/span&gt;            Msg(&lt;span style="color: #006080"&gt;&amp;quot;Press [ENTER] to exit program!&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  82:&lt;/span&gt;            Console.ReadLine();&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  83:&lt;/span&gt;        }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  84:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  85:&lt;/span&gt;        &lt;span style="color: #0000ff"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff"&gt;void&lt;/span&gt; PrintCustomerList(Customer_Service service, List&amp;amp;lt;Customer_Filter&amp;amp;gt; filter)&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  86:&lt;/span&gt;        {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  87:&lt;/span&gt;            Msg(&lt;span style="color: #006080"&gt;&amp;quot;Printing Customer List&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  88:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  89:&lt;/span&gt;            &lt;span style="color: #008000"&gt;//conduct the actual search&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  90:&lt;/span&gt;            &lt;span style="color: #008000"&gt;//service.Find is wrong. Correct and added a Try/Catch for errors&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  91:&lt;/span&gt;            &lt;span style="color: #008000"&gt;//Customer[] list = service.Find(filter.ToArray(), null, 100);&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  92:&lt;/span&gt;            Customer[] list = service.ReadMultiple(filter.ToArray(), &lt;span style="color: #0000ff"&gt;null&lt;/span&gt;, 100);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  93:&lt;/span&gt;           &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  94:&lt;/span&gt;            &lt;span style="color: #0000ff"&gt;foreach&lt;/span&gt; (Customer c &lt;span style="color: #0000ff"&gt;in&lt;/span&gt; list)&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  95:&lt;/span&gt;            {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  96:&lt;/span&gt;                PrintCustomer(c);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  97:&lt;/span&gt;            }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  98:&lt;/span&gt;            Msg(&lt;span style="color: #006080"&gt;&amp;quot;End of List&amp;quot;&lt;/span&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  99:&lt;/span&gt;        }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 100:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 101:&lt;/span&gt;        &lt;span style="color: #0000ff"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff"&gt;void&lt;/span&gt; PrintCustomer(Customer c)&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 102:&lt;/span&gt;        {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 103:&lt;/span&gt;            Console.WriteLine(&lt;span style="color: #006080"&gt;&amp;quot;No: {0} Name: {1}&amp;quot;&lt;/span&gt;, c.No, c.Name);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 104:&lt;/span&gt;        }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 105:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 106:&lt;/span&gt;        &lt;span style="color: #0000ff"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff"&gt;void&lt;/span&gt; Msg(&lt;span style="color: #0000ff"&gt;string&lt;/span&gt; msg)&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 107:&lt;/span&gt;        {&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 108:&lt;/span&gt;            Console.WriteLine(msg);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 109:&lt;/span&gt;        }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 110:&lt;/span&gt;    }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 111:&lt;/span&gt; }&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 112:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;  &lt;div&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;This is an area I think will make my life a lot easier as I get involved in integration projects fairly often.&amp;#160; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;As I get more knowledge I'll post up more examples.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-5170572385955701433?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/5170572385955701433/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=5170572385955701433' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/5170572385955701433'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/5170572385955701433'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2008/10/webservices-in-nav2009.html' title='Webservices in NAV2009'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-1502269753705260047</id><published>2008-10-06T12:01:00.001+13:00</published><updated>2008-10-06T12:01:22.846+13:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Awards'/><category scheme='http://www.blogger.com/atom/ns#' term='Intergen'/><title type='text'>Intergen is the MS NZ Partner of the Year 2008</title><content type='html'>&lt;p&gt;Year year Microsoft partners get various awards. Most of these are based on submissions. Partners enter into the various categories and are the submissions are then judged by Microsoft.&lt;/p&gt;  &lt;p&gt;Partner of the Year is different. Microsoft employees look at the partners and selects those that they feel are suitable. These are then judged. &lt;/p&gt;  &lt;p&gt;For Intergen this is a huge honour and, coupled with being announced as a member of the Presidents Club, firmly establishes us as the leading Microsoft Partner in NZ. &lt;/p&gt;  &lt;p&gt;To see all the categories and winners for this years Microsoft awards take a look at the MS Site &lt;a href="http://www.microsoft.com/nz/events/partnerawards08/awards.mspx"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-1502269753705260047?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/1502269753705260047/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=1502269753705260047' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/1502269753705260047'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/1502269753705260047'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2008/10/intergen-is-ms-nz-partner-of-year-2008.html' title='Intergen is the MS NZ Partner of the Year 2008'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-5759315232736390683</id><published>2008-10-06T10:51:00.001+13:00</published><updated>2011-03-22T05:33:47.969+13:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Vista'/><category scheme='http://www.blogger.com/atom/ns#' term='Gadgets'/><title type='text'>Vista Gadgets</title><content type='html'>&lt;p&gt;I have been using Vista for almost a year now and one of the things I like in it is the Sidebar. When I was on XP I used desktop gadgets from a third party so when I finally got Vista I did some digging around its sidebar. While there are a number of cool gadgets two of the most useful I have found are the App Launcher and the Magic Folder.&lt;/p&gt;  &lt;p&gt;App Launcher allows a user to set up shortcut's to what ever they like and they can be grouped into folders. While a number of standard windows folders can be accessed, for example My Computer, one of the things that is missing is links to the user folders such as Documents by default.&amp;#160; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://blogpics.shadownet.org.uk/WorkBlogPics/VistaGadgets_9162/Gadgets_thumb_3.jpg"&gt;&lt;img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="Gadgets" src="http://blogpics.shadownet.org.uk/WorkBlogPics/VistaGadgets_9162/Gadgets_3.jpg" width="244" height="224" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The other gadget I have found really useful is the Magic Folder. I often save all sorts of things to my desktop over the course of a day. Magic Folder allows me to drag and drop them onto the folder which then files them away based on the file extension. So any pictures are moved the the My Pictures folder, pdf's move to a folder inside My Documents, etc. You can specify your own file extensions and you can move to anywhere on your system.&lt;/p&gt;  &lt;p&gt;If you find you regularly have masses of files on your desktop and you can store them loosely by file extension it is well worth looking into.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-5759315232736390683?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/5759315232736390683/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=5759315232736390683' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/5759315232736390683'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/5759315232736390683'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2008/10/vista-gadgets_06.html' title='Vista Gadgets'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-4443142567865660850</id><published>2008-10-06T09:32:00.001+13:00</published><updated>2008-10-06T10:21:12.524+13:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MVP'/><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics'/><category scheme='http://www.blogger.com/atom/ns#' term='NAV'/><title type='text'>Dynamics NAV MVP</title><content type='html'>&lt;p&gt;I am pleased to say that the newest &lt;a href="https://mvp.support.microsoft.com/gp/mvpexecsum"&gt;MVP&lt;/a&gt; for Dynamics NAV is &lt;a href="https://mvp.support.microsoft.com/profile=9D51D788-0947-4E74-9A5B-F28F6FC380DC"&gt;Dave Roys&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Why am I so pleased that Dave has been recognised? well for the past four and a half years I have been working along side him. Dave is based out of &lt;a href="http://www.intergen.co.nz"&gt;Intergen's&lt;/a&gt; Christchurch office. Prioir to his move to New Zealand he had been working for a UK partner while I was with, at that time, Navision UK Ltd, and he was a student on one or two of the courses I ran back then. So in a ,very small, way I help contribute to his passion for NAV, well I hope anyway lol.&lt;/p&gt;  &lt;p&gt;If you haven't already read his &lt;a href="http://gaspodethewonderdog.blogspot.com/"&gt;blog&lt;/a&gt; I advise you to do so.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-4443142567865660850?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/4443142567865660850/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=4443142567865660850' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/4443142567865660850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/4443142567865660850'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2008/10/dynamics-nav-mvp.html' title='Dynamics NAV MVP'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-3231958039342361632</id><published>2008-09-17T08:11:00.001+12:00</published><updated>2008-09-17T08:11:47.216+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp'/><title type='text'>RPO Released</title><content type='html'>&lt;p&gt;&lt;b&gt;What is the RPO?&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;The RPO (Runtime Page Optimizer) speeds up ASP.NET and SharePoint websites. Its simple. We automated 8 of the guidelines set out in Yahoo's &amp;quot;Best practices for speeding up your site&amp;quot; and checked these with the creators of YSlow to make sure the RPO gives you the fastest website ever. Try the RPO now from &lt;a href="http://www.getrpo.com/"&gt;www.getrpo.com&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Technical background&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;The RPO (Runtime Page Optimizer) is a software component for IIS 6/7 web servers&amp;#160; that speeds up ASP.NET and SharePoint websites significantly.&amp;#160; The component works at runtime - with no development changes, no extra hardware and performs these optimizations:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;b&gt;Combination.&lt;/b&gt; Combines JS files, CSS files reducing HTTP requests. It can optionally&amp;#160; combine JPEGs and GIFs into CSS sprites to reduce the number of images.&amp;#160; This significantly decreases the roundtrips between browser and server reducing page load time &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Compression.&lt;/b&gt; Minifies and gzip compresses resources, decreasing page load times and data traffic &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Caching.&lt;/b&gt; Increases speed through caching - automatically setting far future expires on the browser, caching optimized resources on the server, with full control over when both caches are refreshed &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Browser aware.&lt;/b&gt; Works with all versions of IE, FF, Opera, Chrome and Safari - optimizations are automatically turned on/off to meet the browser's capability &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Framework support.&lt;/b&gt; Supports ASP.NET 2.0+, AJAX, SharePoint 2007, DotNetNuke, EPiServer &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Fast set up.&lt;/b&gt; No extra hardware required,&amp;#160; no CDN maintenance, no browser software, zero impact installation - component is a single DLL installed on a web server &lt;/li&gt;    &lt;li&gt;&lt;b&gt;You decide how fast your pages load.&lt;/b&gt; Out-of-the-box the RPO will speed up websites at level-4 optimization. For even greater speed, you can use the RPO to sprite images and combine all JavaScripts into one, you'll just need to ensure your images are correctly scaled and your JavaScripts behave well when combined. This level of optimization usually takes a &amp;quot;milestone&amp;quot; to complete, the RPO reduces the developer&amp;#160; effort to hours and keeps your images and scripts in their original maintainable format &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Do you need it? &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Speed is everything. Unless you've implemented best practices, the website that seems fast on your local machine is often slooooooow when people use it from around the country or internationally. Users hate slooooooow webpages. &lt;strong&gt;&lt;i&gt;Asking your customers to wait is like asking them to leave.&lt;/i&gt;&lt;/strong&gt; Try the RPO now from &lt;a href="http://www.getrpo.com"&gt;www.getrpo.com&lt;/a&gt;.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-3231958039342361632?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/3231958039342361632/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=3231958039342361632' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/3231958039342361632'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/3231958039342361632'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2008/09/rpo-released.html' title='RPO Released'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-7252793871640880897</id><published>2008-09-02T12:22:00.001+12:00</published><updated>2008-09-02T12:22:38.647+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics NAV 5.0'/><category scheme='http://www.blogger.com/atom/ns#' term='NAV'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL'/><title type='text'>Microsoft Dynamics NAV compatibility with Windows Server 2008 and SQL Server 2008</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Microsoft Dynamics NAV 4.00 SP3 and 5.00 SP1 are &lt;strong&gt;compatible with Microsoft Windows Server 2008&lt;/strong&gt;. The only &lt;strong&gt;updates&lt;/strong&gt; to take into account only applies to customers with &lt;strong&gt;Business Notification and/or Commerce Gateway&lt;/strong&gt; functionality. You can find more info in &lt;a href="https://mbs.microsoft.com/knowledgebase/KBDisplay.aspx?WTNTZSMNWUKNTMMYXUPYZQPOUXNXSPSYSLPRPNOTWSLYMULPZOYYTNLSULRSXSSP&amp;amp;wa=wsignin1.0"&gt;KB article 956161&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Compatibility with SQL Server 2008 &lt;/strong&gt;is&lt;strong&gt; still in test&lt;/strong&gt;. Just check &lt;a href="https://mbs.microsoft.com/partnersource/products/navision/newsevents/news/navcompatibility_sqlserver2008_windowsserver2008.htm?printpage=false"&gt;this site&lt;/a&gt; for an update on the test results... . I will (try to) keep you informed as well, off course. &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-7252793871640880897?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/7252793871640880897/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=7252793871640880897' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/7252793871640880897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/7252793871640880897'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2008/09/microsoft-dynamics-nav-compatibility.html' title='Microsoft Dynamics NAV compatibility with Windows Server 2008 and SQL Server 2008'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-4366318424361208492</id><published>2008-07-24T14:36:00.001+12:00</published><updated>2008-07-24T14:36:41.666+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics'/><category scheme='http://www.blogger.com/atom/ns#' term='NAV'/><category scheme='http://www.blogger.com/atom/ns#' term='CRM'/><title type='text'>Intergen in top 5% of Microsoft Dynamics Partners</title><content type='html'>&lt;h5&gt;&lt;a href="http://www.scoop.co.nz/stories/SC0807/S00056.htm" target="_blank"&gt;Posted From Scoop&lt;/a&gt;&lt;/h5&gt;  &lt;h3&gt;Intergen has been honoured with membership of the 2008 Microsoft Dynamics President&amp;#8217;s Club which consists of the top 5% of Microsoft Dynamics partners worldwide. &lt;/h3&gt;  &lt;p&gt;Intergen received this top recognition from Microsoft during the Microsoft Worldwide Partner Conference 2008 in Houston, Texas. The honour reflects Intergen&amp;#8217;s dedication to meeting their clients&amp;#8217; needs. &lt;/p&gt;  &lt;p&gt;&amp;#8220;Microsoft is proud to congratulate Intergen on being named to this year&amp;#8217;s Microsoft Dynamics President&amp;#8217;s Club,&amp;#8221; said Doug Kennedy, vice president, Microsoft Dynamics Partners. &amp;#8220;Intergen not only has demonstrated a high level of product expertise, but also has provided a superior level of service and commitment to our Microsoft Dynamics customers, ultimately contributing to the overall success of Microsoft Dynamics and companies worldwide.&amp;#8221; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.scoop.co.nz/link-out/p17871/a1492/www.allrealestate.co.nz/?rsf=scoop"&gt;&lt;/a&gt;&lt;/p&gt; Intergen is New Zealand's most experienced provider of Microsoft based business solutions. The company works closely with Microsoft to ensure it has the best possible understanding of their technologies so it can provide the best solution for clients.   &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Tony Stewart, Intergen&amp;#8217;s Managing Director, said the award was a wonderful recognition. &amp;#8220;It&amp;#8217;s a fantastic result and one that is due to the efforts of the entire Intergen team. We&amp;#8217;re always asking ourselves how we can work better for our clients and we&amp;#8217;re delighted to be rewarded for our efforts.&amp;#8221; &lt;/p&gt;  &lt;p&gt;The team atmosphere is a key reason for Intergen&amp;#8217;s success. In the Unlimited/JRA Best Places to Work in New Zealand Survey for 2007 Intergen was listed as the sixth best place to work in the &amp;#8216;Medium-Large Workplaces&amp;#8217; category. &lt;/p&gt;  &lt;p&gt;Intergen is also a Microsoft Gold Certified Partner which recognises the company as an &amp;#8216;elite business partner&amp;#8217; in working with Microsoft products. &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-4366318424361208492?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/4366318424361208492/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=4366318424361208492' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/4366318424361208492'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/4366318424361208492'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2008/07/intergen-in-top-5-of-microsoft-dynamics.html' title='Intergen in top 5% of Microsoft Dynamics Partners'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-7504124295221773736</id><published>2008-03-13T15:30:00.002+13:00</published><updated>2011-03-22T05:36:48.560+13:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics'/><category scheme='http://www.blogger.com/atom/ns#' term='NAV'/><category scheme='http://www.blogger.com/atom/ns#' term='Release'/><title type='text'>Dynamics Entrepreneur Solution</title><content type='html'>&lt;p&gt;Microsoft recently released a 'new' product in the Dynamics space. Dynamics Entrepreneur Solution. I say 'new' as in reality it is Dynamics NAV with a rebuilt GUI.&lt;/p&gt;  &lt;p&gt;They have taken away all but the basics that a small business would need. Pretty much all that's left is simple G/L, Sales and Marketing, Purchasing, Inventory and Resources.&lt;/p&gt;  &lt;p&gt;All the other functionality is still hidden away behind the scenes. The intention being that when a customer is of a sufficient size to need those extra bits 'migrating' them to a full blown NAV is just a case of modifying the forms and adding to the menus.&lt;/p&gt;  &lt;p&gt;The new forms are very nice. They present the information is a user friendly manor and make it easy for a user to see related information. Where in NAV you would be going to menus to get at related information e.g. Cross References for a customer. as you can see in the screen shots in NAV you would open the customer and find the one you wanted. Then click the Customer Menu. Then Open the Cross References&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogpics.shadownet.org.uk/WorkBlogPics/DynamicsEntrepreneurSolution_D8C/CustomerNAV.jpg"&gt;&lt;img style="border-right-width: 0px; width: 367px; border-top-width: 0px; border-bottom-width: 0px; height: 218px; border-left-width: 0px" border="0" alt="Customer NAV" src="http://blogpics.shadownet.org.uk/WorkBlogPics/DynamicsEntrepreneurSolution_D8C/CustomerNAV_thumb.jpg" width="564" height="316" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogpics.shadownet.org.uk/WorkBlogPics/DynamicsEntrepreneurSolution_D8C/CustomerMenu.jpg"&gt;&lt;img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" border="0" alt="Customer Menu" src="http://blogpics.shadownet.org.uk/WorkBlogPics/DynamicsEntrepreneurSolution_D8C/CustomerMenu_thumb.jpg" width="175" height="244" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogpics.shadownet.org.uk/WorkBlogPics/DynamicsEntrepreneurSolution_D8C/NAVCrossRef.jpg"&gt;&lt;img style="border-right-width: 0px; width: 309px; border-top-width: 0px; border-bottom-width: 0px; height: 138px; border-left-width: 0px" border="0" alt="NAV Cross Ref" src="http://blogpics.shadownet.org.uk/WorkBlogPics/DynamicsEntrepreneurSolution_D8C/NAVCrossRef_thumb.jpg" width="436" height="237" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;In Entrepreneur Solution you open the Customers screen. This gives you a list of all customers with some easy filter controls.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogpics.shadownet.org.uk/WorkBlogPics/DynamicsEntrepreneurSolution_D8C/ESCustomers.jpg"&gt;&lt;img style="border-right-width: 0px; width: 315px; border-top-width: 0px; border-bottom-width: 0px; height: 197px; border-left-width: 0px" border="0" alt="ES Customers" src="http://blogpics.shadownet.org.uk/WorkBlogPics/DynamicsEntrepreneurSolution_D8C/ESCustomers_thumb.jpg" width="483" height="292" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;By clicking the blue arrow next to the customer you want you get that customers card and in the tabs at the bottom of the card you can select the cross references.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogpics.shadownet.org.uk/WorkBlogPics/DynamicsEntrepreneurSolution_D8C/escustomercross.jpg"&gt;&lt;img style="border-right-width: 0px; width: 316px; border-top-width: 0px; border-bottom-width: 0px; height: 273px; border-left-width: 0px" border="0" alt="es customer cross" src="http://blogpics.shadownet.org.uk/WorkBlogPics/DynamicsEntrepreneurSolution_D8C/escustomercross_thumb.jpg" width="473" height="394" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;I kind of like this layout. When I was working for MBS I had a fair amount of exposure to Axapta, now Dynamics AX, and some of the screens in the new Entrepreneur Solution have a similar initial look and feel without the dozens of menus to actually make things happen. I can see some of the new screens being popular with larger NAV sites as well as the customers that Entrepreneur is aimed at. &lt;/p&gt;  &lt;p&gt;I think it will be very interesting to see how Entrepreneur takes off in the market place.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-7504124295221773736?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/7504124295221773736/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=7504124295221773736' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/7504124295221773736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/7504124295221773736'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2008/03/dynamics-entrepreneur-solution.html' title='Dynamics Entrepreneur Solution'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-5475130492932430852</id><published>2008-02-25T20:55:00.000+13:00</published><updated>2008-02-25T20:56:08.576+13:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics NAV 5.0'/><category scheme='http://www.blogger.com/atom/ns#' term='NAV'/><category scheme='http://www.blogger.com/atom/ns#' term='CRM'/><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics CRM 4.0'/><title type='text'>Dynamics CRM integration to Dynamics NAV</title><content type='html'>&lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;One of the projects I am currently working on involves managing appointment bookings, tracking activities and making sales to a large customer base. &lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;All of these things are easily achieved in any decent CRM product and being a Microsoft Gold Partner we naturally are using MS CRM. Fortunately for this project MS CRM 4.0 had just been released as we went into the development phase so we took all our CRM 3.0 knowledge and started applying it to CRM 4.0, as well as picking up on all the new cool stuff that we can now do.&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;There is also a big requirement on replacing the financial systems for this client as their current system no longer does what is needed. For us this means using Dynamics NAV 5.0 deployed at a head office level.&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;The tricky part of the solution is allowing the devolved users that will live predominately in CRM to record their information and have it feed the NAV system. To do this we needed fairly extensive integration between the two products, something that isn't available 'out of the box'. In the past we have done this sort of project and manually built the integration points, but they were fairly minor, simple things. This solution requires much more complex integration points.&lt;/div&gt;  &lt;div&gt;After search around we settled on the &lt;a href="http://www.celenia.com/"&gt;Celenia Connector&lt;/a&gt;. The latest version of this allows us to wire together all the parts of the two systems and it lets us build configurable workflows in the connections.&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;This has allowed us to deploy portions of the financial system to users that will never actually have to access the NAV Client. As CRM is web deployable this also minimises the software footprint on individual machines, something that is desirable as all 'managed' desktops at this client are deployed via Citrix.&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div&gt;&amp;#160;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-5475130492932430852?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/5475130492932430852/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=5475130492932430852' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/5475130492932430852'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/5475130492932430852'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2008/02/dynamics-crm-integration-to-dynamics.html' title='Dynamics CRM integration to Dynamics NAV'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-4532102690782545050</id><published>2007-12-20T08:15:00.001+13:00</published><updated>2007-12-20T08:15:42.493+13:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='CRM'/><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics CRM 4.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Release'/><title type='text'>Microsoft CRM4.0 "Titan" Released</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;REDMOND, Wash. &amp;#8212; Dec. 17, 2007 &amp;#8212;&lt;/b&gt;The new version of Microsoft Dynamics CRM, formerly code-named &amp;#8220;Titan,&amp;#8221; has been completed and released to manufacturing, Microsoft Corp. announced today. The new version is offered under two product names: Microsoft Dynamics CRM 4.0 for on-premise and partner-hosted deployments and Microsoft Dynamics CRM Live for Microsoft-hosted deployment. Designed with a single unified-code base for both on-premise and on-demand deployments, Microsoft Dynamics CRM enables customers to choose the right deployment model for their specific business and IT needs, with the flexibility to change deployment models over time if their needs or preferences change.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;This is good news for me as I am leading a project that is using CRM4.0 as a major component.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Read the full release &lt;a href="http://www.microsoft.com/Presspass/press/2007/dec07/12-17CRM40PR.mspx"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-4532102690782545050?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/4532102690782545050/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=4532102690782545050' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/4532102690782545050'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/4532102690782545050'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2007/12/microsoft-crm40-released.html' title='Microsoft CRM4.0 &amp;quot;Titan&amp;quot; Released'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-4446847795445927583</id><published>2007-10-24T17:08:00.001+13:00</published><updated>2007-10-24T17:09:24.647+13:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics NAV 5.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Employee Portal'/><title type='text'>NAV goes WSS3.0</title><content type='html'>&lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Finally Microsoft have released an update for NAV that allows it to use WSS3.0 for Employee Portal instead of WSS2.0. This has been much requested and looked forward too, especially in our office were we are doing more and more work involving WSS3 and MOSS.&lt;/p&gt; &lt;p&gt;If you are a MBS partner you can download the update here &lt;a href="https://mbs.microsoft.com/partnersource/downloads/releases/EmployeePortalNAV50.htm"&gt;https://mbs.microsoft.com/partnersource/downloads/releases/EmployeePortalNAV50.htm&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-4446847795445927583?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/4446847795445927583/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=4446847795445927583' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/4446847795445927583'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/4446847795445927583'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2007/10/nav-goes-wss30.html' title='NAV goes WSS3.0'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-2474658203754403813</id><published>2007-09-11T21:43:00.001+12:00</published><updated>2011-03-22T05:38:05.617+13:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reporting Services'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL'/><title type='text'>Reporting Services, Hierarchy's and cross Browser Problems</title><content type='html'>&lt;p&gt;This week I have been doing some Report development for a custom application we have been developing at work. Given everything is SQL based we opted to build the reports using Reporting Services.&lt;/p&gt;  &lt;p&gt;On the whole the reports are pretty straight forward. However there were 2 challenges.&lt;/p&gt;  &lt;p&gt;The first is around hierarchical reporting. With in the application people can belong to different Occupational Units's(OU). One of the business rules for the reporting is 'A user can only report on their own OU and any OU that is below them. &lt;/p&gt;  &lt;p&gt;To achieve this I ended up building a recursive function that returns a Scalar Table that works out all the OU's a specific user can see. I then use that in my where clause.&lt;/p&gt;  &lt;p&gt;The Table Function looks like this &lt;/p&gt;  &lt;div class="csharpcode"&gt;   &lt;pre class="code"&gt;&lt;span style="color: rgb(0,0,255)"&gt;CREATE&lt;/span&gt; &lt;span style="color: rgb(0,0,255)"&gt;FUNCTION&lt;/span&gt; [Generate_OUTree] &lt;br /&gt;&lt;span style="color: rgb(128,128,128)"&gt;(&lt;/span&gt;    &lt;br /&gt;    &lt;span style="color: rgb(0,128,0)"&gt;-- Add the parameters for the function here&lt;br /&gt;&lt;/span&gt;    @OUID [uniqueidentifier]&lt;br /&gt;&lt;span style="color: rgb(128,128,128)"&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;RETURNS&lt;/span&gt; @OUTree &lt;span style="color: rgb(0,0,255)"&gt;TABLE&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(128,128,128)"&gt;(&lt;br /&gt;&lt;/span&gt;OUID [uniqueidentifier]&lt;span style="color: rgb(128,128,128)"&gt;,&lt;br /&gt;&lt;/span&gt;ParentID [uniqueidentifier]&lt;span style="color: rgb(128,128,128)"&gt;,&lt;br /&gt;&lt;/span&gt;OUName &lt;span style="color: rgb(0,0,255)"&gt;Varchar&lt;/span&gt;&lt;span style="color: rgb(128,128,128)"&gt;(&lt;/span&gt;500&lt;span style="color: rgb(128,128,128)"&gt;),&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;Level&lt;/span&gt; &lt;span style="color: rgb(0,0,255)"&gt;Int&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(128,128,128)"&gt;)&lt;/span&gt; &lt;br /&gt;&lt;span style="color: rgb(0,0,255)"&gt;AS&lt;br /&gt;begin&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(0,128,0)"&gt;-- Add the SELECT statement with parameter references here&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(0,0,255)"&gt;With&lt;/span&gt; OUTree &lt;span style="color: rgb(128,128,128)"&gt;(&lt;/span&gt;OUID&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; ParentID&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; OUName&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; &lt;span style="color: rgb(0,0,255)"&gt;Level&lt;/span&gt;&lt;span style="color: rgb(128,128,128)"&gt;)&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(0,0,255)"&gt;As&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(128,128,128)"&gt;(&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(0,128,0)"&gt;-- Anchor Member defination to get top level OU&lt;br /&gt;&lt;/span&gt;        &lt;span style="color: rgb(0,0,255)"&gt;Select&lt;/span&gt; OUID&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; ParentOUID&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; OUName&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; 0 &lt;span style="color: rgb(0,0,255)"&gt;as&lt;/span&gt; &lt;span style="color: rgb(0,0,255)"&gt;Level&lt;br /&gt;&lt;/span&gt;        &lt;span style="color: rgb(0,0,255)"&gt;From&lt;/span&gt; CustomerOUView&lt;br /&gt;        &lt;span style="color: rgb(0,0,255)"&gt;Where&lt;/span&gt; OUID &lt;span style="color: rgb(128,128,128)"&gt;=&lt;/span&gt; @OUID&lt;br /&gt;        &lt;span style="color: rgb(0,0,255)"&gt;UNION ALL&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(0,128,0)"&gt;--Recursive member defination to get child companies&lt;br /&gt;&lt;/span&gt;        &lt;span style="color: rgb(0,0,255)"&gt;Select&lt;/span&gt; CCV&lt;span style="color: rgb(128,128,128)"&gt;.&lt;/span&gt;OUID&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; CCV&lt;span style="color: rgb(128,128,128)"&gt;.&lt;/span&gt;ParentOUID&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; CCV&lt;span style="color: rgb(128,128,128)"&gt;.&lt;/span&gt;OUName&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; &lt;span style="color: rgb(0,0,255)"&gt;Level&lt;/span&gt; &lt;span style="color: rgb(128,128,128)"&gt;+&lt;/span&gt; 1&lt;br /&gt;        &lt;span style="color: rgb(0,0,255)"&gt;From&lt;/span&gt; CustomerOUView CCV&lt;br /&gt;        &lt;span style="color: rgb(128,128,128)"&gt;Inner&lt;/span&gt; &lt;span style="color: rgb(128,128,128)"&gt;Join&lt;/span&gt; OUTree  &lt;br /&gt;            &lt;span style="color: rgb(0,0,255)"&gt;On&lt;/span&gt; CCV&lt;span style="color: rgb(128,128,128)"&gt;.&lt;/span&gt;ParentOUID &lt;span style="color: rgb(128,128,128)"&gt;=&lt;/span&gt; OUTree&lt;span style="color: rgb(128,128,128)"&gt;.&lt;/span&gt;OUID    &lt;br /&gt;    &lt;span style="color: rgb(128,128,128)"&gt;)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(0,0,255)"&gt;insert&lt;/span&gt; &lt;span style="color: rgb(0,0,255)"&gt;into&lt;/span&gt; @OUTree&lt;br /&gt;    &lt;span style="color: rgb(0,0,255)"&gt;Select&lt;/span&gt; &lt;span style="color: rgb(128,128,128)"&gt;*&lt;/span&gt; &lt;span style="color: rgb(0,0,255)"&gt;From&lt;/span&gt; OUTree&lt;br /&gt;&lt;span style="color: rgb(0,0,255)"&gt;RETURN&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;  As you can see I pass in a parameter that is the ID of the users OU. &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode"&gt;&amp;#160;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode"&gt;To actually use this to achive what I want I am calling he function like this&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode"&gt;&amp;#160;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode-wrapper"&gt;&lt;br /&gt;  &lt;pre class="code"&gt;    &lt;span style="color: rgb(0,0,255)"&gt;Select&lt;/span&gt; *&lt;span style="color: rgb(128,128,128)"&gt;&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(0,0,255)"&gt;From&lt;/span&gt; dbo&lt;span style="color: rgb(128,128,128)"&gt;.&lt;/span&gt;staffView&lt;br /&gt;    &lt;span style="color: rgb(0,0,255)"&gt;Where&lt;/span&gt; OUID &lt;span style="color: rgb(128,128,128)"&gt;IN(&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;Select&lt;/span&gt; OUID &lt;span style="color: rgb(0,0,255)"&gt;From&lt;/span&gt; dbo&lt;span style="color: rgb(128,128,128)"&gt;.&lt;/span&gt;Generate_OUTree&lt;span style="color: rgb(128,128,128)"&gt;(&lt;/span&gt;@OUID&lt;span style="color: rgb(128,128,128)"&gt;))&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode-wrapper"&gt;This effectively returns all the rows from my view where the OUID in the view is in the list generated by my function.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode-wrapper"&gt;&amp;#160;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode-wrapper"&gt;The follow on to this was we had to build a full OU tree report. The report shows each OU under its parent and indents teh list so it is wasy to see which child OU belongs to Which parent.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode-wrapper"&gt;&amp;#160;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode-wrapper"&gt;The hard part was to be able to sort the report so that the OU structure was returned in a format that made it easy to group the OU's together. &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode-wrapper"&gt;&amp;#160;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="code"&gt;&lt;span style="color: rgb(0,0,255)"&gt;CREATE&lt;/span&gt; &lt;span style="color: rgb(0,0,255)"&gt;PROCEDURE&lt;/span&gt; [Report_GenerateOUList]&lt;br /&gt;    &lt;span style="color: rgb(0,128,0)"&gt;-- Add the parameters for the stored procedure here&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;AS&lt;br /&gt;BEGIN&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(0,128,0)"&gt;-- SET NOCOUNT ON added to prevent extra result sets from&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(0,128,0)"&gt;-- interfering with SELECT statements.&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(0,0,255)"&gt;SET&lt;/span&gt; &lt;span style="color: rgb(0,0,255)"&gt;NOCOUNT&lt;/span&gt; &lt;span style="color: rgb(0,0,255)"&gt;ON&lt;/span&gt;&lt;span style="color: rgb(128,128,128)"&gt;;&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(0,128,0)"&gt;-- Insert statements for procedure here&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(0,0,255)"&gt;With&lt;/span&gt; OUTree &lt;span style="color: rgb(128,128,128)"&gt;(&lt;/span&gt;OUID&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; ParentID&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; OUName&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; &lt;span style="color: rgb(0,0,255)"&gt;Level&lt;/span&gt;&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; Sort&lt;span style="color: rgb(128,128,128)"&gt;)&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(0,0,255)"&gt;As&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(128,128,128)"&gt;(&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(0,128,0)"&gt;-- Anchor Member defination to get top level OU&lt;br /&gt;&lt;/span&gt;        &lt;span style="color: rgb(0,0,255)"&gt;Select&lt;/span&gt; OUID&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; ParentOUID&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; OUName&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; 0 &lt;span style="color: rgb(0,0,255)"&gt;as&lt;/span&gt; &lt;span style="color: rgb(0,0,255)"&gt;Level&lt;/span&gt; &lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt;&lt;span style="color: rgb(255,0,255)"&gt;Cast&lt;/span&gt;&lt;span style="color: rgb(128,128,128)"&gt;(&lt;/span&gt;OUName &lt;span style="color: rgb(0,0,255)"&gt;as&lt;/span&gt; &lt;span style="color: rgb(0,0,255)"&gt;Varchar&lt;/span&gt;&lt;span style="color: rgb(128,128,128)"&gt;(&lt;/span&gt;4000&lt;span style="color: rgb(128,128,128)"&gt;))&lt;br /&gt;&lt;/span&gt;            &lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt;OperatorCategoryName&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt;MembershipCategoryName&lt;br /&gt;        &lt;span style="color: rgb(0,0,255)"&gt;From&lt;/span&gt; CustomerOUView&lt;br /&gt;        &lt;span style="color: rgb(0,0,255)"&gt;Where&lt;/span&gt; ParentOUID &lt;span style="color: rgb(128,128,128)"&gt;=&lt;/span&gt; &lt;span style="color: rgb(255,0,0)"&gt;'00000000-0000-0000-0000-000000000000'&lt;/span&gt; &lt;span style="color: rgb(0,128,0)"&gt;--top level OU has no parent&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="code"&gt;&lt;span style="color: rgb(0,128,0)"&gt;&lt;/span&gt;        &lt;span style="color: rgb(0,0,255)"&gt;UNION ALL&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(0,128,0)"&gt;--Recursive member defination to get child OU's&lt;/span&gt;        &lt;span style="color: rgb(0,0,255)"&gt;Select&lt;/span&gt; CCV&lt;span style="color: rgb(128,128,128)"&gt;.&lt;/span&gt;OUID&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; CCV&lt;span style="color: rgb(128,128,128)"&gt;.&lt;/span&gt;ParentOUID&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; CCV&lt;span style="color: rgb(128,128,128)"&gt;.&lt;/span&gt;OUName&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; &lt;br /&gt;            &lt;span style="color: rgb(0,0,255)"&gt;Level&lt;/span&gt; &lt;span style="color: rgb(128,128,128)"&gt;+&lt;/span&gt; 1&lt;span style="color: rgb(128,128,128)"&gt;,&lt;/span&gt; &lt;span style="color: rgb(255,0,255)"&gt;Cast&lt;/span&gt;&lt;span style="color: rgb(128,128,128)"&gt;(&lt;/span&gt;Sort &lt;span style="color: rgb(128,128,128)"&gt;+&lt;/span&gt; &lt;span style="color: rgb(255,0,0)"&gt;'|'&lt;/span&gt; &lt;span style="color: rgb(128,128,128)"&gt;+&lt;/span&gt; CCV&lt;span style="color: rgb(128,128,128)"&gt;.&lt;/span&gt;OUName &lt;span style="color: rgb(0,0,255)"&gt;as&lt;/span&gt; &lt;span style="color: rgb(0,0,255)"&gt;Varchar&lt;/span&gt;&lt;span style="color: rgb(128,128,128)"&gt;(&lt;/span&gt;4000))&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="code"&gt;        &lt;span style="color: rgb(0,0,255)"&gt;From&lt;/span&gt; CustomerOUView CCV&lt;br /&gt;        &lt;span style="color: rgb(128,128,128)"&gt;Inner&lt;/span&gt; &lt;span style="color: rgb(128,128,128)"&gt;Join&lt;/span&gt; OUTree  &lt;br /&gt;            &lt;span style="color: rgb(0,0,255)"&gt;On&lt;/span&gt; CCV&lt;span style="color: rgb(128,128,128)"&gt;.&lt;/span&gt;ParentOUID &lt;span style="color: rgb(128,128,128)"&gt;=&lt;/span&gt; OUTree&lt;span style="color: rgb(128,128,128)"&gt;.&lt;/span&gt;OUID    &lt;br /&gt;    &lt;span style="color: rgb(128,128,128)"&gt;)&lt;br /&gt;&lt;/span&gt;    &lt;span style="color: rgb(0,0,255)"&gt;Select&lt;/span&gt; &lt;span style="color: rgb(128,128,128)"&gt;*&lt;/span&gt; &lt;span style="color: rgb(0,0,255)"&gt;From&lt;/span&gt; OUTree &lt;br /&gt;    &lt;span style="color: rgb(0,0,255)"&gt;Order&lt;/span&gt; &lt;span style="color: rgb(0,0,255)"&gt;by&lt;/span&gt; Sort  &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;In the database the OU ID's are all GUID's and as I wanted all OU's displayed in this report I have hard-coded for the top level OU.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Inside Reporting Services I am using the following to get indentation&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;=(Space(Fields!Level * 5) + Fields!OUName.Value)&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;This then causes 5 spaces for each level down the tree to be inserted in front of the OU's Name.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Once I had all this going and deployed to my Report Server everything appeared to be working fine when I viewed the reports with IE7. The only remaining thing to do was do a second check on the reports using Firefox. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Firefox and Reporting Services have a few issues. Due to he way RS renders the reports in IFRAME's Firefox causes them to get squashed up and not display correctly. After some frantic searching, Google is your friend &lt;img alt="smile_wink" src="http://spaces.live.com/rte/emoticons/smile_wink.gif" /&gt;, and a bit of testing on a couple of report servers&amp;#160; found the following.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;First-up Firefox only shows the top 2 to 3 cm's of your report. The rendering puts it a small IFRAME instead of expanding out down your 'page' the way IE does. This is fairly easy to resolve, thanks to &lt;a href="http://weblogs.asp.net/jgalloway/archive/2006/09/01/SQL-Reporting-Services-_2D00_-CSS-fix-for-Firefox.aspx"&gt;Jon Galloway's blog&lt;/a&gt; for this answer. You need to edit the ReportingServices.css. On my machine it lives here &amp;quot;C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportManager\Styles\&amp;quot;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;In the css file you need to add the following entry.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 76.75%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; height: 85px; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;font size="2"&gt;&lt;span style="color: #008000"&gt;/* Fix report IFRAME height for Firefox */&lt;/span&gt;&lt;br /&gt;&lt;span style="color: #cc6633"&gt;.DocMapAndReportFrame&lt;/span&gt;&lt;br /&gt;{&lt;br /&gt;  &lt;span style="color: #0000ff"&gt;min-height&lt;/span&gt;: &lt;span style="color: #006080"&gt;860px;&lt;/span&gt;&lt;br /&gt;}&lt;/font&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode-wrapper"&gt;&amp;#160;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode-wrapper"&gt;This forces Firefox to use a taller IFRAME.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode-wrapper"&gt;&amp;#160;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode-wrapper"&gt;I also found that the width of the report was getting squashed up on my deployment server, although on my laptop's report server it wasn't happening. On investigating the two machines the only thing I could find was a difference in the build versions of the 2 SQL servers. The Deployment server is using SQL2005 SP1 while my laptop is SQL2005 SP2. &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode-wrapper"&gt;&amp;#160;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode-wrapper"&gt;As a work around I found that by putting an empty text box in the header of my reports that was the full width of the report Firefox no longer squashes up the report. While ideally I will update the server with the latest SP for SQL this is acting as a work around for the time being.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode-wrapper"&gt;&amp;#160;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="csharpcode-wrapper"&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-2474658203754403813?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/2474658203754403813/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=2474658203754403813' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/2474658203754403813'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/2474658203754403813'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2007/09/reporting-services-hierarchy-and-cross.html' title='Reporting Services, Hierarchy&amp;#39;s and cross Browser Problems'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-1006809455825028373</id><published>2007-09-04T10:46:00.001+12:00</published><updated>2007-09-04T10:46:11.057+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='GP'/><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics NAV 5.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics CRM 3.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics'/><category scheme='http://www.blogger.com/atom/ns#' term='NAV'/><category scheme='http://www.blogger.com/atom/ns#' term='CRM'/><category scheme='http://www.blogger.com/atom/ns#' term='AX'/><title type='text'>Dynamics Book</title><content type='html'>&lt;p&gt;Maybe I have been a bit slow. Or maybe I just wasn't paying attention to the right things but I just found a useful site that is being put together by the Dynamics community. So far the vast majority of the work appears to have been done by David Singleton, one of the &lt;a href="http://mvp.support.microsoft.com/"&gt;MVP's&lt;/a&gt; for Dynamics NAV.&lt;/p&gt; &lt;p&gt;It's called the &lt;a href="http://wiki.dynamicsbook.com/index.php?title=Main_Page"&gt;Dynamics Book&lt;/a&gt; and its a wiki for all the Dynamics Products. Understandably at this stage the majority of the information is around Dynamics NAV but hopefully with the wider community getting in on the act that will grow and it will become a good source for all Dynamics products.&lt;/p&gt; &lt;p&gt;This in conjunction with the forums, &lt;a href="http://www.MiBuSo.com"&gt;MiBuSo&lt;/a&gt; and &lt;a href="http://dynamicsuser.net/"&gt;Dynamics User&lt;/a&gt;&amp;nbsp;&amp;nbsp;that many Dynamics Users and Consultants regularly contribute too are an invaluable resource for anyone working in this space, be you an end user, new consultant or developer, or experienced consultant or developer. There's always a new trick to learn. Check them out.&lt;/p&gt; &lt;p&gt;I'll be adding permanent links to my tool box for all of them.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-1006809455825028373?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/1006809455825028373/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=1006809455825028373' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/1006809455825028373'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/1006809455825028373'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2007/09/dynamics-book.html' title='Dynamics Book'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-8407552960072825931</id><published>2007-07-28T11:15:00.001+12:00</published><updated>2007-07-28T11:15:22.608+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics NAV 5.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Approvals'/><category scheme='http://www.blogger.com/atom/ns#' term='Employee Portal'/><title type='text'>Document Approval in Employee Portal</title><content type='html'>&lt;p&gt;In NAV 5.0 there is now&amp;nbsp;standard document approval functionality. &lt;/p&gt; &lt;p&gt;While it is fairly basic in some respects, it is more than adequate for a smallish company to handle purchase and sales approvals.&lt;/p&gt; &lt;p&gt;A request I had with one of my clients was for the document approvers to check and approve the documents on a website as these approvers would have very little reason to access NAV for any other reason.&lt;/p&gt; &lt;p&gt;I opted to deploy the approvals via SharePoint using Employee Portal.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Initially I figured this would be fairly straight forward. All I needed to do was set up a couple of web parts in NAV that displayed the Document approvals data, pre filter it so that only approvals for the user that had logged in would be displayed. Provide a link that would display the associated Purchase document. I'd need an option box adding that allowed the user to select Approve, Reject or Delegate.&lt;/p&gt; &lt;p&gt;All pretty simple stuff really. So off I went, I added the Option field to a table, set up a list web part for the Document Approvals, I also set up a Card part for this table, the logic being I'd display a list of all approvals with minimal information and then the user would access the card part to get more information and to select the approve, reject, delegate options. In the card part I added a save button.&amp;nbsp;&lt;/p&gt; &lt;p&gt;Now came the tricky bit. I needed to update NAV when the user made a selection. &lt;/p&gt; &lt;p&gt;In standard NAV there the only tables that can be updated by Employee Portal are the ones related to the demo web parts, i.e. Customers, Sales Headers and Lines, BOMs and Items. If you want to get anything else back in you have to go and make changes to at least one codeunit. Depending on what you are trying to do you need to work on codeunit's 6822 through 6827. For what I wanted to achieve I had to add extra functions to 6824 - Modify Head Data mgt.&lt;/p&gt; &lt;p&gt;What I had to do was add a new function that deciphered the incoming XML, extract the fields I was interested in and then execute the standard Approve, Reject, Delegate Functions.&lt;/p&gt; &lt;p&gt;This took a while because I used a principle I had used many times before when building new code. That is I build it up in small steps checking I am getting the result I want at each step. With the Employee Portal bits what I failed to realise was that I had to initialise a whole heap of variables that get passed out of the code I was working on so that the webpart updates after my code executes. As I hadn't added this code I kept getting error after error in the portal site. Given that every time you make a change you have to stop and start the NAS so that it gets the new code and you can't access the standard Debugger to see where it is failing this became a fairly long process of insert an error command in the code. Restart the NAS, reload the approval document, save it and see what happened, i.e. did I hit my deliberate error before hitting the piece of code that was failing. Once I found the point where I had the line of code that was giving a problem it was straight forward to resolve, finding that line took me about&amp;nbsp;4 hours.&lt;/p&gt; &lt;p&gt;Once I understood where in my 'normal' style of development I had gone wrong it took me another couple of hours to get the functions I wanted to work. I did run into 2 other problems with it all. &lt;/p&gt; &lt;p&gt;The first was that when i update the record that the Portal has gotten I am getting a 'Another user has modified this record since it was retrieved from the database' error. I can almost live with that, I am going to attempt to set it up so that the portal resets and doesn't attempt to display the updated record anyway.&lt;/p&gt; &lt;p&gt;The second proved a lot more problematic. After getting the web base approvals set for one company I am in the position where I need to roll it out over several companies for the same client. What I don't want to do is have multiple NAS's running as the client is going to be creating new companies and removing old ones from time to time, so I want to run the Approval functionality cross multi companies. after much thought we decided to make a new approval table that is updated when approvals are created and modified, This table also captures the company name of the NAV company that the approval was raised in. We then use this to drive the Approval Portal. &lt;/p&gt; &lt;p&gt;This gave us a lot of headaches as when something is approved in the Portal it needs to update the correct company in NAV, but some clever coding has gotten round this. There is a fair amount of other multi company functionality required by this customer so I'll do a separate post about some of those challenges once I have them figured out.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-8407552960072825931?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/8407552960072825931/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=8407552960072825931' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/8407552960072825931'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/8407552960072825931'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2007/07/document-approval-in-employee-portal.html' title='Document Approval in Employee Portal'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-6435997214507847605</id><published>2007-06-25T17:22:00.000+12:00</published><updated>2007-07-10T18:39:08.670+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reporting Services'/><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics NAV 5.0'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL'/><title type='text'>Reporting Services on Dynamics NAV</title><content type='html'>&lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;When using Reporting Services with Dynamics NAV there are a number of things to take into consideration.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;One of the main things to consider is the way the SQL Tables are structured with Dynamics NAV. For each company in the database there will be a set of company specific tables. These are prefixed &lt;em&gt;Company Name&lt;/em&gt;$. So for example the Customer table for a company called CRONUS International Ltd. is &lt;em&gt;CRONUS International Ltd_$Customer.&lt;/em&gt;&amp;nbsp; Note the '.' at the end of the company name has been replaced with an '_' &lt;/div&gt; &lt;div&gt;This is based off of a setting in NAV that defines which special characters are replaced, and is done to make life simpler in SQL.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;This means that when writing reports you need to know the company name of the NAV Company you want to report on. Where there is only 1 Company in the database this isn't to painful, however as a developer it means every time you want re-use a report into a different company you need to go back in and change the Company name part of each table. It also means that, assuming you are going to deploy your reports to a test environment prior to a live deployment' that your NAV Company in the test system has to be the same as in your live one, a practice that can cause other confusions when using the NAV Client.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;To get round this problem you can do one of 2 things.&lt;/div&gt; &lt;ol&gt; &lt;li&gt;You can generate a SQL View to present the data you want to report on and leave the company name out. This at least makes the reports cross company compatible as you only have to build the views once for each company.  &lt;li&gt;If you are basing your Reports on data prepared by stored procedures you also have the option of using dynamic SQL and passing the Company Name as a Parameter at run time.&lt;/li&gt;&lt;/ol&gt; &lt;div&gt;Both of these options also are fine where you have multiple companies in the database as you can add an identifier to the SQL View and use a Parameter in the report to filter for the correct data. &lt;/div&gt; &lt;div&gt;However, as with a project I am currently working on, when you have multiple companies and the prospect of more being added and some being closed out on a regular basis the prospect of keeping the SQL Views up to date can force you to use the second option only, i.e. use dynamic SQL and pass the company name as a parameter.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;Another thing to consider is that not every field you can see in the NAV client is actually held on the underlying SQL Tables. NAV flowfields are one such example. Form experience this can make what appears to be a simple report very complicated.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-6435997214507847605?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/6435997214507847605/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=6435997214507847605' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/6435997214507847605'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/6435997214507847605'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2007/06/reporting-services-on-dynamics-nav.html' title='Reporting Services on Dynamics NAV'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-5278821719229504016</id><published>2007-06-25T17:21:00.000+12:00</published><updated>2007-07-01T04:24:36.649+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reporting Services'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL'/><title type='text'>Reporting Services Overview</title><content type='html'>&lt;p&gt;Reporting Services is a part of Microsoft SQL Services. It first appeared as an optional download for SQL2000 and is a standard option for SQL2005.&lt;/p&gt;&lt;p&gt;As its name implies it is a reporting tool. More specifically its a web based reporting tool built on SQL but that allows reporting on any data source that you can create an ODBC connection too.&lt;/p&gt;&lt;p&gt;Predominantly I use SQL databases as the data source, although I have also built reports using Analysis services as the data source.&lt;/p&gt;&lt;p&gt;The principle is very straight forward. Using Visual Studio 2005 you create a new report. Link it to a data source, either defined specifically in the report or by using an external shares link. &lt;/p&gt;&lt;p&gt;You can then write SQL queries against the data in a series of data sets. You can also set a data set to execute stored procedures on the SQL database. This allows for very complex queries to be written.&lt;/p&gt;&lt;p&gt;Within the report you have access to a number of different controls, including graphing and pivot table style controls.&lt;/p&gt;&lt;p&gt;You can specify that some controls are dependant on other controls and only appear when the parent is selected.&lt;/p&gt;&lt;p&gt;Another useful tool is the principle of 'drill through' reports. These are effectively extra reports that are called when part of a report is selected. All appropriate parameters are passed down to the new report. This allows you to write summary reports with the drill through allowing you to have details when needed.&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;Another feature of Reporting services is the ability to subscribe to reports. This allows a user to pick a report from the report server and specify when they would like to automatically get it. They can also specify the format the report should be delivered in, e.g. pdf, Excel Spreadsheet, tiff etc. The can set what parameters the report should use and where it should be delivered to. This allows a sales manager, for example, to have the previous days sales results delivered at 8am to his email as an excel spreadsheet.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;One final tool that comes with some of the versions of Reporting Services is Report Builder. This is a web deployed report designer. It requires that a data model has been built in advance but once that has been done then an end user can use the Report Builder to build ad hoc reports on the data source. These could be one off reports or if the user decides that the report will be useful to other users they can deploy the report back to the report server where it becomes available to all users.&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;The Report Library itself is either accessed via its own web site or it can be linked to Microsoft SharePoint. Where it is linked the reports appear in their own library inside the SharePoint portal and can be used in the same was as from the web site.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-5278821719229504016?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/5278821719229504016/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=5278821719229504016' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/5278821719229504016'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/5278821719229504016'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2007/06/reporting-services-overview.html' title='Reporting Services Overview'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-8202845274625972725</id><published>2007-06-23T15:59:00.000+12:00</published><updated>2007-06-24T10:25:33.500+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics NAV 5.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Jobs'/><title type='text'>Jobs</title><content type='html'>Under &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;NAV&lt;/span&gt; 5.0 the Jobs modules has been fairly heavily rebuilt.&lt;br /&gt;&lt;br /&gt;I'll summarise here and try to expand in the future.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;For a long time it has been felt that the jobs module in &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;NAV&lt;/span&gt; needed to be overhauled. In &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;NAV&lt;/span&gt; 5.0 Microsoft has done just that.&lt;br /&gt;&lt;br /&gt;Gone are the old concepts of Phases, Tasks and Steps.&lt;br /&gt;&lt;br /&gt;Gone are Job budgets.&lt;br /&gt;&lt;br /&gt;Now we have Job Task Lines and Job Planning Lines.&lt;br /&gt;&lt;br /&gt;Each job has Job Task Lines. These are built up in a similar way to G/L Accounts. Lines are set to be heading, posting, begin and end totals or totalling in the same way as G/L accounts.&lt;br /&gt;&lt;br /&gt;The structure also mirrors the structure of MS Project and while there is no integration out of the box right now, its something I think could be done fairly easily, when I get a bit of time I'll give it a go.&lt;br /&gt;&lt;br /&gt;You can also specify different Job Posting Groups against each Task Line which allows for better division of &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;WIP&lt;/span&gt; and Job Recognition.&lt;br /&gt;&lt;br /&gt;Each Task Line has associated Planning Lines. Planning lines are similar to the old job budgets. However the do slightly more than the old budgets. Each Planning Line can be defined as Schedule or Contract or both. At the simplest level Schedule is the expected costs and profits, just like the old budgets. Contract defines the amount you are allowed to on charge to the customer of the Job.&lt;br /&gt;&lt;br /&gt;Whenever you post an entry to a Job you have to select if it is Contact, Schedule, Both or neither. You also have to select the Job Task that the entry is against.&lt;br /&gt;&lt;br /&gt;Once you start posting Job entries you can create sales invoices. Again this is much easier than under Version 4 and earlier. Now all you have to do is go to the Job Planning lines, or Job task lines, and use a function 'Create Sales Invoice'.&lt;br /&gt;&lt;br /&gt;Other enhancements to Jobs include more control around how &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;WIP&lt;/span&gt; is calculated and posted, including a new Tab on the Job card that gives a breakdown of the current &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;WIP&lt;/span&gt; and Recognition.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-8202845274625972725?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/8202845274625972725/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=8202845274625972725' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/8202845274625972725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/8202845274625972725'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2007/06/jobs.html' title='Jobs'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1549777073528793587.post-4402738562443262833</id><published>2007-06-22T09:16:00.000+12:00</published><updated>2007-06-22T15:32:41.491+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Dynamics NAV 5.0'/><category scheme='http://www.blogger.com/atom/ns#' term='RIM Toolkit'/><category scheme='http://www.blogger.com/atom/ns#' term='Data Migration'/><category scheme='http://www.blogger.com/atom/ns#' term='New Company Setup'/><title type='text'>Navision Rapid Implementation Methodology</title><content type='html'>So the RIM tool kit for NAV has been around for a while now, but I have just started a project that will use this with Version 5.0&lt;br /&gt;&lt;br /&gt;With NAV 5.0 when you create a new company you get prompted to say what type of company it is. The list of 'out of the box' configurations is fairly limited with options for Food, Furniture, High Tech, Machinery and Wholesale.&lt;br /&gt;&lt;br /&gt;Selecting one of these automatically set's up master data, which is all configured in XML files hidden away in the Client install folder.&lt;br /&gt;&lt;br /&gt;That said its fairly straight forward to create new configurations.&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Create a new XML file for the configuration you want&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Modify the Configuration.xml file to reference the new file.&lt;/li&gt;&lt;/ol&gt;Once you have your nice new company all set up and the configurations from the XML file have all been loaded its time to move onto the specific data for this company.&lt;br /&gt;&lt;br /&gt;Again the RIM tool makes this easy, and if you build your XML configuration file correctly you will even have the RIM Templates setup and ready to go, if you don't have the templates setup for you then you will need to create them but this is also straight forward.&lt;br /&gt;&lt;br /&gt;The setup templates fall into 2 categories, Setup Configuration(handled by the Setup Questionnaire) and Data Migration(handled by the Data Migration).&lt;br /&gt;&lt;br /&gt;The Setup questionnaires take a little bit of thought initially. You can have multiple setup questionnaires that each have multiple Setup tables associated with them. Looking at it I think you should always try to only use 1 Questionnaire, or ensure that each Setup table is only referred too once or you could end up with some confusion.&lt;br /&gt;&lt;br /&gt;Once you have your Questionnaire you need to go to the actual questions. These belong to 'Question Areas'. These are the Setup tables. Give your Question area a Code and description and then associate it with a table. You can then use the function Update Questions. This will populate the question lines with all the fields from the table. You can then go through modifying the questions for each line so that it makes a bit of sense to a user. You can add comments or define initial answers. After you have your Question Area completed move onto the next one.&lt;br /&gt;&lt;br /&gt;Once all your Question Areas are designed you go back to the main Questionnaire screen and user either Export to XML or Export to Excel. So far I have only used the Excel option as I intend to give the file to the user to complete. When the excel file is filled in you can re-import it and the answers will be loaded to the Question Area Screens where you can review them and then Apply them, this will update the Setup tables... Easy huh?&lt;br /&gt;&lt;br /&gt;For the Data Migration the process is similar. This time there is no Questionnaire to worry about. You just define the table that you want to migrate data to and then select Migration Fields from the Migration button menu. In here you define the fields that will be imported. When you open the screen you will get a list of all the fields and you just need to flag those that will be included.&lt;br /&gt;&lt;br /&gt;Once you have this setup you can select the various pieces of master data to create files for and use the functions to Export to XML or Export to Excel. Again I am using the Excel option. If you select multiple tables you get a separate tab in the resultant file for each table. If any of the tables already have data on them this is included in the exported file, useful for that data that was setup in the config XML file earlier where you want the customer to review the defaults and amend them.&lt;br /&gt;&lt;br /&gt;This is given to the users and once filled in you can import the data to NAV.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The final part of the Toolkit allows for Templates to be built. These again refer to specific tables.&lt;br /&gt;You can define multiple Templates for each table if required. In the Template you can define which fields are Mandatory and what default values they should have. The Templates can be used as part of the Data Migration to complete data the user may not know about, but they can also be used after the migration.&lt;br /&gt;&lt;br /&gt;As an example we have a number of templates for the customer Table. Each defines slightly different posting groups and payment terms. From the Template you can Create an Instance. This will create a new record on the Customer table and pre-fill all the information form the template. alternatively from the customer you can run a function Apply Template. This give yo a list of templates for that table and when you select one it updates the current record with the defaults from the Template.&lt;br /&gt;&lt;br /&gt;With a little bit of work the Template's could be made more useful still, especially in environments where new master data, e.g. Customers and Items, are regularly setup as it would reduce the amount of keying of default data while still allowing flexibility.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1549777073528793587-4402738562443262833?l=ianpiddington.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ianpiddington.blogspot.com/feeds/4402738562443262833/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1549777073528793587&amp;postID=4402738562443262833' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/4402738562443262833'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1549777073528793587/posts/default/4402738562443262833'/><link rel='alternate' type='text/html' href='http://ianpiddington.blogspot.com/2007/06/navision-rapid-implementation.html' title='Navision Rapid Implementation Methodology'/><author><name>Ian Piddington</name><uri>http://www.blogger.com/profile/10825874184367168668</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
