Выбор Когда -Тогда в конфигурации системы 1С:...
-

Выбор Когда -Тогда в конфигурации системы 1С: Предприятие

0
41616
26.01.2023 Айдар Фархутдинов

Содержание:

1.      Для чего нужен запрос выбора Когда – Тогда?

2.      Примеры использования запроса выбора Когда-Тогда в системе конфигурации 1С


1.      Для чего нужен запрос выбора Когда – Тогда?


Данная статья будет посвящена оператору языка запросов системы конфигурации 1С, а именно – одному из операторов выбора «Когда – Тогда – ». Для начала, будет рассмотрена общая конструкция проведения данного выбора, после чего, для наглядности и лучшего понимания работы данного оператора внутри запроса, будут приведены два примера его использования на практике.


Во время работы внутри Конфигуратора программы 1С бывают случаи, в которых нужно изучить некоторое выражение на то, - является оно логической «Истиной» или «Ложью». Если при определении оказалось, что наше выражение «Ложь», то необходимо путём присвоения заменить его значение на иное.


Как раз, в этом случае и поможет запрос выбора «Когда – Тогда - ». Ниже демонстрируется общее написание запроса с оператором выбора «Когда – Тогда – »:



Выбор    


2.      Примеры использования запроса выбора Когда-Тогда в системе конфигурации 1С


Рассмотрим два примера о том, как управляться с оператором выбора «Когда – Тогда – » внутри системы конфигурации 1С:


1.      Для первого примера возьмём за основу некую таблицу, которая будет содержать перечень дней недели, как можно увидеть далее:



ДеньНедели


Далее нужно определить для двух дней «Суббота» и «Воскресенье» обозначение того, что они являются выходными днями. А все остальные дни недели будут определены как рабочие. Чтобы сделать эту операцию – необходимо создать запрос по нашей начальной таблице. Сам запрос будет таким, как показано ниже:



Таблица1


Как только запрос будет написан и выполнен – таблица отобразится таким образом, как можно увидеть ниже:



ВидДня


Получаем, что при использовании внутри запроса выбора «Когда – Тогда –  » - мы делали перебор всех рядов из начальной таблицы, во время чего сверяли каждый ряд на то, подходит ли он такому условию:



КОГДА ДеньНедели


Если какое-то из этих двух условий выполняется, то, в созданный столбец, делалась новая запись с нужным нам выражением (о том, что день выходной), которое находилось после «Тогда». Если же условие не было выполнено, то в соседний столбец будет внесено то условие, которое находится за словом «Иначе».


Замечание: Если слова «Иначе», и его сопутствующего условия, нет, то система конфигурации 1С, всё равно, сработает корректно, но в случае, когда начальное выражение будет иметь переменную значения «Ложь», то те ряды, которые должны были быть заменены будут «NULL».


2.      В этом примере будет подробнее рассмотрена ситуация из замечания, которое было указано в конце первого примера. Основой послужит точно такая же таблица с днями недели. Но задача будет стоять следующая: нужно провести вывод числа выходных дней, но в отдельную таблицу, количество рабочих дней указывать нет необходимости.


Основой будет точно такой же запрос, как в примере выше, однако, у него не будет раздела со словом «Иначе». А вывод будет только при через поле от оператора выбора «Когда – Тогда – », данный запрос демонстрируется далее:



ВЫБРАТЬ


По окончанию порядка выполнения запроса, таблица примет следующий вид:



NULL


Получаем, что все те ряды, которые не подошли под заданное условие, приняли тип значения «NULL», то есть, значение у них просто отсутствует. Получается, что нужно только провести группировку данных полученной таблицы, для этого задействуем в запросе функцию «Количество(<Выражение>)», как показано далее:



ВЫБРАТЬ


В итоге, по окончанию выполнения запроса, получим такой результат:



КоличествоВыходныхДней


В данной статье было описано как в операторе языка запросов системы программы 1С работает оператор выбора «Когда – Тогда – », была приведена и общая конструкция оператора языка, и два примера его использования, а также добавлено важное замечание о конструкции оператора, о котором часто забывают.


Специалист компании "Кодерлайн"
Айдар Фархутдинов

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

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