- маршрут result-table/export в EXPECTED_ROUTES, ruff format - общие VersionExportInfo, _write_details, _group_name, _xlsx_response вместо копий шапки и ответа - сумма компании в книге без молчаливого 0 (KeyError при пропуске в расчёте) - своё описание 422 у маршрутов результирующей таблицы в OpenAPI - тесты: 422 RESULT_ACCOUNTS_MISSING для экспорта без события EXPORT, схема OpenAPI экспорта - требование перенесено из openspec/specs в change intercompany-result-table-export (+ audit-trail), README Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2.3 KiB
2.3 KiB
Why
Фронт шахматки (экран [31-01], результирующая таблица под матрицей) выгружает результирующую таблицу ВГО в xlsx —
запрос фронтенда к API. Реализация — PR RSHB/arm-core#159 (автор — Потапова). Требование автор дописала прямо в
openspec/specs/; при подготовке к слиянию оно оформлено дельтами этого change'а, как в change intercompany-matrix
(PR #114).
What Changes
GET …/intercompany-matrix/result-table/export— xlsx результирующей таблицы ВГО: те же статьи, компании и итоги, что уGET …/intercompany-matrix/result-table, считается на лету из той же сводной ОСВ версии (§6).- Каждая успешная выгрузка пишет
audit_event(EXPORT)сreport = "intercompany_result_table". - В OpenAPI у 422 маршрутов результирующей таблицы — своё описание («нет счетов статей»), а не «неверный выбор счетов».
Capabilities
New Capabilities
Нет.
Modified Capabilities
consolidations-api: xlsx результирующей таблицы ВГО.audit-trail: аудит экспорта результирующей таблицы.
Impact
Только arm-core (маршрут, сервис шахматки, построитель книги, тесты). Таблицы DBML v5.21 не меняются: действие
EXPORT и раздел EXPORT в audit_action/audit_section уже есть. Срез 5 (09-delivery-plan.md).
Non-goals
- Строка «Итого» по статьям: её нет ни в JSON, ни в xlsx (§6 описывает только колонку «Итого по группе»).
- Пересчёт в тыс. руб. и знаки после запятой: книга в рублях, как выгрузка шахматки.
- Кнопка выгрузки во фронте (
web/) и строка в../docs/dev/frontend-api-guide.md— отдельными изменениями.