Friday, November 17, 2006

Workflows and the user they run as

I would just like to make you aware of the following fact:
- Workflows run manually, are run as the current user.
- Workflows triggered by "Create", are run as the user who created the workflow.

This is true for the normal workflow methods and mostly concerns "Modified by". Ex. Modified by will be wrong if a Workflow updates an entitity after it has been created. (unless the same person created the workflow and the entity).

I havn't checked if this is true when using impersonation in custom workflow assemblies aswell, but I would imagine it is. The way to handle it is to set the service.CalledIdValue to the user you want to be the modifier.

Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

Friday, November 10, 2006

Offline client difficulties concerning customizations - be aware...

Hi,

I just wanted to discuss the problems concerning customizations and extensions concerning the outlook client in general and the offline client specifically.

When customizing CRM there are many different customization points, among the most important, callouts, or Business Logic Extension. These will work well on the desktop version of the Outlook client since it comunicates directly with the CRM server, in more or less the same way that the web client does. Please note my previous postings concerning how to handle the problem of the "Settings" menu, disapearing from the web-menu. In short, install the Outlook client to one URL and use the webclient on another, and your problem will be solved. It is due to caching problems in IE.

However, when using the laptop client in offline mode, all logic is handled in the client and the callouts are not run, as far as I know, not even when syncronization is done.

Concerning custom aspx-pages on a separate website, it might be possible to create a new site locally on the offline computer and let Casini handle that aswell, and the have special tags in sitemap and isv.config to handle the offline functionality. The webservice won't be available, so I don't know how much functionality you can really create. Perhaps, you can temporarily store some information and connect to the webservice when syncronization is done when the CRM-client goes online. How to connect to this and trigger it, I don't know.

In conclusion, I would like to suggest that you thouroghly revise each customization from the offline perspective and decide how to implement, block or leave out some funtionality on the offline client. To avoid problems with the customer, I would also suggest dealing with this at an early stage in the project.

Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

CRM Exchange Router - facts and fiction

What does the CRM Exchange Router really do? There are many missconceptions on the subject and a recent posting on the CRM-Team Blog tries to rectify this. Very interesting reading, esspecially for installation of the Router in very controlled environments.

(Click the heading!)

Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

Thursday, November 09, 2006

Tectura Nav - CRM connector is now Celenia

The Tectura CRM-Nav connector that I have blogged about earlier has been developed by the company Celenia in Denmark. Due to all the problems with the company Tectura, it has now been decided that Celenia will market, sell and support their product by them selves and not via Tectura. This is good news since Tectura has been very problematic to work with.

Click the heading to go to Celenia.


Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

Thursday, November 02, 2006

Using webservices from callouts developed in VS 2005

Arash Ghanaie previously published an excellent article on how to develop callouts using VS2005. A problem when doing this was however, that if you were using the common way of accessing the crm webservice, by adding a web reference, the program wouldn't compile since the web reference used .NET 2.0. The solution is to create a file containing all the references to the web service using the program wsdl.exe, and using the .NET 1.1 version of it.

Please check the link for further info on how it is done! (click the heading!)

Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

Tuesday, October 31, 2006

Identity 2.0

Well, when discussing impersonation we are not very far away from global internet authentication. I found this great presentation on how identification probably will work on the Internet in the future. It deals with webservices and CRM:s (Salesforce.com acctually). Above being a very interesting presentation concerning facts, the presentation technique is quite unique - check it out!

Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

Friday, October 27, 2006

Impersonation - a few tips...

I was working with an aspx-page that was called by an isv.config.xml-button today and had problems with getting the impersonation to work. It was quite obvious when I solved it. If you have similar problems, I have a few tips:

Usually the external webpages are run from another website that CRM. Make sure this website has anonymous access shut off and Integrated Windows Authentication turned on. Also make sure that the tag <identity impersonate="true"/> is in the web.config-file of the root of the website.

To avoid getting login-dialogs, make sure the site with the external pages are in trusted sites or Local Intranet Sites in IE.

If you have followed these tips, impersonation should work. The SDK mentions that users have to be in the PrivUserGroup but when I tried it still worked. Maybe that is needed in some special cases. If I manage to understand when, I will write about it.

Happy impersonating!

Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

Wednesday, October 25, 2006

PAR One by One

This is directed to CRM-consultants in Sweden.

If you don't already know of it, check out the product One By One from PAR Adressregistret AB. It enables you to get updated data directly from PAR into CRM including a service that will make sure you do not have any doubles. Click the heading of the post to go to their site!

Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

