Формат даты в шаблоне макета 1с

Обновлено: 02.07.2024

Форматирование даты, числа, Булево: требования по локализации

Область применения: управляемое приложение, мобильное приложение, обычное приложение.

1. При использовании функции Формат в некоторых случаях следует использовать функцию НСтр при создании форматной строки (формат представления или редактирования дат, Булево значения и т.п.) . При этом форматная строка, задаваемая в свойствах метаданных (форм), подлежит локализации всегда, также, как синоним.

1.1. Форматирование дат

для вывода дат следует учитывать, что в различных странах приняты различные порядок следования и разделители для составных частей даты.

Например, одна и та же дата: 20.12.2012 – для России, 12/20/2012 – для США.

Поэтому вместо явного задания формата даты рекомендуется использовать локальный формат даты (ДЛФ).

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

1.2. Форматирование числа

Следует применять функцию НСтр к форматной строке в случае, когда
• для числа задается нечисловое представление нулевого значения (ЧН) ;
• указан шаблон форматирования числа (ЧФ);
• переопределяется разделитель дробной части (ЧРД).

1.3. Форматирование Булево

Для вывода Булево значения пользователю всегда применяйте функцию НСтр к форматной строке.

1.4. Не следует переопределять поведение отображения локализации данных по умолчанию – формат отображения операционной системы. При использовании функции Формат следует избегать использовать параметр «L=».

2. При задании формата в полях ввода в формах и полях отчетов на базе СКД также рекомендуется локальный формат даты. Использовать другие форматы допустимо, если по сути решаемой задачи локальный формат не подходит – тогда форматная строка будет переводиться при переводе конфигурации.

3. При переопределении стандартных представлений полей в отчетах на базе СКД следует придерживаться тех же правил, что и в коде модулей. Например, неправильно:

"N " + ВОтветНаНомер + " от " + Формат(ВОтветНаДата, "ДФ=dd.MM.yyyy")

правильное выражение, по которому вычисляется представление поля:

4. В случае, когда требуется передача значения в машиночитаемом виде, вне зависимости от информационной системы и настроек локализации, применяемых в ней, вместо локализации значения следует выполнить сериализацию. Локализацию дат нужно использовать всегда, когда это возможно. В тех случаях, когда это технически нецелесообразно, допускается отказываться от локализации. Например, при генерации файла формата XML, поддерживаемого банк-клиентом системы, специфичной для России.

В общем случае для сериализации рекомендуется использовать метод XMLСтрока .

Для десериализации XMLЗначение . Или метод ПривестиЗначение объекта ОписаниеТипов .

4.1. Сериализация дат

Строка = Формат(Дата, "ДФ=гггг-ММ-ддTЧЧ:мм:сс"); // Сериализация

4.2. Сериализация числа

Строка = XMLСтрока(Число); // Сериализация
Число = XMLЗначение(Тип("Число"), Строка); // Десериализация

Вступайте в мою группу помощник программиста.
В ней мы обсуждаем программирование в 1С.

Формат

Описание:

Формирует удобное для чтения представление значений. Полезно использование в отчетах и при прочем визуальном отображении значений.

Синтаксис:

Параметры:

Форматная строка представляет собой строковое значение, включающее параметры форматирования.

Параметры форматирования перечисляются через символ ";". Наличие параметра означает отличие форматирования от стандартного.

Если параметр не задан, то применяется стандартное форматирование, которое в основном соответствует преобразованию значения к строке. Однако для значений типа Число и Дата по умолчанию (0 и 01.01.0001 00:00:00 соответственно) будет выдаваться пустая строка.

  • 0 (0) - строка вида "(1,1)";
  • 1 (1) - строка вида "-1,1";
  • 2 (2) - строка вида "- 1,1";
  • 3 (3) - строка вида "1,1-";
  • 4 (4) - строка вида "1,1 -".
  • д - день месяца (цифрами) без лидирующего нуля;
  • дд - день месяца (цифрами) с лидирующим нулем;
  • ддд - краткое название дня недели;
  • дддд- полное название дня недели ;
  • М - номер месяца (цифрами) без лидирующего нуля;
  • ММ - номер месяца (цифрами) с лидирующим нулем;
  • МММ - краткое название месяца;
  • ММММ - полное название месяца;
  • к - номер квартала в году;
  • г - номер года без века и лидирующего нуля;
  • гг - номер года без века с лидирующим нулем;
  • гггг - номер года с веком;
  • ч - час в 12 часовом варианте без лидирующих нулей;
  • чч - час в 12 часовом варианте с лидирующим нулем;
  • Ч - час в 24 часовом варианте без лидирующих нулей;
  • ЧЧ (HH) - час в 24 часовом варианте с лидирующим нулем;
  • м - минута без лидирующего нуля;
  • мм - минута с лидирующим нулем;
  • с - секунда без лидирующего нуля;
  • сс - секунда с лидирующим нулем;
  • вв - отображение половины дня AM/PM (действительно только для языков конфигурирования, поддерживающих 12 часовой вариант представления времени).
  • Д - дата (цифрами);
  • ДД - длинная дата (месяц прописью);
  • В - полное время, дата может объединяться со временем;
  • ДВ - дата время.

Функция Формат в языке 1С 8.3, 8.2 (в примерах)

С уважением, Владимир Милькин (преподаватель школы 1С программистов и разработчик обновлятора).

