You could use a simple distance check:
dx#=Object Position X(Board)-Object Position X(Hole)
dy#=Object Position Y(Board)-Object Position Y(Hole)
dz#=Object Position Z(Board)-Object Position Z(Hole)
d#=(dx#*dx#)+(dy#*dy#)+(dz#*dz#)
if d#<=MaxDistance#
Position Object Board,Object Position X(Hole),Object Position Y(Hole),Object Position Z(Hole)
endif
Where MaxDistance# is the SQUARE of the maximum range for "snapping" to the desired location (so if you want it to snap when the board gets within 5 units of the hole, your MaxDistance# would be 5*5=25).
If the program is 2.5D (ie, the user has no control over the Z axis position of the board), you don't need to check the z axis positions, only X and Y.
If you have more complex shapes, you could load one object as the "hole" object, then just check for object collision between the hole and board objects.
Great Quote:
"Time...LINE??? Time isn't made out of lines...it is made out of circles. That is why clocks are round!" -Caboose