Закажите бесплатный расчет стоимости вашей задачи по 1С!
Перезвоним за 10 минут! (в рабочие часы)

Пустая дата в 1С 8.3 — в запросах и модулях

Как задать пустую дату

В системе 1С инициализировать дату как пустую, возможно, задав для такого типа данных значение по умолчанию (никак иначе). Значение по умолчанию для даты это дата начала отсчёта (01 января 0001 года), то есть самая первая дата по григорианскому календарю.

Примеры инициализации:

В модулях

// С помощью литералов встроенного языка
ПустаяДата = '00010101';
ПустаяДата = '0001.01.01';
ПустаяДата = '0001-01-01';
ПустаяДата = '0001/01/01';

// С помощью функции Дата()
ПустаяДата = Дата("00010101");
ПустаяДата = Дата(1,1,1);

В запросах

// С помощью ДАТАВРЕМЯ()
"ВЫБРАТЬ
|          ДАТАВРЕМЯ(1, 1, 1) КАК ПустаяДата"....

// ИЛИ Передать пустую дату в запрос в виде параметра
"ВЫБРАТЬ
// ... выбираемые поля
|ГДЕ
|          Таблица.ДАТА = &ПустаяДата"
Запрос.УстановитьПараметр("ПустаяДата", Дата(1,1,1));

Проверка на пустую дату

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

Примеры сравнения:

В модулях

// Используя для сравнение литералы или функцию Дата()
Если НашаДата = '0001.01.01' ИЛИ НашаДата = Дата(1,1,1) Тогда
Сообщить("Дата не задана (пустая дата)");
Иначе
Сообщить(НашаДата);
КонецЕсли;

// С помощью функции ЗначениеЗаполнено()
Если ЗначениеЗаполнено(НашаДата) Тогда
Сообщить(НашаДата);
Иначе
Сообщить("Дата не задана (пустая дата)");
КонецЕсли;

Функция ЗначениеЗаполнено() проверяет, отличается ли переданное в неё значение от значения по умолчанию того же типа (в нашем случае от значения по умолчанию для типа «Дата»).

В запросах

// С помощью оператора «ГДЕ»
"ВЫБРАТЬ
// ... выбираемые поля
|ГДЕ
|          ТаблицаИсточник.ДАТА = ДАТАВРЕМЯ(1, 1, 1) "

// ИЛИ С помощью условного оператора ВЫБОР()
ВЫБОР
КОГДА ТаблицаИсточник.Дата = ДАТАВРЕМЯ(1, 1, 1) ТОГДА ""Пустая дата""
ИНАЧЕ ТаблицаИсточник.Дата
КОНЕЦ

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

Остались вопросы?

СПРОСИТЕ в комментариях!

Добавить комментарий:

Ваш адрес email не будет опубликован.