Разделить список пользователей на группы с помощью общих реквизитов

Элементарной единицей подсистемы прав доступа является роль. Для роли в явном виде специфицируются особенности доступа к каждому из объектов конфигурации:

Для более сложных случаев, может быть использован механизм шаблонов ограничений доступа:

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

Наконец группы доступа могут быть назначены конкретному пользователю:

Более подробно по теме:

  • Роли
  • Профили групп доступа
  • Группы доступа

У каждой роли присутствует набор прав — Чтение, Добавление, Изменение, Интерактивное удаление и т.д. Те права, что интерактивные, отвечают за доступ к объекту в интерактивном (пользовательском) режиме, то есть через мышь и клавиатуру. Неинтерактивные права нужны для программных операций. Например, пользователь может не иметь интерактивного права открывать складские ордера, но может иметь интерактивное право видеть ссылки на них в отчете.

***

Вопрос 01.22 экзамена 1С:Профессионал по платформе. Как можно разделить список пользователей на группы?

  1. Нет такой возможности
  2. В списке пользователей можно создать группу пользователей
  3. Разделение списка осуществляется с помощью общих реквизитов

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

***

Вопрос 01.52 экзамена 1С:Профессионал по платформе. При настройке ограничений прав доступа (в ролях), при определении
шаблонов:

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

Правильный ответ второй, число параметров не ограничено.

***

Вопрос 01.53 экзамена 1С:Профессионал по платформе. При настройке ограничения прав доступа на уровне записей и полей
базы данных значения параметров для условий определяются…

  1. как переменные, определенные в модуле приложения
  2. как переменные, определенные в модуле приложения с ключевым словом Экспорт
  3. как параметры сеанса
  4. как константы
  5. как переменные определяемые в соответствующем обработчике события

Правильный ответ третий. О параметров сеанса по ссылке.

***

Вопрос 01.58 экзамена 1С:Профессионал по платформе. Роль, как объект конфигурации, отражает…

  1. статус и сферу ответственности ее носителя как сотрудника компании
  2. совокупность доступных определенному пользователю объектов в среде
    «1С:Предприятие»
  3. совокупность прав действий в среде «1С:Предприятие» с возможностью присвоения
    конкретному пользователю
  4. набор параметров пользователя

Правильный ответ третий — роль характеризует как объект, так и действия, которые можрно с ним выполнять.

***

Вопрос 01.12 экзамена 1С:Профессионал по платформе. Для запрета режима непосредственного удаления объектов пользователем необходимо…

  1. в свойствах конфигурации снять флаг «Разрешить непосредственное удаление объектов»
  2. при определении роли для соответствующих объектов снять отметку у флага «Удаление»
  3. при определении роли для соответствующих объектов снять отметку у флага «Интерактивное удаление»
  4. в свойствах роли снять отметку у флага «Разрешить удаление объектов»
  5. в свойствах роли снять отметку у флага «Разрешить интерактивное удаление объектов»

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

Разделить список пользователей на группы

Автор byte777, 22 ноя 2018, 17:32

0 Пользователей и 1 гость просматривают эту тему.

Доброго времени суток!
Вроде можно и так сделать или так не пойдет? На картинках показал.
С помощью общих реквизитов правильно делается. Но как????:dfbbdrfb:
Общие реквизиты насколько я знаю для того что бы много кода не писать одним словом насколько я понимаю. Причем тут разделение списка пользователей не могу понять????:dfbbdrfb:
Объясните пожалуйста. Заранее благодарен.


Все правильно сделал, ничего дополнительно делать не надо. Теперь в справочнике может создавать группы и раскидывать по группам как надо.
Общие реквизиты здесь не нужны.

Помог, нажми спасибо. Не помог, нажми спасибо :-)
Если у Вас есть проблема, то её уже кто то решил @Yandex, @Google


Дело в том что получается вот так на картинке показано. Это я группу создавал.
Видно дело в общих реквизитах. Только не пойму как это реализовать?


свойство реквизита использование

Спасибо за Сказать спасибо


Доброго времени суток!
Не совсем понимаю. :dfbbdrfb::dfbbdrfb::dfbbdrfb:
Создал пользователя Ильдар. Создал Роль Полные все галочки поставил так как роль с полными правами. И справочник Пользователи.
Как теперь разделить список пользователей вообще не понимаю.
Причем тут реквизит. И как мне сделать так что бы пользователь созданный в конфигураторе появился в справочнике Пользователи?
Заранее благодарен. Спасибо.