Cool product - Enecto Prospect Finder

I attended a local CRM conference yesterday and I met a very interesting company with a very cool product! The company is Enecto and their product ProspectFinder helps you monitor who visits you websites and their behaivior on you site, like what pages they are looking at and how long.

It works by looking up IP-adresses in a huge database containing most companys of more than 8 emplyees in northern Europe. Then, by using information from DnB and filtering on the more interesting visitors, automated lead creaton can be made directly into you CRM-system.

At the moment there is no connector to MS CRM but according to the guy I talked to, Petter Andersson, it was in the progress of being made.

The lengths of where you can go with this product are far from exploited. The more obvious of creating leads from interesting visitors and adapting content to different companytypes, are discussed in more depth on their site. Look around, and you might get a phone call :)

Click the heading of this posting to go to their site!

Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

Rumor: Microsoft will release Navision Integration i Q1/Q2 2007

I have spoken to several people in the CRM community and according to what I have heard, although not directly from Microsoft, is that they will release an integration engine for integration between MS CRM 3 and Dynamics Nav. However, it is uncertain if it will only concern the new version of Dynamics Nav, soon to be released or will work also for the current version of Nav. This is good news since the connector I have worked with from the Danish company Tectura has left many question unanswered and lots to wish for.

I still havn't had time to test the BizTalk connector and I havn't talked to anyone who has. If you have, I would very much like to know your feelings about it.

Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

Friday, October 20, 2006

Useful CRM related documents

Sonoma Partners have published several useful CRM documents on their website. Check them out! (Click the header!)

Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

AJAX Activity Indicators

AJAX is often used in customization of MS CRM and one of the uses is to give the client a more user friendly interface. One of the important aspects of this can be progressbars (or similar) to inform the user that something is happening. I found a page with lots of AJAX Activity Indicators. Click the heading to go there.

Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

Wednesday, October 18, 2006

MS releases the specification for VHD

Microsoft will release the specification for the file format VHD to the public. This is great since this will make way for loads of 3:rd party software for VHD:s! Click the heading...

Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

Microsoft CRM Sandbox downloads

If you havn't already checked it out, check out the dowload zone at Microsoft CRM Sandbox. Click the heading of this posting!


Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

Installation problems with Office sp2 and windows update

A CRM-thread on the swedish forum IT-Proffs currently discusses some installation issues concerning Office 2003 SP2, where the administrator has problems installing the CRM client when SP2 is installed. Installation is not my main vertical but I found this related thread on Google Groups concerning installation problems and Office which might help some of you who have encountered problems with your CRM-Client after using microsoft update.

LINK

Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

Wednesday, October 11, 2006

Cloning objects in CRM

Ever wanted to clone an object in CRM? There is no easy way to do this with "out-of-the-box" functionality. However, on the following link you can download some code that can do this for you! http://www.c360.com/Clone.aspx

I just found it and havn't had time to test it.

Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

Tuesday, October 10, 2006

Adding buttons to the toolbar

I just read a good posting on a blog concerning how to add buttons to the toolbar. The most obvious way is to use the isv.config.xml but this page also explains how to add buttons to the toolbar using javascript. This technique can be expanded to do even more interesting things with the GUI, if needed. Enjoy:

http://www.tconv.com/blogs/crm3tips/2006/03/modifying-standard-toolbars-in.html

Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

Monday, October 09, 2006

Changing of CNAME, not without problems for Outlook client

A customer of mine wanted to minimize the installation of clients and wanted to install the clients using a CNAME and then be able to point this to either the test/education environment or the production environment. We tried it out and it seemed to work (we used the lightweight client of course). However, after a while I found one feature in Outlook that stopped working, the function to invite attendees to a meeting.

If you created a normal appointment in outlook without attendees, and linked it to CRM. All was well, but if you tried to link an appointment with attendees, you got an error message, and the appointment wasn't saved to CRM.

There was a work-around, by first creating the appointment without attendees, saving it, repopening it and adding attendees. You would get the same error message, but since the appointment was created in CRM the first time you saved the appointment, and Outlook sent the invitation the second time. Most of the functionality worked with some extra clicking.

When the client was reinstalled using the same CNAME, this worked, just like it should.

This is a bit strange, I actually hadn't expected it to work at all, but that it worked in general and that just this function did not, was a bit strange.

Please note that even the desktop clients are registered in the CRM SQL Database, which is an indication against trying this techique. Perhaps it would work if it was the same server and the same database, but with a new IP.

