Термин

Ветвление логики

Ветвление логики меняет дальнейший сценарий формы в зависимости от ответов: какие вопросы показать, какую страницу открыть или к какому результату перейти. Для каждой ветки задают условие и действие, а для остальных ответов нужен запасной маршрут.

Что такое ветвление логики

Ветвление логики меняет дальнейший сценарий формы в зависимости от ответов. Один человек получает вопросы о квартире, другой об офисе; после нужных уточнений оба доходят до общего контактного шага. Такой подход называют условной логикой, conditional logic или логическими переходами.

Вместо одной последовательности для всех автор задаёт несколько маршрутов. Ветку выбирает условие: например, ответ «Офис» на вопрос о типе объекта. Действием может быть переход к другой странице или показ дополнительного поля. Конкретный набор действий зависит от конструктора, поэтому общий термин не означает, что любой инструмент поддерживает все варианты.

Коротко: вопрос определяет следующий шаг только тогда, когда его ответ участвует в правиле. Несколько страниц с кнопкой «Далее» сами по себе ещё не создают ветвление.

Условие, действие и запасной маршрут

У правила есть две основные части. Условие описывает, какой ответ или сочетание ответов нужно проверить. Действие определяет, что произойдёт при совпадении. Формулировка «если выбран офис, открыть вопросы об офисе» содержит обе части. Фраза «показать подходящие вопросы» слишком неопределённа: по ней нельзя проверить настройку.

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

Что произойдёт, если ни одно условие не выполнено? Для этого нужен запасной маршрут, правило «иначе», или otherwise. Например, посетитель выбирает «Другое» и описывает объект своими словами. Если автор проверил только две знакомые ветки и не предусмотрел путь для остальных ответов, он может не заметить, что третий вариант приводит к неподходящему вопросу или тупику.

Запасной маршрут не обязан завершать форму. Иногда нужно открыть общий шаг, иногда уточнить задачу. Выбирать его следует по смыслу заявки. Если для подготовки предложения ещё не хватает данных, преждевременная отправка лишь перенесёт недостающие вопросы в переписку с клиентом.

А если совпали сразу два правила с разными действиями? Нельзя заранее считать, что конструктор всегда выберет первое или последнее: порядок обработки нужно уточнить в конкретном инструменте и проверить на наборе ответов, который вызывает конфликт. По возможности сделайте условия взаимоисключающими, если человеку нужен ровно один маршрут.

Что может меняться по условию

МеханикаЧто меняетсяПример
Условный показ поляСостав вопросов на страницеПосле «Нужна уборка окон» появляется вопрос о числе окон
Переход между страницамиМаршрут заполненияОтвет «Офис» ведёт к офисному блоку, минуя квартирный
Выбор итогового результатаТо, что показывают после ответовДля разных задач подготовлены разные рекомендации

Это варианты применения условной логики, а не список функций каждого сервиса. Показ поля не требует отдельной страницы. Переход, наоборот, может пропустить целый блок. Выбор результата не обязательно меняет вопросы: иногда все отвечают на одинаковую анкету, но получают разные итоги.

Расчёт работает иначе. Формула может посчитать цену уборки, не изменяя маршрут. И наоборот: форма может направить квартиру и офис к разным уточнениям, не вычисляя стоимость. В тесте баллы описывают результат ответов, а правило перехода определяет, какой следующий шаг открыть. Эти механики можно сочетать, но проверять их нужно отдельно.

Пример: заявка на уборку

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

Тип объекта разделяет заявку на три ветки: квартира и число комнат, офис и площадь с рабочими часами, другое и описание задачи; затем общий контактный шаг
Учебная карта заявки. Разные уточнения сходятся к общему контактному шагу.

В квартирной ветке запрашивают число комнат. В офисной уточняют площадь и рабочие часы, чтобы обсудить подходящее время уборки. Для ответа «Другое» оставляют описание задачи. Контактные данные собирают после выбранного блока, а не копируют в каждую ветку: так проще поддерживать одинаковые подписи и требования.

В этой схеме ответ «Другое» служит запасным путём для двух правил перехода. Если позже появится вариант «Склад», проверьте и его маршрут: добавление ответа не означает, что для него уже настроены отдельные вопросы и человек попадёт в подходящий блок. У новой ветки должна быть своя задача.

