• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

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

    Запись на курс до 25 апреля. Получить промодоступ ...

Ограничени прав пользователя

  • Автор темы rousman
  • Дата начала
R

rousman

мне бухгалтера для менеджеров сказали сделать учетку с ограниченными правами, не просто на чтение, а только на использование функций в журналах - "Счета" и "Товары и реализации "(формирование и печать), и формировать отчеты. И чтоб больше ни к чему доступа не было. Как правильно в конфигураторе выставить права?
 
A

Akulina

На журналы ставишь "чтение". На документы ставишь "чтение", "ввод нового" (далее надо уточнить у бухов, могут ли они корректировать документ, проводить и т.д). Если в документах есть кнопки или поля, которые менеджеры трогать не должны, то при открытии делаешь их недоступными. На отчетах ставишь "Использовать".
Но имей в виду, что им еще понадобится доступ на чтение к справочникам, значения которых они будут выбирать в документах (номенклатура, контрагенты и т.д). А возможно, еще и константы.
 
G

Grrr

Вопрос по теме.
Как ограничить доступ к выбору склада в документах реализации на уровне ролей? Можно ли задать выбор из определенных складов(не всех)?
 
A

Akulina

Можно, причем разными способами. Например, если надо, чтобы всем менеджерам были доступны какие-то определенные склады, то достаточно для элемента справочника добавить реквизит "Доступен для менеджера" и поместить его на форму как флажок. В документе, который оформляет менеджер, в предопределенной процедуре ПриНачалеВыбораЗначения() написать примерно следующее.
Процедура ПриНачалеВыбораЗначения(Идент,ФлагСтанд)
Если Идент="Склад" Тогда
Если НазваниеНабораПрав()="Менеджер" Тогда
ФлагСтанд=0;
СписокДоступныхСкладов=СоздатьОбъект("СписокЗначений");
СпрСклады=СоздатьОбъект("Справочник.Склады");
СпрСклады.ВыбратьЭлементы();
Пока СпрСклады.ПолучитьЭлемент()=1 Цикл
Если СпрСклады.ДоступенДляМенеджера=0 Тогда
Продолжить;
КонецЕсли;
СписокДоступныхСкладов.ДобавитьЗначение(СпрСклады.ТекущийЭлемент());
КонецЦикла;
ВыбЗнач=""; ВыбПоз=0;
Если СписокДоступныхСкладов.ВыбратьЗначение("ВыбЗнач,,ВыбПоз,20,2)=1 Тогда
Склад=ВыбЗнач;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецПроцедуры

Список доступных складов можно определить и при открытии документа. А если менеджеры уж очень много документов оформляют, можно СписокДоступныхСкладов объявить глобальной переменной и формировать этот список для каждого менеджера в процедуре глобального модуля ПриНачалеРаботыСистемы()
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!