Разработка и Конфигурация · 8 мин
Как открыть конструктор форматной строки в 1С
Как открыть конструктор форматной строки в 1С: через свойства поля, палитру свойств и код. Разбор параметров, примеры форматов чисел и дат, типичные ошибки.
Форматная строка в 1С управляет тем, как значение отображается пользователю: количеством знаков после запятой, видом даты, представлением пустого значения, разделителями групп разрядов. Чтобы не писать строку формата вручную и не запоминать синтаксис, в конфигураторе есть визуальный конструктор форматной строки — он собирает параметры через диалог и подставляет готовое выражение.
Конструктор доступен в нескольких местах: в палитре свойств у полей формы и реквизитов, в редакторе макетов, в настройках отчётов на СКД, а также при редактировании кода через меню «Текст». Ниже разобраны все способы открытия, разбор параметров конструктора и типичные ошибки при работе с форматами.
Что такое форматная строка и где она применяется
Форматная строка — это параметр, который определяет представление значения без изменения самого значения. Число 1234567,89 можно показать как «1 234 567,89», «1234567,890» или «1 234 567 руб. 89 коп.» — данные в базе при этом не меняются, меняется только отображение.
Формат задаётся в свойстве «Формат» у полей ввода, надписей, колонок таблиц, реквизитов объектов, ячеек табличных документов и полей компоновки данных. Кроме того, форматная строка передаётся параметром во встроенную функцию Формат(), которая возвращает отформатированное представление значения в виде строки.
Открытие конструктора через палитру свойств
Основной способ — через палитру свойств в конфигураторе. Откройте форму объекта, выделите нужный элемент (поле ввода, колонку таблицы, надпись) и найдите в палитре свойство «Формат». Справа от поля значения появится кнопка выбора с троеточием — нажмите её, и откроется конструктор форматной строки.
Тот же приём работает для реквизитов объектов метаданных: выделите реквизит справочника или документа в дереве конфигурации, откройте палитру свойств и найдите «Формат». Учтите, что у реквизитов это свойство влияет на представление по умолчанию во всех формах, где не задан собственный формат.
- 1Откройте конфигуратор и нужную форму или объект метаданных
- 2Выделите поле, колонку или реквизит
- 3В палитре свойств найдите строку «Формат»
- 4Нажмите кнопку выбора (троеточие) справа от поля
- 5Задайте параметры в конструкторе и нажмите «ОК»
- 6Обновите конфигурацию и проверьте отображение в режиме 1С:Предприятие
Открытие конструктора в модуле и в других местах
Конструктор из редактора кода
Когда формат нужен в коде — например, для функции Формат(Сумма, "ЧЦ=15; ЧДЦ=2") — установите курсор на строковый литерал (или на место, где он должен быть) и выберите в главном меню «Текст → Конструктор форматной строки». После нажатия «ОК» сформированная строка подставится прямо в текст модуля.
Если пункт меню неактивен, убедитесь, что курсор находится внутри модуля, а не в другом окне. В толстом клиенте конструктор доступен и в режиме предприятия при отладке внешних обработок.
Макеты и табличные документы
В макете табличного документа формат задаётся для ячейки: выделите ячейку, откройте палитру свойств и нажмите кнопку выбора у свойства «Формат». Это удобно для печатных форм, где суммы и даты должны выводиться в строго определённом виде.
Настройки СКД
В схеме компоновки данных формат задаётся на закладке «Наборы данных» (колонка «Формат» у поля) или в пользовательских настройках отчёта: «Настройки → Дополнительные настройки → Оформление». Там конструктор тоже вызывается кнопкой выбора у параметра «Формат».
Параметры конструктора: что означают ключевые настройки
Диалог конструктора адаптируется под тип значения: для числа, даты и булево набор параметров разный. Для чисел доступны общая длина, точность, разделители дробной части и групп разрядов, сдвиг разрядов и представление нуля. Для дат — формат (полный, краткий, только дата или время) и локальный формат. Для булева — строки представления «ложь» и «истина».
Ключевые параметры для чисел: ЧЦ — общее количество знаков, ЧДЦ — число знаков после запятой, ЧРД — разделитель дробной части, ЧГ — разделитель групп (0 — без разделителя), ЧН — строка вместо нулевого значения, ЧС — сдвиг разрядов (удобно для вывода сумм в тысячах).
Для дат чаще всего используют ДФ (формат даты) с шаблонами вроде dd.MM.yyyy или ДЛФ=D (локальный длинный формат даты). Параметр ДП задаёт представление пустой даты — например, чтобы вместо «01.01.0001» выводилась пустая строка.
Сообщить(Формат(1234567.89, "ЧЦ=15; ЧДЦ=2; ЧРД=,; ЧГ=3,0"));
Сообщить(Формат(ТекущаяДатаСеанса(), "ДЛФ=DD"));
Сообщить(Формат(0, "ЧН=—"));Как проверить, что формат применился
После установки формата обновите конфигурацию базы данных (если менялись метаданные) и откройте форму в режиме 1С:Предприятие. Проверьте отображение на граничных значениях: нуле, пустой дате, большом числе с дробной частью и отрицательном числе — именно на них чаще всего всплывают ошибки форматирования.
Для проверки формата в коде используйте функцию Формат() в консоли кода или через «Вычислить выражение» (Shift+F9) при отладке: так видно итоговую строку без запуска всей формы.
Как проверить результат
Разряды разделены, дробная часть обрезана до заданной точности
Число показано звёздочками или обрезано — не хватает общей длины ЧЦ
Выводится заданная строка (например, прочерк) или 0,00
Пустое поле там, где ожидался ноль, или наоборот
Показывается пустая строка или заданный текст из ДП
Отображается 01.01.0001
Типичные ошибки и ограничения
Самая частая ошибка — недостаточная общая длина ЧЦ: если значение не помещается, вместо числа выводятся символы заполнения (звёздочки). Вторая типичная проблема — ожидание, что формат округлит или изменит данные: формат влияет только на отображение, при выгрузке или расчётах используется исходное значение.
Ещё одна ловушка — разный формат у реквизита и у поля формы. Свойство поля имеет приоритет, поэтому изменение формата у реквизита может не дать эффекта, если в форме задан собственный формат. Проверяйте оба места.
Что важно запомнить
Конструктор форматной строки открывается кнопкой выбора у свойства «Формат» в палитре свойств, а из модуля — через меню «Текст → Конструктор форматной строки». Формат меняет только представление значения, поэтому результат всегда проверяйте на нуле, пустой дате и больших числах.
Частые вопросы
Почему кнопка конструктора у свойства «Формат» неактивна?
Чаще всего не выделен элемент, для которого применимо свойство формата, либо у выбранного элемента нет значения простого типа (число, дата, булево). Убедитесь, что выделено поле ввода, колонка таблицы или реквизит с подходящим типом данных.
Можно ли задать формат программно без конструктора?
Да. Свойство формата у элементов формы доступно в коде, а функция Формат() принимает строку параметров напрямую. Конструктор нужен только как помощник для сборки этой строки — итоговый текст можно писать и редактировать вручную.
Как убрать разделители разрядов в числе?
Установите параметр ЧГ=0 (ноль) — тогда группы разрядов не разделяются. В конструкторе это поле «Разделитель групп», где нужно выбрать вариант без разделения.
Как вывести сумму прописью через форматную строку?
Форматная строка для этого не предназначена: она управляет только видом числа. Сумма прописью формируется отдельными средствами — например, функциями работы со строками или типовыми процедурами из общих модулей конфигурации.
Почему в отчёте на СКД формат не применяется?
Проверьте, где задан формат: у поля набора данных, в настройках компоновки или в пользовательских настройках отчёта. Пользовательские настройки имеют приоритет и могут перекрывать формат, заданный в схеме. Также убедитесь, что формат назначен именно тому полю, которое выводится в отчёт.
Меняет ли формат значение в базе данных?
Нет. Форматная строка влияет исключительно на представление значения на экране и в печатных формах. Данные в базе, результаты запросов и расчётов остаются неизменными, поэтому формат безопасно менять без риска повредить информацию.