Добавлено: 23 ноя 2018, 14:07


Цитата: alex0402 от 22 ноя 2018, 19:53
свойство реквизита использование

Не понял причем тут его свойство. И вообще что это за свойство?


Цитата: byte777 от 23 ноя 2018, 14:06Не понял причем тут его свойство. И вообще что это за свойство?

Использование — элемент — реквизит используется только в элементе.
судя по картинкам, во всех реквизитах установлено — Для группы и элемента

Спасибо за Сказать спасибо



Если справочник сделать иерархическим, то появляется такое понятие как группа.
Так вот реквизит может быть:
1) Реквизитом элемента. Реквизит заполняется только у элемента.
2) Реквизитом группы. Реквизит будет доступен только для групп.
3) Реквизитом группы и элемента. Реквизит будет доступен для групп и элементов.

Помог, нажми спасибо. Не помог, нажми спасибо :-)
Если у Вас есть проблема, то её уже кто то решил @Yandex, @Google


Спасибо! Гуру! Разобрался.


  Маркет42 - Место для твоих разработок  

Как можно разделить список пользователей на группы?

Я
   pro3ri

19.09.15 — 22:33

1. 1 100% (2)
2. 2 0% (0)
3. 3 0% (0)

Всего мнений: 2

Добрый вечер!

Вопрос Профа:

Как можно разделить список пользователей на группы?

1. Нет такой возможности

2. В списке пользователей можно создать группу пользователей

3. Разделение списка осуществляется с помощью общих реквизитов

я бы поставил 2, а Вы?

  

Партнерская программа EFSOL Oblako

   Лефмихалыч

1 — 19.09.15 — 22:37

(0) если проф по платформе, то 1

1. 1

   Славен

2 — 19.09.15 — 22:38

Список нельзя, но есть отдельный справочник Группы пользователей

1. 1

   pro3ri

3 — 19.09.15 — 22:39

пруф ответ 3, но вот почему?

   Лефмихалыч

4 — 19.09.15 — 22:46

(3) потому, что в этих тестах бывают ошибки

   pro3ri

5 — 20.09.15 — 10:32

(4) Я про то же, ведь только в 7-ке были общие реквизиты..

   ДенисЧ

6 — 20.09.15 — 10:33

(5) А вот после этого я бы тебя точно уволил..

   pro3ri

7 — 20.09.15 — 10:35

действительно, есть и в 8-ке, ни разу их не использовал.

  

Апош

8 — 20.09.15 — 10:35

(6) интересно, как бы ты его принимал…

TurboConf — расширение возможностей Конфигуратора 1С

Общий реквизит

Общие реквизиты — это общие объекты конфигурации. Они используются для двух различных целей.

Разделение данных

Во-первых, общие реквизиты используются в механизме разделения данных для того, чтобы идентифицировать независимые области данных, создаваемые внутри информационной базы. Для этого используется свойство общего реквизита Разделение данных.


Общий реквизит

Хранение однотипных данных

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

Например, если во всех документах требуется иметь реквизиты Автор и Редактор, нет необходимости создавать такие реквизиты в каждом документе. Достаточно создать два общих реквизита (Автор, Редактор) и указать, в каких документах они будут использоваться.


Общий реквизит


Общий реквизит

Однажды мы обсуждали механизмы ограничения доступа пользователей в 1С и в частности механизм RLS.

Он позволяет разрешить пользователю работать не со всеми документами, а только с теми, в которых указана определенная организация или склад. Отборы производятся динамически, поэтому накладывают определенную нагрузку на работу базы данных.

Общие реквизиты 1С, которые мы с Вами также обсуждали недавно, кроме того, что они являются общими для нескольких документов, реализуют новый механизм безопасности в 1С под названием — разделение данных 1С.

Поговорим об этом подробнее.

Разделение данных 1С

Разделение данных 1С – это механизм аналогичный RLS, организованный на другом принципе работы. Если RLS – это дополнение запросов к SQL условиями, ограничивающими список данных, то разделение данных – это SQL запросы к таблицам, в которых уже заранее отобраны данные.

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

