Найти в Дзене

Выбор когда тогда иначе конец как 1с

В языке 1С:Предприятие конструкция “Выбор Когда Тогда Иначе Конец” является аналогом оператора switch (или case) в других языках программирования. Она позволяет выбрать один из нескольких вариантов выполнения кода в зависимости от значения выражения. Синтаксис конструкции “Выбор”: Выбор Когда <выражение1> Тогда // Код, который выполняется, если Выражение1 = Истина Когда <выражение2> Тогда // Код, который выполняется, если Выражение2 = Истина … Иначе // Код, который выполняется, если ни одно из выражений не равно Истина КонецВыбора; Объяснение элементов синтаксиса: Выбор: Ключевое слово, начинающее конструкцию выбора. Когда <выражение> : Ключевое слово, определяющее условие для выполнения определенного блока кода. <выражение> должно быть логическим выражением (возвращать значение Истина или Ложь). Тогда: Ключевое слово, разделяющее условие и код, который должен быть выполнен, если условие истинно. // Код…: Код, который выполняется, если соответствующее <выражение> р

В языке 1С:Предприятие конструкция “Выбор Когда Тогда Иначе Конец” является аналогом оператора switch (или case) в других языках программирования. Она позволяет выбрать один из нескольких вариантов выполнения кода в зависимости от значения выражения.

Синтаксис конструкции “Выбор”:

Выбор

Когда <выражение1> Тогда

// Код, который выполняется, если Выражение1 = Истина

Когда <выражение2> Тогда

// Код, который выполняется, если Выражение2 = Истина

Иначе

// Код, который выполняется, если ни одно из выражений не равно Истина

КонецВыбора;

Объяснение элементов синтаксиса:

Выбор: Ключевое слово, начинающее конструкцию выбора.

Когда <выражение> : Ключевое слово, определяющее условие для выполнения определенного блока кода. <выражение> должно быть логическим выражением (возвращать значение Истина или Ложь).

Тогда: Ключевое слово, разделяющее условие и код, который должен быть выполнен, если условие истинно.

// Код…: Код, который выполняется, если соответствующее <выражение> равно Истина. Может содержать несколько операторов 1С.

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

КонецВыбора: Ключевое слово, завершающее конструкцию выбора.

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

Процедура РассчитатьСкидку(СуммаПокупки)

Скидка = 0; // Изначально скидка равна 0

Выбор

Когда СуммаПокупки >= 10000 Тогда

Скидка = 0.1; // 10% скидка для покупок от 10000 руб.

Когда СуммаПокупки >= 5000 Тогда

Скидка = 0.05; // 5% скидка для покупок от 5000 руб.

Иначе

Скидка = 0; // Нет скидки для покупок меньше 5000 руб.

КонецВыбора;

Сообщить("Скидка: " + Скидка * 100 + "%");

КонецПроцедуры

Объяснение примера:

Процедура РассчитатьСкидку принимает один параметр — СуммаПокупки.

Переменной Скидка присваивается начальное значение 0.

Начинается конструкция Выбор.

Первое условие: Когда СуммаПокупки >= 10000. Если сумма покупки больше или равна 10000, то переменной Скидка присваивается значение 0.1 (10%).

Второе условие: Когда СуммаПокупки >= 5000. Если сумма покупки больше или равна 5000, то переменной Скидка присваивается значение 0.05 (5%). Важно! Это условие проверяется только в том случае, если первое условие не выполнилось (сумма покупки меньше 10000).

Иначе: Если ни одно из условий выше не выполнилось (сумма покупки меньше 5000), то переменной Скидка присваивается значение 0 (нет скидки).

Конструкция Выбор завершается.

Выводится сообщение со значением рассчитанной скидки.

Особенности конструкции “Выбор”:

Условия проверяются последовательно. Как только выполнилось одно из условий, выполняется соответствующий блок кода, и дальнейшие условия не проверяются.

Блок “Иначе” является необязательным. Если блок “Иначе” не указан, и ни одно из условий не выполнилось, то никакой код в конструкции “Выбор” не будет выполнен.

В блоках “Когда” и “Иначе” может содержаться любой код 1С.

Конструкция “Выбор” может быть вложена в другие конструкции (например, в циклы или другие конструкции “Выбор”).

Когда использовать конструкцию “Выбор”:

Когда необходимо выбрать один из нескольких вариантов выполнения кода в зависимости от значения переменной или выражения.

Когда необходимо реализовать сложную логику, основанную на нескольких условиях.

Конструкция “Выбор” является мощным и гибким инструментом, позволяющим реализовать сложную логику в коде 1С. Понимание ее синтаксиса и особенностей использования поможет вам писать более эффективный и читаемый код.

  📷
📷