Нужно ЗАПРОСОМ потянуть РОЛЬ

1. dreamcreal 06.07.20 19:46 Сейчас в теме
ЗАДАЧА:

В РОЛЯХ выбрать ЗАПРОСОМ всех пользователей с ролью "АБВ"

Как?

Пожалуйста, напишите хоть что-нибудь, сегодня обещала сдать работу.

Конфигурация УТ 2.3 Украина.
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
14. dreamcreal 06.07.20 23:29 Сейчас в теме
Предварительное решение в параметрах сеанса.
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. soft_wind 06.07.20 20:03 Сейчас в теме
(1)
Как?

- Ни как!!!

только перебором пользователей ИБ с проверкой содержит Роль

примерный код
		ПользовательИБ = ПользователиИнформационнойБазы.НайтиПоУникальномуИдентификатору(Пользователь.ИдентификаторПользователяИБ);
		Если ПользовательИБ = Неопределено Тогда
			Сообщить("Пользователь: " + Пользователь + " не найден среди пользователей базы!");
			Возврат;
		КонецЕсли;
			
		Если ПользовательИБ.Роли.Содержит(лкРоль) Тогда
			лкСтр = ДоступОбъектов.Добавить();			
			лкСтр.Объект = лкОписание;
			лкСтр.Синоним = лкСиноним;
		КонецЕсли;
Показать
Sashares; +1 Ответить
4. nomad_irk 68 06.07.20 20:15 Сейчас в теме
(1)Список пользователей с определенным набором ролей можно из конфигуратора вывести, даже программировать ничего не нужно.
5. dreamcreal 06.07.20 20:31 Сейчас в теме
(4) Уточните пожалуйста.
8. nomad_irk 68 06.07.20 20:44 Сейчас в теме
(5)В списке пользователей ИБ можно накладывать отборы по ролям и сделать "Вывести список".
13. dreamcreal 06.07.20 21:25 Сейчас в теме
(8) Спасибо, это для себя больше...
31. Xershi 1473 08.07.20 12:23 Сейчас в теме
(1) если есть профили пользователей, то 1С вывела роли туда.
Если там этого нет, то запрос это данные пользовательские, а роли это конфигуратор.
Поэтому обычным запросом никак, а прямым к базе можно.
34. wau8824ru 22 09.07.20 07:01 Сейчас в теме
(1)
АДАЧА:

В РОЛЯХ выбрать ЗАПРОСОМ всех пользователей с ролью "АБВ"

Как?

Пожалуйста, напишите хоть что-нибудь, сегодня обещала сдать работу.

Конфигурация УТ 2.3 Украина.

Может поздно, но
	// Пользователи
	ВсеПользователи = Новый ТаблицаЗначений;
	ВсеПользователи.Колонки.Добавить("Пользователь");
	ВсеПользователи.Колонки.Добавить("ГЗИДОсновнаяДата");
	ВсеПользователи.Колонки.Добавить("ГЗИДОграничениеРегламентнойИнформацииУпр");
	ВсеПользователи.Колонки.Добавить("ГЗИДОграничениеРегламентнойИнформацииРегл");
	ВсеПользователиИБ = ПользователиИнформационнойБазы.ПолучитьПользователей();
	Для Каждого Элт Из ВсеПользователиИБ Цикл
		ПользовательПоКоду = Справочники.Пользователи.НайтиПоКоду(Элт.Имя);
		Если ПользовательПоКоду <> Неопределено Тогда
			НовСтр = ВсеПользователи.Добавить();
			НовСтр.Пользователь = ПользовательПоКоду;
			НовСтр.ГЗИДОсновнаяДата = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ПользовательПоКоду, "ГЗИДОсновнаяДатаEpartner");
			НовСтр.ГЗИДОграничениеРегламентнойИнформацииУпр = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ПользовательПоКоду, "ГЗИДОграничениеРегламентнойИнформацииУпрEpartner");
			НовСтр.ГЗИДОграничениеРегламентнойИнформацииРегл = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ПользовательПоКоду, "ГЗИДОграничениеРегламентнойИнформацииРеглEpartner");
		КонецЕсли;
	КонецЦикла;
Показать

есть справочник Пользователи, а есть объект ПользователиИнформационнойБазы
35. wau8824ru 22 09.07.20 07:59 Сейчас в теме
(1)
ЗАДАЧА:

В РОЛЯХ выбрать ЗАПРОСОМ всех пользователей с ролью "АБВ"

Как?

