I've been trying to geocode a file geodatabase table against a composite locator in a python script. When I run it in PyScripter, it gives an EAccessViolation error, which according to Google is a memory error in the program (PyScripter).
But I also get an error when running it in IDLE, although the error message is far less detailed.
The composite locator is in a folder on another server. It has both point and road centerline locators. Is it possible to use a composite locator in python, or am I looking in the wrong direction?
childcare_table <SPAN class="operator token">=</SPAN> os<SPAN class="punctuation token">.</SPAN>path<SPAN class="punctuation token">.</SPAN>join<SPAN class="punctuation token">(</SPAN>table_locations<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"Childcare"</SPAN><SPAN class="punctuation token">)</SPAN>
geocoded_fc <SPAN class="operator token">=</SPAN> os<SPAN class="punctuation token">.</SPAN>path<SPAN class="punctuation token">.</SPAN>join<SPAN class="punctuation token">(</SPAN>table_locations<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"LARA"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"LARA_CDC"</SPAN><SPAN class="punctuation token">)</SPAN>
geocoder <SPAN class="operator token">=</SPAN> r<SPAN class="string token">"\\gisfile\gis\Static\Geocoders\Composite_Locator"</SPAN>
address_fields <SPAN class="operator token">=</SPAN> <SPAN class="string token">"Street Fac_Addr;City City;Zip Zip"</SPAN>
<SPAN class="keyword token">global</SPAN> ok
<SPAN class="keyword token">try</SPAN><SPAN class="punctuation token">:</SPAN>
<SPAN class="keyword token">print</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">"\nRunning geocoding..."</SPAN><SPAN class="punctuation token">)</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>GeocodeAddresses_geocoding<SPAN class="punctuation token">(</SPAN>childcare_table<SPAN class="punctuation token">,</SPAN> geocoder<SPAN class="punctuation token">,</SPAN> address_fields<SPAN class="punctuation token">,</SPAN> geocoded_fc<SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">except</SPAN><SPAN class="punctuation token">:</SPAN>
<SPAN class="keyword token">print</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">"Unexpected error {0}\n\t{1}"</SPAN><SPAN class="punctuation token">.</SPAN>format<SPAN class="punctuation token">(</SPAN>sys<SPAN class="punctuation token">.</SPAN>exc_info<SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">[</SPAN><SPAN class="number token">0</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> sys<SPAN class="punctuation token">.</SPAN>exc_info<SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">[</SPAN><SPAN class="number token">1</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">)</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>AddError<SPAN class="punctuation token">(</SPAN>sys<SPAN class="punctuation token">.</SPAN>exc_info<SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">[</SPAN><SPAN class="number token">1</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">)</SPAN>
ok <SPAN class="operator token">=</SPAN> <SPAN class="token boolean">False</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>