Страница 1 из 1
Групповое редактирование
Добавлено: 16 мар 2012, 16:11
Леха_П
Есть 50 слоев, которые находятся в разных базах итого 50 баз. Нужно в каждой базе в слое А поменять в поле Б 0 на 1. Как это сделать сразу для всех баз ?
Re: Групповое редактирование
Добавлено: 16 мар 2012, 17:06
eketerina
Скрипт написать...
Re: Групповое редактирование
Добавлено: 16 мар 2012, 17:14
ggis
eketerina писал(а):Скрипт написать...
или вручную, 50 это не 5000
Re: Групповое редактирование
Добавлено: 16 мар 2012, 17:20
rhot
вопрос был как это "сразу для всех баз" сделать - я тоже за скрипт.
Re: Групповое редактирование
Добавлено: 16 мар 2012, 17:24
ggis
rhot писал(а):вопрос был как это "сразу для всех баз" сделать - я тоже за скрипт.
если задача разовая, можно дольше скрипт сочинять, может я и не прав
Re: Групповое редактирование
Добавлено: 16 мар 2012, 17:30
rhot
Ну да, у меня тоже такое бывает - лень всё вручную делать))) Но так как я любитель всё автоматизировать и упрощать, то я обращаюсь к программированию.
Согласен, что если человек не сталкивался с программированием раньше или оно ему вообще не интересно и задача разовая, то вручную быстрее и приятнее.
Re: Групповое редактирование
Добавлено: 16 мар 2012, 17:35
ggis
rhot писал(а):Но так как я любитель всё автоматизировать и упрощать, то я обращаюсь к программированию.
.
помогите человеку со скриптом
Re: Групповое редактирование
Добавлено: 16 мар 2012, 17:42
rhot
Извините, но я не ас в программировании под арку, не моя область - пусть гуру по ArcGIS выручают.
Я лишь согласился с eketerina, что нужно писать скрипт.
Re: Групповое редактирование
Добавлено: 16 мар 2012, 19:45
ggis
..............
Re: Групповое редактирование
Добавлено: 19 мар 2012, 08:35
Леха_П
Программирование мне не чуждо, но я никогда не программировал в самом АркГисе. Может поможете кто знает как хоть примерно должно выглядеть тело программы, с чего начинается код, к каким библиотекам обращаться и чем заканчивать ? ? ? Заранее спасибо !
Re: Групповое редактирование
Добавлено: 19 мар 2012, 10:01
Дмитрий Барышников
Пример программирования
http://edndoc.esri.com/arcobjects/9.0/s ... cursor.htm
Но мне кажется в данном случае можно обойтись моделью в "красном ящике". Посмотрите на инструмент "Calculate Field" или "Calculate Value". А дальше банальный пакетный запуск или скрипт на питоне. Примеры скриптов в томже "красном ящике".
Re: Групповое редактирование
Добавлено: 19 мар 2012, 11:38
kuzkok
Проще будет весь скрипт набросать на питоне, более подробно как их писать и что вообще питон умеет в ArcDesktop по
ссылке.
Если работаете в 10-ке то открываете новый проект карты набрасываете туда все слои в которых требуется изменить значение поля, и в консоли питона выполняете следующий код:
Код: Выделить всё
mxd = arcpy.mapping.MapDocument("CURRENT")
for layer in arcpy.mapping.ListLayers(mxd):
cursor = arcpy.UpdateCursor(layer)
for row in cursor:
row.B = 0 //здесь В - имя поля
cursor.updateRow(row)
для 9ки это будет выглядеть похоже, но как точно сказать не могу.
Re: Групповое редактирование
Добавлено: 19 мар 2012, 11:52
Леха_П
Спасибо огромное, буду разбираться... Мне бы понять структуру скрипта, синтаксис более менее ясен...