Документы и Печать · 8 мин
Как в 1С сделать перенос текста
Как в 1С перенести текст на новую строку: в ячейке табличного документа, в многострочном поле, в коде через Символы.ПС и в печатных формах. Пошаговые инструкции.
Задача переноса текста в 1С возникает в нескольких разных ситуациях, и способ решения зависит от того, где именно нужен перенос: в поле ввода на форме, в ячейке табличного документа, в строке, формируемой программно, или в печатной форме. Универсальной кнопки «перенести текст» в платформе нет, поэтому важно понимать, с каким объектом вы работаете.
Чаще всего вопрос возникает у пользователей, которые заполняют комментарии, наименования или примечания и хотят разбить текст на строки, а также у тех, кто настраивает макеты печатных форм. Разработчикам при этом нужно вставлять перевод строки в строковые значения программно. Ниже разобраны все основные сценарии с точными действиями.
Перенос строки в многострочном поле ввода
Когда вы заполняете поле «Комментарий», «Дополнительная информация» или любое другое многострочное текстовое поле в документе или справочнике, обычное нажатие Enter часто не работает так, как ожидается: в некоторых формах оно завершает ввод или перемещает фокус на следующий элемент. Стандартное сочетание для перевода строки внутри поля — Ctrl+Enter.
Убедиться, что поле действительно многострочное, просто: если при вводе длинного текста он автоматически переносится на новую строку и появляется полоса прокрутки, поле поддерживает несколько строк. В однострочном поле перенос сделать нельзя в принципе — это ограничение самой формы, заданное разработчиком конфигурации.
- 1Установите курсор в то место текста, где нужен разрыв строки.
- 2Нажмите Ctrl+Enter — курсор переместится на новую строку внутри поля.
- 3Продолжите ввод текста.
- 4Сохраните объект и откройте его повторно, чтобы убедиться, что переносы сохранились.
Перенос текста в ячейке табличного документа
Табличный документ используется в отчётах, печатных формах и при работе с файлами MXL. Если текст в ячейке обрезается или уходит за границу, нужно изменить свойство ячейки. Откройте табличный документ, выделите нужную ячейку или диапазон, щёлкните правой кнопкой мыши и выберите пункт «Свойства» (или нажмите Alt+Enter).
В палитре свойств найдите параметр «Размещение текста» и установите значение «Переносить». После этого текст будет автоматически переноситься по словам внутри ячейки, а высота строки при выводе подстроится под содержимое, если не задана фиксированная высота. Если нужен принудительный разрыв в конкретном месте, вставьте в текст сам символ перевода строки — при редактировании ячейки это также делается через Ctrl+Enter.
Перенос строки в коде на встроенном языке
При формировании сообщений, текстов писем, файлов или строковых реквизитов программно перенос строки вставляется через системное перечисление Символы. Основные варианты: Символы.ПС (перевод строки), Символы.ВК (возврат каретки) и их сочетание Символы.ВК + Символы.ПС, которое соответствует стандартному разрыву строки в Windows (CRLF).
Пример формирования многострочного текста:
ТекстСообщения = "Первая строка" + Символы.ПС + "Вторая строка";
// Альтернатива без конкатенации — многострочный литерал:
Текст = "Первая строка
|Вторая строка
|Третья строка";Второй способ — многострочный строковый литерал: каждая следующая строка в коде начинается с символа вертикальной черты «|». Платформа автоматически вставляет переводы строк между такими фрагментами. Это удобно для длинных шаблонов текста, запросов и многострочных подсказок.
Перенос текста в макете печатной формы
При доработке печатной формы перенос настраивается в макете, который открывается через конфигуратор: «Конфигурация» → нужный объект → «Макеты». Для ячеек с длинными значениями (например, «Наименование товара» или «Адрес») установите «Размещение текста» = «Переносить», чтобы содержимое не обрезалось при выводе на печать.
Если в параметр макета выводится строка, сформированная в коде, убедитесь, что переносы в ней сделаны через Символы.ПС — табличный документ корректно отобразит их при включённом переносе в ячейке. Если свойство переноса у ячейки не включено, даже строка с символами ПС может отобразиться в одну строку или обрезаться.
Перенос в наименованиях и содержимом табличных частей
Наименования номенклатуры, контрагентов и содержание услуг в табличных частях документов обычно хранятся как однострочные строки. Принудительный перенос там делать не рекомендуется: символы перевода строки в наименованиях могут некорректно отображаться в списках, отчётах и при обмене данными с другими системами. Правильнее дать печатной форме самой переносить длинное значение за счёт свойства ячейки «Переносить».
Если требуется вывести длинное описание в несколько строк, используйте реквизиты с неограниченной длиной строки и многострочным режимом — например, «Описание», «Комментарий», «Дополнительная информация». Именно для таких полей и предназначен Ctrl+Enter.
Как выбрать способ переноса
Проверка результата и ограничения
После настройки переноса обязательно проверьте результат на реальных данных: выведите печатную форму с максимально длинным наименованием из вашей базы и убедитесь, что текст не обрезается и не наезжает на соседние области. В табличном документе дополнительно проверьте режим предварительного просмотра печати — иногда перенос отображается на экране, но ломается при разбиении на страницы.
Учитывайте ограничения: перенос внутри ячейки не увеличивает ширину колонки, а только высоту строки; при экспорте табличного документа в Excel переносы обычно сохраняются, но высота строк может потребовать ручной подстройки; при выгрузке в текстовые форматы символы ПС могут интерпретироваться принимающей системой иначе, чем ожидалось.
Как проверить результат
Текст переносится по словам, строка увеличивается по высоте, ничего не обрезано
Текст уходит за границу ячейки или виден только фрагмент
Разрывы строк на месте
Текст слипся в одну строку — поле однострочное
Каждый фрагмент на своей строке
Всё в одну строку — проверьте, что использован Символы.ПС, а не пробел
Частые вопросы
Почему Enter не переносит строку, а закрывает поле?
Во многих формах Enter подтверждает ввод и перемещает фокус. Для перевода строки внутри многострочного поля используйте Ctrl+Enter. Если и это не работает — поле однострочное, и его поведение может изменить только разработчик через свойство «МногострочныйРежим».
Как перенести текст в ячейке при работе в веб-клиенте?
В веб-клиенте сочетание Ctrl+Enter в многострочных полях также работает. Свойства ячеек табличного документа редактируются через контекстное меню «Свойства» аналогично тонкому клиенту, если конфигурация открывает табличный документ на редактирование.
Чем Символы.ПС отличается от Символ(10)?
Символы.ПС — это именованное обращение к символу с кодом 10 (перевод строки), то есть по сути это одно и то же. Использование Символы.ПС предпочтительнее, потому что код читается понятнее и не требует запоминания числовых кодов.
Переносится ли текст с переносами при обмене данными между базами?
Символы перевода строки — обычные служебные символы, и при стандартных обменах (XML, JSON, планы обмена) они сохраняются. Проблемы возможны при выгрузке в форматы CSV или при интеграции с системами, которые трактуют перевод строки как конец записи, — там переносы нужно экранировать или заменять.
Как сделать автоматический перенос длинного наименования в печатной форме без доработки конфигурации?
Если макет типовой и перенос в нём не настроен, без изменения макета в конфигураторе или через расширение это не решается. Временный обходной путь — вывести печатную форму в табличный документ, включить редактирование и вручную установить для нужной ячейки «Размещение текста» = «Переносить» до печати.
Почему после копирования текста из Word в 1С появились лишние пустые строки?
Word использует комбинацию символов возврата каретки и перевода строки, а также скрытые символы абзацев. При вставке они могут дублироваться. Вставляйте текст через «Вставить как текст» или предварительно очищайте его через «Блокнот».
Что важно запомнить
Перенос текста в 1С зависит от контекста: Ctrl+Enter — в многострочных полях, свойство «Размещение текста» = «Переносить» — в ячейках табличных документов и макетов, Символы.ПС или литерал с «|» — в коде. Результат всегда проверяйте на длинных реальных данных.