Stock reports

Получить отчёт по остаткам

Читается из регистров остатков, резерва и ожидаемого прихода. Разрез — клетка решётки «форма строки × ось столбцов»: row_axis называет старший уровень над товаром, column_axis — что стоит в столбцах. mode — алиас прежних режимов: products, warehouses, companies, matrix. Бизнес не сворачивается никогда. Юрлица ограничены доступом сотрудника.

get/api/v1/stock/report/stocks

Request

  • Base URL: https://erp.akeda.ru
  • URL: https://erp.akeda.ru/api/v1/stock/report/stocks
  • Auth: one of:
    • HTTP bearer
    • API key in header X-Api-Key
    • OAuth 2 (authorization code, authorization URL https://erp.akeda.ru/oauth2/authorize, token URL https://erp.akeda.ru/oauth2/token, scopes: akeda:delegate)
    • HTTP bearer

Query parameters

on_hand_fromstring

Отбор столбца «Остаток»: от, включительно

on_hand_tostring

Отбор столбца «Остаток»: до, включительно

reserved_fromstring

Отбор столбца «Резерв»: от, включительно

reserved_tostring

Отбор столбца «Резерв»: до, включительно

available_fromstring

Отбор столбца «Доступно»: от, включительно

available_tostring

Отбор столбца «Доступно»: до, включительно

expected_fromstring

Отбор столбца «Ожидается»: от, включительно

expected_tostring

Отбор столбца «Ожидается»: до, включительно

forecast_fromstring

Отбор столбца «Прогноз»: от, включительно

forecast_tostring

Отбор столбца «Прогноз»: до, включительно

minimum_fromstring

Отбор столбца «Минимум»: от, включительно

minimum_tostring

Отбор столбца «Минимум»: до, включительно

suggested_fromstring

Отбор столбца «Заказать»: от, включительно

suggested_tostring

Отбор столбца «Заказать»: до, включительно

unit_cost_fromstring

Отбор столбца «Себестоимость единицы»: от, включительно

unit_cost_tostring

Отбор столбца «Себестоимость единицы»: до, включительно

amount_fromstring

Отбор столбца «Сумма»: от, включительно

amount_tostring

Отбор столбца «Сумма»: до, включительно

company_idstring uuid
warehouse_idstring uuid
warehouse_idsstring

Несколько складов через запятую: узел дерева, развёрнутый в поддерево вместе со своими зонами. Каждый склад дополнительно отбирается вместе с уровнем ниже

product_idstring uuid
product_idsstring

Несколько товаров через запятую, не больше 200: форма продажи спрашивает свободный остаток юрлица по всем своим строкам одним запросом. Сравнивается товар после объединения номенклатуры, как у product_id

qstring

Артикул или наименование номенклатуры

as_ofstring date

Остатки на дату включительно

mode'products' | 'warehouses' | 'companies' | 'matrix'

Алиас клетки решётки. Умолчание — полный разрез: вызов без параметров обязан отдавать склад и юрлицо, свёртка запрашивается явно. warehouses — row_axis=warehouse_company и column_axis=metrics; companies — company и metrics; products — product и metrics; matrix — сводная «товар × склад», product и warehouse. Вместе с row_axis или column_axis режим допустим, только если оси повторяют его форму, иначе отказ. Себестоимость единицы пуста, когда юрлица нет ни в разрезе клетки, ни в отборе (company_id, without_company): среднее по владельцам не существует

row_axis'product' | 'warehouse' | 'company' | 'warehouse_company'

Форма строки: старший уровень над товаром. product — строка «бизнес × товар», warehouse — «склад → товар», company — «юрлицо → товар», warehouse_company — «склад → юрлицо → товар». Товар — всегда лист строки: разные товары и единицы в одну строку не складываются. Без параметра — warehouse_company, а для сводной клетки — product

column_axis'metrics' | 'warehouse' | 'company'

Ось столбцов. metrics — столбцы-показатели, строки плоским списком. warehouse или company — сводная клетка: листаются СТРОКИ формы row_axis — count, limit и offset считают строки, rows несёт строки страницы, columns — окно столбцов, results — ячейки строк страницы в этом окне. Одно измерение на обеих осях — отказ: склад в строке и в столбцах дал бы диагональ. Столбец юрлица — пара «бизнес × юрлицо», у каждого бизнеса свой «Без юрлица»

column_offsetinteger

Начало окна столбцов сводной клетки. Столбцы листаются окном, а не отказом «сузьте отбор»: у крупного клиента складов и юрлиц больше, чем читается на экране

column_limitinteger

Размер окна столбцов сводной клетки, не больше 40; у плоской клетки игнорируется

business_idstring uuid

Бизнес остатка — учётная единица строки. В режиме «по товарам» это единственное измерение строки, и без отбора по нему разбор накрывает все бизнесы сразу, смешивая официальный контур с неофициальным (ERP-704)

without_companyboolean

Только остаток без юрлица. Пустой company_id означает «любое юрлицо», поэтому у разреза без юрлица собственный признак: остаток неофициального контура принадлежит бизнесу (ERP-704)

rollup_zonesboolean

Свернуть зоны в их склад: остаток зоны складывается в родительский склад ещё в группировке. Прятать строки зон на клиенте нельзя — товар, пришедший сразу в зону, строки своего склада не имеет вовсе

below_minimumboolean

Строки, у которых ниже минимума хотя бы один разрез «юрлицо × склад» (со свёрткой зон): прогноз разреза сравнивается с его же минимумом, без правила минимум — ноль. Излишек одного разреза не гасит нехватку другого — тем же расчётом считается suggested

with_reserveboolean
include_emptyboolean

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

sort'name' | 'on_hand' | 'physical_on_hand' | 'blocked' | 'unavailable' | 'in_transit' | 'reserved' | 'available' | 'expected' | 'forecast' | 'minimum' | 'suggested' | 'unit_cost' | 'amount'
direction'asc' | 'desc'
limitinteger
offsetinteger
blocked_fromstring

Отбор столбца «Заблокировано»: от, включительно

blocked_tostring

Отбор столбца «Заблокировано»: до, включительно

group_by'condition'

condition — строки ещё и по состоянию товара (ERP-1977); в сводной не действует

condition_idstring uuid

Только это состояние товара; строка «Основное» — остаток без разреза состояния

physical_on_hand_fromstring
physical_on_hand_tostring
unavailable_fromstring
unavailable_tostring
in_transit_fromstring
in_transit_tostring

Headers

X-Tenantstring required

Slug выбранного кабинета; кабинет не является юрлицом

Response

Страница отчёта по остаткам

countinteger required
limitinteger required
offsetinteger required
formula'available = on_hand - reserved; forecast = available + expected' required
row_axis'product' | 'warehouse' | 'company' | 'warehouse_company' required

Форма строки ответа в каноническом виде — и когда разрез спрошен режимом

column_axis'metrics' | 'warehouse' | 'company' required

Ось столбцов ответа в каноническом виде

columns_countinteger

Только у сводной клетки: число столбцов всей выборки

column_offsetinteger
column_limitinteger

Changes

No recorded changes to this operation across all 2 revisions of this API.