К статье
Практический материал

Документы и Печать · 12 мин

Как задать имя файла при сохранении печатной формы в 1С

Как задать имя файла при сохранении печатной формы 1С: стандартные способы, настройка автоматических имён, код для разработчиков и решение типичных проблем.

При сохранении печатной формы из 1С в файл — PDF, Excel или табличный документ MXL — программа подставляет имя автоматически, и часто оно неудобно: «ТабличныйДокумент», «Печать1» или длинная строка с датой и номером документа. В результате папка с сохранёнными документами превращается в набор непонятных файлов, которые приходится открывать по одному, чтобы понять, что внутри.

Задать осмысленное имя файла можно на нескольких уровнях: вручную в диалоге сохранения, через настройки конфигурации в типовых решениях на БСП (Библиотека стандартных подсистем) или программно — если вы дорабатываете конфигурацию. Выбор способа зависит от того, кто вы в этой ситуации: пользователь, которому нужно сохранить пару файлов, администратор, настраивающий типовое поведение, или разработчик, формирующий печатные формы кодом.

Ниже разобраны все три сценария с конкретными действиями, ограничениями и проверкой результата. Отдельно рассмотрены типичные ошибки — например, когда заданное имя «сбрасывается» при пакетной печати или когда в имени оказываются недопустимые символы и сохранение завершается ошибкой.

Как 1С формирует имя файла по умолчанию

Когда вы открываете печатную форму и выбираете «Файл → Сохранить» или «Сохранить как», 1С предлагает имя автоматически. Откуда оно берётся, зависит от конфигурации и способа формирования печати.

В типовых конфигурациях на базе Библиотеки стандартных подсистем (Управление торговлей, ERP, Бухгалтерия предприятия, Зарплата и управление персоналом) имя обычно строится из представления документа: вида, номера и даты. Например, при сохранении счёта на оплату вы можете увидеть что-то вроде «Счет на оплату 000000123 от 15.03.2026». Это удобнее, чем нейтральное «ТабличныйДокумент», но не всегда соответствует принятой в компании системе именования.

В самописных и старых конфигурациях, а также при выводе произвольного табличного документа, имя часто формируется из заголовка формы или не задаётся вовсе — тогда диалог сохранения предлагает пустое поле или служебное название. Понимание этого механизма важно: если имя вас не устраивает, нужно определить, откуда оно подставляется, и менять именно там, а не бороться с последствиями.

Ручное задание имени при сохранении

Самый простой способ — задать имя непосредственно в момент сохранения. Он не требует ни прав администратора, ни доработки конфигурации и подходит для разовых операций.

Порядок действий одинаков практически во всех конфигурациях. Откройте печатную форму документа, нажмите кнопку сохранения на панели инструментов формы (значок дискеты) или выберите «Файл → Сохранить как». В открывшемся диалоге выберите папку, укажите тип файла (PDF, лист Excel, табличный документ) и впишите нужное имя в поле «Имя файла», полностью заменив предложенное программой.

Учитывайте ограничения операционной системы на имена файлов. В Windows нельзя использовать символы \ / : * ? " < > |, а также зарезервированные имена устройств. Если вы впишете недопустимый символ, система либо откажет в сохранении, либо файл сохранится с обрезанным именем. Также избегайте слишком длинных имён: при глубокой вложенности папок полный путь может превысить ограничение в 260 символов для классических приложений Windows.

Ручное сохранение с нужным именем
  1. 1
    Откройте печатную форму документа
  2. 2
    Нажмите «Сохранить как» (иконка дискеты или меню «Файл»)
  3. 3
    Выберите папку и формат файла (PDF, Excel, MXL)
  4. 4
    Сотрите предложенное имя и введите своё без символов \ / : * ? " < > |
  5. 5
    Нажмите «Сохранить» и откройте файл для проверки

Автоматическое имя в типовых конфигурациях на БСП

В конфигурациях на Библиотеке стандартных подсистем имя файла при сохранении печатной формы формирует подсистема печати. Как правило, она берёт представление объекта — то самое, что вы видите в заголовке формы документа. Поэтому первое, что стоит проверить, — корректно ли заполнены номер и дата документа: именно из них собирается имя.