С ролями побывал так
	// Пользователи
	ВсеПользователи = Новый ТаблицаЗначений;
	ВсеПользователи.Колонки.Добавить("Пользователь");
	ВсеПользователи.Колонки.Добавить("Роли");
	ВсеПользователи.Колонки.Добавить("ОткрытьМесяцев");
	ВсеПользователиИБ = ПользователиИнформационнойБазы.ПолучитьПользователей();
	Для Каждого ПользовательИБ Из ВсеПользователиИБ Цикл
		ПользовательПоКоду = Справочники.Пользователи.НайтиПоКоду(ПользовательИБ.Имя);
		Если ПользовательПоКоду <> Неопределено Тогда
			НовСтр = ВсеПользователи.Добавить();
			НовСтр.Пользователь = ПользовательПоКоду;
			РолиПользователяИБ = Новый СписокЗначений;
			ОткрытьМесяцевПользователяИБ = Новый СписокЗначений;
			Для Каждого Элт Из ПользовательИБ.Роли Цикл
				ИмяРоли = СтрЗаменить(Элт.Имя, "Epartner", "");
				РолиПользователяИБ.Добавить(ИмяРоли);
				ИскомаяРольЗамены = Неопределено;
				Если ИмяРоли = "ПолныеПрава" Тогда ИскомаяРольЗамены = Число(СтрЗаменить(ИмяРоли, "ПолныеПрава", "-12")); КонецЕсли;
				Если ИмяРоли = "ПравоАдминистрирования" Тогда ИскомаяРольЗамены = Число(СтрЗаменить(ИмяРоли, "ПравоАдминистрирования", "-999")); КонецЕсли;
				Если ИмяРоли = "ПравоБухгалтер" Тогда ИскомаяРольЗамены = Число(СтрЗаменить(ИмяРоли, "ПравоБухгалтер", "-12")); КонецЕсли;
				Если ИмяРоли = "ПравоМенеджерПоТендерам" Тогда ИскомаяРольЗамены = Число(СтрЗаменить(ИмяРоли, "ПравоМенеджерПоТендерам", "-6")); КонецЕсли;
				Если ИмяРоли = "ПравоМенеджерПоЗакупкам" Тогда ИскомаяРольЗамены = Число(СтрЗаменить(ИмяРоли, "ПравоМенеджерПоЗакупкам", "-3")); КонецЕсли;
				Если ИмяРоли = "ПравоМенеджерПоПродажам" Тогда ИскомаяРольЗамены = Число(СтрЗаменить(ИмяРоли, "ПравоМенеджерПоПродажам", "-2")); КонецЕсли;
				Если ИскомаяРольЗамены <> Неопределено Тогда
					ОткрытьМесяцевПользователяИБ.Добавить(ИскомаяРольЗамены);
				КонецЕсли;
				ОткрытьМесяцевПользователяИБ.СортироватьПоЗначению(НаправлениеСортировки.Возр);
			КонецЦикла;
			НовСтр.Роли = РолиПользователяИБ;
			НовСтр.ОткрытьМесяцев = ОткрытьМесяцевПользователяИБ;
		КонецЕсли;
	КонецЦикла;
Показать
3. MuxaH 06.07.20 20:10 Сейчас в теме
Точно, штатными средствами никак.
6. dreamcreal 06.07.20 20:35 Сейчас в теме
Че делать???

Есть группа условно в одном подразделении:

1) Менеджер (видит свои РТУ и РТУ продавцов)
2) Продавец (видят только свои РТУ)
3) Продавец (видят только свои РТУ)


Менеджер должен видеть РТУ продавцов.
Я хотела список продавцов запросом получить.
7. Sashares 34 06.07.20 20:42 Сейчас в теме
(6)И в чем проблема то?
Сначала кодом получаете всех пользователей, у которых есть роль - пример кода в (2), в какой нибудь массив.
Потом можете этот массив пользователей передать в запрос и использовать как хотите.
9. dreamcreal 06.07.20 20:52 Сейчас в теме
(7)
В модуле документа самого что ли?
10. Sashares 34 06.07.20 20:54 Сейчас в теме
(9)Где хотите.
Хоть в обработке.
Вы задачу не озвучили.

Ваш вопрос - как получить запросом пользователей с ролью...
Ответь - получить пользователей с ролью до запроса и передать их в запрос.
17. dreamcreal 07.07.20 14:39 Сейчас в теме
(10)

Вы задачу не озвучили.


Задача была озвучена в стартопике. Будьте пожалуйста внимательнее.

ЗАДАЧА:

