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

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

Как расширить строки в 1С: практическое руководство

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

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

В большинстве случаев задача решается без программирования: через свойство «Автовысота строки», перетаскивание границ или настройку формы. Программные методы нужны, когда высоту требуется вычислять автоматически при формировании отчёта или печатной формы.

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

Определите, где именно нужно расширить строки

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

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

Маршрут решения

Как выбрать действие

Строка обрезана в отчёте или табличном документе на экранеИспользуйте Автовысоту строки или ручное растягивание границы
Текст не влезает в журнале документов или списке справочникаНастройте высоту строк через «Ещё → Изменить форму»
Проблема только при печати или предпросмотреПравьте макет печатной формы в конфигураторе
Высота должна подбираться автоматически при формированииИспользуйте программное свойство АвтоВысотаСтроки области

Расширение строк в табличном документе

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

Более надёжный способ — автоматический подбор высоты. Выделите нужные строки или всю таблицу, затем откройте меню «Главное меню → Таблица → Вид → Автовысота строк» (в разных версиях платформы пункт может называться «Автовысота строки»). Платформа подберёт высоту так, чтобы весь текст ячейки был виден, при условии что у ячейки включён перенос текста.

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

Порядок действий для табличного документа
  1. 1
    Выделите строки, которые нужно расширить, или весь документ
  2. 2
    Откройте Главное меню → Таблица → Вид → Автовысота строк
  3. 3
    Если автоподбор не сработал, откройте свойства ячейки и включите перенос текста
  4. 4
    При необходимости задайте точную высоту в свойствах строки в пунктах
  5. 5
    Проверьте результат в режиме предпросмотра печати

Настройка высоты строк в списках и табличных частях

В журналах документов и списках справочников строки по умолчанию однострочные, и длинные наименования обрезаются. В типовых формах на управляемом интерфейсе высота строки списка задаётся через «Ещё → Изменить форму»: найдите в дереве элементов таблицу списка и установите свойство «Высота» (в строках) или «ВысотаСтроки». Значение 2 и более позволяет показывать текст в несколько строк, если у полей включён перенос.

Для табличной части документа действует тот же принцип: откройте форму документа, перейдите в «Ещё → Изменить форму», найдите табличную часть и задайте высоту строк. Учтите, что изменение формы через «Изменить форму» сохраняется в настройках пользователя, а не в конфигурации, поэтому другим пользователям настройку придётся повторить или перенести через механизм копирования настроек.

Если поле списка всё равно не переносится, проверьте свойство «РастягиватьПоВертикали» у поля и ширину колонки: при слишком узкой колонке перенос может не помочь, и разумнее сначала расширить колонку, потянув её границу в заголовке таблицы.

Расширение строк в печатных формах и макетах

Когда строка обрезается только на бумаге или в предпросмотре печати, причина почти всегда в макете печатной формы. Макет редактируется в конфигураторе: откройте нужный макет (обычно это макет типа «Табличный документ» у документа или общий макет), выделите строку области и задайте ей высоту или включите автовысоту.

Чтобы строка макета автоматически расширялась под длинный текст, выделите ячейки области, откройте палитру свойств и установите «Переносить» в значение «Переносить», а для строки макета — «Автовысота строки». Тогда при выводе печатной формы платформа сама увеличит высоту строки под содержимое параметра.

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

Программное управление высотой строк

Разработчику высота строк управляется через свойства области табличного документа. Ключевые свойства: ВысотаСтроки (точное значение в пунктах) и АвтоВысотаСтроки (булево, включает автоподбор). Обычно их применяют к области после вывода макета.

Область = ТабличныйДокумент.Область("R" + НомерСтроки);

Область.АвтоВысотаСтроки = Истина;

// или задать фиксированную высоту:

Область.ВысотаСтроки = 30;

Для таблиц на форме программно меняется свойство ВысотаСтроки элемента формы, а для полей ввода — АвтоВысотаЯчейки и РастягиватьПоВертикали. Имейте в виду, что автовысота работает корректно только при включённом переносе текста в ячейке, иначе платформа не сможет вычислить требуемую высоту.

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

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

Проверка результата и типичные ошибки

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

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

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

Отображение текста в ячейке
Норма

Весь текст виден полностью, переносится по словам

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

Текст обрезан или виден только при клике в ячейку

Печатная форма в предпросмотре
Норма

Строка расширилась, следующие строки сдвинулись вниз

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

Текст налезает на соседние строки или обрезан

Поведение при разных данных
Норма

Высота подстраивается и под короткие, и под длинные значения

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

Для части строк текст всё ещё не влезает

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

Типичные ошибки
01
Включена автовысота, но не включён перенос текста — высота не меняется
02
Настройка формы сделана у одного пользователя и не перенесена остальным
03
Правка типового макета без резервной копии — риск при обновлении конфигурации
04
Слишком узкая колонка: перенос включён, но строка становится чрезмерно высокой
05
Фиксированная высота строки в свойствах блокирует автоподбор

FAQ: частые вопросы о расширении строк в 1С

Почему автовысота строки не срабатывает в табличном документе?

Чаще всего не включён перенос текста в свойствах ячейки либо для строки задана фиксированная высота, которая блокирует автоподбор. Откройте свойства ячейки, включите «Переносить» и сбросьте явно заданную высоту строки.

Как сделать расширение строк для всех пользователей сразу?

Настройки через «Изменить форму» персональны. Чтобы изменения действовали для всех, задайте высоту строки в конфигураторе в свойствах элемента формы либо скопируйте настройки пользователя через сервис копирования настроек, если он доступен в вашей конфигурации.

Можно ли расширить строки в печатной форме без конфигуратора?

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

Строка расширилась, но текст налезает на следующую строку при печати. Что делать?

Это признак того, что высота задана вручную, а не автовысотой. Включите для строки макета «Автовысоту строки» и перенос текста в ячейках — тогда платформа сама сдвинет нижележащие строки при выводе.

Как расширить строки в отчёте на СКД?

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

Влияет ли расширение строк на производительность отчёта?

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

Итог

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

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