SharePoint 2010

The NDA of the new version of SharePoint 2010 has been lifted and hence a lot of new functionality is out!

You can read a lot about it on the SharePoint Team Blog here: http://blogs.msdn.com/sharepoint/archive/2009/10/19/sharepoint-2010.aspx

From a CRM perspective, this is very interesting. The new version of CRM is rumored to have a much tighter integration with SharePoint, so from that perspective it is almost essential to learn a bit more about SharePoint.

There are some areas of SharePoint that are of special interest from a CRM perspective:

  • Enhance BI functionality including performance Point server now included in the new SharePoint
  • Business Data Catalog enhanced – an excellent tool to work with in relations to CRM
  • Enhanced Document Management – one of the weaker parts of Dynamics CRM 4 is the built in document management so integration with SharePoint in regards to document management is often used.
  • Enhanced API and development capabilities. When integration with SharePoint development is often required to create the necessary functionality. The SharePoint API is currently ok but compared to the excellent API of Dynamics CRM, it can do with an upgrade. Hopefully to the mark set by Dynamics CRM.

So that is all good news.

However, there is still one major issue from a CRM – SharePoint integration perspective that Microsoft REALLY need to address and that is the licensing issues of SharePoint users working in a very slight way with CRM data by, for instance, looking at data from a data warehouse in SharePoint with drill-down functionality. Today, all users with access to this need to have a full read only CRM license. Similarly, if there is a webpart used in SharePoint to create leads in CRM, but with no other need for access, a full CRM CAL is required for all users of the Intranet since they are employees and hence cannot use the external connector license. This is preposterous! Please Microsoft, we really like CRM, and we want to pay our dues, just make it fair!

Gustaf Westerlund
Microsoft Dynamics CRM Chief Architect

 

Logica
www.logica.com

Strange problem with Country and Country Code

A couple of days ago I had the wierdest error. We have added some fields on Acccount and a new entity called Billing Account so that there is Contry and Country Code in both. The wierd thing was that when I opened the tab with the field, after about 1 second, the country changed to “United States” and the country code to “1”. This even happened to the custom entity.

I was confused. The country code was supposed to be according to the so and so ISO standard, where Sweden is SE. Hence 1 was very incorrect. I started looking if some tired programmer might have added some javascript or similar but found nothing out of the ordinary. Then I though I’d just like to see what happens when I run IE directly from the CRM server, and praise and behold, it didn’t change the field! That narrowed it down. First I thought it was google Toolbar, so I uninstalled it, but the error was still there. Then I tried running IE in InPrivate surfing and then it didn’t change it! So, there must be some plugin in IE that causes it. After some uninstalling and testing I found it, Swedbank has this “e-kort” or e-card program that let’s you generate a one-time VISA number, this was the program that caused this error. It is probably some program this Swedish bank has bought from some american company and it has this weird feature.

Well, that just teaches you, don’t install a lot of crap into IE. 🙂

Gustaf Westerlund
Microsoft Dynamics CRM Chief Architect

Logica
www.logica.com

Create replacement entities

Sometimes, using a standard entity like product or invoice might not be the most optimal choice. Often due to the fact that there is quite a lot of business logic built into these entities. Therefore it is somtimes better to create you own entity instead. However, if you try to create a new entity with the name “Product” you will notice that it cannot be done since there already is an entity with that displayname.

The solution is quite simple, change the displayname of the built in product to “Old product” and remove all rights for all users to it and it will disapear for all normal users. You can then create your new entity with the displayname “Product”.

Gustaf Westerlund
Microsoft Dynamics CRM Architect

Logica
www.logica.com

VPC:s and Shared Networking

I used VPC:s all the time and we often clone VPC:s to all project members. However, there is a very tricky part of VPC:s and Microsoft CRM environments and this concerns SID:s.

As you might know, each windows machine has a SID, which is supposed to be a unique identifier for the machine. Exactly when it is used, I am not certain of but I know that you can get into a whole lot of strange trouble if you have two computers with the same SID on the same LAN.

It can easily be changed on any normal windows machine or server with forinstance the tool newsid. However, there is one type of machine that you cannot change SID on and that is a domain controller.

To ease the managing of normal VPC:s it is usually best to create VPC:s that contain everything in one. That is, Windows server, Domain controller, SQL Server, Reporting Services, Visual Studio 2008 and, of course, CRM.

So, we have several VPC:s that have the same SID and we have people sitting next to eachother running them at the same time. The only network setting that can be selected, to still conect to the internet in the VPC is hence, Shared Networking.

This setting is actually a small local network in it self with a NAT (Network Address Translation)/ DHCP server/switch in the VPC host program.

I noticed a problem today when I started up a VPC and noted that I had forgotten to connect the network cable. After I had inserted the network cable and my host PC had full access, I still had problems getting an IP address and a propper connection to the internet from my VPC.

After some fiddeling with trying to run ipconfig /release, ipconfig /renew and sleeping the VPC, I finally shut down the host program and opened the VPC again after which I ran ipconfig /renew, finally it worked.

My interpretation of this is that the NAT/DHCP server need to have a working network connection in the VPC to intitialize properly. Since I didn’t, it just miss started and my VPC:s never got any proper IP:s. The only possible way of restarting it is to restart the VPC host program. After it has been started, you just have to run ipconfig /renew to get a new IP from the VPC DHCP/NAT server.

Gustaf Westerlund
Microsoft Dynamics CRM Architect

Logica
www.logica.com

Mark appointment as complete from Outlook?

When attempting to execute some of the more common tasks of everyday work as a salesperson, my colleague Joakim Westergren and I found that there actually isn’t a way of marking an appointment as complete from the normal appointment window in Outlook (like for instance a Task). If any of you reading this, know of a way, please let me know.

We did find a workaround however. We told the salespeople that when an appointment was to completed, to just add the words “DONE” or some other special character like “§” after the normal text in the description field. A workflow had been created that is triggered on changes to the description field and it checks to see if the text inside the field ends with “DONE” or the designated character. If so, the status of the appointment is changed to “Completed”.

I realise that this isn’t a perfect solution, a button would be suitable and less prone to error, but at least it is one way of handling it. I would be very intrested in any other solutions that you might have experience of, please leave a comment if you have any suggestions.

(Of course you can always open the CRM window and click “Save as completed” but that introduces a new GUI and complicates things for the users, we are looking for a simpler approach, just using Outlook)

Gustaf Westerlund
Microsoft Dynamics CRM Architect

Logica Sweden
www.logica.com