If you're looking up GPS co-ordinates for addresses with not much detail ( e.g only containing city, county), then google will actually send a few co-ordinates as part of the api response. FM Easy Maps by default always grabs the first pair, which can often be far from accurate. I've tweaked the script steps to be more accurate in these situations, whilst still working the same way on 'full' addresses:
For Latitude:
Let (
[
$API_Result = Evaluate ( "EasyMaps::EM_Global" );
$loctype = If ( PatternCount ( $API_Result ; "\"location_type\" : \"APPROXIMATE\"," ) ; 3 ; 1 ) ;
$Start = Position ( $API_Result ; "\"lat\" : " ; 1 ; 1*$loctype ) + Length ( "\"lat\" : " );
$Stop = Position ( $API_Result; ","; $Start; 1 )
]
; Round ( Middle ( $API_Result; $Start ; $Stop - $Start ); 8 )
)
For Longitude:
Let (
[
$API_Result = Evaluate ( "EasyMaps::EM_Global" );
$loctype = If ( PatternCount ( $API_Result ; "\"location_type\" : \"APPROXIMATE\"," ) ; 3 ; 1 ) ;
$Start = Position ( $API_Result ; "\"lng\" : " ; 1 ; 1*$loctype ) + Length ( "\"lng\" : " );
$Stop = Position ( $API_Result; "}"; $Start; 1 )
]
; Round ( Middle ( $API_Result; $Start ; $Stop - $Start ); 8 )
)