Из документа пользователь видит список печатных форм.
Как убрать их всех из списка, оставив только одну нужную?
Или, например, чтобы при попытке распечатки выводилось сообщение о невозможности этого действия.
Подскажите плиз, кто знает
---
исправляюсь -
не процедуру Печать из ПечатьОбщихФорм, а

```1c
    &Вместо("СформироватьПечатнуюФормуСчетФактура")
    Функция Расш_СформироватьПечатнуюФормуСчетФактура(СтруктураТипов, ОбъектыПечати, ПараметрыПечати) Экспорт
```

и внутри нее уже условие

```1c
    Если РольДоступна("...") Тогда // Добавлено условие Проверка на принадлежность к РОЛИ
```
---
Сообщение было скрыто модератором.
---
ковырять методы общих модулей относительно печати в расширении, например
если это ваша конфа, то подойдет любой костыль согласно фантазии.
---
а можно подробнее?
---
Нужно пользователям, принадлежащим определенной группе, не видеть все печ формы, кроме одной конкртеной. Остальные пользователи все видят как обычно. Конфигурацию менять нельзя. 1С:ERP Управление предприятием 2. Есть расширение.
---
отлично, вы уже наполовину решили задачу.
осталось мелочь: найти метод где формируется набор печю.форм,
добавить этот метод в расширение и написать условие
Для тПеч Каждого мПечФ
Если ЭтомуНЕДавать
  Если тПеч.Имя =
---
.
---
ничего не понятно, но я попробую))
---
В общем модуле "УправлениеПечатьПереопределяемый" есть метод "ПередДобавлениемКомандПечати", вызываемый как правило при открытии формы для заполнения меню печатных форм. Предлагаю Вам в расширении дополнить данный метод:
1. Проверить права пользователя;
2. Отключить стандартное формирование команд печати;
3. Самостоятельно добавить нужную команду печати в список команд.
---
спасибо, пойду искать
---
режим работы тонкий клиент или обычный? Если тонкий, в модулях менеджера документов есть функция БСП "ДобавитьКомандыПечати", ну и меняйте ее согласно ролей например... и не нужно лезть в общие модули управления печатью, там методы все универсальные, а вам конкретный объект нужен, а еще лучше добавить этот метод (ДобавитьКомандыПечати) в расширении с параметром ВыполнитьДо....
---
А не могли бы Вы раскрыть мысль про доработку процедуры в модуле менеджера? Особенно что касается "ВыполнитьДо..."
---
добавляем расширение (если его нет), заходим в модуль менеджера нужного объекта (например Расходная накладная) ищем процедуру "ДобавитьКомандыПечати" правой кнопкой мыши на нее "тыц" жмем "добавить в расширение" выбираем свое, платформа спрашивает как добавить До, вместо или после (вызов), выбираем вместо, открывается модуль менеджера этого объекта в вашем расширении с добавленной процедурой, в теле обработчика будет стоять метод "ПродолжитьВызов..." копируем сюда все что есть в оригинальной процедуре и добавляем свои условия...
---
при чем можно выполнить оригинальный код "Продолжить вызов" если не соблюдены какито условия, например РольДоступа("ПолныеПрава"), иначе выполняем свой код... но лучше использовать вместо "рольдоступна", методы из БСП, потому как роли в современных БСП привязываются через группы доступа, то-есть в пользователе этих ролей может не быть
---
В общем-то получилось, что расширение метода в модуле менеджера отличается от расширения метода в общем модуле только тем, что дополнительно не анализируется имя формы, для которой идет построение списка печатных форм. В остальном алгоритм тот же.

Из преимуществ, какие я вижу: отключены печатные формы будут везде, где документ является поставщиком команд печати, т.е. не только в самом документе, но и в журналах. Из недостатков: не отключаются печатные формы из других расширений, а также внешние печатные формы.
---
Я внесла такие изменения (может конечно и топорно) в расширении - обработку добавила ПечатьОбщихФорм и в модуле менеджера прописала:

&Вместо("Печать")
Процедура Расш_Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт

и свои условия...
---
проверка на принадлежность к роли
---
исправляюсь -
не процедуру Печать из ПечатьОбщихФорм, а

```1c
    &Вместо("СформироватьПечатнуюФормуСчетФактура")
    Функция Расш_СформироватьПечатнуюФормуСчетФактура(СтруктураТипов, ОбъектыПечати, ПараметрыПечати) Экспорт
```

и внутри нее уже условие

```1c
    Если РольДоступна("...") Тогда // Добавлено условие Проверка на принадлежность к РОЛИ
```
---
А что, в этих ваших УФ уже отменили настройку прав пользователя на обработку?
---
А эти права случайно через какой-то справочник не настраиваются, как у отчётов? (Под рукой ERP нет, проверить не могу)
---
Возможно, есть и другие варианты. Но я их не нашла. Буду рада если предложите альтернативу, кто сталкивался.