Generally I would advise against trying this, and I have heard of people trying to modify the registry to achieve the same functionality (to be able to skip reinstalling clients) but none have succeded as far as I know. If you have, please let me know. I will of course give you credit!

Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

Tuesday, October 03, 2006

BizTalk adapter for MS CRM

Hi,
Microsoft have just released the BizTalk adapter for MS CRM 3.0, enabling connections to other software which have connectors to BizTalk.

I havn't tried it, but would like to, especially since the Tectura integration between CRM and Nav in many ways is incomplete. BizTalk is also a more general integration engine which enables connection to other ERP-systems like Oracle, SAP and more.

You can download it here: http://www.microsoft.com/downloads/details.aspx?FamilyId=4628FCA6-388D-45BC-A154-453B920DBCB8&displaylang=en

Gustaf Westerlund
CRM and SharePoint Consultant

Humandata AB
www.humandata.se

Loading of Outlook client error

Some of you might have the problem of the Outlook client crashing when loading. I read an interesting posting on the official MS CRM Forum, and I have cut-n-pasted it here for your pleasure! It is a great tip, thanks a lot to Mike Sullivan at Quest Business Solutions!
____

Tired of getting CRM Outlook client errors. "An error occurred loading
Microsoft CRM functionality. Try restarting Microsoft Outlook or
contact your system admin if errors persist"

I've had the problem at two clients since Feb and finally solved it!
The symptoms are that every other time you open Outlook CRM client
installed, you get the above error and the toolbar is disabled. I've
read just about every posting out there and tried them all, but they
just weren't the right fix for me.

I would consider this a definite bug in the crmaddin.dll file. The
problem is simple: When the crmaddin.dll file is loading the Outlook
client GUI using the isv.config.xml file, if it runs into an "empty
menu" (a menu with not menuitems below to click on), it will fail to
create that menu on every other attempt, and stops processing the XML
file, so it doesn't load the toolbar..and you get the error box "An
error occurred loading Microsoft CRM functionality. Try restarting
Microsoft Outlook or contact your system admin if errors persist"

The problem is easy to identify (and fix) if you look in the
isv.config.xml file and have something like I did at the first client:

<MenuBar>
<!-- Custom Menus that appear between the Goto Menu and the Help
Menu -->
<CustomMenus>
<Menu Title="My Custom Menu">
</Menu>
</CustomMenus>
</MenuBar>

To fix it, just remove the empty menu.

However, it's not so obvious in the sample below.....

<MenuBar>
<!-- Custom Menus that appear between the Goto Menu and the Help
Menu -->
<CustomMenus>
<Menu Title="My Custom Menu">
<MenuItem Title="My Workplace"
Url="http://crm/c360/MyWorkPlace/redirect.htm" WinMode="0"
Client="OutlookLaptopClient" AvailableOffline="false" />
<MenuItem Title="My Workplace"
Url="/c360/MyWorkPlace/redirect.htm" WinMode="0"
Client="Web,OutlookWorkstationClient" AvailableOffline="false" />
<MenuItem Title="My Summary"
Url="/c360/Summary/redirect.htm" WinMode="0"
Client="Web,OutlookWorkstationClient" AvailableOffline="false" />
<MenuItem Title="My Summary"
Url="http://crm/c360/Summary/redirect.htm" WinMode="0"
Client="OutlookLaptopClient" AvailableOffline="false" />
<MenuSpacer />
<MenuItem Title="c360 Products"
Url="http://www.c360.com/products.aspx" WinMode="0"
Client="OutlookLaptopClient" AvailableOffline="false" />
</Menu>
</CustomMenus>
</MenuBar>

In the 2nd sample above, what's not apparent is that there are no
MenuItems that are Available Offline - all are false. So, if the
Outlook Laptop Client goes offline, the custom Menu is left empty, and
the error occurs while the user is offline, and will disappear when the
user goes online.

As a workaround, I made sure that at least one Menu item was available
offline by changing the following:
<MenuItem Title="c360 Products"
Url="http://www.c360.com/products.aspx" WinMode="0"
Client="OutlookLaptopClient" AvailableOffline="true" />

Viola! No more problem...and a bit more advertising for c360.

Disclaimer: I just used c360 as my example, as this problem is not
related to c360 products, rather to modifications made to the
isv.config.xml file and what I feel is a bug in the crmaddin.dll file.

Michael Sullivan
www.questnbs.com
Quest Business Solutions

--- END

Thanx again Mike. Great tip!

Gustaf