Документация 0.4 Справочник действий

Найти записи отчёта

orch.reportFind · Оркестратор

Ищет записи отчёта оркестратора по значениям полей (равно, от и до). У каждой записи — id, задание, робот и values со значениями полей

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

Действие работает в задании оркестратора и при запуске из студии, подключённой к оркестратору: тогда оно обращается к „области для отладки“, выбранной в «Оркестратор» → «Подключение…», и работает с настоящими данными этой области.

Свойства #

Свойство Имя в файле Значение Обязательное По умолчанию Описание
Отчёт report текст да — Ключ отчёта в оркестраторе (латиница), например payments — указан на странице отчёта в панели
Равно where выражение нет — Объект «ключ поля: значение» — все условия должны выполняться, например { status: 'Новый' }
Не меньше from выражение нет — Нижние границы чисел и дат, например { amount: 1000, paid_on: '01.11.2026' }
Не больше to выражение нет — Верхние границы чисел и дат, например { paid_on: '30.11.2026' }
Сортировка sort текст нет — Ключ поля и направление, например amount:desc; пусто — по времени записи, новые первыми
Не больше записей limit число нет 100 От 1 до 1000

Результат #

Значение выхода сохраняется в переменную, выбранную для него в свойствах шага (раздел выходов).

Выход Имя в файле
Записи records
Найдено count

Как работает #

  • Отчёт (report) — ключ отчёта латиницей (payments), его показывает страница отчёта в панели («Отчёты»). Отчёт ищется в рабочей области задания.
  • Равно (where) — объект „ключ поля: значение“, все условия должны выполняться: { status: 'Новый' }.
  • Не меньше (from) и Не больше (to) — границы чисел и дат: { amount: 1000, paid_on: '01.11.2026' }.
  • Сортировка (sort) — ключ поля и направление: amount:desc, number:asc; пусто — новые записи первыми.
  • Не больше записей (limit, по умолчанию 100) — от 1 до 1000.
  • Выход Записи — список объектов: id, createdAt, updatedAt, jobId, jobNumber, process, robot и values со значениями полей (paid[0].values.number). Выход Найдено — их число.

Ошибки #

Код Причина и что делать
InvalidArgument Условие — не объект; лимит вне 1–1000; неверная сортировка
ReportNotFound Нет отчёта с таким ключом в области — проверьте ключ на странице отчёта
ReportValidation Значения не подходят к полям отчёта: нет такого поля, не число в числовом поле, неверная дата, не заполнено обязательное поле. Это бизнес-ошибка — задание с ней не повторяется автоматически. Текст называет поле и значение
ReportsUnavailable База отчётов недоступна — системная ошибка, задание можно повторить
OrchestratorUnavailable Процесс запущен без оркестратора (студия не подключена) или нет связи с сервером после 4 попыток (паузы 1, 2 и 4 с). Проверьте подключение студии или что агент робота на связи
AccessDenied Не хватает прав в рабочей области или задание уже завершено

Пример #

{
  "type": "orch.reportFind",
  "props": { "report": "payments", "where": "{ status: 'Оплачен' }", "sort": "number:asc", "limit": 1000 },
  "out": { "records": "paid", "count": "paidCount" }
}