Возможные режимы работы (в одной физической базе данных):

  • Полностью изолированные базы
  • Изолированные базы, но с едиными справочниками
  • Для определенных пользователей можно дать возможность видеть все данные.

Принцип работы:

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

Включаем разделение данных 1С

Добавим общий реквизит Склад.

В свойствах общего реквизита укажем Состав – все документы, у которых есть реквизит Склад.

Свойство Разделение данных – Разделять. При включении свойства 1С предложит создать два параметра сеанса (см. далее).

Значение разделения данных 1С – параметр сеанса с типом равным типу общего реквизита. В данном параметре сеанса будет установлено значение, которое определит фильтр.
Использование разделения данных 1С – параметр сеанса с типом булево, в нем будет включено или выключено разделение данных 1С для данного сеанса.

Использовать разделение данных 1С — Независимо. Это значит, что база будет полностью и окончательно разделена и все пользователи в ней работают в своей области вне зависимости от дальнейших настроек, и даже идентификаторы (GUID) в разных областях одной базы могут быть одинаковы.

Значение общего реквизита-разделителя при этом в момент записи разделяемого справочника и документа устанавливается системой автоматически и поменять его нельзя.

Использовать разделение данных 1С – Независимо и совместно. Это управляемый режим, в котором подразумевается, что одна база может работать в разных режимах и пользователи могут работать в режиме, когда видят всю информацию без ограничений, в зависимости от настроек.

Использовать общий реквизит на формы можно только в режиме Независимо и совместно, так как в режиме Независимо его значение устанавливается системой автоматически по текущему значению параметра сеанса.

Особенности разделения данных 1С для администрирования

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

Свойство общего реквизита-разделителя – Разделение пользователей 1С – позволяет установить доступность списка пользователей в зависимости от использования разделителей.

Если разделитель включен для пользователя, то он будет виден в списке пользователей в режиме 1С Предприятие – иначе не виден.

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

Свойство общего реквизита-разделителя – Разделение аутентификации 1С – позволяет заводить пользователей с одинаковыми именами пользователя для разных частей базы.

Условное разделение 1С

Условное разделение 1С позволяет включать и отключать разделитель на основании данных базы. Таким образом можно создавать цепочки зависимых друг от друга разделителей динамически действующих в том или ином случае.

Чтобы включить условное разделение 1С – нужно указать в свойстве общего реквизита-разделителя – Условное разделение 1С – объект 1С, который будет отвечать за определение факта включения разделения 1С.

Возможно использовать константу с типом булево или реквизит справочника с типом булево.

Важно – у этой константы/этого справочника нужно отключить использование (выбрать Не использовать) в составе разделителей, только тогда его можно будет выбрать.

Загрузка…

5 / 5 / 5

Регистрация: 15.07.2012

Сообщений: 773

1

Как разделить пользователей на три группы?

15.07.2012, 16:20. Показов 4294. Ответов 8


Доброго временм суток. У меня такой вопрос как мне можно поделить пользователей на три группы, при регистрации они ввводят почти одинаковую информацию только перед регистрацией они выбирают в какую группу их отнести и главное что бы после авторизации у них были разные личные кабинеты, по тому что каждая группа выполняет различные операции. Может есть готовое что-то похожее? Зарание огромное спасибо.



0



1178 / 1128 / 94

Регистрация: 31.05.2012

Сообщений: 3,060

15.07.2012, 16:29

2

Ну так добавьте поле в таблицу профиля пользователя в котором и будет храниться номер группы.



0



5 / 5 / 5

Регистрация: 15.07.2012

Сообщений: 773

15.07.2012, 16:38

 [ТС]

3

Цитата
Сообщение от DrobyshevAlex
Посмотреть сообщение

Ну так добавьте поле в таблицу профиля пользователя в котором и будет храниться номер группы.

Я добавлю, а вот как разные кабинеты после авторизации сделать, как это сделать, я просто начинающий «программист»



0



Почетный модератор

Эксперт HTML/CSSЭксперт PHP

16842 / 6720 / 880

Регистрация: 12.06.2012

Сообщений: 19,967

15.07.2012, 16:50

4

