В этом уроке вы научитесь продвинутому разделению информации
Упражнения
На вход вы получите список задач с разными статусами готовности. Мы разделим их по этим статусам, обработаем группы и соединим обратно.
- Создание данных. Скопируйте ссылку https://artemdzyuba.ru/wp-content/uploads/2023/01/Switch__Tasks.json и импортируйте в n8n (Add Workflow → ⋮ → Import from URL…). Соедините узлы и запустите.
- Начинаем разделять. Добавьте узел Switch. Тип данных — строка, в Value поместите Статус входящих данных.
- Создайте
Routing Ruleдля не начато. Здесь используйте правило полного равенстваEqual. Соответственно, проверка по слову не начато. Направляйте данные на выход 0 (это самый верхний выход). - Создайте
Routing Rulesдля в процессе. Проверка будет по правилуStart With. Для проверки возьмем какую-то начальную часть этого значения, например, в проц. Результат отправляется на выход 1 - Наконец, настало время для последнего
Routing Ruleс проверкой на сделано. Пусть правило вычисляет с помощьюContains, содержит ли статус слово елан, и если да, то отправляет данные на выход 2. Все остальные задачи направьте на выход 3. - Запустите workflow. Данные появились у всех выходов кроме последнего. Давайте их обработаем. Установите узлы Set для верхних трех выходов.
- Пусть первый Set добавляет к названию задачи текст “ – надо ускориться“, второй — текст “ – скоро закончим?”, третий — текст “ – молодец“
- Теперь надо объединить эти потоки в один. Для этого соедините верхние два сета через узел Merge, потом к результату добавьте третий сет через еще один Merge. Последний выход из узла Switch оставим, как есть.. Получится такой каскад из двух узлов Merge, которые постепенно объединят все данные, прошедшие через узел Switch
Добавьте в конце узел No Operations и запускайте
Отметьте все решенные задачи на странице шаблона упражнений Узел Switch.