• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

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

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

rousman

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

Akulina

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

Grrr

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

Akulina

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

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

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