Документация 0.4 Отчёты
Запись роботом
Робот пишет в отчёт шагами категории „Оркестратор“. Каждая запись сама запоминает задание, его номер, процесс и версию, робота и элемент очереди, который задание обрабатывало, — по ним в панели видно, откуда взялась строка.
Шаги #
| Шаг | Что делает | Результат |
|---|---|---|
orch.reportAdd |
Одна запись: объект „ключ поля: значение“, режим insert или upsert |
Id записи |
orch.reportAddMany |
Список записей до 5 000 за раз; всё или ничего — при ошибке в любой строке не пишется ни одна | Добавлено, обновлено, id записей |
orch.reportUpdate |
Меняет поля записи, найденной по id или по ключу записи | Изменена (да/нет), запись |
orch.reportFind |
Ищет записи: равно, не меньше, не больше, сортировка, до 1 000 записей | Записи, найдено |
Свойство „Отчёт“ — ключ отчёта из панели (латиница, например payments), а не название. Ключ указан на
странице отчёта.
Пример: платежи из выписки #
Процесс „Загрузка выписок“ читает выписку банка в Excel и пишет каждую строку в отчёт „Платежи“ (ключ payments,
поля number, amount, paid_on, status, ключ записи — number):
excel.readRangeчитает таблицу выписки с заголовками в переменнуюrows.orch.reportAddMany: „Отчёт“ —payments, „Записи“ —rows.map(r => ({ number: r['Номер'], amount: r['Сумма'], paid_on: r['Дата'], status: 'Новый' })), „Режим“ —upsert.- Позже процесс-сверщик отмечает оплату:
orch.reportUpdateс „Ключ записи“{ number: 'П-0001' }и „Новые значения“{ status: 'Оплачен' }.
В режиме upsert повторный запуск того же процесса по той же выписке не создаёт дублей: строки с тем же номером
обновляются. Готовый образец — samples/orchestrator/08_report_writer в репозитории (отчёт report.json и процесс
main.flow.json).
Ошибки #
| Код | Что значит | Повторяется ли |
|---|---|---|
ReportValidation |
Значение не подходит к полю (не число, нет в списке, пустое обязательное) — текст называет поле и строку | Нет: это бизнес-ошибка, исправьте данные |
ReportNotFound |
Нет отчёта с таким ключом в области процесса | Нет |
AccessDenied |
Отчёт другой рабочей области | Нет |
ReportsUnavailable |
База отчётов недоступна | Да: системная ошибка, сработают автоповторы задания |
Повтор того же запроса после обрыва связи не создаёт дубль: агент отправляет запрос с тем же идентификатором.
Отладка из студии #
Запуск из студии с шагами отчётов пишет настоящие записи в отчёт оркестратора, к которому подключена студия (как и шаги очередей). Для отладки используйте тестовый оркестратор или отдельную тестовую область, а лишние записи удалите на вкладке «Записи».