Булева логика в 1С для начинающих: как понима...
-

Булева логика в 1С для начинающих: как понимать и использовать условия «И», «ИЛИ», «НЕ» в запросах и отчетах

0
110
19.07.2026 Степан Радченко

Содержание:

1. Что такое оператор «И» в программе 1С:Предприятие
2. Как использовать оператор «ИЛИ» в системе учета 1С
3. Где используется учетная система 1С 

1. Что такое оператор «И» в программе 1С:Предприятие


Представьте, что ваша база данных 1С — это огромный склад, забитый тысячами коробок (документов, записей справочников). Ваша задача — не просто найти одну коробку, а отобрать группу коробок по определенным правилам. Булева логика — это и есть тот самый язык правил, который понимает 1С. Он позволяет вам давать точные команды, а не размытые просьбы. Конфигурация системы 1С использует эти правила повсеместно.


В основе этого языка лежат три волшебных слова: И, ИЛИ, НЕ. Давайте разберемся с каждым из них.


Простым языком: «И» требует выполнения всех условий без исключения. Это самый строгий и частый оператор.

Аналогия: Представьте, что вы говорите кладовщику: «Принеси мне коробки, которые и красные, и тяжелее 10 кг». Если коробка будет красной, но легкой, он ее не возьмет. Если будет тяжелой, но синей — тоже пройдет мимо. Он принесет только те, что удовлетворяют обоим вашим требованиям.


В 1С (язык запросов): оператор И используется в секции ГДЕ для сужения выборки. Учетная система 1С применяет такие условия для точного отбора данных.


Пример: Нам нужно найти все документы реализации, у которых сумма больше 50 000 рублей и контрагент из Москвы.


ВЫБРАТЬ

    РеализацияТоваровУслуг.Ссылка

ИЗ

    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг

ГДЕ

    РеализацияТоваровУслуг.СуммаДокумента > 50000

    И РеализацияТоваровУслуг.Контрагент.Город = "Москва"

 

Этот запрос вернет только те документы, которые проходят оба фильтра одновременно. Программа 1C:Предприятие выполняет оба условия одновременно.


2. Как использовать оператор «ИЛИ» в системе учета 1С


Простым языком: «ИЛИ» требует выполнения хотя бы одного из перечисленных условий. Это расширяющий оператор.


Аналогия: Вы говорите кладовщику: «Принеси мне коробки, которые или красные, или тяжелее 10 кг». Теперь он принесет вам:

●       Красные и легкие.

●       Синие, но тяжелые.

●       Красные и тяжелые (они тоже подходят, так как удовлетворяют сразу двум условиям).


В 1С (язык запросов): 

Пример: Найти всех клиентов, которые или являются VIP-клиентами, или сделали заказ на сумму свыше 100 000 рублей.


ВЫБРАТЬ

    Продажи.Контрагент

ИЗ

    РегистрНакопления.Продажи КАК Продажи

ГДЕ

    Продажи.Контрагент.ВИПКлиент = ИСТИНА

    ИЛИ Продажи.Сумма > 100000

 

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

Простым языком: «НЕ» инвертирует условие. Он отбирает все, что не соответствует правилу.

Аналогия: «Принеси мне все коробки, которые не красные». Кладовщик принесет синие, зеленые, желтые — любые, кроме красных.


В 1С (язык запросов):

Пример: Показать все товары, у которых не установлена страна происхождения (то есть поле пустое).


ВЫБРАТЬ

    Номенклатура.Ссылка

ИЗ

    Справочник.Номенклатура КАК Номенклатура

ГДЕ

    НЕ Номенклатура.СтранаПроисхождения = ЗНАЧЕНИЕ(Справочник.СтраныМира.ПустаяСсылка)

 

Примечание: Часто вместо НЕ ... = используют оператор <> (не равно). Система 1C:Предприятие также поддерживает такой вариант записи.

Самая мощь начинается, когда мы комбинируем операторы. И здесь главное правило, как в математике, — скобки (). Условия в скобках вычисляются первыми.


Плохой пример (неверный результат): Найти VIP-клиентов из Москвы или просто клиентов с крупным заказом из Москвы.


-- НЕПРАВИЛЬНО!

ГДЕ

    Контрагент.ВИПКлиент = ИСТИНА

    ИЛИ Сумма > 100000

    И Контрагент.Город = "Москва"

 

1С запутается. Она может сначала проверить Сумма > 100000 И Город = "Москва", а потом к результату добавить всех VIP-клиентов из любого города.

Хороший пример (правильный результат):

-- ПРАВИЛЬНО!

ГДЕ

    (Контрагент.ВИПКлиент = ИСТИНА ИЛИ Сумма > 100000)

    И Контрагент.Город = "Москва"

 

Как это работает:

Сначала 1С смотрит в скобки и находит всех клиентов, которые или VIP, или сделали крупный заказ.

Затем из этой уже отобранной группы она оставляет только тех, у кого город — «Москва». Такой подход особенно важен при работе с системой 1C:Предприятие.


3. Где используется учетная система 1С


Конструктор запросов и СКД: на вкладке «Условия» вы добавляете фильтры. По умолчанию они соединяются через И. Но вы можете сгруппировать условия и для группы задать тип ИЛИ или НЕ. Скобки в тексте запроса — это и есть эти группы в конструкторе. Конфигурации программы 1С используют этот механизм одинаковым образом.


Код 1С: в условных операторах Если ... Тогда ... КонецЕсли; вы используете те же самые И, ИЛИ, НЕ для построения сложной логики.


Понимание булевой логики превращает вас из простого пользователя в человека, который может «разговаривать» с базой данных на одном языке. Начните с простых условий И, затем попробуйте ИЛИ, а после этого — их комбинации в скобках. Это навык, который лежит в основе любой аналитической работы в 1С. Конфигурация системы 1С помогает реализовать такую логику на практике.

 

Специалист компании ООО "Кодерлайн"

Степан Радченко

Обсудить статью в Telegram Задать вопрос автору статьи
Тема вопроса*
Ваше имя*
E-mail или телефон*
Ваш вопрос*
 

Добавить комментарий
Текст сообщения*
Защита от автоматических сообщений
 
Услуги программиста 1С
Получите специалиста
для решения всех задач
в области 1С
Программы 1С
Цены и подробное описание программ 1С:Предприятие 8.