Страница 1 из 1

Ошибка при вызове атрибутов объекта

СообщениеДобавлено: Пт окт 11, 2013 9:56 am
tuapsekad
Модуль версии 0.1.9
БД версии 14
Селектирую участок (вновь созданный в слое Участок). Вызываю атрибуты объекта (Кадастр-Атрибуты-Атрибуты объекта). Выдает следующее:

Ошибка при выполнении сценария Python:
Traceback (most recent call last):
File "..\python\plugins\openLand\openland.py", line 763, in doAttribute
d.dlgFill()
File "..\python\plugins\openLand\tools\uchattributes.py", line 112, in dlgFill
self.fillComboBoxDocument(self.comboBoxDocumentEncumbrance, self.row[self.layerUc.fieldNameIndex('guid_doc_encumbrance')].toString())
KeyError: -1

Версия Python:
2.7.2 (default, Jun 12 2011, 15:08:59) [MSC v.1500 32 bit (Intel)]
Версия:
1.8.0-Lisboa Lisboa, exported

Re: Ошибка при вызове атрибутов объекта

СообщениеДобавлено: Пт окт 11, 2013 10:07 am
dab
1. Версия базы данных 14? Посмотреть соответствие версий на странице http://openlandgis.ru/download
2. Поле "guid_doc_encumbrance" есть в таблице "msk.uchastok"?

Re: Ошибка при вызове атрибутов объекта

СообщениеДобавлено: Пт окт 11, 2013 10:15 am
tuapsekad
1. Версия базы данных 14? Посмотреть соответствие версий на странице http://openlandgis.ru/download
Я писал про версию - 14 стоит
2. Поле "guid_doc_encumbrance" есть в таблице "msk.uchastok"?
Отсутствует

Re: Ошибка при вызове атрибутов объекта

СообщениеДобавлено: Пт окт 11, 2013 10:20 am
tuapsekad
Заработало!
Заново накатил три скрипта
10to11.sql
11to12.sql
12to14.sql

Поле "guid_doc_encumbrance" добавилось!

Спасибо!

Re: Ошибка при вызове атрибутов объекта

СообщениеДобавлено: Пт окт 11, 2013 10:32 am
dab
Запускать повторное обновления БД не рекомендую. Такую ситуацию я не предусматриваю.
Смотрите текущую версию БД через интерфейс openLand, или в таблице "class.database_version" и выполняйте только необходимые скрипты обновления.

Re: Ошибка при вызове атрибутов объекта

СообщениеДобавлено: Пт окт 11, 2013 10:44 am
tuapsekad
Про версии как смотреть спасибо! Так и делаем!
Но поле uid_doc_encumbrance добавилось в скрипте 11to12.sql
ALTER TABLE msk.uchastok
ADD COLUMN guid_doc_encumbrance UUID;

а потом был скрип 12to14.sql

Чем поможет смотреть версию БД при данной проблеме? Я бы не решил бы проблему только выполнением скрипта 12to14.sql
Тут комплекс действий необходим!

PS: Скорее всего это моя ошибка была! Перенес дамп БД (10-й версии) на другую машину и потом выполнил скрипты 10to11.sql и 12to14.sql а 11to12.sql пропустил
Для себя уразумел, что при выполнении скриптов надо смотреть лог выполнения скрипта!!!

Спасибо за разъяснения!