Ограничение видимости внешнего отчета для определенных пользователей

1. MarineTon 15.11.23 14:44 Сейчас в теме
Помогите пожалуйста доработать внешний отчет.

При загрузке 1С УТ в пользовательском режиме автоматически выскакивает внешний отчет "Светофор" (см. картинку)
Необходимо настроить отчет таким образом, чтоб он загружался только у сотрудников отдела продаж и у руководителей, а у остальных пользователей не высвечивался.
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. OiSorry 15.11.23 14:56 Сейчас в теме
(1)
Допустим добавить доп. реквизит с типом булево пользователю или группе пользователей и потом при открытии отчёта его анализировать
Можно создать или привязаться к роли пользователя или к его группе доступа и анализируя её также принимать решение выводить отчёт или нет
3. MarineTon 15.11.23 15:28 Сейчас в теме
(2) Для этого отчета создан Регистр Сведений, на основании которого определяется, какие данные будут высвечиваться при загрузке отчета.
Если добавить в список выбора еще одну позицию, например "Бухгалтерия", то как прописать в отчете такие ограничения?

Сейчас Процедура ПриОткрытии выглядит так:
&НаКлиенте
Процедура ПриОткрытии(Отказ)                     
	
	//ЕстьОграничениеПоПользователю = ЕстьОграничениеПоПользователю(); 	 
	
	Ограничение = ПолучитьОграничениеПоПользователю();
	
	ЭтотОбъект.СтандартныйПериод.ДатаНачала = НачалоМесяца(ТекущаяДата());
	ЭтотОбъект.СтандартныйПериод.ДатаОкончания = ТекущаяДата();
	ЭтотОбъект.ПереключательРежимов = "Кнопки";
	ПереключательРежимовПриИзменении("");  
	
  Если ЗначениеЗаполнено(Ограничение) Тогда
		
		Если ТипЗнч(Ограничение) = Тип("СправочникСсылка.Пользователи") Тогда
			
			НастройкаОтчета = "Менеджер по продажам"; 
			
		ИначеЕсли ТипЗнч(Ограничение) = Тип("СправочникСсылка.СтруктураПредприятия") Тогда
			
			НастройкаОтчета = "Филиал";	
			
		Иначе 
			НастройкаОтчета = "Отдел продаж";	
		КонецЕсли;
		
			
		ЗначениеОтбора = Ограничение; 
		
		Элементы.ЗначениеОтбора.Видимость = Истина;
		
		Если НастройкаОтчета = "Менеджер по продажам" Тогда
			Элементы.НастройкаОтчета.Доступность = Ложь;
			Элементы.ЗначениеОтбора.Доступность = Ложь;
		КонецЕсли;
		
	Иначе
		
		НастройкаОтчета = "Компания АГАТ";	
		
	КонецЕсли;	 
	
	ОбновитьНаСервере();
	
КонецПроцедуры
Показать
Прикрепленные файлы:
4. VmvLer 15.11.23 15:55 Сейчас в теме
(3) Очевидно для "Бухгалтерия" необходимо создать новую настройку в конфигураторе.

Если там только отборы/оформление настроить - относительно просто.
Если модифицировать запрос - это сложнее.

Чтобы не показывать отчет вовсе логично создать новую роль без настройки прав и т.п.

и далее в коде

&НаКлиенте
Процедура ПриОткрытии(Отказ)  

		Если НЕ РольДоступна("Доп_ВидитСветофор")  Тогда
			Отказ = Истина;
                       Возврат;
		КонецЕсли;
.....

КонецПроцедуры
Показать
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот