I was excited to learn that I could use Geolocation and Bing Maps in SharePoint 2013.  So I started down this path,

1. Get Bing Maps Key from here http://www.bingmapsportal.com/. (Note: You don’t need this key, but a bar will display in the middle of your map.)

Bing-Maps-with-Bar

2. Set Bing Maps key at the farm level by running the following PowerShell command:

Set-SPBingMapsKey –BingKey “<Enter a valid Bing Maps key>”

Set-SPBingMapsKey

3. Create a custom list called “Convention Centers”.

4. Add a column called “GPS Location” using the following PowerShell script: (This adds GPS Location to your site columns under Custom Columns.)

Add-PSSnapin Microsoft.SharePoint.PowerShell -EA 0

$weburl = "http://<my-web-site>"

$fieldXml = "<Field Type ='Geolocation' DisplayName='GPS Location'/>"

$web = Get-SPWeb $weburl

$fieldName = $web.Fields.AddFieldAsXml($fieldXml)

$web.Update()

5. Add GPS Location column to Convention Centers custom list.

6. Find longitude and latitude for convention locations.  There are many out there, but I used this one http://www.findlatitudeandlongitude.com/.

7. Edit each location with longitude and latitude from step 6 above or you can use “Use my location”.

Here I used longitude and latitude for Seattle Conference Center:

Seattle Conference Longitude Latitude

After clicking OK. You’ll get this.

Seattle Conference Longitude Latitude-2

8. Test from the geolocation map icon.

Seattle Conference Longitude Latitude-3

9. Create a Map View.

10. Test map view.

Seattle Conference Longitude Latitude-4

Well, everything seems to work as expected.  So far, so good.

11. Create a page with Web parts.

12. Add Convention Centers list to the Web part. Still working.

13. Check in page. Again, still working.

Seattle Conference Longitude Latitude-5

14. Publish page.  It spins and spins and never renders.

Seattle Conference Longitude Latitude-6

I checked all the logs I could think of, but I couldn’t find anything.  I know I’m missing something here.

Anyway, I have to get this resolved, so I took another route.

15. Back to my page, I added the following code using Script Editor Web Part. I added the following code to get one static location (Columbus Convention Center)to display:

DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html>
 <head>
 <title>Map with initial zoom</title>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
 <script type="text/javascript" src="http://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=7.0"></script>
 <script type="text/javascript">
 var map = null;

function getMap()
 {
 map = new Microsoft.Maps.Map(document.getElementById('myMap'), {credentials: '<Your Bing Map Key>', zoom: 16, center: new Microsoft.Maps.Location(39.9722857, -83.0008507)});
 }

</script>
 </head>
 <body onload="getMap();">
 <div id='myMap' style="position:relative; width:400px; height:400px;"></div>
 </body>
 </html>

16. I published the page and it continues to work.

ColumbusConventionCenterBingMaps

After I find a solution to my issue with Geolocation and Bing Maps, I’ll provide an update.

Advertisements