1с проверка на пустой результат запроса

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

1. Проверку того, что результат выполнения запроса не содержит строк следует выполнять с помощью метода Пустой . Поскольку на получение выборки из результата запроса (выгрузка его в таблицу значений) будет затрачиваться дополнительное время.

Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
Возврат Истина;
Иначе
Возврат Ложь;
КонецЕсли;

Возврат НЕ Запрос.Выполнить().Пустой()

Методическая рекомендация (полезный совет)

2. В то же время если требуется выбрать (или выгрузить) результат запроса, то предварительный вызов метода Пустой не требуется.
Например, вместо:

РезультатЗапроса = Запрос.Выполнить();
Если НЕ РезультатЗапроса.Пустой() Тогда // избыточный вызов
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
.

Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
.

Очень часто даже опытные программисты ошибаются при методе проверки наличия строк в результате запроса. Рассмотрим, как правильно, а самое главное – оптимально с точки зрения производительности проверять запрос на наличие строк.

Очень часто для проверки наличия строк в результате запроса программисты не просто выполняют запрос, а выгружают результат в таблицу и проверяют по количеству строк (Таблица.Количество()<>0) или же получают выборку и смотрят на количество в выборке (Выборка.Количество()<>0). Однако это не оптимально с точки зрения производительности системы.

Правильно для проверки результата запроса на наличие строк использовать метод результата запроса «Пустой()».

Получите 267 видеоуроков по 1С бесплатно:

Рассмотрим пример функции, которая ищет запросом контрагента по ИНН. Если такого контрагента не найдено, возвращает Ложь, если такой контрагент существует — Истина:

Читайте и другие статьи по запросам и конфигурированию в 1С.

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

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

Рекомендация с ИТС:

Методическая рекомендация (полезный совет)

2. В то же время если требуется выбрать (или выгрузить) результат запроса, то предварительный вызов метода Пустой не требуется.
Например, вместо:

РезультатЗапроса = Запрос.Выполнить ();
Если НЕ РезультатЗапроса.Пустой() Тогда // избыточный вызов
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл

Выборка = Запрос.Выполнить ().Выбрать();
Пока Выборка.Следующий() Цикл

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