Skip to content
лого - блог 1с программиста

Блог 1С программиста

Наработки, заметки и другая информация по 1С

  • Главная
  • Типовые конфигурации
    • ЗУП 3.1
      • Разработка
        • Обработки
        • Отчеты
        • Печатные формы
        • Расширения
      • Инструкции
      • Ответы техподдержки 1С
      • Общие вопросы
    • ДО 2.1
    • УХ 3.2
    • УПП 1.3
  • Интеграции и обмены
  • Шаблоны и заготовки
    • Типовые приемы
    • Отчеты
    • Обработки
    • Печатные формы
    • Расширения
  • Платформа 1С
  • Разработки
    • Контакты
  • Toggle search form

ЕСТЬNULL и МАКСИМУМ — кто главнее

Posted on 2 июля 26 г.3 июля 26 г. By Алексей Комментариев к записи ЕСТЬNULL и МАКСИМУМ — кто главнее нет

Функция ECТЬNULL и агрегатная функция МАКСИМУМ периодически встречаются в запросе на одном поле и у программиста появляется выбор в каком порядке применить эти функции, на первый взгляд результат ничем не должен отличаться, но разница все же случается, ниже приведу пример в котором один из вариантов приведет к ошибке.

Приведет к ошибке

1С (Запрос)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
ВЫБРАТЬ
"Иванов И.И." КАК Сотрудник,
"1" КАК НомерДокумента
ПОМЕСТИТЬ ВТСотрудники
ГДЕ
ЛОЖЬ
;
 
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ДАТАВРЕМЯ(2026, 1, 1) КАК Дата,
"1" КАК Номер
ПОМЕСТИТЬ ВТДокументы
;
 
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
МАКСИМУМ(ЕСТЬNULL(ВТДокументы.Дата, ДАТАВРЕМЯ(1, 1, 1))) КАК Дата
ИЗ
ВТСотрудники КАК ВТСотрудники
ЛЕВОЕ СОЕДИНЕНИЕ ВТДокументы КАК ВТДокументы
ПО ВТСотрудники.НомерДокумента = ВТДокументы.Номер
Результат запроса NULL

Не приведет к ошибке

1С (Запрос)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
ВЫБРАТЬ
"Иванов И.И." КАК Сотрудник,
"1" КАК НомерДокумента
ПОМЕСТИТЬ ВТСотрудники
ГДЕ
ЛОЖЬ
;
 
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ДАТАВРЕМЯ(2026, 1, 1) КАК Дата,
"1" КАК Номер
ПОМЕСТИТЬ ВТДокументы
;
 
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ЕСТЬNULL(МАКСИМУМ(ВТДокументы.Дата), ДАТАВРЕМЯ(1, 1, 1)) КАК Дата
ИЗ
ВТСотрудники КАК ВТСотрудники
ЛЕВОЕ СОЕДИНЕНИЕ ВТДокументы КАК ВТДокументы
ПО ВТСотрудники.НомерДокумента = ВТДокументы.Номер
Результат запроса Пустая дата

И далее, при обработки выборки например таким образом НачалоДня(Выборка.Дата) на первом варианте получим ошибку преобразования типов.

Не берусь оценивать качество запроса, но аналогичный запрос попался мне на практике. Причем, если бы в нем указали блок СГРУППИРОВАТЬ ПО, то ошибки удалось бы избежать.

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

Рекомендации

  • Релиз новой Платформы 1С 8.5
  • Не обновляется макет при его доработке в конфигураторе
  • Краткий обзор изменений платформы 8.3.26
Платформа 1С Tags:ЕСТЬNULL

Навигация по записям

Previous Post: Программное объединение строк в отчете
Next Post: Обзор новых возможностей ЗУП 3.1.37

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

ДзенTelegram

Разработки

  • Печатная форма "Расходный кассовый ордер" для ЗУП 3.1 Печатная форма "Расходный кассовый ордер" ЗУП 3.1 650,00 ₽
  • Отчет "План-факт отпусков сотрудников в виде диаграммы Ганта Отчет "План-факт по отпускам сотрудников" ЗУП 3.1 650,00 ₽
  • Приказ об отмене трудового договора (рис 1) Печатная форма "Отмена приема на работу" ЗУП 3.1 650,00 ₽
  • Обработка “Выплата сотруднику через банк” ЗУП 3.1 Обработка “Выплата сотруднику через банк” ЗУП 3.1 0,00 ₽
  • Тестирование API Яндекс GPT Обработка "Работа с API YandexGPT" 650,00 ₽

MDM web-сервис XML БСП ЕФС-1 ИИ КД 2.0 НДФЛ СЗВ-СТАЖ СЗВ-ТД СКД СТД-Р СФР СЭДО ФСС ФСС НС больничные листы взносы вычеты длительная операция запрос интерфейс кадровая история кадровые данные кадровые переводы легкий труд мастер-данных обмен данными общий модуль отбор отпуска печать без проверки печать с диалогом пользователи представление прием на работу резервы отпусков сверхурочные синхронизация ЗУП и БП средний заработок табель таблица периодов табличный документ фотография штатное расписание

Яндекс.Метрика

© 2022-2026 myblog-1c.ru

Пользовательское соглашение

Контакты