Friday, December 21, 2007

MSCRM 4.0 Upgrade Successful

Well, we did it. We upgraded to MSCRM 4.0 internally and it is fantastic! There were a few things we had to clean up but it wasn't too bad. We are really excited to be able to use all of the enhancements in our internal system.

Hopefully your upgrade is going just as well or is already completed.

Happy Holiday's!

David Fronk
Dynamic Methods Inc.

9 comments:

Maria said...

Our upgrade to MSCRM 4.0 is going well too, with one exception... callouts! We're really prefer not to have to redo them all as plugins, but so far have been unable to get 3.0 callouts to work in 4.0 - is there some magic trick we need to do (so far we're just using exactly the same procedure as in 3.0), or are we out of luck?

Thanks.

Dynamic Methods said...

Most of our callouts have worked. However, there have been a few that we found did not work. All we ended up in having to do was to delete the web reference in Visual Studio and then re-add it. You'll notice however that when you do this, the URL that you use (http://<crmservername>/mscrmservices/2006/crmservice.asmx) changes into http://<crmservername>/mscrmservices/2006/crmservicewsdl.aspx. Once we did that our callouts worked just fine.

Our webpages were a different matter however, we actually had to register the Microsoft.Crm.Web.dll to the server GAC. That could be one other thing that is holding up your callouts though.

But all 3.0 callouts (as long as you are using supported code) should run just fine in 4.0.

Good luck.

David Fronk
Dynamic Methods Inc.

Maria said...

Unfortunately I keep getting a SocketException - "Unable to establish connection because the target machine refused it", so I was hoping it was something you'd had had experience with too. I'll try to register the Web.dll to the server GAC and see if that makes any difference.

Thanks for the heads up about webpages. The current installation of CRM doesn't have any, but I work for an IT consultant house that has made a lot of CRM installations for different companies, and I know some of the others do involve webpages, so your information there is much appreciated :-)

Thanks for your time,
Maria

Maria said...

I figured out one of my mistakes (I was trying to access the wrong port), but now get a System.Net.WebException: The request failed with HTTP status 401: Unauthorized.

I'm unable to find the Microsoft.Crm.Web.dll which puzzles me. Might you be referring to the Microsoft.Crm.Webservice.dll instead? If not, could you direct me to a place where I might be able to find it?

I apologize for all these questions, but CRM 4.0 is still so new that it's difficult to find any proper documentation on the web.

Maria said...

Please forgive me for spamming you, I just wanted to let you know that my callouts work now. Thank you for your time, and I apologize for the inconvenience.

artes said...

How do you upgrade a CRM 3.0 callout to 4.0. The SDK documentation says "coming soon". I know how to register a new addin but not an existing callout.

thanks

Dynamic Methods said...

Artes,

I have found that some callouts just need to have their Web Reference to CRM removed and readded. Even though you can still point your web reference to http://<servername>/mscrmservices/2006/crmservice.asmx it will get redirected, or changed, to crmservicewsdl.aspx. That's where the WSDL is now stored. So, a lot of the callouts that I have needed to fix only needed that change, recompile, and put the DLL back up on the server. I may have to make my next post about troubleshooting/upgrading callouts, seeing as you both you and Maria have commented on this. There are probably more people out there with the same problem. I'll see if I can put one together for this week or next.

Thanks for the comment,

David Fronk
Dynamic Methods Inc.

Maria said...

My mistake turned out to be something as stupid as forgetting to give Network service permission to access the relevant files. In 3.0 this error would show up in the Event log, but in 4.0 the error is caught and a generic (but useless) error-message is given. I eventually had to set up a trace to figure it out. Once that was sorted, there were no problems at all.

Artes, I ended up having to do four things to upgrade:
1) Delete and readd the web reference. Like David mentioned above, this makes sure it's redirected to the correct place.
2) Make a few code corrections (for instance CrmFloat.Value is now a double instead of a float)
3) Re-upload all dll's and give Network Service access permissions.
4) Restart the iis.
- an I was good to go! :-)

Dynamic Methods said...

Maria,

I'm glad to hear that everything worked out. And thanks for posting your steps on what you needed to do to get your code up and running.

David Fronk
Dynamic Methods Inc.

Post a Comment