So I've been looking at a good way to get maps of locations direct from Dynamics CRM. There are lots of neat solutions out there that embed a Google or Live map directly into a tab, but I didn't want the extra tab. I wanted something simpler. So I made this. It's the simplest solution I could think of that effectively solve the issue. It literally took more time to think of than to implement.
First, go to customize the Entity that you want to have the link on. I chose Account and Address for my implementation, but any entity with an address will do. So first create an Attribute called Google Maps and put it on the form. Make sure you give the Attribute a format of URL and increase the maximum length to 500 characters. This will make it clickable form the UI and ensure you don't cut off the end of the address.
Now go to the Form and go to Form Properties. Open the OnLoad event and paste this JavaScript in:
crmForm.all.new_googlemaps.DataValue = "http://maps.google.com/maps?q=" + crmForm.all.line1.DataValue + "+" + crmForm.all.city.DataValue + "+" + crmForm.all.stateorprovince.DataValue + "+" + crmForm.all.postalcode.DataValue;
A few important things here: "http://maps.google.com/maps?q=" is the beginning of the Google Maps query string. You need it. The attributes after that, such as line1, city, etc. are specific to the Address entity. If you want to do this in a different Entity, you'll have to find out what the specific name of the address, city, state and zip code fields are. also, these instructions are US-oriented. For international addresses, you'll have to add whatever fields are relevant to get Google Maps to give you correct addresses.
In the end, you'll have a clickable field that will open up a map to the address in CRM in a new browser window. Very convenient, and also compatible with mobile CRM solutions!