В ряде конфигураций представление документа можно влиять через настройки нумерации и префиксов. Например, если организация использует префикс «ОП», он попадёт и в имя файла. Это удобно, когда документы разных организаций сохраняются в одну папку — файлы сразу различаются по префиксу.

Если типовое поведение не подходит — например, нужно включать в имя контрагента или сумму — без доработки не обойтись. В БСП для этого предусмотрены программные переопределяемые процедуры в общих модулях подсистемы печати, где можно изменить формирование имени файла. Такая доработка требует аккуратности: при обновлении конфигурации изменения в типовых модулях могут быть затёрты, поэтому правильнее использовать расширения конфигурации.

Программное задание имени файла для разработчиков

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

При программной записи табличного документа имя передаётся первым параметром метода Записать:

ТабДокумент.Записать("C:\Документы\Счет_123_Иванов.pdf", ТипФайлаТабличногоДокумента.PDF);

При работе с подсистемой печати БСП имя файла печатной формы можно задать через коллекцию печатных форм — у каждой печатной формы есть реквизит, отвечающий за имя файла (в актуальных версиях БСП это свойство ИмяФайлаПечатнойФормы табличного документа, которое подсистема использует при сохранении и отправке по почте). Заполнив его в модуле менеджера печати объекта, вы обеспечите осмысленные имена при сохранении, отправке по e-mail и выгрузке.

При формировании имени в коде обязательно очищайте строку от недопустимых символов. В типовых решениях для этого есть функции работы со строками (например, в БСП — подсистема работы со строками с функцией сокращения и очистки имён файлов). Самостоятельная очистка обычно сводится к замене запрещённых символов на дефис или подчёркивание и обрезке результата до разумной длины.

bsl
ИмяФайла = СтрШаблон("Счет_%1_%2", НомерДокумента, Формат(ДатаДокумента, "ДФ=yyyy-MM-dd")); ИмяФайла = СтрЗаменить(ИмяФайла, "/", "-"); ИмяФайла = СтрЗаменить(ИмяФайла, "\\", "-"); ТабДок.ИмяФайлаПечатнойФормы = ИмяФайла;

Пакетная печать и сохранение нескольких форм

Отдельная ситуация — печать и сохранение сразу нескольких документов: например, комплекта из счёта, накладной и счёта-фактуры или массовая печать по списку документов. Здесь ручное переименование непрактично, а автоматика ведёт себя по-разному.

При групповом сохранении из формы печати комплекта каждая печатная форма обычно получает имя по своему представлению. Если два документа дают одинаковое имя, программа добавляет порядковый номер или перезапрашивает имя — поведение зависит от конфигурации и версии платформы. Проверьте на тестовом комплекте, как ведёт себя ваша конфигурация, прежде чем сохранять сотни файлов.

Для регулярной массовой выгрузки с собственной логикой имён разумнее сделать отдельную обработку: она перебирает документы, формирует печатные формы, строит имя по заданному шаблону (например, «Дата_Контрагент_Номер») и записывает файлы в указанную папку. Это типовая задача, и её решение окупается уже при десятках сохраняемых документов в месяц.

Способы задать имя файла

Ручной ввод в диалоге сохранения

Подходит для разовых сохранений. Не требует прав и доработок, но не масштабируется и подвержен опечаткам.

Настройки представления и нумерации

Влияет на автоматическое имя в типовых конфигурациях. Ограничено составом представления документа — контрагента или сумму так не добавить.

Программное задание через код или расширение

Полный контроль над шаблоном имени, работает при пакетной печати и отправке по почте. Требует разработки и поддержки при обновлениях.

Внешняя обработка массовой выгрузки

Оптимальна для регулярного сохранения множества документов по единому шаблону. Нужна одноразовая разработка или готовая обработка.

Типичные ошибки и способы их избежать

Наиболее частая проблема — ошибка сохранения из-за недопустимых символов в автоматически сформированном имени. Классический пример: номер документа содержит дробь «12/45», и при сохранении в PDF система интерпретирует слэш как разделитель пути. Решение — очищать номер при формировании имени либо вручную убирать символ в диалоге сохранения.

