Skip to main content
State update меняет одни и те же поля у всех записей, которые подходят под фильтр. Остальные поля не трогает. Чтобы добавить записи или заменить запись целиком, используйте State upsert.

Фильтр и значения

Подключите предыдущий узел — обычно Code — который возвращает:
Так status станет C у каждой записи в rates, у которой lane равен E. where — те же фильтры, что у State query. Нужно хотя бы одно условие. Пустой фильтр — ошибка, не «все записи». set — новое значение каждого поля. Если задать объект, он заменит то, что уже лежало. Имена полей — точечные ключи (status, price.amount). Если в этом JSON уже есть collection, Коллекцию на этом узле можно оставить пустой. Агент может передать те же where и set, когда вызывает этот инструмент.

Вход

Вкладка инспектора Настройки. Правила пустого поля на графе: Предыдущие узлы. Вставить значение здесь нет. У инструмента на агенте Коллекция может быть Решает агент или Фиксировано. Без предыдущего Result и без where / set от агента шаг падает.

Выход

На следующем узле Предыдущие узлы показывает State update: Result ({{State update.text}}, пока имя уникально).

Ограничения

Не больше 8 фильтров в where и 8 полей в set. Новые значения вместе — не больше 64000 байт. Не больше 5000 подходящих записей. Если больше — шаг падает и ничего не пишет. Запустите тот же set с более узким where, затем следующий кусок, пока в каждом запуске не будет не больше 5000. Пример — 8000 строк в двух направлениях, тот же новый status:
Если одно значение всё ещё даёт слишком много строк, добавьте другое поле (eq, in или диапазон gte / lt). Если поле нельзя записать, потому что по дороге лежит не объект, шаг падает и ничего не пишет. Пример: писать price.amount, когда price уже строка "flat". Если у коллекции есть схема, каждое новое значение должно ей соответствовать. Несовпадение — шаг падает и ничего не пишет.