В РОЛЯХ выбрать ЗАПРОСОМ всех пользователей с ролью "АБВ"
11. dreamcreal 06.07.20 21:22 Сейчас в теме
12. dreamcreal 06.07.20 21:23 Сейчас в теме
Здесь желательно все прописать.
Прикрепленные файлы:
14. dreamcreal 06.07.20 23:29 Сейчас в теме
Предварительное решение в параметрах сеанса.
15. Fox-trot 156 07.07.20 09:44 Сейчас в теме
афигеть
тогда и в журнале регистраций найдешь решение
18. dreamcreal 07.07.20 14:40 Сейчас в теме
(15)
При чем здесь журнал регистраций? Какое он имеет отношение к ограничению доступа?
30. Fox-trot 156 07.07.20 17:35 Сейчас в теме
точно такое же имеет отношение как и параметры сеанса. никакое
16. nomad_irk 68 07.07.20 09:55 Сейчас в теме
Одному мне не понятно, что тут происходит? :)
Началось с вопроса про "как получить пользователей с определенной ролью запросом?", а превратилось все в ограничение RLS по пользователю.
Забористая трава нынче :)
Sashares; Fox-trot; +2 Ответить
19. dreamcreal 07.07.20 14:44 Сейчас в теме
(16)

ЗАДАЧА:

В РОЛЯХ выбрать ЗАПРОСОМ всех пользователей с ролью "АБВ"



а превратилось все в ограничение RLS по пользователю.

Для ограничений RLS используются запросы. Нет никакого противоречия.
20. nomad_irk 68 07.07.20 14:50 Сейчас в теме
(19) Задача не имеет прямого решения.
Другие способы по озвученным вами условиям были уже озвучены.
В конечном итоге выяснилось, что необходимо выполнить ограничения в RLS. Каким образом это связано с ролями и пользователями с ролью "АБВ" - известно только вам.
21. dreamcreal 07.07.20 15:02 Сейчас в теме
(20) RLS не в ролях настраивается?
23. nomad_irk 68 07.07.20 15:04 Сейчас в теме
(21)Нет. RLS настраивается в том объекте, доступ к которому вы собираетесь ограничивать.
26. dreamcreal 07.07.20 15:09 Сейчас в теме
(23) Почему???
Я же открываю объект "Роль" и на ее вкладке делакю настройки.
Прикрепленные файлы:
28. nomad_irk 68 07.07.20 15:13 Сейчас в теме
(26)Вы еще при этом выбираете объект, в данном случае Документ1 + действие с объектом, на которое распространяется ограничение.
22. nomad_irk 68 07.07.20 15:03 Сейчас в теме
(19)Так они используются не в ролях и не выбирают пользователей с определенной ролью
24. dreamcreal 07.07.20 15:06 Сейчас в теме
(22) Используются не в ролях, а настраиваются в ролях.

не выбирают пользователей с определенной ролью

Кто не выбирает?
25. nomad_irk 68 07.07.20 15:08 Сейчас в теме
(24)В ролях настраиваются шаблоны ограничений, это несколько другое, чем само ограничение.
Кто не выбирает?

Запросы.
27. dreamcreal 07.07.20 15:11 Сейчас в теме
(25)
Кто не выбирает?

Запросы.


Вот именно. Это я и увидела, что запрос не может потянуть роль.
29. nomad_irk 68 07.07.20 15:15 Сейчас в теме
(27)Так если бы вы озвучили вашу проблему сразу понятным языком(со скриншотами, что и где вам нужно сделать), то не пришлось бы устраивать битву экстрасенсов протяженностью вот уже в 28 сообщений.
32. Xershi 1473 08.07.20 12:31 Сейчас в теме
(19) может вам просто нужно сравнить результат запрос разрешенные и без?)
Но без нужно выполнить в привелигированном режиме и поместить результат уже с разрешенными)
33. tindir 09.07.20 05:52 Сейчас в теме
О! А потом я потрачу 20-25 часов для того что бы выкинуть все запросы на проверку РОЛИ в методах "при создании на сервере" и воткнуть все в РЛС. ОБОЖАЮ легась. За него хорошо плотють =)
Оставьте свое сообщение
Вакансии
Программист 1С
Казань
зарплата от 150 000 руб.
Полный день

Программист 1С:ERP
Москва
зарплата от 100 000 руб.
Полный день

Разработчик 1С
Москва
зарплата от 200 000 руб. до 300 000 руб.
Полный день

Программист 1С (удаленно)
Самара
зарплата от 230 000 руб. до 230 000 руб.
Полный день

Руководитель группы разработки 1С
Москва
зарплата от 250 000 руб. до 250 000 руб.
Полный день