Well, I know the exact story of what happened with TheCaptain, as I was right there with him.
If you use forceMap to bring the map up (which you have to do, if you want a dialog to work in conjunction with the map) you cannot use onMapSingleClick. It doesn't work with forceMap.
And there's no way of detecting if the player opens the map (presses the 'M' key), so we can't do a check if the map is up and create the dialog after that.
I.E shownMap doesn't tell you if the player has the map up or not, it just checks if he has the possibility of opening it in the mission (as in "It's in the mission".)
I'm sure there are work-arounds though, our work-around was to simply ignore the onMapSingleClick approach, and we did it through the use of menus (you can access them at the same time pretty much, nice list of the platoons with information such as name, number of men, type of platoon (recon, assault a.s.o), home-base, current position blah blah).
But, there's no smooth way of incorporating onMapSingleClick into dialogs atm.