Часто в работе бухгалтера или менеджера возникает задача печати специфических документов для определенных клиентов. Например, для одного контрагента необходимо выводить в счете дополнительные условия или примечания, в то время как для всех остальных используется типовая форма. Разберем, как реализовать это эффективно, не прибегая к сложной доработке конфигурации, которая может «отломиться» при обновлении.
Начиная с актуальных версий Библиотеки стандартных подсистем (БСП), встроенных в такие программы, как 1С:Бухгалтерия 3.0 и 1С:Зарплата и Управление Персоналом 3.1, разработчики 1С предоставили пользователям возможность создавать печатные формы без использования Конфигуратора. Рассмотрим, как это работает по шагам:
Администрирование — Печатные формы, отчеты и обработки.Макеты печатных форм.Счет на оплату.дополнительные реквизиты и сведения) непосредственно в область печати.Преимущества этого подхода:
Печать выбранного документа появится новый пункт, соответствующий вашей пользовательской форме, наряду с типовым макетом.Хотя встроенный механизм позволяет создавать формы, он не поддерживает автоматический выбор макета в зависимости от условий (например, выбора формы именно для «того самого» контрагента). Чтобы исключить человеческий фактор и необходимость ручного выбора из списка, мы рекомендуем использовать Расширения конфигурации.
Рассмотрим, как реализовать такую логику:
Расширение конфигурации в режиме Конфигуратора.Обработчик события) процесс формирования печатной формы документа.
// Пример логики подмены макета в расширении
Процедура ПриПечати(ДокументСсылка)
Если ДокументСсылка.Контрагент = НашОсобыйКлиент Тогда
// Подмена стандартного макета на ваш собственный
ИспользоватьМакет = ПолучитьМакет("МакетДляОсобогоКлиента");
Иначе
// Использование стандартного механизма
ИспользоватьМакет = СтандартныйМакет;
КонецЕсли;
КонецПроцедуры
Этот метод является наиболее профессиональным, так как он сочетает в себе надежность типового функционала и гибкость, необходимую вашему бизнесу. Вы не меняете конфигурацию напрямую, но при этом получаете автоматизированное решение.
Для простых правок текста или добавления нескольких полей в макет, используйте штатный инструмент Макеты печатных форм в интерфейсе программы. Это самый быстрый и безопасный путь. Если же ваша задача требует сложной логики (например, «если контрагент из холдинга А, печатать форму с дополнительными условиями, а если из холдинга Б — без них»), лучшим решением будет использование Расширений.
Важное предостережение: избегайте прямой модификации типовых макетов в Конфигураторе. Это путь к проблемам при каждом обновлении программы. Всегда старайтесь выносить изменения во внешние обработки (ВПФ) или в расширения. Таким образом, ваша учетная система останется «чистой» и легко обновляемой, что сэкономит вам немало времени и средств в будущем.