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

Эта статья подойдёт и начинающим пользователям, и разработчикам. Мы разберём:

  • 🔹 Настройки формата даты в типовых конфигурациях без программирования
  • 🔹 Функции форматирования в запросах и отчётах
  • 🔹 Программные решения для глобального изменения отображения
  • 🔹 Особенности работы с датами в разных версиях платформы (8.2 vs 8.3)

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

📊 Как часто вам приходится форматировать даты в 1С?
Ежедневно
Несколько раз в неделю
Редко
Никогда

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

Самый простой способ убрать секунды — настроить формат отображения даты в личном профиле. Это не требует прав администратора и действует только для текущего пользователя.

Инструкция для 1С:Предприятие 8.3:

  1. Откройте главное меню и перейдите в Сервис → Параметры.
  2. Выберите вкладку Форматы.
  3. В поле Формат даты замените стандартное значение ДФ=dd.MM.yyyy HH:mm:ss на ДФ=dd.MM.yyyy HH:mm.
  4. Сохраните изменения и перезапустите сеанс.

Для 1С:Предприятие 8.2 путь немного отличается: Сервис → Параметры → Запуск 1С:Предприятия → Форматы. В остальном шаги идентичны.

Убедитесь, что у вас есть права на изменение параметров|Проверьте версию платформы (8.2 или 8.3)|Скопируйте текущий формат на случай отката|Перезапустите 1С после изменений-->

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

2. Форматирование даты в запросах (язык запросов 1С)

Если секунды мешают в результатах запросов (например, в отчётах или обработках), используйте функцию ФОРМАТ(). Она позволяет гибко настраивать вывод даты прямо в тексте запроса.

Пример запроса с удалением секунд:

ВЫБРАТЬ

ФОРМАТ(Документ.Дата, "ДФ=dd.MM.yyyy HH:mm") КАК ДатаБезСекунд

ИЗ

Документ.ЗаказКлиента КАК Документ

Допустимые форматы для функции ФОРМАТ():

ФорматПример выводаОписание
ДФ=dd.MM.yyyy HH:mm15.05.2026 14:30Дата с часами и минутами
ДФ=dd.MM.yyyy15.05.2026Только дата
ДФ=HH:mm14:30Только время без секунд
ДФ=dd MMMM yyyy15 мая 2026Дата прописью

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

💡

Чтобы быстро проверить формат, выполните запрос в Консоли запросов (доступна через меню Все функции или по горячей клавише Ctrl+Shift+Q).

3. Программное форматирование в модулях (встроенный язык)

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

Пример функции для удаления секунд из даты:

Функция ДатаБезСекунд(ЗначениеДаты)

Возврат Формат(ЗначениеДаты, "ДФ=dd.MM.yyyy HH:mm");

КонецФункции

Где использовать:

  • 📌 В модулях объектов (например, в обработчике события ПриОткрытии формы документа)
  • 📌 В общих модулях для повторного использования кода
  • 📌 В обработках перед выводом данных на печать

Чтобы применить функцию ко всем датам в форме, добавьте обработчик события ПриЧтенииДанных:

Процедура ПриЧтенииДанных(Элемент)

Если ТипЗнч(Элемент.Значение) = Тип("Дата") Тогда

Элемент.Значение = ДатаБезСекунд(Элемент.Значение);

КонецЕсли;

КонецПроцедуры

⚠️ Внимание: Изменение конфигурации может привести к ошибкам при обновлении типовых решений. Всегда тестируйте код на копии базы перед внедрением в рабочую систему.

4. Настройка печатных форм

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

Пошаговая инструкция:

  1. Откройте нужный документ (например, РеализацияТоваровУслуг).
  2. Перейдите в меню Печать → Настройка печатной формы.
  3. Найдите поле с датой (обычно это Документ.Дата).
  4. В свойствах поля измените Формат на ДФ=dd.MM.yyyy HH:mm.
  5. Сохраните макет и проверьте вывод на печать.

Если печатная форма создаётся программно (например, через ТабличныйДокумент), используйте метод УстановитьФормат():

Таблица.ВывестиСекцию("Шапка");

Таблица.УстановитьФормат(1, "ДФ=dd.MM.yyyy HH:mm"); // 1 — номер колонки с датой

Что делать, если формат не применяется?

