Попробовал найти готовое решение на просторах интернета, но безуспешно…
Поэтому пришлось ковыряться самому(правда не без помощи подсказок знающих людей).
Не судите строго в 8.1 программировать только учусь…
Ну так вот задача казалось бы простая, да вот решение нигде не обсуждалось(по крайней мере я не нашел)…
Выкладываю для тех, кто в программировании также как и я не силен, но надо…
Заходим в конфигураторе в Справочник Номенклатура ->ФормаСписка(тоже самое надо сделать будет и в ФормаВыбора)->процедура ПередОткрытием.
Ищем код:
// восстанавливаем выделенные элементы у СписокЦенОстатков
СписокПомеченныхЭлементовТиповЦен = ВосстановитьЗначение("Справочники.Номенклатура.ФормаСписка.СписокПомеченныхЭлементовТиповЦен");
УправлениеЗапасами.ОбновитьСписокТиповЦен(СписокЦенОстатков, СписокПомеченныхЭлементовТиповЦен);
Далее добавляем следующее:
Если НЕ РольДоступна("ПолныеПрава") Тогда
СписокЦенОстатков.Удалить(СписокЦенОстатков.Индекс(СписокЦенОстатков.Найти("Закупочная", "Наименование")));
КонецЕсли;
Тоже самое проделываем для ФормаВыбора.
после этого у всех пользователей у которых нет роли «ПолныеПрава», Тип цены «закупочная» в выборе типов цен в справочнике Номенклатура пропадет.
P.S.: Это действие не закрывает получение закупочных цен через отчеты, поэтому для «умных пользователей» необходимо дорабатывать еще и отчеты, в моем случае касиры работают только в интерфейсе кассира, да и уровень «делаем только то что показали»
P.S.2: Не забывайте перед любыми действиями с конфигурацией делать копию, поскольку ответственность за работоспособность базы лежит только на Вас.
Удачи в работе.