You need to sign in to do that
Don't have an account?
shobana shobana
Display All Accounts on Google Maps using Visualforce and Apex
Hi all ,
I have a requirement that i need to display all Account on Google maps using Single Visualforce page to track All Account from Current Location,can any one help me out to solve this issue.....
Below code will show the location of particular records of Acccounts but i want to show all Account location in single visualforce page
Thank you in advance......
I have a requirement that i need to display all Account on Google maps using Single Visualforce page to track All Account from Current Location,can any one help me out to solve this issue.....
Below code will show the location of particular records of Acccounts but i want to show all Account location in single visualforce page
<apex:page standardController="Account"> <head> <script type="text/javascript" src="https://maps.google.com/maps/api/js?sensor=false"></script> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function() { var myOptions = { zoom: 15, mapTypeId: google.maps.MapTypeId.ROADMAP, mapTypeControl: false } var map; var marker; var geocoder = new google.maps.Geocoder(); var address = "{!Account.BillingStreet}, " + "{!Account.BillingCity}, " + "{!Account.BillingPostalCode}, " + "{!Account.BillingCountry}"; var infowindow = new google.maps.InfoWindow({ content: "<b>{!Account.Name}</b><br>{!Account.BillingStreet}<br>{!Account.BillingCity}, {!Account.BillingPostalCode}<br>{!Account.BillingCountry}" }); geocoder.geocode( { address: address}, function(results, status) { if (status == google.maps.GeocoderStatus.OK && results.length) { if (status != google.maps.GeocoderStatus.ZERO_RESULTS) { //create map map = new google.maps.Map(document.getElementById("map"), myOptions); //center map map.setCenter(results[0].geometry.location); //create marker marker = new google.maps.Marker({ position: results[0].geometry.location, map: map, title: "{!Account.Name}" }); //add listeners google.maps.event.addListener(marker, 'click', function() { infowindow.open(map,marker); }); google.maps.event.addListener(infowindow, 'closeclick', function() { map.setCenter(marker.getPosition()); }); } } else { $('#map').css({'height' : '15px'}); $('#map').html("Oops! {!Account.Name}'s billing address could not be found, please make sure the address is correct."); resizeIframe(); } }); function resizeIframe() { var me = window.name; if (me) { var iframes = parent.document.getElementsByName(me); if (iframes && iframes.length == 1) { height = document.body.offsetHeight; iframes[0].style.height = height + "px"; } } } }); </script> <style> #map { font-family: Arial; font-size:12px; line-height:normal !important; height:250px; background:transparent; } </style> </head> <body> <div id="map"></div> </body> </apex:page>
Thank you in advance......
[1] https://www.salesforce.com/us/developer/docs/apexcode/Content/apex_classes_annotation_RemoteAction.htm
[2] http://www.salesforce.com/docs/developer/pages/Content/pages_js_remoting.htm
[3] http://www.salesforce.com/us/developer/docs/soql_sosl/Content/sforce_api_calls_soql_geolocate.htm
[4] https://developer.salesforce.com/blogs/developer-relations/2012/10/winter-13-using-apex-and-soql-with-geolocation.html
I have completed same requirement using Google maps API v3. Also I have used javascript remoting here to fetch all account records on page and displayed addresses on basis of longitude and lattitude values.
Here is link for google map API v3 documentaion -
https://developers.google.com/maps/documentation/javascript/
Can you post the finished code?
Thank you!
https://jorbison.wixsite.com/mysite/single-post/2017/02/22/VisualForce-Map-Accounts
p.s. I just launched this site today so please be gentle as I plan on adding more items.