Пример показывает устройство маршрута, а не готовый шаблон stepFORM. Он также не доказывает, что заявок станет больше. Если все клиенты отвечают на одни и те же вопросы, обычная последовательная форма может быть проще. Ветвление полезно там, где ответ действительно меняет нужные сведения или дальнейшее действие.

Как записывать условия без двусмысленности

Начните с короткого правила, которое можно проверить вручную: «тип объекта равен офису». Для сочетания ответов выпишите каждую проверку отдельно и решите, требуется совпадение всех условий или достаточно одного. Например, если для отдельного предложения нужны и офис, и выбранная регулярная уборка, обе проверки должны выполняться.

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

Когда в цепочке смешаны И и ИЛИ, важен порядок вычисления. В stepFORM, согласно документации логических ветвлений, операторы обрабатываются последовательно сверху вниз: A ИЛИ B И C означает (A ИЛИ B) И C. Не переносите привычный приоритет И из языков программирования на настройки формы.

Длинную цепочку сначала проверьте на бумаге. Подставьте ответы, при которых последнее требование не выполнено, и сравните ожидаемое действие с реальным. Такой тест полезнее, чем просмотр настройки с одним удобным набором данных. При этом порядок операторов внутри цепочки ничего не говорит о приоритете двух отдельных конфликтующих правил.

Что проверить при смене ответа

Проверка первого прохождения недостаточна. Посетитель может вернуться назад и заменить квартиру на офис. В новом маршруте ему уже нужны другие вопросы. Если ранее он указал три комнаты, этот ответ нельзя без проверки считать актуальным описанием офиса.

Сначала заполнить квартирную ветку, затем заменить ответ на офис и проверить новый маршрут и сохранённую заявку
После возврата человек может изменить исходный ответ. Проверьте и экран формы, и данные после тестовой отправки.

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

Скрытие поля не является защитой данных. Не размещайте в форме секретную информацию в расчёте на то, что условие не даст посетителю увидеть её.

Тестовый сценарийОжидаемый маршрут в нашем примереЧто проверить
Сразу выбрана квартираЧисло комнат, затем контактыНет обязательных вопросов об офисе
Сразу выбран офисПлощадь и рабочие часы, затем контактыНе требуется число жилых комнат
Выбрано другоеОписание задачи, затем контактыЗапасной путь не обрывает заполнение
Квартира заменена на офисОфисные вопросы вместо квартирныхПрежнее число комнат не используется как актуальный ответ
Тип объекта не выбранАвтор заранее определяет допустимое поведениеЕсли вопрос обязательный, случайный переход не позволяет пропустить ответ

После изменения вариантов ответа или порядка страниц повторите эти проверки. Даже если ссылка перехода ведёт на существующую страницу, её содержание может уже не подходить к выбранному ответу: переименованный или переработанный блок требует повторной сверки правила.

Ветвление логики в stepFORM

В stepFORM ответы могут управлять переходами и отображением элементов. Для случая, когда условия не совпали, есть настройка «В остальных случаях». Она позволяет выбрать переход или отправку формы. Конкретную настройку смотрите в документации, а ожидаемые маршруты запишите до сборки.

Для анкеты с разными наборами вопросов подходит конструктор квизов stepFORM. Начните с одной развилки, проверьте все ответы и возврат, затем добавляйте следующие условия. Если ветка не меняет нужные вопросы или результат, отдельный маршрут, вероятно, не нужен.

Частые вопросы

Многостраничная форма всегда имеет ветвление?

Нет. Если все проходят страницы в одном порядке, маршрут остаётся линейным. Ветвление появляется, когда условие меняет следующий шаг или состав вопросов.

Нужно ли создавать страницу для каждого скрываемого поля?

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

Зачем нужен маршрут «В остальных случаях»?

Он задаёт действие, когда ни одно условие не выполнено. В учебной заявке это описание другого объекта. Без запасного пути часть допустимых ответов может привести к неподходящему шагу.

Удаляются ли ответы из пропущенной ветки автоматически?

Нельзя считать это общим свойством ветвления. Измените исходный ответ, пройдите новый маршрут и проверьте сохранённую заявку. Исчезновение вопроса с экрана не доказывает очистку данных.

Ветвление гарантирует рост конверсии?

Нет. Оно может убрать ненужные вопросы, но ошибочный маршрут способен помешать отправке. Эффект оценивают по заполнениям и подходящим заявкам, а не по числу созданных веток.

Материалы по теме

1

Связанные термины

Популярные определения