Иногда изменения формата игнорируются из-за кэширования. Попробуйте:

1. Очистить кэш 1С (папка %APPDATA%\1C\1Cv8).

2. Перезапустить клиентское приложение.

3. Проверить, не переопределяется ли формат в другом месте кода (например, в обработчике ПередВыводом).

5. Особенности работы с датами в 1С 8.2 и 8.3

Версии платформы 1С:Предприятие отличаются поддержкой функций форматирования. Например, в 8.2 нет функции Формат() в языке запросов — её заменили только в 8.3.6.

Сравнение возможностей:

Функциональность1С 8.21С 8.3
Форматирование в запросах (ФОРМАТ())❌ Нет✅ Да (с версии 8.3.6)
Глобальная функция Формат()✅ Да✅ Да
Настройки формата в параметрах пользователя✅ Да✅ Да
Поддержка ДФ= в макетах✅ Да✅ Да

Для 1С 8.2 альтернативный способ удаления секунд в запросах — использование конструкции ВЫРАЗИТЬ():

ВЫБРАТЬ

ВЫРАЗИТЬ(Документ.Дата КАК СТРОКА(16)) КАК ДатаБезСекунд

ИЗ

Документ.ЗаказКлиента КАК Документ

Это решение менее гибкое, но работает в старых версиях платформы.

6. Автоматизация через обработки

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

Пример кода для рекурсивного обхода форм:

Процедура ПрименитьФорматДат(Объект)

Для Каждого Элемент Из Объект.ЭлементыФормы Цикл

Если ТипЗнч(Элемент.Значение) = Тип("Дата") Тогда

Элемент.Формат = "ДФ=dd.MM.yyyy HH:mm";

КонецЕсли;

Если Элемент.Тип = Тип("ГруппаФормы") Тогда

ПрименитьФорматДат(Элемент); // Рекурсия для вложенных элементов

КонецЕсли;

КонецЦикла;

КонецПроцедуры

Где использовать обработку:

  • 🔧 В Главном меню → Все функции → Обработки для ручного запуска.
  • 🔧 В Планировщике заданий для автоматического выполнения (например, раз в неделю).
  • 🔧 В модуле управляемого приложения для применения ко всем новым сессиям.
⚠️ Внимание: Массовое изменение формата может конфликтовать с логикой работы типовых конфигураций (например, 1С:Бухгалтерия или 1С:ЗУП). Перед применением проверьте совместимость с обновлениями от фирмы 1С.
💡

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

7. Распространённые ошибки и их решения

При работе с датами в пользователи часто сталкиваются с типичными проблемами. Вот самые частые из них и способы их устранения:

Ошибка 1: Формат не применяется в отчёте.

  • 🔸 Проверьте, не переопределён ли формат в схеме компоновки данных.
  • 🔸 Очистите кэш отчёта (Файл → Очистить кэш).
  • 🔸 Убедитесь, что поле в запросе имеет тип Дата, а не Строка.

Ошибка 2: После изменения конфигурации секунды вернулись.

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

Ошибка 3: В внешних отчётах (например, из 1С:Консолидация) формат игнорируется.

  • 🔸 Откройте исходный код отчёта и найдите параметры вывода даты.
  • 🔸 Используйте функцию Формат() непосредственно в коде отчёта.

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

FAQ: Частые вопросы по удалению секунд в датах 1С

Можно ли убрать секунды только в одном документе, не затрагивая остальные?

Да. Откройте форму документа в режиме Конфигуратор, найдите реквизит с датой и измените его свойство Формат. Это не повлияет на другие документы.

Почему после обновления 1С секунды снова появились?

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

Как убрать секунды в дате при выгрузке в Excel?

Используйте функцию Формат() перед выгрузкой:

ТаблицаExcel.УстановитьФормат(1, "ДФ=dd.MM.yyyy HH:mm");

Или преобразуйте дату в строку:

ТаблицаExcel.ВывестиСтроку(Формат(Документ.Дата, "ДФ=dd.MM.yyyy HH:mm"));
Влияет ли удаление секунд на сортировку дат в отчётах?

Нет. Форматирование затрагивает только отображение, но не значение даты. Сортировка и фильтрация работают с оригинальными данными (включая секунды).

Можно ли убрать секунды в мобильном приложении 1С?

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