Below function will return the location of the share point for the record id you send if one exists.
function getLocationOrUrl(recordId) {
var req = new XMLHttpRequest();
req.open("GET", encodeURI(Xrm.Page.context.getClientUrl() + "/XRMServices/2011/OrganizationData.svc/SharePointDocumentLocationSet?$select=AbsoluteURL,Description,Name,ParentSiteOrLocation,RelativeUrl,SharePointDocumentLocationId,SiteCollectionId&$filter=RegardingObjectId/Id eq guid'" + recordId + "'"), true);
req.setRequestHeader("Accept", "application/json");
req.setRequestHeader("Content-Type", "application/json; charset=utf-8");
req.onreadystatechange = function () {
if (this.readyState === 4) {
req.onreadystatechange = null;
if (this.status === 200) {
var returned = JSON.parse(req.responseText).d;
var results = returned.results;
for (var i = 0; i < results.length; i++) {
var AbsoluteURL = results[i].AbsoluteURL;
var Description = results[i].Description;
var Name = results[i].Name;
var ParentSiteOrLocation = results[i].ParentSiteOrLocation;
var RelativeUrl = results[i].RelativeUrl;
var SharePointDocumentLocationId = results[i].SharePointDocumentLocationId;
var SiteCollectionId = results[i].SiteCollectionId;
}
}
else {
alert(this.statusText);
}
}
};
req.send();
}