arcpy를 사용하여 폴더 X의 모든 레이어 파일에 대한 소스 데이터 경로를 어떻게 변경할 수 있습니까?
필자는 최선을 다해 arcpy.mapping 으로 데이터 소스 업데이트 및 수정을 수행했지만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의 대화 형 파이썬 쉘에서 인용 한 것으로 역 추적을 제공하지 않습니다. 역 추적 결과는 명령 셸에서 복사됩니다.