создаете новую таблицу с группами, например с тремя полями.
id, name,number — (можно и с двумя, по id — но т.к. вы любите часть удалять и не трункатить все — то лучше третье поле еще)
и в первом первичный ключ, во втором — название группы, в третьем номер группы (1,2,3)
в таблице с юзерами добавляете поле group и туда заносите номер группы из таблицы с группами.

Добавлено через 2 минуты
http://www.anton-pribora.ru/ar… mysql-join



1



91 / 91 / 13

Регистрация: 14.07.2012

Сообщений: 539

15.07.2012, 16:52

5

Цитата
Сообщение от Братуха
Посмотреть сообщение

Я добавлю, а вот как разные кабинеты после авторизации сделать, как это сделать, я просто начинающий «программист»

Сделайте условие на странице если пользователь такой то группы тое ему показывать тото и тото, а если другой то только это так примерно.



0



c4boomb

198 / 166 / 23

Регистрация: 20.04.2011

Сообщений: 750

Записей в блоге: 1

15.07.2012, 19:51

6

Например вы получили из таблицы узеров в переменную $us_group число от 1 до 3
если 1 то группа Админы
если 2 то группа Пользователи
если 3 то группа Василии

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
if($us_group==1){
header("Location:adminka/admin.php");
}
if($us_group==2){
header("Location:user_kabinet/user.php");
}
if($us_group==3){
header("Location:vasya_kabinet/vasya.php");
}
else
{
header("Location:login.php");
}

Этот код отправляет юзеров на 4 страницы взависимости от их группы. На работоспособность не проверял, возможны ошибки!



1



1178 / 1128 / 94

Регистрация: 31.05.2012

Сообщений: 3,060

15.07.2012, 21:36

7

Если уж так, то лучше switch юзать



0



Братуха

5 / 5 / 5

Регистрация: 15.07.2012

Сообщений: 773

15.07.2012, 23:01

 [ТС]

8

Цитата
Сообщение от c4boomb
Посмотреть сообщение

Например вы получили из таблицы узеров в переменную $us_group число от 1 до 3
если 1 то группа Админы
если 2 то группа Пользователи
если 3 то группа Василии

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
if($us_group==1){
header("Location:adminka/admin.php");
}
if($us_group==2){
header("Location:user_kabinet/user.php");
}
if($us_group==3){
header("Location:vasya_kabinet/vasya.php");
}
else
{
header("Location:login.php");
}

Этот код отправляет юзеров на 4 страницы взависимости от их группы. На работоспособность не проверял, возможны ошибки!

А могу ли я просто создать три таблицы в базе данных на каждую группу с одинаковыми значениями, только значения группы разные? Смогу ли я потом при авторизации подключить 3 таблицы с профилями?



0



KOPOJI

Почетный модератор

Эксперт HTML/CSSЭксперт PHP

16842 / 6720 / 880

Регистрация: 12.06.2012

Сообщений: 19,967

15.07.2012, 23:20

9

можете и так. только как вы предполагаете подключать все таблицы сразу?)
просто добавляете к юзерам в таблицу еще одно поле с цифрой, например group и в нем смотря какая группа нужная цифра 1, 2, 3, и т.д.
и затем что то типа

PHP
1
2
3
4
5
6
7
8
9
10
while($row = *_fetch_assoc($res))
{
switch($row['group']) {
case '1': $table = "first";break;
case '2': $table= "second";break;
case .....
}
}
$query="SELECT * FROM $table";
*_query($query); // извлекаете и т.д.

Добавлено через 1 минуту
только появляется вопрос. зачем собственно такое придумывать — лишний свитч (или if-else, как вам угодно) вместо одного простого запроса???



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

15.07.2012, 23:20

9

Такое понятие, как «Реквизиты», знакомо большинству людей. Но если говорить только о работе в программах 1С, то это понятие сужается до полей объекта, которые заполняются пользователем при вводе этого объекта в базу.

Общие реквизиты документа

Для того чтобы в каждом документе не заполнять повторяющиеся поля, используется один, общий для всех объектов реквизит. Это может быть наименование организации, автор документа и т.п. Ведь было бы неудобно описывать один и тот же реквизит отдельно, для каждого объекта метаданных. Такие реквизиты сами по себе представляют собой отдельный объект метаданных платформы 1С, к которому можно обращаться при помощи встроенного языка из модуля документа. Он будет доступен при редактировании формы документа.

