Версия сервера: 8.0.0.7124u Версия 8.0.0.7124u Дата сборки 03.07.2019
Есть две таблицы связанные "много к одному". Обе таблицы имеют своё поле связи с картой.У обоих поле связи ключевое. У таблицы 2 второй ключ с счётчиком (MSSQL) Каждая таблица имеет разграничение прав посредством MSSQL
При выборе Слой - Базы данных - Заполнить все базы слоя обновляется только таблица 1 при Слой - базы - участки - Заполнить действует так же Почему не обновляется количество записей в таблице 2 ?
У пользователя имеющего разрешение на изменения в только таблице 2 при Заполнить все базы слоя не появляется никакого сообщения недостаточности прав, но и действий никаких не происходит - записи не обновляются.
Таблицу 2 можно обновить вызвав запрос содержащий поле привязки к карте и Обновить число записей Но есть и тут сложности Если установлено Запрещать групповые изменения атрибутов то количество не обновляется - недостаточно прав. Можно не запрещать обновление количества записей при запрете групповых изменений атрибутов?? Каждая таблица имеет разграничение прав на уровне MSSQL таким образом обновить сможет только пользователь которому позволено изменять его таблицу
Можно было бы сделать через Правила добавлять/удалять запись, но и в правилах только база а не отдельные таблицы.
Pavels Sarkovs написал: Есть две таблицы связанные "много к одному". Обе таблицы имеют своё поле связи с картой.У обоих поле связи ключевое.
Как я писал раньше, в операции "обновление числа записей" участвует только одна таблица, "базовая", т. е. та у которой назначена связь с картой. Остальные таблицы рассматриваются как справочные и не модифицируются. Обе таблицы не могут иметь связь с картой, т. к. такая связь в дизайне запроса по определению одна.
Цитата
У пользователя имеющего разрешение на изменения в только таблице 2 при Заполнить все базы слоя не появляется никакого сообщения недостаточности прав, но и действий никаких не происходит - записи не обновляются.
Мы исправим это, должно выдаваться сообщение об ошибке. Сейчас, если включена опция помещать сообщения об ошибках в окно Сообщения, то сообщения должны появляться там.
Цитата
Если установлено Запрещать групповые изменения атрибутов то количество не обновляется - недостаточно прав. Можно не запрещать обновление количества записей при запрете групповых изменений атрибутов??
Нет, пока нельзя, мы подумаем, как выделить это в отдельное разрешение.
Возможно немного запутал с линковаными таблицами, переформулирую. Слой сеть - база данных - участки - таблицы Таблиц две (может быть три, четыре и т.д) Слой сеть - база данных - участки - Запросы На основе каждой из таблиц создан запрос, в запросе указано поле связи с картой Sys Не трогаем пока связанных, каждая таблица отдельная со своим запросом/формой и полем связи с картой.
Цитата
Дмитрий Озеров написал: Как я писал раньше, в операции "обновление числа записей" участвует только одна таблица, "базовая", т. е. та у которой назначена связь с картой. Остальные таблицы рассматриваются как справочные и не модифицируются. Обе таблицы не могут иметь связь с картой, т. к. такая связь в дизайне запроса по определению одна.
Вопрос: Какая таблица является "базовой", по названию (а если переименую?), какой механизм обновления при использовании Заполнить все базы слоя? Все же таблицы имеют свой запрос и своё поле связи.
2.
Цитата
Дмитрий Озеров написал: Сейчас, если включена опция помещать сообщения об ошибках в окно Сообщения, то сообщения должны появляться там.
Сообщение не появляется.
Цитата
Дмитрий Озеров написал: Нет, пока нельзя, мы подумаем, как выделить это в отдельное разрешение.
В принципе "остроту" частично могло бы снять если бы обновлялись действительно все таблицы слоя. Поясню. Есть Пользователь 1 и Пользователь 2 Есть Таблица 1 и Таблица 2
Пользователь 1 имеет Права на Таблицу 1 и 2 и права на групповые изменения атрибутов Пользователь 2 имеет права только на Таблицу 2 и запрет групповых изменений атрибутов Т.е. пользователь 2 вообще не может обновить количество записей Пользователь 1 может это сделать используя Сжать/Заполнить все базы слоя не бегая по Запросам отдельно каждой таблицы
"Базовой" мы называем таблицу в запросе, у которой выбрано поле связи с картой. Базовой она является относительно остальных таблиц в этом запросе. Остальные таблицы обычно справочные.
При выполнении любой операций с базой данных всегда используется какой-то один запрос.
Если запрос не выбран явно, используется запрос "по-умолчанию", выбранный в базе данных. Часто он называется "Основной".
В диалоге "Базы данных" кнопки Сжать и Заполнить работают с запросом по-умолчанию.
В браузере базы данных используется запрос, который соответствует текущей выбранной форме.
Ещё раз уточню: Сжать и Заполнить (как и других операции манипулирования данными) всегда используют какой-то один запрос.
Версия сервера: 8.0.0.7161u Версия монитора: 8.0.0.7161u Версия 8.0.0.7161u
Перестали добавляться записи в не основной запрос/таблицу. При выборе формы - Обновить число записей - сообщение "Будет добавлено 2 записи" Добавление не происходит. Удаление работает. Не понимаю где искать причину.