आर्कपी का उपयोग करके फ़ोल्डर X में प्रत्येक परत फ़ाइल के लिए स्रोत डेटा पथ कैसे बदल सकता है?
मैंने अपने सबसे अच्छे रूप में चापलूसी के साथ डेटा स्रोतों को अपडेट और फिक्सिंग का पालन किया है , फिर भी मुझे Runtime error <type 'exceptions.ValueError'>: Layer: Unexpected error
जो भी मिल रहा है वह एक अनहेल्दी है जो मुझे यह बताने के लिए पर्याप्त नहीं है कि क्या गलत है या गायब है।
कोड का उपयोग करता है (एकल परत फ़ाइल का परीक्षण करने के लिए सरलीकृत):
import arcpy, os
fname = r'K:\Layers\xxx.lyr'
lyr = arcpy.mapping.Layer(fname)
oldpath = lyr.workspacePath
print 'oldpath: ', oldpath
lyr.findAndReplaceWorkspacePath(oldpath, r'C:\some\other.gdb')
print 'newpath: ', lyr.workspacePath
और परिणाम:
oldpath: K:\Canvec_Utility\Temp.gdb
Traceback (most recent call last):
File "x10x.py", line 12, in <module>
lyr.findAndReplaceWorkspacePath(oldpath, r'C:\some\other.gdb')
File "C:\ESRI\ArcGIS\Desktop10.0\arcpy\arcpy\utils.py", line 181, in fn_
return fn(*args, **kw)
File "C:\ESRI\ArcGIS\Desktop10.0\arcpy\arcpy\_mapping.py", line 601, in findAndReplaceWorkspacePath
return convertArcObjectToPythonObject(self._arc_object.findAndReplaceWorkspacePath(*gp_fixargs((find_workspace_path, replace_workspace_path, validate), True
)))
ValueError: Layer: Unexpected error
((उत्तर में 'अद्यतन' अनुभाग स्थानांतरित)
Runtime error...
ऊपर उद्धृत Arccatalog में इंटरैक्टिव अजगर खोल, जो एक ट्रैस नहीं देता से है। ट्रेसबैक के परिणाम एक कमांड शेल से कॉपी किए जाते हैं।