Если мы зайдем в программу 1С в режиме Конфигуратор и откроем дерево метаданных, то в разделе «Общие» увидим отдельную ветвь – «Общие реквизиты».

Рис.1 Общие реквизиты
Рис.1 Общие реквизиты

Рассмотрим свойства этих объектов метаданных. Откроем двойным щелчком окно «Свойства».

Рис.2 Откроем двойным щелчком окно «Свойства»
Рис.2 Откроем двойным щелчком окно «Свойства»

 

Нажав на гиперссылку «Открыть», мы увидим список объектов, где используется, а где нет, данный общий реквизит, а также где используется «Автоматически».

Рис.3 Список объектов с реквизитом и без
Рис.3 Список объектов с реквизитом и без

Настройки в свойствах общих реквизитов:

  • «Автоиспользование» указывает на применение для тех объектов, в составе которых стоит «Автоматический».
  • Если в поле «Разделение данных» установлено «Не использовать», реквизит будет использоваться как входящий в состав нескольких объектов конфигурации. При установленном «Разделять», созданный разработчиком общий реквизит будет использоваться как разделитель данных.
Рис.4 Настройки в свойствах общих реквизитов
Рис.4 Настройки в свойствах общих реквизитов

Сразу после установления значения «Разделять», система создаст параметры по умолчанию.

Рис.5 Параметры по умолчанию
Рис.5 Параметры по умолчанию

Поясним на примере. Предположим, у нас имеется общий реквизит «Организация». То есть он будет в каждом объекте. Указанием, что он будет разделителем, в базе сформируется несколько областей, в которых будут храниться сведения в разрезе этого разделителя. В приводимом примере – в разрезе организации. Таким образом, пользователь может поучать данные не только все, но и по определенной области данных – только по своей организации.

Также в программе могут быть данные (области) доступные для всех пользователей. Например, справочник «Банки», «Валюты», «Контрагенты» и т.п. Пользователь вместе с доступом к своим данным имеет и к ним доступ, так как это неразделенные, общие для всех данные.

Создать общий реквизит

Для этого нажмем правой кнопкой мышки на общем реквизите и выберем команду «Добавить» или кнопка «Ins» на клавиатуре.

Рис.6 Создать общий реквизит
Рис.6 Создать общий реквизит

Для примера назовем его «Организация», соответственно тип укажем — СправочникСсылка.Организации.

Рис.7 СправочникСсылка.Организации
Рис.7 СправочникСсылка.Организации

 

Установим разделение данных – «Разделять».

Рис.8 Установим разделение данных
Рис.8 Установим разделение данных

 

В составе документов, где он будет стоять (к примеру, в счете на оплату покупателю), установим – «Использовать».

Рис.9 В составе документов установим «Использовать»
Рис.9 В составе документов установим «Использовать»

 

Открыв форму документа (дерево метаданных «Документы» — «СчетНаОплатуПокупателю», раздел «ФормаДокумента»), мы видим наше добавленное поле и среди элементов, и в списке. Также он автоматически разместился на форме документа.

Рис.10 Форма документа
Рис.10 Форма документа

 

Также он доступен при редактировании формы, и к нему можно обратиться из модуля документа и с легкостью добавлять в любые объекты программы 1С.

Например, указав в составе, что его необходимо вставлять в справочник «Номенклатура», приведет к его появлению в списке реквизитов указанного справочника.

Рис.11 СправочникНоменклатура: Общие реквизиты
Рис.11 СправочникНоменклатура: Общие реквизиты

 

Общие реквизиты ничем не отличаются от обычных, но при этом они могут быть заполнены сразу для нескольких объектов метаданных. Кроме обычного использования общих реквизитов, с их помощью реализуют разделение данных в программе и их области хранения. Но при создании общих реквизитов важно правильно оценить необходимость их введения, так как неправильное их применение может осложнить работу с программой и ее поддержку.

Понравилась статья? Поделить с друзьями:
  • Размер субсидии на открытие малого бизнеса 2022 от центра занятости
  • Размещение подписи относительно реквизитов документа криминалистика
  • Разработка бизнес плана малого предприятия начинается с определения
  • Разрешается ли во время работы станка поправлять режущий инструмент
  • Разрешено ремонтные работы в квартире в какое время суток проводить