<?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-9130244449362289081</id><updated>2011-11-28T10:46:30.969+11:00</updated><category term='install'/><category term='Queue'/><category term='javascript'/><category term='Email'/><category term='Personalisation'/><category term='js library'/><category term='customisation'/><category term='functions'/><category term='Security'/><category term='Trace'/><category term='Roles'/><category term='Network Ports'/><category term='SMTP'/><category term='copy'/><category term='configuration'/><category term='IFrame'/><category term='load balance'/><category term='tips'/><category term='Duplicate Detection'/><category term='Links'/><category term='versions'/><category term='Development Tools'/><category term='About Me'/><category term='Documentation'/><category term='internet facing'/><category term='Blogs'/><category term='async'/><category term='Video'/><category term='User Creation'/><category term='Outlook Client'/><category term='authentication'/><category term='CRM 4.0 Lookup'/><category term='System Settings'/><category term='formatting'/><category term='Logging'/><category term='Popup'/><category term='toolbar'/><category term='Reg Key'/><category term='Workflow'/><category term='Lookups'/><category term='Retrieve'/><category term='Caching'/><category term='Word'/><category term='Event functions'/><category term='SDK'/><category term='clone'/><category term='sql'/><category term='view'/><category term='Reference'/><category term='picklist'/><category term='Mail Merge'/><category term='regular expressions'/><category term='fetchXML'/><category term='Button Display'/><category term='MetaData'/><category term='Form assistant'/><title type='text'>Robs MS CRM Blog</title><subtitle type='html'>Tips, tricks and thoughts related to Microsoft CRM.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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>65</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-9130244449362289081.post-4625911435971756828</id><published>2011-05-27T09:48:00.002+10:00</published><updated>2011-05-27T12:06:31.855+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='versions'/><title type='text'>Determining the veresion number of CRM Components</title><content type='html'>http://support.microsoft.com/kb/946594&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-4625911435971756828?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/4625911435971756828/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=4625911435971756828' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/4625911435971756828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/4625911435971756828'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2011/05/determining-veresion-number-of-crm.html' title='Determining the veresion number of CRM Components'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-6718873755031016222</id><published>2010-08-26T21:32:00.002+10:00</published><updated>2010-08-31T17:11:05.981+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='System Settings'/><category scheme='http://www.blogger.com/atom/ns#' term='Reg Key'/><category scheme='http://www.blogger.com/atom/ns#' term='User Creation'/><title type='text'>User Creation</title><content type='html'>&lt;strong&gt;&lt;u&gt;The Error:&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;AddPrincipalToGroupByName should never be called when AutoGroupManagement is turned off.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;u&gt;The Solution&lt;br /&gt;&lt;/u&gt;&lt;/strong&gt;&lt;span style="font-family:trebuchet ms;"&gt;Just switch the registry entry HKLMMicrosoftMSCRMAutoGroupManagement from 0 to 1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Trebuchet MS;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Trebuchet MS;"&gt;Gleaned from: http://mrhodes.net/?s=AutoGroupManagement&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-6718873755031016222?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/6718873755031016222/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=6718873755031016222' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/6718873755031016222'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/6718873755031016222'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2010/08/user-creation.html' title='User Creation'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-8677291198315476078</id><published>2010-08-16T15:38:00.003+10:00</published><updated>2010-08-16T15:45:45.269+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='regular expressions'/><title type='text'>Using Regular Expressions</title><content type='html'>I had to re-learn (again) reg Exp so thought I would write it down :-)&lt;br /&gt;&lt;br /&gt;The idea here is to search for a bit of text in antother:&lt;br /&gt;&lt;br /&gt;The /gi option means global and case insensitive&lt;br /&gt;&lt;br /&gt;var pattern = /&lt;stringtofind&gt;&lt;bittolookfor&gt;/gi&lt;br /&gt;var match = stringToSearch.search( pattern )&lt;br /&gt;&lt;br /&gt;If match &gt; -1 a match has been found.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;for example:&lt;/strong&gt;&lt;br /&gt;var stringToSearch = "Is Rob here"&lt;br /&gt;var pattern = /rob/gi&lt;br /&gt;var match = stringToSearch( pattern );&lt;br /&gt;&lt;br /&gt;This "should" return 3.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-8677291198315476078?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/8677291198315476078/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=8677291198315476078' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8677291198315476078'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8677291198315476078'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2010/08/using-regular-expressions.html' title='Using Regular Expressions'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-4546995348979926628</id><published>2010-06-23T20:42:00.000+10:00</published><updated>2010-06-23T20:43:27.635+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='copy'/><category scheme='http://www.blogger.com/atom/ns#' term='clone'/><title type='text'>Cloning-Entities using Javascript - great posting</title><content type='html'>http://mscrm4ever.blogspot.com/2008/06/cloning-entity-using-javascript.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-4546995348979926628?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/4546995348979926628/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=4546995348979926628' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/4546995348979926628'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/4546995348979926628'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2010/06/cloning-entities-using-javascript-great.html' title='Cloning-Entities using Javascript - great posting'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-6607635527741895130</id><published>2010-06-15T21:32:00.001+10:00</published><updated>2010-06-15T21:33:13.932+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='internet facing'/><category scheme='http://www.blogger.com/atom/ns#' term='configuration'/><title type='text'>Internet Facing deployment config</title><content type='html'>http://rc.crm.dynamics.com/rc/regcont/en_us/op/articles/ifd_common_issues.aspx&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-6607635527741895130?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/6607635527741895130/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=6607635527741895130' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/6607635527741895130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/6607635527741895130'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2010/06/internet-facing-deployment-config.html' title='Internet Facing deployment config'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-7480666004962289023</id><published>2010-06-15T21:24:00.000+10:00</published><updated>2010-06-15T21:25:01.788+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='install'/><category scheme='http://www.blogger.com/atom/ns#' term='configuration'/><category scheme='http://www.blogger.com/atom/ns#' term='load balance'/><title type='text'>CRM on multiple servers</title><content type='html'>http://rc.crm.dynamics.com/rc/regcont/en_us/op/articles/crm_server_nlb.aspx&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-7480666004962289023?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/7480666004962289023/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=7480666004962289023' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/7480666004962289023'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/7480666004962289023'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2010/06/crm-on-multiple-servers.html' title='CRM on multiple servers'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-926349387261439703</id><published>2010-01-11T10:27:00.002+11:00</published><updated>2010-01-11T10:42:44.141+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='configuration'/><category scheme='http://www.blogger.com/atom/ns#' term='Popup'/><title type='text'>Fixing Popup Blocker Issues</title><content type='html'>A MS document on how to fix Popup Blocker Issues&lt;br /&gt;&lt;br /&gt;&lt;a href="http://rc.crm.dynamics.com/rc/regcont/en_us/op/articles/popupblocker.aspx?WTT.rss_f=CRMRC_OP"&gt;&lt;/a&gt;&lt;br /&gt;&lt;BR&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-926349387261439703?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/926349387261439703/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=926349387261439703' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/926349387261439703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/926349387261439703'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2010/01/fixing-popup-blocker-issues.html' title='Fixing Popup Blocker Issues'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-5813921735157272455</id><published>2010-01-11T10:21:00.002+11:00</published><updated>2010-01-11T10:23:24.865+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Duplicate Detection'/><category scheme='http://www.blogger.com/atom/ns#' term='Video'/><title type='text'>Duplicate Detection Rules</title><content type='html'>A Short MS Video on creating duplicate detection rules&lt;br /&gt;&lt;br /&gt;&lt;a href="http://rc.crm.dynamics.com/rc/regcont/en_us/op/articles/vid_duplicatedetect.aspx?WTT.rss_f=CRMRC_OP"&gt;http://rc.crm.dynamics.com/rc/regcont/en_us/op/articles/vid_duplicatedetect.aspx?WTT.rss_f=CRMRC_OP&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-5813921735157272455?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/5813921735157272455/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=5813921735157272455' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/5813921735157272455'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/5813921735157272455'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2010/01/duplicate-detection-rules.html' title='Duplicate Detection Rules'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-2717472712684304030</id><published>2010-01-11T10:13:00.002+11:00</published><updated>2010-01-11T10:19:34.959+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Network Ports'/><title type='text'>Network Ports Used By CRM</title><content type='html'>This article lists the network ports used by CRM&lt;br /&gt;&lt;br /&gt;http://rc.crm.dynamics.com/rc/regcont/en_us/op/articles/crmports.aspx?WTT.rss_f=CRMRC_OP&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-2717472712684304030?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/2717472712684304030/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=2717472712684304030' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2717472712684304030'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2717472712684304030'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2010/01/network-ports-used-by-crm.html' title='Network Ports Used By CRM'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-46752495738620019</id><published>2010-01-11T10:03:00.001+11:00</published><updated>2010-01-11T10:04:21.407+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Video'/><category scheme='http://www.blogger.com/atom/ns#' term='Personalisation'/><title type='text'>Personalising CRM</title><content type='html'>A brief MS video on how to personalise CRM&lt;br /&gt;&lt;br /&gt;http://rc.crm.dynamics.com/rc/regcont/en_us/op/articles/vid_personalize.aspx?WTT.rss_f=CRMRC_OP&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-46752495738620019?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/46752495738620019/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=46752495738620019' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/46752495738620019'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/46752495738620019'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2010/01/personalising-crm.html' title='Personalising CRM'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-5697108464010318350</id><published>2010-01-11T08:45:00.001+11:00</published><updated>2010-01-11T08:47:38.497+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Button Display'/><category scheme='http://www.blogger.com/atom/ns#' term='Security'/><category scheme='http://www.blogger.com/atom/ns#' term='Roles'/><title type='text'>Standard Buttons and their Security Role Requirements</title><content type='html'>Why can't I see some of the menus or buttons?&lt;br /&gt;&lt;br /&gt;This article from MS lists the standard buttons and their security role requirements:&lt;br /&gt;&lt;br /&gt;http://rc.crm.dynamics.com/rc/regcont/en_us/op/articles/securityroles.aspx?WTT.rss_f=CRMRC_OP&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-5697108464010318350?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/5697108464010318350/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=5697108464010318350' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/5697108464010318350'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/5697108464010318350'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2010/01/standard-buttons-and-their-security.html' title='Standard Buttons and their Security Role Requirements'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-4484545638861403077</id><published>2010-01-08T10:56:00.003+11:00</published><updated>2010-01-08T10:57:45.099+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Outlook Client'/><category scheme='http://www.blogger.com/atom/ns#' term='authentication'/><title type='text'>Authentication prompt in OUtlook</title><content type='html'>This issue is when you are able to open the CRM site in IE without authentication but are prompted to authenticate when opening in the outlook client.&lt;br /&gt;&lt;br /&gt;To resolve this add the address (including the port if needed) to the Local Intranet Zone&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-4484545638861403077?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/4484545638861403077/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=4484545638861403077' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/4484545638861403077'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/4484545638861403077'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2010/01/authentication-prompt-in-outlook.html' title='Authentication prompt in OUtlook'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-572244122123864296</id><published>2009-10-30T14:55:00.003+11:00</published><updated>2009-10-30T14:58:17.863+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='async'/><category scheme='http://www.blogger.com/atom/ns#' term='authentication'/><title type='text'>CrmWRPCTTokenKey Error</title><content type='html'>I was getting an error where I was being prompted for authentication and occassionally this even crashed the app pool.&lt;br /&gt;&lt;br /&gt;I found this great post which suggests checking that the async process is still running.&lt;br /&gt;&lt;br /&gt;http://peitor.blogspot.com/2008/12/microsoft-crm-4-crmexception-expired.html&lt;br /&gt;&lt;br /&gt;One of the possts also suggests that this can be connected to imported organisations and dodgy values in the config databases. &lt;br /&gt;&lt;br /&gt;I have copied the references below (just in case this post ever gets moved etc)&lt;br /&gt;&lt;br /&gt;#1&lt;br /&gt;There is a KB article on this&lt;br /&gt;http://support.microsoft.com/kb/961311/&lt;br /&gt;This article says: the AsyncSdkRootDomain field in the DeploymentProperties table of the MSCRM_CONFIG database contains an incorrect value.&lt;br /&gt;&lt;br /&gt;#2&lt;br /&gt;In our case the problem was an import of an organization from another Microsoft Dynamics CRM 4.0 deployment, from Development Server to Test Server. &lt;br /&gt;http://support.microsoft.com/kb/949844&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-572244122123864296?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/572244122123864296/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=572244122123864296' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/572244122123864296'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/572244122123864296'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/10/crmwrpcttokenkey-error.html' title='CrmWRPCTTokenKey Error'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-8549499951754559356</id><published>2009-10-20T08:40:00.002+11:00</published><updated>2009-10-20T08:41:24.174+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='customisation'/><category scheme='http://www.blogger.com/atom/ns#' term='view'/><title type='text'>View Replicator</title><content type='html'>This is a site with some great tools including..... a view replicator!  Fantastic!&lt;br /&gt;&lt;br /&gt;&lt;a href="http://mscrmtools.blogspot.com/"&gt;http://mscrmtools.blogspot.com/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-8549499951754559356?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/8549499951754559356/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=8549499951754559356' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8549499951754559356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8549499951754559356'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/10/view-replicator.html' title='View Replicator'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-5899449555789169354</id><published>2009-10-19T12:14:00.002+11:00</published><updated>2009-10-19T12:23:17.774+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='customisation'/><title type='text'>Problem importing / publishing Customisations</title><content type='html'>&lt;span style="font-family:arial;font-size:85%;"&gt;We were having a problem importing or creating new entities.&lt;br /&gt;&lt;br /&gt;Enabling trace revealed the following error being logged&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#ff0000;"&gt;Exception when executing non-query: exec p_RecreateIndexes Exception: System.Data.SqlClient.SqlException: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Happily I then found a post here which describes how to change the time out value&lt;br /&gt;&lt;br /&gt;&lt;a href="http://mscrmuk.blogspot.com/2008/09/sql-timeouts-in-crm-generic-sql-error.html"&gt;http://mscrmuk.blogspot.com/2008/09/sql-timeouts-in-crm-generic-sql-error.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;the content of that post (in case it is ever moved is) quoted below...&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;strong&gt;Increase the Timeout&lt;br /&gt;&lt;/strong&gt;The SQL timeout is controlled by a registry value on each CRM server:&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#33cc00;"&gt;&lt;strong&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM\OLEDBTimeout&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This value does not exist by default, and if it does not exist then the default value will be 30 seconds. To change it, add the registry value (of type DWORD), and put in the value you want (measured in seconds). Then you have to recycle the CrmAppPool application pool for the change to take effect (this is a step most Microsoft documentation omits to mention); do this we IISReset, or less drastically via iisapp.vbs&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This has now resolved the issue...&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-5899449555789169354?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/5899449555789169354/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=5899449555789169354' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/5899449555789169354'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/5899449555789169354'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/10/problem-importing-publishing.html' title='Problem importing / publishing Customisations'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-1825159639034002358</id><published>2009-09-07T11:45:00.005+10:00</published><updated>2009-09-07T11:47:25.871+10:00</updated><title type='text'>Import Customisations Address</title><content type='html'>Useful if you stuff up the Site Map&lt;br /&gt;&lt;br /&gt;http://[Server Name]/Tools/SystemCustomization/ImportCustomizations/importCustomizations.aspx&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-1825159639034002358?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/1825159639034002358/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=1825159639034002358' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/1825159639034002358'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/1825159639034002358'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/09/import-customisations-address.html' title='Import Customisations Address'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-4448766357634155901</id><published>2009-07-13T14:10:00.003+10:00</published><updated>2009-07-13T14:12:19.145+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Mail Merge'/><title type='text'>Merge Templates Not Displaying</title><content type='html'>I recently had a problem ata  customer site where Mail Merge Templates were being created without any problems but then not displaying in the list of available templates.&lt;br /&gt;&lt;br /&gt;It turns out that someone had removed the language field from the form. Placing it back onto the form resolved the issue.&lt;br /&gt;&lt;br /&gt;Hope this helps someone else seeing this issue...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-4448766357634155901?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/4448766357634155901/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=4448766357634155901' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/4448766357634155901'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/4448766357634155901'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/07/merge-templates-not-displaying.html' title='Merge Templates Not Displaying'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-4191278060242418757</id><published>2009-07-06T17:02:00.001+10:00</published><updated>2009-07-06T17:02:33.414+10:00</updated><title type='text'>Problem at end of going offline</title><content type='html'>https://mbs.microsoft.com/knowledgebase/KBDisplay.aspx?WTNTZSMNWUKNTMMYYMYQKSYMXOSOOUMLXWTQWKUPQQSTWPWVMMKZNPMOUNOSNYTP&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-4191278060242418757?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/4191278060242418757/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=4191278060242418757' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/4191278060242418757'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/4191278060242418757'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/07/problem-at-end-of-going-offline.html' title='Problem at end of going offline'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-941310565328221103</id><published>2009-07-06T13:05:00.001+10:00</published><updated>2009-07-06T13:06:53.778+10:00</updated><title type='text'>Unable to connect: Still unable to connect to Microsoft Dynamics CRM</title><content type='html'>Problem appears to be a permissions issue on the _img directory (requires anonymous enabled.&lt;br /&gt;&lt;br /&gt;http://support.microsoft.com/kb/951146&lt;br /&gt;&lt;br /&gt;or &lt;br /&gt;&lt;br /&gt;https://mbs.microsoft.com/knowledgebase/KBDisplay.aspx?WTNTZSMNWUKNTMMYXUPYZQPOUXNXSPSYPVMNLKNQXSKLXSMWOUNSQUOTKTMRZQZSNQQMKQXQSTXKLNNRYOZLPQOZUMROKQRX&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-941310565328221103?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/941310565328221103/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=941310565328221103' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/941310565328221103'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/941310565328221103'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/07/unable-to-connect-still-unable-to.html' title='Unable to connect: Still unable to connect to Microsoft Dynamics CRM'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-2896816986523130523</id><published>2009-06-18T14:30:00.000+10:00</published><updated>2009-06-18T14:31:30.578+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Logging'/><category scheme='http://www.blogger.com/atom/ns#' term='Email'/><title type='text'>CRM 4.0 E-Mail Connector Logger Tool</title><content type='html'>http://blogs.msdn.com/benlec/archive/2008/07/02/crm-4-0-e-mail-connector-logger-tool.aspx&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-2896816986523130523?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/2896816986523130523/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=2896816986523130523' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2896816986523130523'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2896816986523130523'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/06/crm-40-e-mail-connector-logger-tool.html' title='CRM 4.0 E-Mail Connector Logger Tool'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-2836057041983789364</id><published>2009-06-18T12:55:00.001+10:00</published><updated>2009-06-18T12:55:56.266+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Email'/><category scheme='http://www.blogger.com/atom/ns#' term='Documentation'/><title type='text'>Email Routing Config</title><content type='html'>http://www.microsoft.com/downloads/details.aspx?FamilyID=8ea05b4e-825a-4db1-ad59-d894aa5ef33e&amp;DisplayLang=en&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-2836057041983789364?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/2836057041983789364/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=2836057041983789364' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2836057041983789364'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2836057041983789364'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/06/email-routing-config.html' title='Email Routing Config'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-2511349506181152717</id><published>2009-06-18T12:54:00.000+10:00</published><updated>2009-06-18T12:55:01.609+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Trace'/><category scheme='http://www.blogger.com/atom/ns#' term='Documentation'/><title type='text'>CRM Trace Documentation</title><content type='html'>http://support.microsoft.com/kb/907490&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-2511349506181152717?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/2511349506181152717/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=2511349506181152717' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2511349506181152717'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2511349506181152717'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/06/crm-trace-documentation.html' title='CRM Trace Documentation'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-1669225316955793526</id><published>2009-03-11T10:54:00.001+11:00</published><updated>2009-03-11T10:54:15.027+11:00</updated><title type='text'>Removing the ‘Add Existing [Entity] to this record’ button</title><content type='html'>&lt;p&gt;This content comes from here: &lt;a title="http://blog.davehawes.com/post/2008/04/23/MSCRM-4-Remove-Add-Existing-xxxxx-button.aspx" href="http://blog.davehawes.com/post/2008/04/23/MSCRM-4-Remove-Add-Existing-xxxxx-button.aspx"&gt;http://blog.davehawes.com/post/2008/04/23/MSCRM-4-Remove-Add-Existing-xxxxx-button.aspx&lt;/a&gt;. I have reproduced it here because it is really handy and I don’t want to loose it.&lt;/p&gt;  &lt;p&gt;Take note: Strictly speaking this is unsupported (and the previous method for doing this broke when upgrading ver 3 to ver 4). Apparently they are going to provide a supported way for doing this in the future. Use knowingly…&lt;/p&gt;  &lt;p&gt;Thanks Dave Hawes!&lt;/p&gt;  &lt;p&gt;//--------------------------------------------------------------------------------------------------   &lt;br /&gt;HideAssociatedViewButtons =&amp;#160; function(loadAreaId, buttonTitles){    &lt;br /&gt;//--------------------------------------------------------------------------------------------------&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; var navElement = document.getElementById('nav_' + loadAreaId);&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; if (navElement != null)&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; navElement.onclick = function LoadAreaOverride() {&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // Call the original CRM method to launch the navigation link and create area iFrame&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; loadArea(loadAreaId);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; HideViewButtons(document.getElementById(loadAreaId + 'Frame'), buttonTitles);&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;  &lt;p&gt;};&lt;/p&gt;  &lt;p&gt;//--------------------------------------------------------------------------------------------------   &lt;br /&gt;HideViewButtons=function(Iframe, buttonTitles) {     &lt;br /&gt;//--------------------------------------------------------------------------------------------------&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; if (Iframe != null ) {&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Iframe.onreadystatechange = function HideTitledButtons() { &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (Iframe.readyState == 'complete') { &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; var iFrame = frames[window.event.srcElement.id]; &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; var liElements = iFrame.document.getElementsByTagName('li'); &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; for (var j = 0; j &amp;lt; buttonTitles.length; j++) { &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; for (var i = 0; i &amp;lt; liElements.length; i++) { &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (liElements[i].getAttribute('title') == buttonTitles[j]) { &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; liElements[i].style.display = 'none'; &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; break; &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; } &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; } &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; } &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; } &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;  &lt;p&gt;} ;&lt;/p&gt;  &lt;p&gt;&lt;font color="#0000ff"&gt;&lt;strong&gt;To hide just the add existing btton the call is this:&lt;/strong&gt;&lt;/font&gt;    &lt;br /&gt;HideAssociatedViewButtons('&lt;strong&gt;&lt;font color="#ff0000"&gt;lwb_contact_lwb_service&lt;/font&gt;&lt;/strong&gt;', ['Add existing &lt;strong&gt;&lt;font color="#ff0000"&gt;Program&lt;/font&gt;&lt;/strong&gt; to this record']);&lt;/p&gt;  &lt;p&gt;&lt;font color="#0000ff"&gt;&lt;strong&gt;To hide both buttons the call is this:&lt;/strong&gt;&lt;/font&gt;    &lt;br /&gt;HideAssociatedViewButtons(&lt;font color="#ff0000"&gt;'&lt;strong&gt;lwb_contact_lwb_service&lt;/strong&gt;'&lt;/font&gt;, ['Add existing &lt;strong&gt;&lt;font color="#ff0000"&gt;Program&lt;/font&gt;&lt;/strong&gt; to this record', 'Add a new &lt;font color="#ff0000"&gt;&lt;strong&gt;Program&lt;/strong&gt;&lt;/font&gt; to this record']);&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;replace the bold bits with:&lt;/font&gt;&lt;/u&gt;&lt;/strong&gt;    &lt;br /&gt;[Customisation Prefiix] + “_” + [Entity Schema Name] + “_” + [Customisation Prefiix] + [Entity Schema Name]&lt;/p&gt;  &lt;p&gt;and &lt;font color="#ff0000"&gt;&lt;strong&gt;Program&lt;/strong&gt;&lt;/font&gt; with the Entity Display name&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-1669225316955793526?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/1669225316955793526/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=1669225316955793526' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/1669225316955793526'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/1669225316955793526'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/03/removing-add-existing-entity-to-this.html' title='Removing the ‘Add Existing [Entity] to this record’ button'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-7535143425598286736</id><published>2009-02-20T11:44:00.001+11:00</published><updated>2009-02-20T11:45:08.465+11:00</updated><title type='text'>Hiding and displaying a tab</title><content type='html'>&lt;p&gt;There are two parts to this&lt;/p&gt;  &lt;p&gt;//---------------------------------------------------------------------   &lt;br /&gt;// PART 1. Code to go in the Form Onload as global functions    &lt;br /&gt;//---------------------------------------------------------------------&lt;/p&gt;  &lt;p&gt;//---------------------------------------------------------------------   &lt;br /&gt;hideTab = function( tTab ) {    &lt;br /&gt;//---------------------------------------------------------------------&lt;/p&gt;  &lt;p&gt;&amp;#160; tTab.style.display = 'none'; &lt;/p&gt;  &lt;p&gt;}; &lt;/p&gt;  &lt;p&gt;//---------------------------------------------------------------------   &lt;br /&gt;showTab = function( tTab ) {    &lt;br /&gt;//---------------------------------------------------------------------&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; tTab.style.display='block';   &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; tTab.style.display='inline';    &lt;br /&gt;}; &lt;/p&gt;  &lt;p&gt;//---------------------------------------------------------------------   &lt;br /&gt;//PART 2: Code that can go underneat the onload or on an event to hide a tab    &lt;br /&gt;//---------------------------------------------------------------------&lt;/p&gt;  &lt;p&gt;hideTab( crmForm.all.tab1Tab );&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-7535143425598286736?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/7535143425598286736/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=7535143425598286736' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/7535143425598286736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/7535143425598286736'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/02/hiding-and-displaying-tab.html' title='Hiding and displaying a tab'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-4706908335001670868</id><published>2009-01-21T12:48:00.001+11:00</published><updated>2009-01-21T13:54:41.796+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='CRM 4.0 Lookup'/><category scheme='http://www.blogger.com/atom/ns#' term='Retrieve'/><title type='text'>Doing a Retrieve to get associated object valies based on ID</title><content type='html'>&lt;div class="csharpcode"&gt;This function takes an entity name,GUID and attributes list as input and returns the attribute values from the matching record. Its great if you just need to get the values from one record.&lt;/div&gt;  &lt;div class="csharpcode"&gt;&amp;#160;&lt;/div&gt;  &lt;div class="csharpcode"&gt;A good example of what is needed here is available from the online SDK &lt;a title="http://msdn.microsoft.com/en-us/library/cc677076.aspx" href="http://msdn.microsoft.com/en-us/library/cc677076.aspx"&gt;http://msdn.microsoft.com/en-us/library/cc677076.aspx&lt;/a&gt;&lt;/div&gt;  &lt;div class="csharpcode"&gt;&amp;#160;&lt;/div&gt;  &lt;div class="csharpcode"&gt;My intention is to break this into some re-usable function units and git it a nice wrapper.&lt;/div&gt;  &lt;div class="csharpcode"&gt;For the meantime I have reproduced it here so I can find it easily…&lt;/div&gt;  &lt;div class="csharpcode"&gt;&amp;#160;&lt;/div&gt;  &lt;p&gt;// Prepare variables for a contact to retrieve.   &lt;br /&gt;var contactid = &amp;quot;4696f8cb-9a1c-dd11-ad3a-0003ff9ee217&amp;quot;;    &lt;br /&gt;var authenticationHeader = GenerateAuthenticationHeader(); &lt;/p&gt;  &lt;p&gt;// Prepare the SOAP message.   &lt;br /&gt;var xml = &amp;quot;&amp;lt;?xml version='1.0' encoding='utf-8'?&amp;gt;&amp;quot;+     &lt;br /&gt;&amp;quot;&amp;lt;soap:Envelope xmlns:soap='&lt;a href="http://schemas.xmlsoap.org/soap/envelope/'&amp;quot;+"&gt;http://schemas.xmlsoap.org/soap/envelope/'&amp;quot;+&lt;/a&gt;    &lt;br /&gt;&amp;quot; xmlns:xsi='&lt;a href="http://www.w3.org/2001/XMLSchema-instance'&amp;quot;+"&gt;http://www.w3.org/2001/XMLSchema-instance'&amp;quot;+&lt;/a&gt;    &lt;br /&gt;&amp;quot; xmlns:xsd='&lt;a href="http://www.w3.org/2001/XMLSchema'"&gt;http://www.w3.org/2001/XMLSchema'&lt;/a&gt;&amp;gt;&amp;quot;+     &lt;br /&gt;authenticationHeader+     &lt;br /&gt;&amp;quot;&amp;lt;soap:Body&amp;gt;&amp;quot;+     &lt;br /&gt;&amp;quot;&amp;lt;Retrieve xmlns='&lt;a href="http://schemas.microsoft.com/crm/2007/WebServices'"&gt;http://schemas.microsoft.com/crm/2007/WebServices'&lt;/a&gt;&amp;gt;&amp;quot;+     &lt;br /&gt;&amp;quot;&amp;lt;entityName&amp;gt;contact&amp;lt;/entityName&amp;gt;&amp;quot;+     &lt;br /&gt;&amp;quot;&amp;lt;id&amp;gt;&amp;quot;+contactid+&amp;quot;&amp;lt;/id&amp;gt;&amp;quot;+     &lt;br /&gt;&amp;quot;&amp;lt;columnSet xmlns:q1='&lt;a href="http://schemas.microsoft.com/crm/2006/Query'"&gt;http://schemas.microsoft.com/crm/2006/Query'&lt;/a&gt; xsi:type='q1:ColumnSet'&amp;gt;&amp;quot;+     &lt;br /&gt;&amp;quot;&amp;lt;q1:Attributes&amp;gt;&amp;quot;+     &lt;br /&gt;&amp;quot;&amp;lt;q1:Attribute&amp;gt;fullname&amp;lt;/q1:Attribute&amp;gt;&amp;quot;+     &lt;br /&gt;&amp;quot;&amp;lt;/q1:Attributes&amp;gt;&amp;quot;+     &lt;br /&gt;&amp;quot;&amp;lt;/columnSet&amp;gt;&amp;quot;+     &lt;br /&gt;&amp;quot;&amp;lt;/Retrieve&amp;gt;&amp;quot;+     &lt;br /&gt;&amp;quot;&amp;lt;/soap:Body&amp;gt;&amp;quot;+     &lt;br /&gt;&amp;quot;&amp;lt;/soap:Envelope&amp;gt;&amp;quot;;    &lt;br /&gt;// Prepare the xmlHttpObject and send the request.    &lt;br /&gt;var xHReq = new ActiveXObject(&amp;quot;Msxml2.XMLHTTP&amp;quot;);    &lt;br /&gt;xHReq.Open(&amp;quot;POST&amp;quot;, &amp;quot;/mscrmservices/2007/CrmService.asmx&amp;quot;, false);    &lt;br /&gt;xHReq.setRequestHeader(&amp;quot;SOAPAction&amp;quot;,&amp;quot;&lt;a href="http://schemas.microsoft.com/crm/2007/WebServices/Retrieve&amp;quot;);"&gt;http://schemas.microsoft.com/crm/2007/WebServices/Retrieve&amp;quot;);&lt;/a&gt;    &lt;br /&gt;xHReq.setRequestHeader(&amp;quot;Content-Type&amp;quot;, &amp;quot;text/xml; charset=utf-8&amp;quot;);    &lt;br /&gt;xHReq.setRequestHeader(&amp;quot;Content-Length&amp;quot;, xml.length);    &lt;br /&gt;xHReq.send(xml);    &lt;br /&gt;// Capture the result.    &lt;br /&gt;var resultXml = xHReq.responseXML; &lt;/p&gt;  &lt;p&gt;// Check for errors.   &lt;br /&gt;var errorCount = resultXml.selectNodes('//error').length;    &lt;br /&gt;if (errorCount != 0)    &lt;br /&gt;{    &lt;br /&gt; var msg = resultXml.selectSingleNode('//description').nodeTypedValue;    &lt;br /&gt; alert(msg);    &lt;br /&gt;}    &lt;br /&gt;// Display the retrieved value.    &lt;br /&gt;else    &lt;br /&gt;{    &lt;br /&gt;alert(resultXml.selectSingleNode(&amp;quot;//q1:fullname&amp;quot;).nodeTypedValue);    &lt;br /&gt;}&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-4706908335001670868?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/4706908335001670868/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=4706908335001670868' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/4706908335001670868'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/4706908335001670868'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/01/doing-retrieve-to-get-associated-object.html' title='Doing a Retrieve to get associated object valies based on ID'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-255024431794011426</id><published>2009-01-21T12:30:00.001+11:00</published><updated>2009-01-21T12:30:39.450+11:00</updated><title type='text'>Checking to see if an owner lookup is an account or contact</title><content type='html'>&lt;p&gt;//In this examples the code block would only run when a contact is selected&lt;/p&gt;  &lt;p&gt;var luField = null;   &lt;br /&gt;if (crmForm.all.customerid.DataValue != null ) { luField= crmForm.all.customerid.DataValue[0];}&lt;/p&gt;  &lt;p&gt;if ((luField != null) &amp;amp;&amp;amp; (luField.typename != 'account') ){&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; //stuff goes here&lt;/p&gt;  &lt;p&gt;}&lt;/p&gt;  &lt;p&gt;You could make the initial assignment and if statement use the funky little JS ? operator but I prefer this approach as it is easier to expand etc.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-255024431794011426?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/255024431794011426/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=255024431794011426' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/255024431794011426'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/255024431794011426'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/01/checking-to-see-if-owner-lookup-is.html' title='Checking to see if an owner lookup is an account or contact'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-2589503912973273151</id><published>2009-01-21T09:14:00.001+11:00</published><updated>2009-01-21T09:15:03.051+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reference'/><category scheme='http://www.blogger.com/atom/ns#' term='Links'/><title type='text'>A starting list of CRM resources</title><content type='html'>&lt;p&gt;&lt;b&gt;Certification: &lt;a href="http://www.microsoft.com/learning/mcp/dynamics/default.mspx"&gt;http://www.microsoft.com/learning/mcp/dynamics/default.mspx&lt;/a&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;E-Learning:&lt;/b&gt; &lt;a href="https://dynamics.microsoftelearning.com/catalog/default.aspx"&gt;https://dynamics.microsoftelearning.com/catalog/default.aspx&lt;/a&gt;&amp;#160; then select CRM 4.0 in the Product line&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Course Manuals:&lt;/b&gt; &lt;a href="https://mbs.microsoft.com/CMS/Templates/site/DLPP.aspx?NRMODE=Published&amp;amp;NRNODEGUID=%7b2A456C8E-6563-43D2-8B6A-4B108D31159D%7d&amp;amp;NRORIGINALURL=/partnersource/communities/training/trainingmaterials/trainer&amp;amp;NRCACHEHINT=Guest&amp;amp;wa=wsignin1.0"&gt;https://mbs.microsoft.com/CMS/Templates/site/DLPP.aspx?NRMODE=Published&amp;amp;NRNODEGUID={2A456C8E-6563-43D2-8B6A-4B108D31159D}&amp;amp;NRORIGINALURL=/partnersource/communities/training/trainingmaterials/trainer&amp;amp;NRCACHEHINT=Guest&amp;amp;wa=wsignin1.0&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Partnersource:&lt;/b&gt; &lt;a href="http://crm.dynamics.com/crm_training_and_support/microsoft_crm_training/index.html"&gt;http://crm.dynamics.com/crm_training_and_support/microsoft_crm_training/index.html&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Resource Centre:&lt;/b&gt; &lt;a href="http://rc.crm.dynamics.com/rc/regcont/en_us/onlinedefault.aspx"&gt;http://rc.crm.dynamics.com/rc/regcont/en_us/onlinedefault.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Reference:&lt;/b&gt; http://msdn.microsoft.com/en-us/library/cc160840.aspx&lt;/p&gt;  &lt;p&gt;&lt;u&gt;&lt;strong&gt;Some key CRM Forums are:&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;General: &lt;a href="http://forums.microsoft.com/Dynamics/ShowForum.aspx?ForumID=487&amp;amp;SiteID=27"&gt;http://forums.microsoft.com/Dynamics/ShowForum.aspx?ForumID=487&amp;amp;SiteID=27&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Development: &lt;a href="http://forums.microsoft.com/Dynamics/ShowForum.aspx?ForumID=489&amp;amp;SiteID=27"&gt;http://forums.microsoft.com/Dynamics/ShowForum.aspx?ForumID=489&amp;amp;SiteID=27&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Deployment: &lt;a href="http://forums.microsoft.com/Dynamics/ShowForum.aspx?ForumID=488&amp;amp;SiteID=27"&gt;http://forums.microsoft.com/Dynamics/ShowForum.aspx?ForumID=488&amp;amp;SiteID=27&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;u&gt;&lt;strong&gt;Blogs / Other Sites:&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;MS CRM Team &lt;a href="http://blogs.msdn.com/crm/"&gt;http://blogs.msdn.com/crm/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Stunnware: &lt;a href="http://blogs.msdn.com/crm/"&gt;http://blogs.msdn.com/crm/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Ronald Lemmen: &lt;a href="http://www.ronaldlemmen.com/"&gt;http://www.ronaldlemmen.com/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;CRMStuff: &lt;a href="http://crmstuff.blogspot.com/"&gt;http://crmstuff.blogspot.com/&lt;/a&gt;&amp;#160; (some of this guys stuff is unsupported but other bits are good)&lt;/p&gt;  &lt;p&gt;My own: &lt;a href="http://robscrm.blogspot.com/"&gt;http://robscrm.blogspot.com/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Umar Khan: &lt;a href="http://umarkhan.wordpress.com/"&gt;http://umarkhan.wordpress.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/9130244449362289081-2589503912973273151?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/2589503912973273151/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=2589503912973273151' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2589503912973273151'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2589503912973273151'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/01/starting-list-of-crm-resources.html' title='A starting list of CRM resources'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-8805620513003810957</id><published>2009-01-21T09:12:00.001+11:00</published><updated>2009-01-21T09:12:59.738+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reference'/><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='Links'/><title type='text'>Online Resource Centre</title><content type='html'>&lt;p&gt;Just for reference….&lt;/p&gt;  &lt;p&gt;&lt;a title="http://rc.crm.dynamics.com/rc/regcont/en_us/onlinedefault.aspx" href="http://rc.crm.dynamics.com/rc/regcont/en_us/onlinedefault.aspx"&gt;http://rc.crm.dynamics.com/rc/regcont/en_us/onlinedefault.aspx&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/9130244449362289081-8805620513003810957?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/8805620513003810957/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=8805620513003810957' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8805620513003810957'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8805620513003810957'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/01/online-resource-centre.html' title='Online Resource Centre'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-98949602214824591</id><published>2009-01-21T09:06:00.001+11:00</published><updated>2009-01-21T09:10:04.135+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='js library'/><category scheme='http://www.blogger.com/atom/ns#' term='Lookups'/><category scheme='http://www.blogger.com/atom/ns#' term='functions'/><title type='text'>Changing the default / availability of options for an account &amp; contact lookup</title><content type='html'>&lt;p&gt;This is copied from &lt;a title="http://umarkhan.wordpress.com/2007/10/22/how-to-change-the-default-entity-in-lookup-window/" href="http://umarkhan.wordpress.com/2007/10/22/how-to-change-the-default-entity-in-lookup-window/"&gt;http://umarkhan.wordpress.com/2007/10/22/how-to-change-the-default-entity-in-lookup-window/&lt;/a&gt;&amp;#160; (just in case it is ever removed)&lt;/p&gt;  &lt;p&gt;For instance, in Opportunity form of Microsoft CRM you want to change the “Potential Customer” field’s default entity from Account to Contact. You need to use the following piece of code in onLoad event of the Opportunity Form.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;if ( crmForm.all.customerid != null )     &lt;br /&gt;{      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; crmForm.all.customerid .setAttribute(”defaulttype”, “2″);      &lt;br /&gt;}&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Remember to enable the event and then save and publish the opportunity entity.&lt;/p&gt;  &lt;p&gt; Following are codes of basic entities of Microsoft CRM 3 ;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Account&amp;#160;&amp;#160;&amp;#160; 1 &lt;/li&gt;    &lt;li&gt;Contact&amp;#160;&amp;#160;&amp;#160;&amp;#160; 2 &lt;/li&gt;    &lt;li&gt;Lead&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 4 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Limiting the selection List can be done this way:&lt;/p&gt;  &lt;p&gt;crmForm.all.customerid.setAttribute(”lookuptypes”, “1″);&lt;/p&gt;  &lt;p&gt;Thanks heaps uMar.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-98949602214824591?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/98949602214824591/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=98949602214824591' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/98949602214824591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/98949602214824591'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/01/changing-default-availability-of.html' title='Changing the default / availability of options for an account &amp;amp; contact lookup'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-3571494397877326000</id><published>2009-01-09T10:18:00.002+11:00</published><updated>2009-01-09T10:19:27.935+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Mail Merge'/><category scheme='http://www.blogger.com/atom/ns#' term='Word'/><title type='text'>Word Merge in CRM</title><content type='html'>Here is a link to a great article I found on merging to Word in CRM&lt;br /&gt;&lt;br /&gt;http://www.ssw.com.au/SSW/Standards/CRM/RulestoBetterCRMMailMergeTemplate.aspx&lt;br /&gt;&lt;br /&gt;Cheers&lt;br /&gt;Rob&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-3571494397877326000?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/3571494397877326000/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=3571494397877326000' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/3571494397877326000'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/3571494397877326000'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2009/01/word-merge-in-crm.html' title='Word Merge in CRM'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-8364703469237668498</id><published>2008-08-13T10:15:00.002+10:00</published><updated>2009-01-09T10:20:40.916+11:00</updated><title type='text'>Windows Live Writer</title><content type='html'>&lt;p&gt;This an awesome tool! Available FREE from the Windows Live services site!&lt;/p&gt;  &lt;br /&gt;&lt;br /&gt;http://windowslivewriter.spaces.live.com/&lt;br /&gt;&lt;br /&gt;&lt;p&gt;It makes adding graphical blogs HEAPS easier. I am planning to go through and add some pictures to my previous posts to make them a bit easier to follow.&lt;/p&gt;  &lt;p&gt;Thanks MS!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-8364703469237668498?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/8364703469237668498/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=8364703469237668498' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8364703469237668498'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8364703469237668498'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2008/08/windows-live-writer.html' title='Windows Live Writer'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-8905963718215590462</id><published>2008-08-13T09:58:00.001+10:00</published><updated>2008-08-13T09:58:34.711+10:00</updated><title type='text'>CRM Professional</title><content type='html'>&lt;p&gt;Yesterday I got my CRM Professional certification. My aim is to get my MCT as well ASAP&lt;/p&gt;  &lt;p&gt;YEAHHHHH!!!!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-8905963718215590462?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/8905963718215590462/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=8905963718215590462' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8905963718215590462'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8905963718215590462'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2008/08/crm-professional.html' title='CRM Professional'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-7915799917724336618</id><published>2008-04-15T11:27:00.000+10:00</published><updated>2008-04-15T11:28:30.334+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Development Tools'/><title type='text'>MS Dev Toolbar Link</title><content type='html'>http://www.microsoft.com/downloads/thankyou.aspx?familyId=e59c3964-672d-4511-bb3e-2d5e1db91038&amp;displayLang=en&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-7915799917724336618?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/7915799917724336618/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=7915799917724336618' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/7915799917724336618'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/7915799917724336618'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2008/04/ms-dev-toolbar-link.html' title='MS Dev Toolbar Link'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-2709505253416657390</id><published>2008-04-09T13:58:00.000+10:00</published><updated>2008-04-09T13:59:52.228+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='fetchXML'/><title type='text'>Alerting a fetchXML Query</title><content type='html'>Taken from http://ronaldlemmen.blogspot.com/2006/11/using-advanced-find-for-fetchxml.html&lt;br /&gt;&lt;br /&gt;You can just open the Advanced find page and build the query as you like. Then run the query to see if it returns the data as you wish it should. If you are satisfied with the results and you want to know what query was sent into the CRM Framework, then press F11 to get the address bar and enter this script and press enter.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;javascript:alert(resultRender.FetchXml.value);&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you get a warning about leaving the page, just press 'ok' and then the query which is sent to the framework opens up in a popup. Unfortunately you cannot select the text to copy and paste. But with Windows XP and Windows Server 2003 you can copy all text on the popup by clicking somewhere on the popup (not on the button "OK" ofcourse) and pressing ctrl+c. Now in notepad you can paste the text of the FetchXML.&lt;br /&gt;&lt;br /&gt;Good luck!&lt;br /&gt;&lt;br /&gt;Update: Thanks to Piotr in the comment section I have learned the javascript prompt command. Try this instead of the alert:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;javascript:prompt("my query:", resultRender.FetchXml.value);&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-2709505253416657390?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/2709505253416657390/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=2709505253416657390' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2709505253416657390'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2709505253416657390'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2008/04/alerting-fetchxml-query.html' title='Alerting a fetchXML Query'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-6845097838019463230</id><published>2008-02-05T11:00:00.001+11:00</published><updated>2008-02-05T11:01:12.051+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='picklist'/><title type='text'>An Awesome entry on filtering picklists</title><content type='html'>A much better way that the one included by MS&lt;br /&gt;&lt;br /&gt;http://thecrmgrid.wordpress.com/2007/11/13/a-slightly-different-approach-to-dynamic-picklists/#more-12&lt;br /&gt;&lt;br /&gt;Thank You!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-6845097838019463230?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/6845097838019463230/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=6845097838019463230' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/6845097838019463230'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/6845097838019463230'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2008/02/awesome-entry-on-filtering-picklists.html' title='An Awesome entry on filtering picklists'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-3010902816150855806</id><published>2008-01-31T14:21:00.000+11:00</published><updated>2008-01-31T14:23:06.021+11:00</updated><title type='text'>Filtering Picklist choices</title><content type='html'>To filter Picklist choices based on the choice of a parent list see the example in account in teh VM&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-3010902816150855806?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/3010902816150855806/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=3010902816150855806' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/3010902816150855806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/3010902816150855806'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2008/01/filtering-picklist-choices.html' title='Filtering Picklist choices'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-3979212756119416568</id><published>2008-01-10T08:49:00.001+11:00</published><updated>2008-01-10T08:49:46.398+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Blogs'/><category scheme='http://www.blogger.com/atom/ns#' term='Caching'/><title type='text'>MS CRM Caching</title><content type='html'>http://blogs.msdn.com/joris_kalz/archive/2006/08/09/Caching-Tool.aspx&lt;br /&gt;&lt;br /&gt;another great Blog&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-3979212756119416568?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/3979212756119416568/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=3979212756119416568' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/3979212756119416568'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/3979212756119416568'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2008/01/ms-crm-caching.html' title='MS CRM Caching'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-3949978473628280377</id><published>2008-01-07T12:36:00.001+11:00</published><updated>2008-01-10T08:50:32.303+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><title type='text'>Forcing field Save</title><content type='html'>crmForm.all.[fieldName].ForceSubmit=true;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-3949978473628280377?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/3949978473628280377/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=3949978473628280377' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/3949978473628280377'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/3949978473628280377'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2008/01/forcing-field-save.html' title='Forcing field Save'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-9142802223239620600</id><published>2007-12-21T14:11:00.000+11:00</published><updated>2007-12-21T14:12:30.445+11:00</updated><title type='text'>Titan Download</title><content type='html'>http://www.microsoft.com/downloads/details.aspx?FamilyID=99cb3a7a-eba9-4de9-b0f1-2ebf11c3d756&amp;DisplayLang=en&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-9142802223239620600?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/9142802223239620600/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=9142802223239620600' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/9142802223239620600'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/9142802223239620600'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/12/titan-download.html' title='Titan Download'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-8931012491602831323</id><published>2007-12-21T14:01:00.001+11:00</published><updated>2007-12-21T14:01:58.873+11:00</updated><title type='text'>Customising Marketing Lists</title><content type='html'>http://blogs.technet.com/crmbipl/archive/2007/10/11/how-to-customize-the-marketing-list-member-view.aspx&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-8931012491602831323?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/8931012491602831323/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=8931012491602831323' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8931012491602831323'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8931012491602831323'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/12/customising-marketing-lists.html' title='Customising Marketing Lists'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-3578765268201194731</id><published>2007-12-21T12:32:00.001+11:00</published><updated>2007-12-21T12:32:18.922+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SMTP'/><title type='text'>CRM &amp; SMTP Settings</title><content type='html'>http://dmcrm.blogspot.com/2007/09/moving-smtp-from-exchange-to-local-crm.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-3578765268201194731?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/3578765268201194731/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=3578765268201194731' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/3578765268201194731'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/3578765268201194731'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/12/crm-smtp-settings.html' title='CRM &amp; SMTP Settings'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-5555344286887889321</id><published>2007-12-20T08:43:00.000+11:00</published><updated>2007-12-20T08:44:12.263+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Queue'/><title type='text'>Processing exsting Mail with CRM</title><content type='html'>http://blogs.infinite-x.net/category/dynamics-crm/installation/&lt;br /&gt;&lt;br /&gt;And again Mitch!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-5555344286887889321?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/5555344286887889321/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=5555344286887889321' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/5555344286887889321'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/5555344286887889321'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/12/processing-exsting-mail-with-crm.html' title='Processing exsting Mail with CRM'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-9155495555149721043</id><published>2007-12-20T08:40:00.000+11:00</published><updated>2007-12-20T08:41:21.044+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='toolbar'/><title type='text'>Adding a toolbar button to create new, related entities</title><content type='html'>http://blogs.infinite-x.net/category/dynamics-crm/customization/&lt;br /&gt;&lt;br /&gt;Thanks agfain Mitch!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-9155495555149721043?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/9155495555149721043/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=9155495555149721043' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/9155495555149721043'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/9155495555149721043'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/12/adding-toolbar-button-to-create-new.html' title='Adding a toolbar button to create new, related entities'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-9029160872877131340</id><published>2007-12-14T10:45:00.000+11:00</published><updated>2007-12-14T13:06:27.573+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='functions'/><title type='text'>Function Declarations in Javascript</title><content type='html'>Michael has documented how function declarations work and why really well &lt;a href="http://www.stunnware.com/crm2/topic.aspx?id=JS5"&gt;here&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Thank you once again Michael!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-9029160872877131340?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/9029160872877131340/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=9029160872877131340' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/9029160872877131340'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/9029160872877131340'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/12/functino-declarations-in-javascript.html' title='Function Declarations in Javascript'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-1449077371122505703</id><published>2007-12-14T09:41:00.000+11:00</published><updated>2007-12-14T09:46:42.036+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='formatting'/><title type='text'>Changing Date Colors</title><content type='html'>The problem with the date field is that they all end up at the INPUT tag level with the same ID. This means that you can't go directly to the date field input element. It is therefore neccessary to traverse through the DOM tree to get to it.  This example is for date only fields. I will do another version for date time fields.&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;//--------------------------------------------------------------------------------------------------&lt;br /&gt;function setDateColors( tFieldName, tColor, tBackgroundColor, tFontWeight ) {&lt;br /&gt;//--------------------------------------------------------------------------------------------------&lt;br /&gt;var tBaseElement = window.document.getElementById( tFieldName );&lt;br /&gt;var tElement = tBaseElement.childNodes[1].childNodes[0].childNodes[0].childNodes[0].style;&lt;br /&gt;tElement.color = tColor;&lt;br /&gt;tElement.backgroundColor = tBackgroundColor;&lt;br /&gt;tElement.fontWeight = tFontWeight;&lt;br /&gt;};&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;strong&gt;an example of how this might be called is (to make it bold white text on red background):&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;setDateColors( new_startDate, "#ffffff", "#ff0000", "bold" )&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-1449077371122505703?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/1449077371122505703/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=1449077371122505703' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/1449077371122505703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/1449077371122505703'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/12/changing-date-colors.html' title='Changing Date Colors'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-8759474727275528228</id><published>2007-11-21T12:53:00.000+11:00</published><updated>2007-11-21T12:54:06.216+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fetchXML'/><category scheme='http://www.blogger.com/atom/ns#' term='Links'/><title type='text'>Building Queries (MSDN)</title><content type='html'>&lt;a href="http://msdn2.microsoft.com/en-us/library/aa680438.aspx"&gt;http://msdn2.microsoft.com/en-us/library/aa680438.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-8759474727275528228?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/8759474727275528228/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=8759474727275528228' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8759474727275528228'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8759474727275528228'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/11/building-queries-msdn.html' title='Building Queries (MSDN)'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-7350660775231661526</id><published>2007-11-21T08:29:00.000+11:00</published><updated>2007-11-21T08:31:26.113+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='formatting'/><category scheme='http://www.blogger.com/atom/ns#' term='Form assistant'/><title type='text'>Hiding the Form Assistant</title><content type='html'>With  thanks to &lt;a href="http://www.microsoft.com/Businesssolutions/Community/NewsGroups/dgbrowser/en-us/default.mspx?pg=2&amp;amp;lang=en&amp;amp;cr=US&amp;amp;guid=&amp;amp;sloc=en-us&amp;amp;dg=microsoft.public.crm.developer&amp;amp;fltr="&gt;Bertil&lt;/a&gt;  (on the MS Dev forum)&lt;br /&gt;&lt;br /&gt;//Hide or Show RelatedInformationPane&lt;br /&gt;document.all.RelatedInformationPane.ToggleInformationPane();&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-7350660775231661526?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/7350660775231661526/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=7350660775231661526' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/7350660775231661526'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/7350660775231661526'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/11/hiding-form-assistant.html' title='Hiding the Form Assistant'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-7471876599563335864</id><published>2007-11-20T14:15:00.000+11:00</published><updated>2007-11-21T12:18:24.036+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='Lookups'/><title type='text'>Checking a lookup field for null and setting a default value</title><content type='html'>&lt;strong&gt;//functions to be defined in onLoad&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;// Also requires the function getattribsByLookup - this is detailed elsaewhere on this site.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;//----------------------------------------------------------&lt;br /&gt;setLookupDefault = function( entityName, lookupAttrib, defaultValue, attribsToReturn, fieldToSet ) {&lt;br /&gt;//----------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;  //get the lookup value and put it into the lookup field&lt;br /&gt;  var resultXml = getattribsByLookup(entityName, lookupAttrib, defaultValue, attribsToReturn );&lt;br /&gt;  var idValue = getXMLNodeText( resultXml, "//" + fieldToSet );&lt;br /&gt;  var tField = window.document.getElementById( fieldToSet );&lt;br /&gt;  var luObject = getLookupObject( idValue, defaultValue, entityName );&lt;br /&gt;  tField.DataValue = luObject;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;//----------------------------------------------------------&lt;br /&gt;getXMLNodeText = function( resultXml, bitToGet ) {&lt;br /&gt;//----------------------------------------------------------&lt;br /&gt;   return resultXml.selectSingleNode( bitToGet ).text&lt;br /&gt;};&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;//Code for object event &lt;/strong&gt;&lt;br /&gt;// This code sets the lookup field subjectid to 'Unclassified'&lt;br /&gt;// 'Unclassified' is an entry in the subject&lt;br /&gt;// The field subjectid appears on the Case form and is used by the Knowledgebase system&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;  var subjectItem = new Array;&lt;br /&gt;  subjectItem = crmForm.all.subjectid.DataValue;&lt;br /&gt;&lt;br /&gt;  if ( subjectItem == null ) {&lt;br /&gt;      var attribsToReturn = ['subjectid', 'title'];&lt;br /&gt;      setLookupDefault( 'subject', 'title', 'Unclassified', attribsToReturn, 'subjectid' );&lt;br /&gt;  }&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-7471876599563335864?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/7471876599563335864/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=7471876599563335864' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/7471876599563335864'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/7471876599563335864'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/11/checking-lookup-field-for-null-and.html' title='Checking a lookup field for null and setting a default value'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-9045303103228066036</id><published>2007-11-20T13:37:00.000+11:00</published><updated>2007-11-20T13:39:47.244+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='formatting'/><category scheme='http://www.blogger.com/atom/ns#' term='picklist'/><title type='text'>Setting the color of a picklist option</title><content type='html'>//get the field&lt;br /&gt;var list = crmForm.all.prioritycode;&lt;br /&gt;&lt;br /&gt;var option = list.options[0]; //select the option to be coloured&lt;br /&gt;option.style.backgroundColor = "#FF0000"; //Set the background color to red.&lt;br /&gt;option.style.color = "#FFFFFF"; //Set the text color to white.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-9045303103228066036?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/9045303103228066036/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=9045303103228066036' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/9045303103228066036'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/9045303103228066036'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/11/setting-color-of-picklist-option.html' title='Setting the color of a picklist option'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-3859858682672824998</id><published>2007-11-19T11:36:00.000+11:00</published><updated>2007-12-27T15:21:22.139+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='Workflow'/><title type='text'>Launching a Workflow Rule from Javascript</title><content type='html'>This is an absolutely awesome post By Mitch Milam.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogs.infinite-x.net/2007/06/15/launching-a-workflow-rule-from-javascript"&gt;http://blogs.infinite-x.net/2007/06/15/launching-a-workflow-rule-from-javascript&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The SQL Code for getting the WF ID is&lt;br /&gt;SELECT&lt;br /&gt; processID,&lt;br /&gt; [name]&lt;br /&gt;FROM&lt;br /&gt; wfprocess&lt;br /&gt;WHERE&lt;br /&gt; ProcessTypeCode = 1&lt;br /&gt;&lt;br /&gt;Thanks Mitch!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-3859858682672824998?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/3859858682672824998/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=3859858682672824998' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/3859858682672824998'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/3859858682672824998'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/11/launching-workflow-rule-from-javascript.html' title='Launching a Workflow Rule from Javascript'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-2359065262864473977</id><published>2007-11-19T10:28:00.000+11:00</published><updated>2007-11-19T10:29:35.174+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MetaData'/><category scheme='http://www.blogger.com/atom/ns#' term='fetchXML'/><title type='text'>MetaData Services</title><content type='html'>Another great article by Michael Hohne I didn't want to loose track of.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogs.msdn.com/crm/archive/2007/07/13/advanced-metadata-service-scenarios.aspx"&gt;http://blogs.msdn.com/crm/archive/2007/07/13/advanced-metadata-service-scenarios.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-2359065262864473977?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/2359065262864473977/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=2359065262864473977' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2359065262864473977'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2359065262864473977'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/11/metadata-services.html' title='MetaData Services'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-4572251109202856086</id><published>2007-11-17T08:05:00.001+11:00</published><updated>2009-10-22T13:20:49.859+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='IFrame'/><title type='text'>Showing related entities in an iFrame</title><content type='html'>Updated for Version 4...&lt;br /&gt;&lt;br /&gt;Sometimes I want to show related entities in iFrames on the forms rather than via the LHS navigator. The technique shown below allows you to do this quickly and easily and allows you to have a number of related entities showing this way on the same page.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;For this example I will show a related entity called new_city in an iFrame called Cities. In the IFrame properties it is important that restricting scripting is UNticked and that the ID is passed. The IFrame is therefore referenced as crmForm.all.IFRAME_Cities (ignore the old entiy names in the pics below).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_20QDRrZKd2c/Rz4NRdJBl9I/AAAAAAAAAAo/xJDUT8ugzJQ/s1600-h/IFrame.JPG"&gt;&lt;img style="CURSOR: hand" id="BLOGGER_PHOTO_ID_5133555218780362706" border="0" alt="" src="http://3.bp.blogspot.com/_20QDRrZKd2c/Rz4NRdJBl9I/AAAAAAAAAAo/xJDUT8ugzJQ/s320/IFrame.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I set the contents of the IFrame in the onLoad event using the following line of code and the function shown below&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The function that I use to set the contents of the IFrame is included as part of the onLoad for the page (make sure it is loaded before the line above is called)&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;//----------------------------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;function getFrameSource( tabSet ) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;//----------------------------------------------------------------------------------------------&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;if (crmForm.ObjectId != null) { &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;    var oId = crmForm.ObjectId; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;    var oType = crmForm.ObjectTypeCode; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;    var security = crmFormSubmit.crmFormSubmitSecurity.value;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;    //this two lines are optional and used to hide th link on the LHS navigation&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;    var navItem = window.document.getElementById( 'nav_'+ tabSet ); &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;    navItem.style.display = 'none';&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;&lt;br /&gt;    return "areas.aspx?oId=" + oId + "&amp;amp;oType=" + oType + "&amp;amp;security=" + security + "&amp;amp;tabSet=" + tabSet;&lt;br /&gt;&lt;br /&gt;} else {&lt;br /&gt;&lt;br /&gt;return "about:blank";&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;strong&gt;//Line to in set IFrame contents &lt;/strong&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;crmForm.all.IFRAME_Cities.src = getFrameSource('new_new_state_new_city');&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-4572251109202856086?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/4572251109202856086/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=4572251109202856086' title='14 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/4572251109202856086'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/4572251109202856086'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/11/showing-related-entities-in-iframe.html' title='Showing related entities in an iFrame'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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://3.bp.blogspot.com/_20QDRrZKd2c/Rz4NRdJBl9I/AAAAAAAAAAo/xJDUT8ugzJQ/s72-c/IFrame.JPG' height='72' width='72'/><thr:total>14</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9130244449362289081.post-9101930335871541263</id><published>2007-11-13T15:06:00.001+11:00</published><updated>2007-11-13T15:09:52.636+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SDK'/><category scheme='http://www.blogger.com/atom/ns#' term='customisation'/><title type='text'>Getting a list of entities and attributes from crm</title><content type='html'>A list of the entities and attributes can be easily retrieved from crm using the url&lt;br /&gt;&lt;br /&gt;http://[server:port]/sdk/list.aspx&lt;br /&gt;&lt;br /&gt;eg &lt;a href="http://mycrm:5555/sdk/list.aspx"&gt;http://mycrm:5555/sdk/list.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-9101930335871541263?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/9101930335871541263/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=9101930335871541263' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/9101930335871541263'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/9101930335871541263'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/11/getting-list-of-entities-and-attributes.html' title='Getting a list of entities and attributes from crm'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-9138567234250827877</id><published>2007-11-13T10:28:00.000+11:00</published><updated>2007-11-13T10:35:26.384+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='Lookups'/><title type='text'>Setting Lookup Fields</title><content type='html'>This function is intended to be included in the onLoad library of a page or a common .js library. Its purpose is to construct the required object/array for setting a lookup value on a form.&lt;br /&gt;&lt;br /&gt;An example of The calling function is also shown (using a value retrieved from a xml doc retrieved from another lookup function)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;//--------------------------------------------------------------------------------------------------&lt;br /&gt;function getLookupObject( idValue, lookupLabel, typeName ) {&lt;br /&gt;//Create an array to set as the DataValue for the lookup control.&lt;br /&gt;//then Create an Object add to the array.&lt;br /&gt;//Set the attibutes of teh object&lt;br /&gt;//--------------------------------------------------------------------------------------------------&lt;br /&gt;var lookupData = new Array();&lt;br /&gt;var lookupItem= new Object();&lt;br /&gt;//Set the id, typename, and name properties to the object.&lt;br /&gt;lookupItem.id = idValue;&lt;br /&gt;lookupItem.typename = typeName;&lt;br /&gt;lookupItem.name = lookupLabel;&lt;br /&gt;// Add the object to the array.&lt;br /&gt;lookupData[0] = lookupItem;&lt;br /&gt;// Set the value of the lookup field to the value of the array.&lt;br /&gt;return lookupData;&lt;br /&gt;};&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;strong&gt;Example Usage (to set the lookup field new_departmentid):&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;if ( resultXml.selectSingleNode("//new_departmentid") != null ) {&lt;br /&gt;f.new_departmentid.DataValue = getLookupObject( resultXml.selectSingleNode("//new_departmentid").text,&lt;br /&gt;resultXml.selectSingleNode("//new_departmentid/@name").text,&lt;br /&gt;'new_department' ) ;&lt;br /&gt;}&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-9138567234250827877?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/9138567234250827877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=9138567234250827877' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/9138567234250827877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/9138567234250827877'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/11/this-function-is-intended-to-be.html' title='Setting Lookup Fields'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-8031966934083122479</id><published>2007-11-13T10:20:00.001+11:00</published><updated>2007-11-13T10:59:40.795+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='fetchXML'/><category scheme='http://www.blogger.com/atom/ns#' term='Lookups'/><title type='text'>Setting Multiple vales from a lookup</title><content type='html'>This function should be embeded on the form onLoad and then called by the relevant fields onChange event.&lt;br /&gt;&lt;br /&gt;The code for &lt;a href="http://robscrm.blogspot.com/2007/11/getting-multiple-attibutes-from-related.html"&gt;getattribsByLookup&lt;/a&gt; and &lt;a href="http://robscrm.blogspot.com/2007/11/this-function-is-intended-to-be.html"&gt;getLookupObject&lt;/a&gt; can be found here. They should be included either in the forms onLoad function definitins or ina common .js library&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;//----------------------------------------------------------&lt;br /&gt;setSystemUserInformation = function() {&lt;br /&gt;//----------------------------------------------------------&lt;br /&gt;//setup some vars to use in constructing the formula and storing the values&lt;br /&gt;var f = crmForm.all;&lt;br /&gt;var entityForList = 'systemuser';&lt;br /&gt;var attribForFilter = 'systemuserid' ;&lt;br /&gt;var idToFetch = f.ownerid.DataValue[0].id+ '' ;&lt;br /&gt;var attribsToReturn = ['mobilephone', 'new_departmentid' ];&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;&lt;br /&gt;//clear the existing values&lt;br /&gt;f.new_departmentid.DataValue = "";&lt;br /&gt;f.new_mobilephone.DataValue="";&lt;br /&gt;var resultXml = getattribsByLookup( entityForList, attribForFilter, idToFetch, attribsToReturn );&lt;br /&gt;&lt;br /&gt;if ( resultXml.selectSingleNode("//mobilephone") != null ) {&lt;br /&gt;var tempText = resultXml.selectSingleNode("//mobilephone").text;&lt;br /&gt;f.new_mobilephone.DataValue = tempText;&lt;br /&gt;f.new_mobilephone.ForceSubmit=true;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;if ( resultXml.selectSingleNode("//new_departmentid") != null ) {&lt;br /&gt;f.new_departmentid.DataValue = getLookupObject( resultXml.selectSingleNode("//new_departmentid").text,&lt;br /&gt;resultXml.selectSingleNode("//new_departmentid/@name").text,&lt;br /&gt;'new_department' ) ;&lt;br /&gt;}&lt;br /&gt;};&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-8031966934083122479?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/8031966934083122479/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=8031966934083122479' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8031966934083122479'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8031966934083122479'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/11/setting-multiple-vales-from-lookup.html' title='Setting Multiple vales from a lookup'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-4096793187810800872</id><published>2007-11-13T10:13:00.000+11:00</published><updated>2007-11-13T10:57:53.210+11:00</updated><title type='text'>Getting Multiple attibutes from a related entity</title><content type='html'>The following function can be used to retrieve multiple attributes from a related entity. It returns an xml document which can then be parsed to place into the currently open document.&lt;br /&gt;&lt;br /&gt;I have included an eample of how this can be used here.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;You will need to replace the [ ] chars with &lt; &gt; (done to get around some blogger limitations&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;//----------------------------------------------------------&lt;br /&gt;function getattribsByLookup(entityForList, attribForFilter, idToFetch, attribsToReturn ) {&lt;br /&gt;// attribs to return is an array&lt;br /&gt;//----------------------------------------------------------&lt;br /&gt;var f = crmForm.all;&lt;br /&gt;var attribsList = '';&lt;br /&gt;for( i = 0; i [ attribsToReturn.length; i++ ) {&lt;br /&gt;attribsList += " [q1:Attribute]" + attribsToReturn[i] + "[/q1:Attribute]";&lt;br /&gt;}&lt;br /&gt;var xml = "" +&lt;br /&gt;"[?xml version=\"1.0\" encoding=\"utf-8\"?]" +&lt;br /&gt;"[soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"]" +&lt;br /&gt;" [soap:Body]" +&lt;br /&gt;" [query xmlns:q1=\"http://schemas.microsoft.com/crm/2006/Query\" xsi:type=\"q1:QueryExpression\" xmlns=\"http://schemas.microsoft.com/crm/2006/WebServices\"]" +&lt;br /&gt;" [q1:EntityName]" + entityForList + "[/q1:EntityName]" +&lt;br /&gt;" [q1:ColumnSet xsi:type=\"q1:ColumnSet\"]" +&lt;br /&gt;" [q1:Attributes]" +&lt;br /&gt;attribsList +&lt;br /&gt;" [/q1:Attributes]" +&lt;br /&gt;" [/q1:ColumnSet]" +&lt;br /&gt;" [q1:Distinct]true[/q1:Distinct]" +&lt;br /&gt;" [q1:Criteria]" +&lt;br /&gt;" [q1:FilterOperator]And[/q1:FilterOperator]" +&lt;br /&gt;" [q1:Conditions]" +&lt;br /&gt;" [q1:Condition]" +&lt;br /&gt;" [q1:AttributeName]" + attribForFilter + "[/q1:AttributeName]" +&lt;br /&gt;" [q1:Operator]Equal[/q1:Operator]" +&lt;br /&gt;" [q1:Values]" +&lt;br /&gt;" [q1:Value xsi:type=\"xsd:string\"]" + idToFetch + "[/q1:Value]" +&lt;br /&gt;" [/q1:Values]" +&lt;br /&gt;" [/q1:Condition]" +&lt;br /&gt;" [/q1:Conditions]" +&lt;br /&gt;" [/q1:Criteria]" +&lt;br /&gt;" [/query]" +&lt;br /&gt;" [/soap:Body]" +&lt;br /&gt;"[/soap:Envelope]" +&lt;br /&gt;"";&lt;br /&gt;var xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP");&lt;br /&gt;xmlHttpRequest.Open("POST", "/mscrmservices/2006/CrmService.asmx", false);&lt;br /&gt;xmlHttpRequest.setRequestHeader("SOAPAction","http://schemas.microsoft.com/crm/2006/WebServices/RetrieveMultiple");&lt;br /&gt;xmlHttpRequest.setRequestHeader("Content-Type", "text/xml; charset=utf-8");&lt;br /&gt;xmlHttpRequest.setRequestHeader("Content-Length", xml.length);&lt;br /&gt;xmlHttpRequest.send(xml);&lt;br /&gt;var resultXml = xmlHttpRequest.responseXML;&lt;br /&gt;return resultXml;&lt;br /&gt;};&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-4096793187810800872?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/4096793187810800872/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=4096793187810800872' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/4096793187810800872'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/4096793187810800872'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/11/getting-multiple-attibutes-from-related.html' title='Getting Multiple attibutes from a related entity'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-2522996932067344268</id><published>2007-11-09T15:51:00.000+11:00</published><updated>2007-11-09T14:19:33.479+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='js library'/><title type='text'>Using a central .js file</title><content type='html'>&lt;span style="color:#000000;"&gt;It is common to want to have a single file where commonly used Javascript can be stored. This makes it easier to maintain code consistently and also increases page load speeds. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;Because scripts loaded in this way are loaded asynchronously there is the possiblity / probability that if calls are made to functions loaded within the library immediately the function may not yet be available (because the code is stil being laoded).&lt;/span&gt;&lt;br /&gt;&lt;p&gt;After fiddling with this I have come upon the following solution. This material is an adaptaion/combination of material I found &lt;a href="http://www.microsoft.com/Businesssolutions/Community/Newsgroups/dgbrowser/en-us/default.mspx?query=onreadystatechange&amp;amp;dg=microsoft.public.crm.developer&amp;amp;cat=&amp;amp;lang=en&amp;amp;cr=US&amp;amp;pt=&amp;amp;catlist=8d3f188d-a0E9-40e4-86e2-46508a35c759&amp;amp;dglist=&amp;amp;ptlist=&amp;amp;exp=&amp;amp;sloc=en-us"&gt;here&lt;/a&gt; on the MSDN dev forum and also &lt;a href="http://unixpapa.com.js/dyna.html"&gt;http://unixpapa.com.js/dyna.html&lt;/a&gt;. The post on the forum by itself doesn't cater for the varoius browser anomolies but was a great place to get started.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Solution:&lt;/p&gt;&lt;p&gt;1. At the bottom of the js library file place the function call pageLoad(); (assuming that this is NOT defined in the library).&lt;/p&gt;&lt;p&gt;2. In the onLoad event for the CRM form add the following code at the BOTTOM of the form&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;//----------------------------------------------------------------------------------------------&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;pageLoad = function() {&lt;br /&gt;//now we do the stuff that includes stuff from within the loaded js page&lt;br /&gt;//----------------------------------------------------------------------------------------------&lt;br /&gt;// the code you want to execute once the page has loaded.&lt;br /&gt;//This can safely call functions in the library&lt;/span&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;};&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;//=================================================&lt;br /&gt;//Script for including external JS files&lt;br /&gt;//The last line of this includes a call to the pageLoad function&lt;br /&gt;//=================================================&lt;br /&gt;var script = document.createElement('script');&lt;br /&gt;script.language = 'javascript';&lt;br /&gt;script.src = '/CustomDevelopment/jsLibraries/FormActions.js?';&lt;br /&gt;document.getElementsByTagName('head')[0].appendChild(script);&lt;/span&gt;&lt;/p&gt;&lt;span style="color:#000000;"&gt;&lt;strong&gt;Explanation:&lt;/strong&gt;&lt;br /&gt;This technique assumes you are able to edit the js library files. The js Library file in this case has been to a directory Customdevelopment/js Libraries located off the root of the web server directory.&lt;br /&gt;&lt;br /&gt;The js library file has as its last line the function call pageLoad().&lt;br /&gt;&lt;br /&gt;The js library is attached as the last section of the onLoad code. The reason for doing this is because Javascript libraries are loaded asyncronously. By placing the inclusion at the bottom of the onLoad code and placing the function call at the bottom of the js file it can be known that all functions defined in the onLoad code and in the library will be available.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Caveats:&lt;/strong&gt;&lt;br /&gt;I am pretty sure that this technique will not work well with the Outlook client and definetly not when it is offline.&lt;br /&gt;&lt;br /&gt;My suggestion is that this could be used in a dev environment and then the functions cut and pasted from the library file into the top of the forms if needed in the production environment. It should at least make the dev process more standardised and this should help contribute to better codig etc :-)&lt;br /&gt;&lt;br /&gt;It definietly helps to have a standard set of functions that you know work and are all the same.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-2522996932067344268?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/2522996932067344268/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=2522996932067344268' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2522996932067344268'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2522996932067344268'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/10/using-central-js-file.html' title='Using a central .js file'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-2359925150958175356</id><published>2007-11-09T15:45:00.000+11:00</published><updated>2007-11-15T16:19:47.386+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='fetchXML'/><title type='text'>Caclulating with values from siblings</title><content type='html'>I have a form where I want to be able to specify a percentage value. I also want to make sure that the total value of all siblings is not more than 100 and to calculate the value based on teh value in the parent document.&lt;br /&gt;&lt;br /&gt;In this case it was Operatives for a Deal. My structure is&lt;br /&gt;Deal $20,0000&lt;br /&gt;Operative 1 : 25%&lt;br /&gt;Operative 2: 55%&lt;br /&gt;Operative 3: 20%&lt;br /&gt;&lt;br /&gt;What I want to prevent is somebody coming along and changing the value of Operative 3to 30%.&lt;br /&gt;&lt;strong&gt;To do this i include this code in the forms onLoad event:&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;//----------------------------------------------------------&lt;br /&gt;checkPercentage = function() {&lt;br /&gt;//----------------------------------------------------------&lt;br /&gt;  var f = crmForm.all;&lt;br /&gt;  var retVal = false;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;  //setup some vars to use in constructing the formula and storing the values&lt;br /&gt;  var entityForList = 'new_listingoperative';&lt;br /&gt;  var attribForFilter = 'new_dealid' ;&lt;br /&gt;  var idToFetch = f.new_dealid.DataValue[0].id+ '' ;&lt;br /&gt;  var attribToReturn = 'new_percentage';&lt;br /&gt;  var resultXml = getattribByLookup( entityForList, attribForFilter, idToFetch, attribToReturn );&lt;br /&gt;  var totalPerc = 0.00;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;  if ( resultXml.selectSingleNode("//RetrieveMultipleResult") != null ) {&lt;br /&gt;      var node = resultXml.selectSingleNode("//RetrieveMultipleResult");&lt;br /&gt;      var percNodes = node.selectNodes("//new_percentage");&lt;br /&gt;      var idNodes = node.selectNodes("//new_listingoperativeid");&lt;br /&gt;&lt;br /&gt;     // if this is a new &amp;amp; unsaved form add it to the total before cycling through the return list&lt;br /&gt;     var totalPerc = 0.00;&lt;br /&gt;     if ( crmForm.FormType == 1 ) { totalPerc += f.new_percentage.DataValue; }&lt;br /&gt;&lt;br /&gt;      //this list will only include saved forms&lt;br /&gt;      for ( i = 0; i &lt; percNodes.length; i++ ) {&lt;br /&gt;          if( isCurrentRecord( idNodes[ i ].text ) ) {&lt;br /&gt;              totalPerc += f.new_percentage.DataValue;&lt;br /&gt;          } else {&lt;br /&gt;              totalPerc += parseFloat( percNodes[ i ].text );&lt;br /&gt;         }&lt;br /&gt;     }&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  if( totalPerc &lt;= 100.00 ) { retVal = true; }&lt;br /&gt;  return retVal ;&lt;br /&gt;&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;strong&gt;And this code in the fields onChange event&lt;/strong&gt;&lt;br /&gt;if( !checkPercentage() ) {&lt;br /&gt;    alert( 'ERROR: The total of all percentage amounts must be no greater than 100%');&lt;br /&gt;     crmForm.all.new_percentage.DataValue = 0.00;&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-2359925150958175356?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/2359925150958175356/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=2359925150958175356' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2359925150958175356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/2359925150958175356'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/11/caclulating-with-values-from-siblings.html' title='Caclulating with values from siblings'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-3450373665238565816</id><published>2007-11-07T16:50:00.000+11:00</published><updated>2007-11-13T10:13:06.398+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fetchXML'/><title type='text'>Getting an attribute from a related entity</title><content type='html'>This code / function can be used to retrieve a particular field/attribte from related records. It passes back an XML doc which can then be parsed to get the particular value.&lt;br /&gt;&lt;br /&gt;I have substituted the &lt;&gt; chars with [ and ] due to the probs of rendering in blogger&lt;br /&gt;&lt;br /&gt;&lt;span size="2"&gt;//--------------------------------------------------------------------------------------------------&lt;br /&gt;getattribByLookup = function(entityForList, attribForFilter, idToFetch, attribToReturn ) {&lt;br /&gt;//--------------------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;var f = crmForm.all;&lt;br /&gt;var xml = "" +&lt;br /&gt;"[?xml version=\"1.0\" encoding=\"utf-8\"?]" +&lt;br /&gt;"[?xml:namespace prefix = soap /][soap:envelope xsd="\" xsi="\" soap="\"]" +&lt;br /&gt;" [soap:body]" +&lt;br /&gt;" [query xmlns="\" type="\" q1="\"]" +&lt;br /&gt;" [?xml:namespace prefix = q1 /][q1:entityname]" + entityForList + "[/q1:entityname]" +&lt;br /&gt;" [q1:columnset type="\"]" +&lt;br /&gt;" [q1:attributes]" +&lt;br /&gt;" [q1:attribute]" + attribToReturn + "[/q1:attribute]" +&lt;br /&gt;" [/q1:attributes]" +&lt;br /&gt;" [/q1:columnset]" +&lt;br /&gt;" [q1:distinct]true[/q1:distinct]" +&lt;br /&gt;" [q1:criteria]" +&lt;br /&gt;" [q1:filteroperator]And[/q1:filteroperator]" +&lt;br /&gt;" [q1:conditions]" +&lt;br /&gt;" [q1:condition]" +&lt;br /&gt;" [q1:attributename]" + attribForFilter + "[/q1:attributename]" +&lt;br /&gt;" [q1:operator]Equal[/q1:operator]" +&lt;br /&gt;" [q1:values]" +&lt;br /&gt;" [q1:value type="\"]" + idToFetch + "[/q1:value]" +&lt;br /&gt;" [/q1:values]" +&lt;br /&gt;" [/q1:condition]" +&lt;br /&gt;" [/q1:conditions]" +&lt;br /&gt;" [/q1:criteria]" +&lt;br /&gt;" [/query]" +&lt;br /&gt;" [/soap:body]" +&lt;br /&gt;"[/soap:envelope]" +&lt;br /&gt;"";&lt;br /&gt;&lt;br /&gt;var xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP");&lt;br /&gt;xmlHttpRequest.Open("POST", "/mscrmservices/2006/CrmService.asmx", false);&lt;br /&gt;xmlHttpRequest.setRequestHeader("SOAPAction","http://schemas.microsoft.com/crm/2006/WebServices/RetrieveMultiple");&lt;br /&gt;xmlHttpRequest.setRequestHeader("Content-Type", "text/xml; charset=utf-8");&lt;br /&gt;xmlHttpRequest.setRequestHeader("Content-Length", xml.length);&lt;br /&gt;xmlHttpRequest.send(xml);&lt;br /&gt;var resultXml = xmlHttpRequest.responseXML;&lt;br /&gt;return( resultXml );&lt;br /&gt;};&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-3450373665238565816?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/3450373665238565816/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=3450373665238565816' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/3450373665238565816'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/3450373665238565816'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/11/getting-attributes-from-related-entity.html' title='Getting an attribute from a related entity'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-3208722681159730272</id><published>2007-10-26T10:11:00.000+10:00</published><updated>2008-11-13T20:49:30.194+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><title type='text'>Debugging Javascript</title><content type='html'>Want to be able to step through your Javascript? There are two really easy steps...&lt;br /&gt;&lt;br /&gt;1. Add: debugger to the top of the onload javbascript code&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_20QDRrZKd2c/RyEzeRSiw1I/AAAAAAAAAAU/iMYfDA-ugCU/s1600-h/debug.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_20QDRrZKd2c/RyEzeRSiw1I/AAAAAAAAAAU/iMYfDA-ugCU/s320/debug.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5125434446054605650" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. Enable the debugger in your browser...&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_20QDRrZKd2c/RyEyaBSiw0I/AAAAAAAAAAM/q0Rk3iMSAaU/s1600-h/ie.JPG"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_20QDRrZKd2c/RyEyaBSiw0I/AAAAAAAAAAM/q0Rk3iMSAaU/s320/ie.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5125433273528533826" /&gt;&lt;/a&gt; (Uncheck the IE debug option)&lt;br /&gt;&lt;br&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-3208722681159730272?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/3208722681159730272/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=3208722681159730272' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/3208722681159730272'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/3208722681159730272'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/10/debugging-javascript.html' title='Debugging Javascript'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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://3.bp.blogspot.com/_20QDRrZKd2c/RyEzeRSiw1I/AAAAAAAAAAU/iMYfDA-ugCU/s72-c/debug.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9130244449362289081.post-6398788463586239059</id><published>2007-10-18T10:42:00.001+10:00</published><updated>2007-10-18T10:43:37.894+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><title type='text'>showing the page source</title><content type='html'>Enter the following into the address bar:&lt;br /&gt;&lt;br /&gt;    javascript:alert(document.body.outerHTML)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-6398788463586239059?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/6398788463586239059/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=6398788463586239059' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/6398788463586239059'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/6398788463586239059'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/10/showing-page-source.html' title='showing the page source'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-8912695649551247352</id><published>2007-10-17T10:40:00.000+10:00</published><updated>2007-10-17T10:47:38.487+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Event functions'/><category scheme='http://www.blogger.com/atom/ns#' term='functions'/><title type='text'>Getting Systemuser &amp; related entity fields</title><content type='html'>&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;//----------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;getSystemUserInformation = function() {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;//----------------------------------------------------------&lt;br /&gt;  var f = crmForm.all;&lt;br /&gt;  //setup some vars to use in constructing the formula and storing the values  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  var entityForList = 'systemuser';  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  var attribForFilter = 'systemuserid' ;  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  var idToFetch = f.ownerid.DataValue[0].id+ '' ;  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  var attribToReturn = 'mobilephone';  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  var attribToRtn2 = 'new_departmentid';&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;&lt;br /&gt;  var xml = "" +  &lt;br /&gt;  "&lt;?xml version=\"1.0\" encoding=\"utf-8\"?&gt;" +  &lt;br /&gt;  "&lt;soap:envelope soap="\"&gt;&lt;a href="http://schemas.xmlsoap.org/soap/envelope//"&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;http://schemas.xmlsoap.org/soap/envelope/\&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;" xmlns:xsi=\"&lt;/span&gt;&lt;a href="http://www.w3.org/2001/XMLSchema-instance/"&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;http://www.w3.org/2001/XMLSchema-instance\&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;" xmlns:xsd=\"&lt;/span&gt;&lt;a href="http://www.w3.org/2001/XMLSchema/"&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;http://www.w3.org/2001/XMLSchema\&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;"&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "  &lt;soap:body&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "    &lt;query q1="\"&gt;&lt;a href="http://schemas.microsoft.com/crm/2006/Query/"&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;http://schemas.microsoft.com/crm/2006/Query\&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;" xsi:type=\"q1:QueryExpression\" xmlns=\"&lt;/span&gt;&lt;a href="http://schemas.microsoft.com/crm/2006/WebServices/"&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;http://schemas.microsoft.com/crm/2006/WebServices\&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;"&gt;"  &lt;/span&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;+   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "      &lt;q1:entityname&gt;" + entityForList + "&lt;/q1:EntityName&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "      &lt;q1:columnset type="\"&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "        &lt;q1:attributes&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "          &lt;q1:attribute&gt;" &lt;/span&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;+ attribToReturn + "&lt;/q1:Attribute&gt;" +  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "          &lt;q1:attribute&gt;" + attribToRtn2 + "&lt;/q1:Attribute&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "        &lt;/q1:Attributes&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "      &lt;/q1:ColumnSet&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "      &lt;q1:distinct&gt;true&lt;/q1:Distinct&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "      &lt;q1:criteria&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "        &lt;q1:filteroperator&gt;And&lt;/q1:FilterOperator&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "        &lt;q1:conditions&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "          &lt;q1:condition&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "            &lt;q1:attributename&gt;" + attribForFilter + "&lt;/q1:AttributeName&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "            &lt;q1:operator&gt;Equal&lt;/q1:Operator&gt;" +   "            &lt;q1:values&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "              &lt;q1:value type="\"&gt;" + idToFetch + "&lt;/q1:Value&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "            &lt;/q1:Values&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "          &lt;/q1:Condition&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "        &lt;/q1:Conditions&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "      &lt;/q1:Criteria&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "    &lt;/query&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "  &lt;/soap:Body&gt;" +     &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "&lt;/soap:Envelope&gt;" +   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;  "";&lt;br /&gt;  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;var xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP");  xmlHttpRequest.Open("POST", "/mscrmservices/2006/CrmService.asmx", false);  xmlHttpRequest.setRequestHeader("SOAPAction","&lt;/span&gt;&lt;a href="http://schemas.microsoft.com/crm/2006/WebServices/RetrieveMultiple"&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;http://schemas.microsoft.com/crm/2006/WebServices/RetrieveMultiple&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;");  xmlHttpRequest.setRequestHeader("Content-Type", "text/xml; charset=utf-8");  xmlHttpRequest.setRequestHeader("Content-Length", xml.length);  xmlHttpRequest.send(xml);  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;var resultXml = xmlHttpRequest.responseXML;  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;//alert( resultXml.xml )&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;if ( resultXml.selectSingleNode("//mobilephone") != null ) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;    var tempText = resultXml.selectSingleNode("//mobilephone").text;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;    f.new_mobilephone.DataValue = tempText;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;    f.new_mobilephone.ForceSubmit=true;  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;}&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;if ( resultXml.selectSingleNode("//new_departmentid") != null ) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;    f.new_departmentid.DataValue = setlookupValue( resultXml.selectSingleNode("//new_departmentid").text,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;                      resultXml.selectSingleNode("//new_departmentid/@name").text,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;                      'new_department' ) ;  }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:78%;"&gt;};&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-8912695649551247352?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/8912695649551247352/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=8912695649551247352' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8912695649551247352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/8912695649551247352'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/10/getting-systemuser-related-entity.html' title='Getting Systemuser &amp; related entity fields'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-1233327049688599858</id><published>2007-10-17T10:08:00.000+10:00</published><updated>2007-11-07T16:32:04.670+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='Lookups'/><title type='text'>Setting a Lookup Value</title><content type='html'>This code snippet should be copied into the form onLoad event code so that it is available as a global function for the form.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;//--------------------------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;setlookupValue = function( idValue, textValue, entityName ) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;//---------------------------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;var lookupItem = new Object(); &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;var lookupData = new Array(); &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;lookupItem.id = idValue; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;lookupItem.name = textValue; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;lookupItem.typename = entityName; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;lookupData[0] = lookupItem; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;return( lookupData );&lt;br /&gt;};&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;It can then be called from within the form (replace the bits in square brackets[ ]):&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;var f = crmForm.all;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;f.[fieldSchemaName]&lt;fieldschemaname&gt;.DataValue = setlookupValue( [idValue], [&lt;/span&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;lookupText], [&lt;/span&gt;&lt;span style="font-family:trebuchet ms;font-size:85%;"&gt;entitySchemaName] );&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-1233327049688599858?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/1233327049688599858/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=1233327049688599858' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/1233327049688599858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/1233327049688599858'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/10/setting-lookup-value.html' title='Setting a Lookup Value'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-459751692668323546</id><published>2007-10-16T16:23:00.000+10:00</published><updated>2008-08-13T10:12:30.147+10:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='About Me'/><title type='text'>Hello World!</title><content type='html'>&lt;p&gt;I started working with Microsoft CRM about 2 years ago now and it has been an 'interesting' journey. This is going to be my place for putting all CRM bits (AJAX, javscript, c#, xml, webservices etc) I come across or discover myself and don't want to forget.   &lt;br /&gt;    &lt;br /&gt;One of the most helpful guys out there for MS CRM stuff has to be Michael H&amp;#246;hne. His website is excellent and full of fantastic tools and stuff. Thank you!    &lt;br /&gt;    &lt;br /&gt;Some of what is on this site is derived from stuff from there (and other places). I will always endeavour to acknowledge where the original came from.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-459751692668323546?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/459751692668323546/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=459751692668323546' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/459751692668323546'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/459751692668323546'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/11/hello-world.html' title='Hello World!'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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-9130244449362289081.post-5258938288169678267</id><published>2000-12-15T18:12:00.000+11:00</published><updated>2007-12-17T14:22:24.196+11:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Blogs'/><title type='text'>Blogs I like</title><content type='html'>The Blogs I like are here:&lt;br /&gt;&lt;br /&gt;(this list is very incomplete and I will be adding a more very soon!)&lt;br /&gt;&lt;br /&gt;&lt;a href="http://crmstuff.blogspot.com/"&gt;http://crmstuff.blogspot.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.stunnware.com/crm2/"&gt;http://www.stunnware.com/crm2/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9130244449362289081-5258938288169678267?l=robscrm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://robscrm.blogspot.com/feeds/5258938288169678267/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9130244449362289081&amp;postID=5258938288169678267' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/5258938288169678267'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9130244449362289081/posts/default/5258938288169678267'/><link rel='alternate' type='text/html' href='http://robscrm.blogspot.com/2007/12/blogs-i-like.html' title='Blogs I like'/><author><name>Rob</name><uri>http://www.blogger.com/profile/03594123093414010414</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>
