내가 겪은 모든 깨진 레이어가 있고 수동으로 재설정하는 약 50 mxd가 있습니다.
데이터가 다른 컴퓨터에서 이동되었고 폴더 구조가 변경되어 단순한 변경 프로세스가 아닙니다 (예).
"F : \ Data \ Rivers.shp"를 "C : \ Data \ Rivers.shp"로
그것은 더 같다 :
"F : \ Data \ Rivers.shp"를 C : \ Data \ Park \ Water \ Rivers.shp로
그 자체의 하위 폴더에있는 모든 종류의 데이터 (경계선, 채식 표지, 도로 등)에 대해서도 마찬가지입니다.
적어도 mxd의 대부분에서 발견되는 더 일반적인 레이어 중 일부를 복구하는 mxd 중 하나를 열 때마다 반복적으로 실행할 수있는 스크립트를 만들고 싶습니다. 그런 다음 나머지를 수동으로 복구 할 수 있습니다. 나 자신 저장 적어도 수있는 그런 식으로 몇 시간.
나는 라인을 따라 무언가를 사용하고있다 :
import arcpy
mxd = arcpy.mapping.MapDocument("CURRENT")
for lyr in arcpy.mapping.ListLayers(mxd):
if lyr == "Rivers": #Should this be the layner name in TOC or FC name?
lyr.replaceDataSource(r"C:\Data\Park\Water", "SHAPEFILE_WORKSPACE", "Rivers")
아이디어는 어떻게 든 내 mxd에있는 다른 공통 레이어에 대해 위의 여러 대체 스크립트를 추가하는 것입니다.
그러나 위의 스크립트는 Rivers 레이어를 수정조차하지 않습니다.
파일 경로가 다른 수리 할 다른 레이어를 추가하려면 어떻게해야합니까?