<?xml version="1.0" encoding="UTF-8"?>
<!--Generated by Squarespace Site Server v5.0.0 (http://www.squarespace.com/) on Wed, 20 Aug 2008 01:01:34 GMT--><feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"><title>MrDave's (David Yack) CRM Blog!</title><subtitle>MrDave's (David Yack) CRM Blog!</subtitle><id>http://crm.davidyack.com/journal/</id><link rel="alternate" type="application/xhtml+xml" href="http://crm.davidyack.com/journal/"/><link rel="self" type="application/atom+xml" href="http://crm.davidyack.com/journal/atom.xml"/><updated>2008-07-23T03:19:58Z</updated><generator uri="http://www.squarespace.com/" version="Squarespace Site Server v5.0.0 (http://www.squarespace.com/)">Squarespace</generator><entry><title>New CRM Developer Book</title><id>http://crm.davidyack.com/journal/2008/8/12/new-crm-developer-book.html</id><link rel="alternate" type="text/html" href="http://crm.davidyack.com/journal/2008/8/12/new-crm-developer-book.html"/><author><name>David Yack</name></author><published>2008-08-12T06:05:55Z</published><updated>2008-08-12T06:05:55Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p>In my spare time (ha! ) for the last year I have been working on writing a book targeted to developing applications on CRM 4.0.&#160; Originally, the book was going to be a short book focusing on workflow but has grown to over 600 pages covering all developer centric topics.&#160; In the book I talk about everything from setting up a developer environment to using SilverLight with CRM.&#160;&#160; You can read the full press release on the book on MarketWatch <a href="http://www.marketwatch.com/news/story/developing-applications-microsoft-dynamics-crm/story.aspx?guid=%7BDCFCDBFC-B4F9-48AF-A0D1-14E9A981AFAA%7D&amp;dist=hppr" target="_blank">here</a>. </p>  <p>This is not a &quot;user&quot; book, it's a <em><strong>developer book.</strong></em>&#160; I might even go as far as saying a <strong><em>power admin</em></strong> that wants to understand more about what's going on would benefit as well.&#160; The book goes deeper into developer topics like client scripting, web services, plug-ins and workflow <strong><em>than any of the other books currently released</em></strong>.</p>  <p>Most of the chapters in the book have samples that go along with them.&#160; There's also a Jump Start Framework that's over 13,000 lines of reusable code to jump start your learning of the platform. The license of the code is simple buy the book use the code....any questions?&#160; It includes things like client script to make calling the web services easier - no more concatenating strings and hoping it works. It also includes plug-ins, workflow activities and more. I will be blogging more in the future about some of the cool things in the samples&#160; and the framework that you can leverage.&#160; Realistically, <strong><em>even if you only used a few lines of the code it would pay back for the book 2-3 times over</em></strong>.</p>  <p>The book is available from the book web site <a href="http://www.thecrmbook.com">http://www.thecrmbook.com</a> and will be available in a month or so on Amazon and other retailers.&#160; The book is also available in e-book with simple content control - no complicated DRM (rights management) to drive you nuts.&#160; I've also started recording How-To videos <a href="http://www.thecrmbook.com/Video" target="_blank">here</a>.&#160; They are starting really basic, but I will be diving deeper over time. If you have request send them my way.</p>  <p>Since you put up with my blog posts, I wanted to make it worth your while since many of you helped shape the content of the book.&#160; When you purchase your copy if you <strong>put daveblog in the discount code field</strong> on the checkout you will receive $10.00 off your print book purchase.</p>  <p>Why are you still here? Go buy your copy here <a title="http://www.thecrmbook.com/Purchase/PurchaseBook.aspx" href="http://www.thecrmbook.com/Purchase/PurchaseBook.aspx">http://www.thecrmbook.com/Purchase/PurchaseBook.aspx</a></p>]]></content></entry><entry><title>Analytics for CRM 4.0</title><id>http://crm.davidyack.com/journal/2008/8/6/analytics-for-crm-40.html</id><link rel="alternate" type="text/html" href="http://crm.davidyack.com/journal/2008/8/6/analytics-for-crm-40.html"/><author><name>David Yack</name></author><published>2008-08-06T15:25:04Z</published><updated>2008-08-06T15:25:04Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p>One of the more popular questions I get asked is when will the Analytics be released for CRM 4 - Yesterday Microsoft announced that they will be released in Q3 2008 - you can read the full details <a href="http://blogs.msdn.com/crm/archive/2008/08/05/crm-accelerators-part-i-analytics-accelerator.aspx">here</a>.</p>]]></content></entry><entry><title>Automatically Go Back On-line</title><id>http://crm.davidyack.com/journal/2008/7/23/automatically-go-back-on-line.html</id><link rel="alternate" type="text/html" href="http://crm.davidyack.com/journal/2008/7/23/automatically-go-back-on-line.html"/><author><name>David Yack</name></author><published>2008-07-23T03:19:58Z</published><updated>2008-07-23T03:19:58Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p>I love the fact that the CRM 4.0 Outlook client is smarter about being able to drop me to offline when it detects the network connection is gone.&#160; The problem I have is I'm on and off the network a lot and I find myself getting left in offline mode.&#160; </p>  <p>It's really my fault, I just forget to go back on-line when I connect back to the network.&#160; In reality though, I think that CRM should take me back on-line automatically when the network connection to the server is available - after all that's how Outlook handles it's connection to Exchange server.</p>  <p>This has been bugging me for a while and I have had an idea on how I could try to fix it, I just haven't had time to build my idea.&#160; My idea is a simple Outlook Add in that you never see that simply uses the NetworkChange class that ships with the .NET Framework.&#160; Using that class you can ask to be notified when the network connectivity changes.&#160; I then use the Microsoft.Crm.Outlook.dll assembly that comes with the SDK and exposes properties that tell me if the CRM Client is Loaded and if the client is offline.</p>  <p>So what I do is in the add in when it starts up I register to be notified.&#160; In the notification handler I check if the CRM client is loaded and offline - if not I'm done and no further work is required.&#160; Next, I retrieve the Intranet/ExtraNet servers from the registry and then use &quot;ping&quot; to check if I can access the server.&#160; If I can, then I prompt the user as you can see in the following example.</p>  <p><a href="http://mrdavecrm.squarespace.com/resource/WindowsLiveWriter/AutomaticallyGoBackOnline_12B9B/image_2.png?fileId=1748872"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="130" alt="image" src="http://mrdavecrm.squarespace.com/resource/WindowsLiveWriter/AutomaticallyGoBackOnline_12B9B/image_thumb.png?fileId=1748873" width="300" border="0" /></a> </p>  <p>I prompt because while I really want to go online most the time, there are times where I'm in a hurry and I don't want to take the time to Sync right then.</p>  <p>If the user clicks Yes, then I use the SDK assembly to call the GoOnline() function.&#160; Using this method, I'm able to start the CRM standard Go Online process that uploads changes from the offline queue to the CRM server.</p>  <p>Once that's done, I do something a little bit unexpected - I actually call the GoOffline() function to go back offline.&#160; The reason for this is simple, it helps me make sure my offline store is as current as possible when I drop the network again.&#160; This isn't 100% necessary as CRM 4 now has a new feature that can trickle update the store every so often that you can turn on.&#160; Using this capability while your online the offline store is updated every N minutes based on your configuration.&#160; You can find this setting in the CRM menu in Outlook on the Options dialog, Local Data tab.&#160; The following is an example of the option on that tab.</p>  <p><a href="http://mrdavecrm.squarespace.com/resource/WindowsLiveWriter/AutomaticallyGoBackOnline_12B9B/image_6.png?fileId=1748874"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="88" alt="image" src="http://mrdavecrm.squarespace.com/resource/WindowsLiveWriter/AutomaticallyGoBackOnline_12B9B/image_thumb_2.png?fileId=1748875" width="534" border="0" /></a> </p>  <p>By default this setting is not enabled you need to turn it on after installation of the CRM Outlook Add-In.</p>  <p>I have found that the more frequent you sync up and keep current the less the risk is for having synchronization issues.</p>  <p>Once the GoOffline is completed, I turn around and do a GoOnline() call again.&#160; This time the GoOnline runs really quick because no work was done offline that needs to be uploaded.&#160; Once this process is completed you will see the following dialog to let you know the process is completed.</p>  <p><a href="http://mrdavecrm.squarespace.com/resource/WindowsLiveWriter/AutomaticallyGoBackOnline_12B9B/image_4.png?fileId=1748876"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="148" alt="image" src="http://mrdavecrm.squarespace.com/resource/WindowsLiveWriter/AutomaticallyGoBackOnline_12B9B/image_thumb_1.png?fileId=1748877" width="309" border="0" /></a> </p>  <p>&#160;</p>  <p>Disclaimer:&#160; The following link contains very new code that may or may not work in your environment.&#160; It's intended for a developer not an end user - so if you can't compile it you probably shouldn't use it ( but I do include an installer if your crazy enough to try it)&#160; I'm running Outlook 2007 on Vista and that's what this code has run on so far.&#160; If you find an issue - please let me know via the Contact Me link, however, don't expect me to fix it that's why I posted the code :) </p>  <p><a title="http://crm.davidyack.com/storage/downloads/OutlookOfflineHelper-072208.zip" href="http://crm.davidyack.com/storage/downloads/OutlookOfflineHelper-072208.zip">http://crm.davidyack.com/storage/downloads/OutlookOfflineHelper-072208.zip</a></p>]]></content></entry><entry><title>Using the CRM Demo VPC on Hyper-V</title><id>http://crm.davidyack.com/journal/2008/7/7/using-the-crm-demo-vpc-on-hyper-v.html</id><link rel="alternate" type="text/html" href="http://crm.davidyack.com/journal/2008/7/7/using-the-crm-demo-vpc-on-hyper-v.html"/><author><name>David Yack</name></author><published>2008-07-07T20:59:59Z</published><updated>2008-07-07T20:59:59Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p>Now that Hyper-V on Windows 2008 has RTM'd I thought I would pass along some steps I went through to get the Demo VPC up and running under Hyper-V.</p>  <p>You can download the virtual hard drive for the Demo VPC <a href="https://www.microsoft.com/downloads/details.aspx?FamilyID=DD939ED9-87A5-4C13-B212-A922CC02B469&amp;displaylang=en" target="_blank">here</a>.</p>  <p>After uncompressing it to a local folder - I created a differencing virtual hard drive - that way I can use the downloaded base VHD for multiple servers - I then went back and created a new Virtual Machine pointing to that VHD I just created </p>  <p>Once the VM is up and running - you need to replace the old Virtual Server/Virtual PC machine additions with the integration services that comes with Hyper-V.&#160; You&#160; don't want to bypass this step because you will lose a lot of the features wit and from past experience performance will also suffer.&#160; Here's the steps I went through to swap out the old VM additions with the new Integration Services.</p>  <p>1 - Uninstall the existing machine additions - I had to do that via the Control Panel / Add Remove programs </p>  <p>2 - Reboot</p>  <p>3 - From Hyper-V admin for VM Action - Insert Integration Services (new name for additions ) </p>  <p>4 - I had to manually go to the My Computers - Drive that was loaded with Integration Services and double click to cause it to start running</p>  <p>5 - It prompted to upgrade the computers HAL (Hardware abstraction layer) </p>  <p>6 - Reboot</p>  <p>7 - After reboot Integration Services installed automatically</p>  <p>8 - I was prompted for hidusb.sys that the detect new devices couldn't be found - since it didn't appear to have the file on the VHD , I chose to cancel and it skipped that step - I assume at this point it just means my VM won't have USB support - will investigate that later</p>  <p>9&#160; - One more reboot</p>  <p>10 - At this point while the integration services were installed, they didn't seem right because hidusb.sys was missing -I was able to connect to a network at this point and copy that file and hidclass.sys from another windows 2003 server in our local network - and then re-ran the integration services installation</p>  <p>11 - after the re-run of integration services it prompted for install of new hardware - what it is trying to install is the mouse driver - which meant my mouse was useless so I had to use the keyboard to browse to windows\system32\drivers on the other server to pickup the missing driver - not sure if this was just my luck, or if that will happen to everyone - it made me appreciate the mouse!</p>  <p>Hopefully that will help you a little if you try to get one running under Hyper-V</p>  <p>In case your wondering - if you do a lot of demo's with CRM, running this setup on a demo Notebook works pretty well - in most cases I have found you can't get Sleep to work however and you might find that annoying.</p>  <p>I have two simple requests for the next Demo VPC in order of priority!</p>  <p>1&#160; - Have Visual Studio 2008 installed instead of Visual Studio 2005</p>  <p>2 -&#160; have a version of the VHD that works with Hyper-V!</p>]]></content></entry><entry><title>Training Kit for CRM 4.0 Now on MSDN</title><id>http://crm.davidyack.com/journal/2008/7/7/training-kit-for-crm-40-now-on-msdn.html</id><link rel="alternate" type="text/html" href="http://crm.davidyack.com/journal/2008/7/7/training-kit-for-crm-40-now-on-msdn.html"/><author><name>David Yack</name></author><published>2008-07-07T07:11:52Z</published><updated>2008-07-07T07:11:52Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p>You can now download an updated version of the CRM 4.0 training kit from MSDN (<a href="http://msdn.microsoft.com/en-us/library/cc720132.aspx" target="_blank">here</a>).&#160;&#160; This is an updated version of the training materials that I did a bunch of training events with during the beta of CRM 4.0.&#160; Girish has a blog post with more details on the kit <a href="http://blogs.msdn.com/girishr/archive/2008/07/06/developer-ramp-up-kit-for-dynamics-crm-4-0.aspx" target="_blank">here</a>.</p>]]></content></entry><entry><title>CRM ISVs Featured at WPC</title><id>http://crm.davidyack.com/journal/2008/7/6/crm-isvs-featured-at-wpc.html</id><link rel="alternate" type="text/html" href="http://crm.davidyack.com/journal/2008/7/6/crm-isvs-featured-at-wpc.html"/><author><name>David Yack</name></author><published>2008-07-06T20:20:11Z</published><updated>2008-07-06T20:20:11Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p>Tomorrow is the first day of the Microsoft Partner conference in Houston - it runs from the 7th through the 9th.&#160;&#160; I know a popular question I've been asked in the last month was &quot;Are you going?&quot;.&#160; Not this year, just did too much travel in June and still getting caught up!&#160; I am planning on catching a few of the sessions via the <a href="http://www.microsoft.com/digitalwpc/">webcasts</a> and I would love to hear from others that are there what was cool!</p>  <p>Last week I had the privilege of previewing a couple of the sessions that will be given and I wanted to highlight them in case you are heading to WPC.</p>  <p>I blogged in more details about this on my main blog including the session details - you can read that <a href="http://blog.davidyack.com/journal/2008/7/6/going-to-world-partner-conference.html" target="_blank">here</a>.</p>]]></content></entry><entry><title>Easy API Export of All Customizations</title><id>http://crm.davidyack.com/journal/2008/6/28/easy-api-export-of-all-customizations.html</id><link rel="alternate" type="text/html" href="http://crm.davidyack.com/journal/2008/6/28/easy-api-export-of-all-customizations.html"/><author><name>David Yack</name></author><published>2008-06-28T05:13:56Z</published><updated>2008-06-28T05:13:56Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p>Did you know that you can easily export all the customizations using the API with just a few lines of code?&#160; This is similar to using the export all from the client interface only you can do this form your install, provisioning application or on a regular schedule.&#160; For example, we have a windows service that can point to any number of CRM organizations and just pull down a copy on a regular schedule. </p>  <p>This is great for&#160; having a regular backup of a development or other high change system.&#160; Sure you can backup the database, but sometimes you just want to have a copy of the customizations.</p>  <p>Here's a code example for calling the ExportCompressedAllXmlRequest</p>  <p><a href="http://crm.davidyack.com/resource/WindowsLiveWriter/EasyAPIExportofAllCustomizations_14673/image_2.png?fileId=1679820"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="219" alt="image" src="http://crm.davidyack.com/resource/WindowsLiveWriter/EasyAPIExportofAllCustomizations_14673/image_thumb.png?fileId=1679821" width="476" border="0" /></a> </p>  <p>&#160;</p> Using this method you get back a compressed versions of the customizations - you can also retrieve them in string format using the other export all method.]]></content></entry><entry><title>Plug-in Registration Tool Updated</title><id>http://crm.davidyack.com/journal/2008/6/28/plug-in-registration-tool-updated.html</id><link rel="alternate" type="text/html" href="http://crm.davidyack.com/journal/2008/6/28/plug-in-registration-tool-updated.html"/><author><name>David Yack</name></author><published>2008-06-28T05:07:35Z</published><updated>2008-06-28T05:07:35Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p>There's a new version(2.1) of the plug-in registration tool up on code gallery - you can find it here <a href="http://code.msdn.com/crmplugin">http://code.msdn.com/crmplugin</a></p>  <p>This version has a few new features such as supporting https.&#160; If you haven't looked at the tool in a while, you should download and give it a try as it has changed a lot from some of the early beta versions! </p>]]></content></entry><entry><title>New CRM SDK 4.05 - Check out the readme!</title><id>http://crm.davidyack.com/journal/2008/6/10/new-crm-sdk-405-check-out-the-readme.html</id><link rel="alternate" type="text/html" href="http://crm.davidyack.com/journal/2008/6/10/new-crm-sdk-405-check-out-the-readme.html"/><author><name>David Yack</name></author><published>2008-06-10T12:57:56Z</published><updated>2008-06-10T12:57:56Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p>In case you missed it on the CRM team blog (<a href="http://blogs.msdn.com/crm/archive/2008/05/30/microsoft-dynamics-crm-sdk-now-with-vb-net-sample-code.aspx">post here</a>) there's a new SDK that just got published at the end of the month.&#160; (I've been out of the country so just now catching up on what I've been missing! )&#160; There's a number of new things in the SDK including they now added a bunch of VB.NET samples&#160; - I'd love to know how important that is to you,&#160; drop me an <a href="http://crm.davidyack.com/send-me-e-mail/">e-mail</a>&#160; and let me know! </p>  <p>One of the things that I recommend looking at is the readme that comes in the root folder of the SDK - Scroll past the Contents of the SDK and you will find the &quot;Known Issues&quot; section.&#160; Keeping this list in the back of your head can save you a few hours of research when you hit one of the problems.&#160; The following are a few that I have hit and I would recommend keeping fresh in your mind!</p>  <p>- <strong><em>64-bit version of IDCRL assembly is missing</em></strong> - this effects if you are trying to connect to CRM Online from a 64 bit server - workaround now that I have used is just forcing it to run 32 bit - that seems to work fine.</p>  <p>-<strong><em> New Role created from web client does not contain many necessary privileges</em></strong> -&#160; This one will get you scratching your head for a while - the easiest thing to do for now is copy an existing role and then dumb it down as needed.&#160; The readme also suggests another work around of calling the AddPrilvledgeRole to add the missing ones. I'd personally recommend just copying an existing role for now.</p>  <p>-<strong><em> Web Exception (Http 401 ) thrown in plug-in</em></strong> - Oh this is a fun one - if you have a space in your org name you can hit this one - SDK has two work around's -&#160; change the org name to not have spaces or don't use the CreateCrmService - I typically prefer the change the org name approach but I keep hoping a hotfix will get created for this one.</p>  <p>There are a number of other ones on the list so you should take a look each time the SDK is published it will definitely save you a few hours in return!</p>]]></content></entry><entry><title>Query Builder Error after Import</title><id>http://crm.davidyack.com/journal/2008/6/10/query-builder-error-after-import.html</id><link rel="alternate" type="text/html" href="http://crm.davidyack.com/journal/2008/6/10/query-builder-error-after-import.html"/><author><name>David Yack</name></author><published>2008-06-10T11:29:01Z</published><updated>2008-06-10T11:29:01Z</updated><content type="html" xml:lang="en-US"><![CDATA[<p>I had fun today tracking down a error that I created by importing an entity that had a lookup field on a form that was from another entity that the target system didn't have.&#160; The result was after publish of the imported entity I could no longer bring up the entity form without getting a simple page that said &quot;Query Builder error&quot;.</p>  <p>Using a platform trace I was able to figure out the name of the field having the problem.&#160; Since it was from a lookup the field missing was something like ctc_myfieldID&#160; which was the Id for the lookup field to be stored in.&#160; On a suggestion from <a href="http://blogs.msdn.com/crm/pages/bio-mark-harrington.aspx">Mark Harrington</a> from the CRM team, I added a dummy attribute with the same name.&#160; Once that was done, I was able to publish the form without the lookup and then I was able to finally remove my dummy attribute.</p>  <p>The other obvious way you can fix this problem is to import the missing entity - but in some cases like this one I didn't want the missing entity in the target system.</p>  <p>And for those of you that happened to notice that my blog posts slowed down in May - that didn't mean I wasn't busy working but I've been working on trying to wrap up a project that I started about a year ago and it involves close to 600 pages.&#160; Stay tuned to this space for an announcement with tons of more details on my mystery project! </p>]]></content></entry></feed>