Как помочь сайту: расскажите (кнопки поделиться ниже) о нём своим друзьям и коллегам. Сделайте это один раз и вы внесете существенный вклад в развитие сайта. На сайте нет рекламы, но чем больше людей им пользуются, тем больше сил у меня для его поддержки.

В статье представлены способы задать формат даты 1с 8. Для этого необходимо использовать форматную строку. Редактировать ее можно либо вручную, либо при помощи специального конструктора.

Форматные строки используются в:

При использовании функции Формат, следует помнить, что она возвращает строковое значение, т.е. представление переданной даты в определенном формате.

Формат даты 1с при помощи форматной строки

При помощи форматной строки можно задать параметры форматирования даты. Не стоит описывать их полностью вручную. Лучше всего, воспользоваться встроенным в платформу конструктором, а затем отредактировать полученную форматную строку вручную. Это сэкономит ваши силы и позволит быстро добиться результата.

  • Следует описать функцию Формат, без форматной строки:
  • Поставить курсор между кавычек, вызвать конструктор;
  • После окончания работы с конструктором нажать ОК.

Конструктор форматной строки

Сам же конструктор форматной строки представляет собой набор вкладок, предназначенных для форматирования данных различных типов. Нас интересует вкладка Дата.

Локальный формат даты 1с


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

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

Формат даты 1с с произвольным текстом

Итоговый текст такой форматной строки будет выглядеть следующим образом:

Примеры использования формата дат

Приведем несколько примеров форматирования даты.

Дата без времени (05.10.2020)

Только время (12:35:50)

Месяц текстом, год полностью (Октябрь 2020)

Месяц текстом кратко, год без тысячелетия (окт. 20)

Месяц числом, через точку год полностью (10.2020)

Склонение названия месяца

Функция возвращает массив вариантов склонения строки. Подробнее прочитать про заполнение параметров можно в синтаксис помощнике.

1) Для начала посмотрим, как выглядит печатная форма до изменений. В меню Кадры выбираем раздел Приемы, переводы, увольнения.

Печатная форма Т-1 в 1С:Зарплата и Управление Персоналом

Открываем документ с типом Прием на работу.

Прием на работу в 1С:Зарплата и Управление Персоналом

Формируем печатную форму Т-1 по кнопке Печать.

Форма Т-1 в 1С:Зарплата и Управление Персоналом

При выводе на печать поле Основание остается пустым.

Форма Т-1 в 1С:Зарплата и Управление Персоналом

2) Для заполнения по шаблону переходим в меню Администрирование, раздел Печатные формы, отчеты и обработки.

Печатные формы, отчеты и обработки в 1С:Зарплата и Управление Персоналом

Открываем пункт Макеты печатных форм.

Макеты печатных форм в 1С:Зарплата и Управление Персоналом

Выбираем из списка печатную форму Прием на работу (Т-1).

Прием на работу (Т-1) в 1С:Зарплата и Управление Персоналом

Открываем форму для просмотра и редактирования.

Прием на работу (Т-1) в 1С:Зарплата и Управление Персоналом

В поле Основание дописываем «личное заявление [Работник] от [ДатаПриема].

Прием на работу (Т-1) в 1С:Зарплата и Управление Персоналом

Для выбранной ячейки необходимо установить свойство Шаблон. Выделяем ячейку и по кнопке Еще открываем пункт Свойства.

Прием на работу (Т-1) в 1С:Зарплата и Управление Персоналом

Указываем заполнение макета – Шаблон.

Прием на работу (Т-1) в 1С:Зарплата и Управление Персоналом

У каждой ячейки печатной формы может быть три состояния, определяемые свойствами этой ячейки.

По свойствам значения ячейки бывают:

a. Просто текст, не содержащий в себе значений, которые нужно выводить из документа. Не меняется,

b. Параметр – выводятся из документа, каждый раз меняются, в зависимости от данных документа,

c. Шаблон – содержит в себе и текст, и параметры.

В печатной форме они обозначаются:

a. Текст не имеет обозначений,

c. [] – параметр, который используется в шаблоне.

В связи с этим, поля Работник и ДатаПриема выделены соответствующим обозначением. Это параметры (меняются в каждом документе), которые используются вместе с текстом (слова, которые не меняются для всех документов).

Сохраняем настройки и смотрим, как теперь выглядит печатная форма.

Прием на работу (Т-1) в 1С:Зарплата и Управление Персоналом

Необходимо скорректировать настройки вывода даты.

Для этого возвращаемся в шаблон печатной формы Т-1 (Администрирование - Печатные формы - Отчеты и обработки). Вынесем параметр <ДатаПриема> в отдельную ячейку, в свойствах укажем Значение макета – Параметр.

Прием на работу (Т-1) в 1С:Зарплата и Управление Персоналом

Открываем поле Формат. На вкладке Дата заполняем локальный формат даты (выбираем дату без времени) и проверяем пример.

Прием на работу (Т-1) в 1С:Зарплата и Управление Персоналом

Еще раз формируем печатную форму.

Прием на работу (Т-1) в 1С:Зарплата и Управление Персоналом

Всегда можно вернуть стандартный макет печатной формы, использовать измененный или совсем удалить измененный макет.

Макеты печатных форм в 1С:Зарплата и Управление Персоналом

Статья подготовлена специалистами Компании «АНТ-ХИЛЛ»

Тел. (473) 202-20-10

При цитировании статей или заметок ссылка на сайт автора обязательна

Накопились вопросы и нужна помощь?

С удовольствием на них ответим и поможем все настроить! Обращайтесь по тел.

Читайте также: