Фильтр при многопользовательском режиме

Yuriy

Посетитель
#1
Добрый день!

Посмотрел видео
сказано, что есть возможность настройки фильтров для каждого пользователя.
Вопрос для меня интересен, т.к. из более 400 записей, хотелось бы при входе по логину иметь изначальное отображение только записей в зоне ответственности пользователя, с возможностью отключения при необходимости.
 

Vladimir

Администратор
Команда форума
#2
Настройка доступа для каждого пользователя доступна только в многопользовательской работе по сети, которая является платной услугой.
Достаточно подробно описание настройки представлено в разделе платных услуг: http://runabase.ru/forum/threads/nastrojka-urovnja-dostupa-dlja-kazhdogo-polzovatelja.111/

Повторю в общих чертах:

Сначала создаётся обычный объект, особенностью которого должны быть два поля:
- первое, ключевое, должно быть строкового типа, которое будет содержать имена для входа пользователей (можно потом добавить поля с более дательной информацией, например полное ФИО, адреса, контакты и прочее);
- в любом другом месте должно присутствовать строковое поле с подтипом "Пароль".
Наличие этих двух полей говорит программе, что данный объект может выступать в роли объекта пользователей.

Затем создаётся форма связи, которая будет служить для определения доступных объектов/форм каждому пользователю. Форма может быть основана как на объекте пользователей, так и на внутреннем объекте списка объектов/форм.
Важно: связь между этими объектами должна быть равнозначной (а не подчинённой). Равнозначная связь создаёт служебный объект для связи двух объектов, имеющий ссылку на оба источника. Данный служебный объект получает имя, состоящее из двух объектов-источников и по умолчанию он скрыт. Если интересна его внутренняя структура, его можно открыть для доступа. Также, если в него добавить пользовательские поля, это изменит некоторое поведение при открытии дочернего объекта в форме связи.

Теперь с созданной форме производится привязка объектов/форм к пользователю (или пользователей к системному объекту объектов/форм проекта). Для каждого пользователя должен быть задан хотя бы один объект или одна форма, иначе при входе такому пользователю будет сообщаться, что настройка уровня доступа не произведена.

В менеджере, в свойствах проекта, задаётся объект пользователей. При его задании доступ у проекту переходит из режима общего доступа без каких либо ограничений в режим ограниченного доступа с индивидуальной настройкой.

---

Чтобы предоставить каждому человеку свою информацию, для объектов можно создавать неограниченное число форм с различной настройкой (удобно добавлять суффиксы для форм группы пользователей):
- меняется порядок и отображение полей в списке;
- ограничивается доступ к вкладкам;
- определяется управление записями (добавление / изменение / удаление);
- задаётся автоматическое присвоение поле ссылки на объект пользователя по имени входа пользователя;
- определяются фильтры на все поля, перекрывающие настройки фильтров в объектах.

Доступ к объектам требуется предоставлять, только в том случае, если надо разрешить управление записями в окне выбора данных объекта. Если доступ к объекту не предоставлен, то данные по ссылке на поле объекта можно только выбирать, не меняя существующие.

При необходимости на базе одного объекта создаётся две формы: одна только для ввода новых записей, не позволяющая изменять уже существующие, а вторая - для просмотра информации.

Описание и пример упрощённой структура проекта для возможности работы каждого пользователя только со своими записями даётся в посте Работа пользователя только со своими записями.

Если есть вопросы, то уточняйте.
 

Yuriy

Посетитель
#3
Vladimir, добрый день!

Прежде всего хочу сказать спасибо за развернутый и обширный ответ! Так же хочу отметить, что очень приятно получать обратную связь оперативно.

Сетевой версией уже пользуюсь в рамках пробного периода, поэтому и возникают такие вопросы!