Разработка и Конфигурация · 10 мин
Как выравнивать текст в 1С
Как выровнять текст в 1С в ячейках табличного документа, макете печатной формы и в коде. Свойства выравнивания, команды и типичные ошибки при настройке.
Выравнивание текста в 1С встречается в нескольких контекстах: при оформлении табличных документов, при редактировании макетов печатных форм и при программном формировании отчётов. Во всех случаях за положение текста отвечают свойства горизонтального и вертикального выравнивания, которые можно задать как в конфигураторе, так и из встроенного языка.
Чаще всего потребность возникает у бухгалтеров и разработчиков, когда печатная форма «съезжает»: суммы прижаты к левому краю, заголовки не по центру, а длинные наименования вылезают за границы ячейки. Всё это решается настройкой свойств ячейки или области макета без изменения логики программы.
Ниже разобраны основные способы: работа с табличным документом в режиме просмотра, настройка макета в конфигураторе, выравнивание программно через свойство «ГоризонтальноеПоложение», а также типичные ошибки, из-за которых текст отображается не так, как ожидалось.
Где в 1С вообще настраивается выравнивание
В платформе 1С:Предприятие выравнивание применяется к нескольким типам объектов. Первый — табличный документ: это и печатные формы, и отчёты, и любые макеты типа «Табличный документ». Второй — поля формы: надписи, поля ввода, колонки таблиц в управляемых формах. Третий — текстовый документ, где выравнивание выполняется средствами простого текстового редактора.
Важно понимать, что выравнивание задаётся не для текста как такового, а для ячейки или элемента, в котором этот текст находится. Поэтому если вы выделили слово и ищете кнопку «по центру» — её может не быть: сначала нужно выделить ячейку целиком.
Для табличных документов доступны четыре варианта горизонтального положения (лево, право, центр, по ширине) и три варианта вертикального (верх, центр, низ). Комбинация этих двух свойств полностью определяет положение текста внутри ячейки.
Выравнивание в табличном документе в режиме просмотра
Если перед вами уже открыта печатная форма или отчёт, выровнять текст можно прямо в окне просмотра — но только если документ не защищён от редактирования. Откройте табличный документ, выделите нужную ячейку или диапазон ячеек мышью (для нескольких ячеек — с зажатой клавишей Shift или Ctrl).
Затем используйте главное меню: «Таблица» → «Вид» → «Панель инструментов», если панель форматирования скрыта. На панели есть стандартные кнопки выравнивания: по левому краю, по центру, по правому краю. Либо откройте контекстное меню правой кнопкой мыши и выберите «Свойства» — в окне свойств найдите параметры «Горизонтальное положение» и «Вертикальное положение».
Учтите ограничение: изменения, внесённые в режиме просмотра, действуют только в текущем окне. Если печатная форма формируется программно при каждом открытии, при следующем формировании она вернётся к виду, заданному в макете. Чтобы выравнивание сохранялось постоянно, править нужно макет в конфигураторе.
Выравнивание в макете печатной формы в конфигураторе
Постоянная настройка выполняется в конфигураторе. Откройте конфигурацию, найдите нужный объект (например, документ «Счёт на оплату»), перейдите на вкладку «Макеты» и откройте макет печатной формы. Перед вами появится табличный документ-шаблон.
Выделите ячейку или диапазон, затем откройте палитру свойств (правый клик → «Свойства» или комбинация Alt+Enter). В списке свойств найдите «ГоризонтальноеПоложение» и установите нужное значение: «Лево», «Центр», «Право» или «ПоШирине». Рядом находится «ВертикальноеПоложение» со значениями «Верх», «Центр», «Низ».
После изменения сохраните конфигурацию (F7 или значок сохранения) и обновите конфигурацию базы данных, если изменения касались объектов метаданных. Для макетов обычно достаточно сохранения. Затем сформируйте печатную форму заново и проверьте результат.
- 1Откройте конфигуратор и найдите объект с печатной формой
- 2Перейдите на вкладку «Макеты» и откройте нужный макет
- 3Выделите ячейку или диапазон ячеек с текстом
- 4Откройте палитру свойств (Alt+Enter) и задайте «ГоризонтальноеПоложение» и «ВертикальноеПоложение»
- 5Сохраните конфигурацию и сформируйте печатную форму заново для проверки
Выравнивание программно из встроенного языка
Когда табличный документ формируется кодом, выравнивание задаётся через свойства области. После получения области макета и вывода её в результат можно изменить параметры оформления ячеек напрямую.
Для горизонтального выравнивания используется свойство «ГоризонтальноеПоложение» с системным перечислением «ГоризонтальноеПоложение». Для вертикального — свойство «ВертикальноеПоложение» с перечислением «ВертикальноеПоложение». Значения присваиваются области табличного документа.
Область = Макет.ПолучитьОбласть("Шапка");
ТабДок.Вывести(Область);
ОбластьЯчейки = ТабДок.Область("R1C2");
ОбластьЯчейки.ГоризонтальноеПоложение = ГоризонтальноеПоложение.Центр;
ОбластьЯчейки.ВертикальноеПоложение = ВертикальноеПоложение.Центр;Такой подход удобен, когда выравнивание должно зависеть от условий: например, суммы выравнивать вправо, а текстовые поля — влево. Также программное изменение позволяет не трогать типовой макет, что упрощает последующие обновления конфигурации.
Обратите внимание: обращение к ячейке по адресу вида «R1C2» работает только после вывода области в табличный документ. Если обратиться к несуществующей области, платформа вернёт ошибку — поэтому адреса лучше вычислять через свойство «ВысотаТаблицы» или искать область по имени.
Выравнивание в управляемых формах и таблицах
В управляемых формах выравнивание настраивается иначе. Для элементов формы — полей, надписей, колонок таблиц — в палитре свойств есть параметр «ГоризонтальноеПоложение» (и «ГоризонтальноеПоложениеВГруппе» для размещения в группе). Для колонок таблицы свойство задаётся отдельно для шапки и для данных.
Чтобы выровнять содержимое колонки динамического списка или таблицы значений на форме, выделите колонку в редакторе формы, откройте свойства и установите «ГоризонтальноеПоложение» в нужное значение. Для числовых колонок принято правое выравнивание — так цифры разрядов совпадают и суммы легче сравнивать визуально.
Сравнение вариантов
Подходит для постоянного оформления печатных форм. Ограничение: при обновлении типовой конфигурации изменённый макет может быть замещён.
Подходит, когда выравнивание зависит от условий или нужно не менять типовой макет. Требует аккуратности с адресами ячеек.
Быстрое разовое исправление. Не сохраняется при повторном формировании документа.
Частые ошибки и как их избежать
Самая распространённая ошибка — попытка выровнять текст в ячейке, у которой включено объединение с соседними ячейками или задано свойство «РазмещениеТекста» с переносом, из-за чего визуально кажется, что выравнивание «не работает». Проверьте в свойствах параметры «Объединение» и высоту строки: при автоподборе высоты вертикальное выравнивание может быть незаметно.
Вторая типичная ситуация — выравнивание «по ширине» не даёт эффекта, потому что текст состоит из одной короткой строки. Растягивание по ширине проявляется только в многострочном тексте: последняя строка всегда остаётся прижатой влево.
Третья ошибка — правка макета в файловой копии базы и удивление, что в рабочей базе ничего не изменилось. Убедитесь, что вы работаете в нужной информационной базе, и после сохранения конфигурации перезапустите сеанс или обновите кэш метаданных.
Как проверить результат
После настройки сформируйте печатную форму заново и проверьте три вещи: положение текста в ячейке, поведение при печати и поведение при выгрузке в Excel или PDF. Иногда в окне предпросмотра всё выглядит корректно, но при печати длинный текст обрезается — это признак того, что нужно дополнительно включить автоподбор высоты строки или перенос.
Для программного выравнивания полезно вывести тестовый документ с разными типами данных: коротким текстом, длинным наименованием, числом и датой. Так вы сразу увидите, как выравнивание ведёт себя в каждом случае.
Как проверить результат
Текст расположен согласно заданному выравниванию при любом содержимом
Текст прижат не туда или наполовину скрыт
Выравнивание сохраняется каждый раз
Форма возвращается к исходному виду — правка была только в просмотре
Выравнивание переносится в файл
В файле текст смещён — проверьте объединение ячеек и ширину колонок
Перед правкой типового макета сделайте его копию или зафиксируйте исходное состояние скриншотом. При обновлении конфигурации изменённые типовые макеты — частый источник конфликтов, и резервная копия упростит сравнение.
Часто задаваемые вопросы
Как выровнять текст по центру ячейки по вертикали?
Откройте свойства ячейки в макете или табличном документе и установите свойство «ВертикальноеПоложение» в значение «Центр». Если эффект не виден, проверьте высоту строки: при минимальной высоте вертикальное выравнивание визуально не различимо.
Почему выравнивание «по ширине» не работает?
Растягивание по ширине применяется только к многострочному тексту: выравниваются все строки, кроме последней. Если в ячейке одна строка, результат будет выглядеть как обычное выравнивание влево. Также проверьте, что включён перенос текста в свойствах ячейки.
Как выровнять числа в колонке отчёта вправо?
Для колонки таблицы на управляемой форме выделите колонку в редакторе формы и задайте свойство «ГоризонтальноеПоложение» в значение «Право». В табличном документе выделите ячейки с числами и установите горизонтальное положение «Право» через палитру свойств.
Сохранится ли выравнивание после обновления конфигурации?
Если вы изменили типовой макет, при обновлении он может быть заменён на новый типовой вариант — изменения потеряются. Надёжнее выносить доработки в расширение конфигурации или применять выравнивание программно при формировании документа.
Можно ли выровнять текст в ячейке, защищённой от редактирования?
В режиме просмотра — нет, пока не снята защита (меню «Таблица» → «Вид» → «Только просмотр»). Если защита установлена программно при выводе, изменить её может только администратор или разработчик через код формирования документа.
Как выровнять текст сразу во всех ячейках макета?
Выделите весь макет (щелчок по левому верхнему углу сетки или Ctrl+A), откройте палитру свойств и задайте горизонтальное и вертикальное положение для всего выделения. Затем для отдельных строк, например заголовков, переопределите выравнивание индивидуально.
Что важно запомнить
Выравнивание в 1С задаётся свойствами ячейки «ГоризонтальноеПоложение» и «ВертикальноеПоложение». Разовые правки делаются в режиме просмотра, постоянные — в макете конфигуратора или программно. Проверяйте результат повторным формированием формы и помните, что изменённые типовые макеты могут быть перезаписаны при обновлении.