Вторая распространённая ситуация — файлы с одинаковыми именами перезаписывают друг друга при пакетном сохранении в одну папку. Это происходит, когда шаблон имени не включает уникальный элемент: номер документа, дату со временем или GUID. Всегда включайте в шаблон хотя бы один уникальный идентификатор.

Третья группа ошибок связана с правами доступа: пользователь сохраняет файл в сетевую папку, куда у него нет права записи, и получает ошибку, ошибочно принимая её за проблему с именем. Проверяйте сохранение в локальную папку — если там всё работает, причина в правах, а не в имени файла.

Типичные ошибки
01
Недопустимые символы из номера документа попадают в имя — сохранение завершается ошибкой или файл сохраняется не туда
02
Шаблон имени без уникального элемента — при пакетном сохранении файлы перезаписывают друг друга
03
Доработка типовых модулей вместо расширения — изменения теряются при обновлении конфигурации
04
Слишком длинное имя в глубоко вложенной папке — превышение лимита длины пути в Windows
05
Сохранение в сетевую папку без прав записи — ошибка ошибочно списывается на имя файла

Как проверить результат

После настройки или доработки проверьте результат на контрольном примере, прежде чем применять решение в рабочем режиме. Сохраните печатную форму документа с типичным номером и документа с «проблемным» номером — содержащим слэш, точку или пробелы.

Откройте сохранённые файлы и убедитесь, что содержимое соответствует ожиданиям: верный документ, читаемая печатная форма, корректный формат. Затем проверьте, что имена файлов сортируются в папке так, как удобно для поиска, — например, если имя начинается с даты в формате «год-месяц-день», файлы выстроятся хронологически.

Для программных доработок дополнительно проверьте смежные сценарии: отправку печатной формы по электронной почте (имя файла используется как имя вложения) и сохранение из мобильного или веб-клиента, если они применяются — поведение диалогов сохранения там может отличаться.

Контрольные точки

Как проверить результат

Имя сохранённого файла
Норма

Соответствует шаблону, читается без открытия файла

Тревожный признак

Служебное имя вида «ТабличныйДокумент» или обрезанная строка

Документ с номером, содержащим слэш или точку
Норма

Файл сохраняется, символы заменены

Тревожный признак

Ошибка сохранения или файл попадает не в ту папку

Пакетное сохранение нескольких документов
Норма

Каждый файл имеет уникальное имя, ничего не перезаписано

Тревожный признак

Часть файлов отсутствует — перезаписаны одноимёнными

Отправка по e-mail
Норма

Вложение имеет заданное имя

Тревожный признак

Вложение с нейтральным или пустым именем

Итог

Что важно запомнить

Для разового сохранения имя задаётся вручную в диалоге «Сохранить как». В типовых конфигурациях автоматическое имя строится из представления документа, а для собственного шаблона используйте программное задание имени через расширение конфигурации. Всегда очищайте имя от недопустимых символов и включайте уникальный элемент, чтобы файлы не перезаписывали друг друга.

Частые вопросы

Можно ли изменить имя файла без доработки конфигурации?

Да, для разовых сохранений — просто впишите нужное имя в диалоге «Сохранить как». На автоматическое имя без доработки можно повлиять только косвенно: через корректные номер и дату документа, префиксы нумерации, поскольку типовые конфигурации строят имя из представления объекта.

Почему при сохранении в PDF возникает ошибка, хотя имя обычное?

Чаще всего причина не в самом имени, а в пути: слишком длинный полный путь, отсутствие прав записи в выбранную папку или недопустимый символ, попавший в имя из номера документа. Проверьте сохранение в простую локальную папку — это быстро локализует причину.

Как сделать, чтобы в имени файла был контрагент?

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

Почему при массовом сохранении часть файлов пропадает?

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

Используется ли заданное имя файла при отправке печатной формы по e-mail?

Да, в конфигурациях на БСП имя файла печатной формы используется как имя вложения при отправке по электронной почте. Поэтому программно заданное имя работает сразу в двух сценариях: сохранение на диск и почтовая отправка.

Что делать, если номер документа содержит слэш?

При ручном сохранении замените слэш на дефис в диалоге. При программном формировании имени добавьте очистку строки: замену символов «/», «\» и других запрещённых на дефис или подчёркивание перед записью файла.