For your JavaScript, you can perform both steps to hide the button and/or show an alert.

First, the alert:

if({!ISBLANK(Object.Field)}) {
    alert("You must populate the Field before using this button");
} else {
    window.open("https://myserver/?param={!JSENCODE(Object.Field)}","_blank");
}


Now, we can add the following code to a Static Resource:

(function() {
    function disableButtons() {
         var btns = document.querySelectorAll('input[value="Button Label"]'), i = 0;
         if(window.$shouldDisable) {
             while(i&lt;btns.length) btns[i++].disabled="disabled";
         }
    }
    window.addEventListener("load", disableButtons, true);
}


Finally, add the resource to your button:

{!RequireScript(UrlFor($Resource.disableButton, null, null)}
window.$shouldDisable = {!ISBLANK(Object.Field)};
if(window.$shouldDisable) {
    alert("You must populate the Field before using this button");
} else {
    window.open("https://myserver/?param={!JSENCODE(Object.Field)}","_blank");
}


Using RequireScript causes whatever is included in the script to run on page load.

Display pop-up message or hide custom button if field is blank
This is a basic -newbie - question. I have some handwritten data points taken off a GPS - so I am assuming they are in WGS 84, and I want to load them in ArcMap 9.3, via excel, and measure the distance between them (they are transects). I would like to know how best to maintain accuracy, and what format the data the coordinates should be when I load them into ArcMap.

The coordinates look like: 39. 51 550, 148.16 841 but the way they have been written they could be 39. 51 .50, 148.16.841 or 39 51.550, 148 16.841. Do these look like WGS 84 coordinates and what is the best way to input them into excel? Do I have to set or reset the projection in ArcMap before I take the measurements?

As you can see I am not confident with the basics of the coordinate system and projection system so any help and tips would be appreciated.
