Сравнение данных при заполнении атрибутивной таблицы

ArcGIS 8.x,9.x,10.x (Arcview, ArcEditor, Arcinfo).
Ответить
Воронин С.В.
Завсегдатай
Сообщения: 431
Зарегистрирован: 06 ноя 2009, 13:18
Репутация: 10
Откуда: Екатеринбург

Сравнение данных при заполнении атрибутивной таблицы

Сообщение Воронин С.В. » 20 янв 2012, 07:04

Господа!
В таблице атрибутов у меня есть поля, в которых данные одного поля не могут превышать данные другого.
Данные заносятся вручную.
Возможен ли вариант формулы в этих полях, чтобы при их заполнении данные одного поля не могли превышать данные другого (количество значящих цифр, чаще всего, одинаковое).

self-improving
Активный участник
Сообщения: 144
Зарегистрирован: 18 дек 2009, 15:36
Репутация: 4
Откуда: Златоглавая

Re: Сравнение данных при заполнении атрибутивной таблицы

Сообщение self-improving » 20 янв 2012, 10:21

Автоматическая проверка корректности ввода данных при их внесении, думаю, мало вероятна...

Можно попробовать такой вариант: создать еще одно поле, в нем калькулятором вычислять разность значений двух других полей. Если значение меньше нуля - значит ошибка. Соответственно, пересчитывать значения периодически для проверки.

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Сравнение данных при заполнении атрибутивной таблицы

Сообщение Дмитрий Барышников » 20 янв 2012, 10:54

В базе данных (персональной, файловой и уровня предприятия /SDE/) есть такая страшная вещь как домены (domains) и подтипы (subtypes). С их помощью можно настроить контроль ввода значений. Если бы вы дали больше информации можно было бы подумать о конкретной реализации для вас.

self-improving
Активный участник
Сообщения: 144
Зарегистрирован: 18 дек 2009, 15:36
Репутация: 4
Откуда: Златоглавая

Re: Сравнение данных при заполнении атрибутивной таблицы

Сообщение self-improving » 20 янв 2012, 11:08

Bishop писал(а):В базе данных (персональной, файловой и уровня предприятия /SDE/) есть такая страшная вещь как домены (domains) и подтипы (subtypes). С их помощью можно настроить контроль ввода значений. Если бы вы дали больше информации можно было бы подумать о конкретной реализации для вас.
Домены не позволяют сравнивать значения в соседних столбцах, насколько я помню.
Можно задать диапазон значений, но не более того...

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Сравнение данных при заполнении атрибутивной таблицы

Сообщение Дмитрий Барышников » 20 янв 2012, 11:45

Чисто домены - нет. Но вместе с подтипами - да. Кажется есть только ограничение на количество полей которые могут участвовать в такой "конструкции".
Это выглядит так: при назначении в поле 1 значения из домена - в поле 2 будет назначен соответствующий домен. Этакий домен доменов :)

Воронин С.В.
Завсегдатай
Сообщения: 431
Зарегистрирован: 06 ноя 2009, 13:18
Репутация: 10
Откуда: Екатеринбург

Re: Сравнение данных при заполнении атрибутивной таблицы

Сообщение Воронин С.В. » 20 янв 2012, 12:02

Господа!
Спешу вмешаться.
К доменам у меня некоторое неприятие. Их сохранение связано форматом .mdb, что в некоторых случаях неудобно.
Но как просил г-н Bishop, вложил архив с шейпом.
Сравниваются данные поля CA, значения в котором значения должны быть меньше, чем в поле S.

P.S. Еще одно поле заводить, будет как-то не корректно. Количество полей и так большое.
Вложения
Образец заполнения.rar
(121.9 КБ) 289 скачиваний

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Сравнение данных при заполнении атрибутивной таблицы

Сообщение Дмитрий Барышников » 20 янв 2012, 13:48

Хотелось все же определенности: если вы не хотите связываться с доменами и подтипами - есть еще программирование, но это еще сложнее в реализации.
Посмотрел образец. Ничего не понял. Какие поля (их там аж 34 штуки) от каких зависят, что должно быть не больше/меньше. Какие диапазоны данных?

Воронин С.В.
Завсегдатай
Сообщения: 431
Зарегистрирован: 06 ноя 2009, 13:18
Репутация: 10
Откуда: Екатеринбург

Re: Сравнение данных при заполнении атрибутивной таблицы

Сообщение Воронин С.В. » 23 янв 2012, 05:12

Воронин С.В. писал(а):Сравниваются данные поля CA, значения в котором значения должны быть меньше, чем в поле S.
Суть в том, что химики сначала находят S (сумму оснований), затем CA (СаО), после этого вычисляется арифметически MG (MgO).

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: Сравнение данных при заполнении атрибутивной таблицы

Сообщение Дмитрий Барышников » 23 янв 2012, 15:34

Если чисто меньше - то здесь без программирования не обойтись (или можно выполнить массовую проверку - создав до поле и внеся в него разницу. Если разница меньше или равна нулю - то корректировать. А быстро увидеть можно отсортировав по этому полю).
Если же CA могут принимать значения из определенного диапазона(ов) и в зависимости от этого полю S назначается допустимый диапазон - то можно сделать (дайте диапазоны).

Воронин С.В.
Завсегдатай
Сообщения: 431
Зарегистрирован: 06 ноя 2009, 13:18
Репутация: 10
Откуда: Екатеринбург

Re: Сравнение данных при заполнении атрибутивной таблицы

Сообщение Воронин С.В. » 25 янв 2012, 08:06

Bishop писал(а):Если чисто меньше - то здесь без программирования не обойтись
Не могу Вас беспокоить по столь пустяковому вопросу.
Себя я и проверяю созданием-удалением поля.
Хотелось, просто, для простого люда, т.е. для подчиненных сделать невозможным забивать заведомую ахинею.

Ответить

Вернуться в «ArcGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя