From eed2ac23e7b73b3ed699a186f80392270f5e614f Mon Sep 17 00:00:00 2001 From: Basoff Date: Sun, 22 Feb 2026 14:05:58 +0300 Subject: [PATCH] Revert "Update SQL schema from mag_pbi" This reverts commit f2289ab231e0fd24b5f994530743d28279fa78f9. --- 01_ПОЛНАЯ_СТРУКТУРА_PBI_И_SQL.md | 314 ------------------------------- 23.txt | 0 2 files changed, 314 deletions(-) delete mode 100644 01_ПОЛНАЯ_СТРУКТУРА_PBI_И_SQL.md delete mode 100644 23.txt diff --git a/01_ПОЛНАЯ_СТРУКТУРА_PBI_И_SQL.md b/01_ПОЛНАЯ_СТРУКТУРА_PBI_И_SQL.md deleted file mode 100644 index 2cd7569..0000000 --- a/01_ПОЛНАЯ_СТРУКТУРА_PBI_И_SQL.md +++ /dev/null @@ -1,314 +0,0 @@ -# База знаний: полная структура SQL (mag_pbi) и Power BI - -> Извлечено из `analytics/sql_db_mag_pbi/mag_pbi_schema.sql` и `analytics/pbi/`. Независимый справочник для трассировки метрик и работы с данными. - ---- - -## 1. Схемы базы данных mag_pbi - -| Схема | Назначение | -|-------|------------| -| `pbi` | Основные таблицы и представления для Power BI | -| `analytics` | Дефицит, прогноз, аналитика за 365 дней | -| `pbiProd` | Сводная себестоимость, производство | -| `ostatki` | Резервы, очереди сборок, склад | -| `sebest` | Себестоимость до 2022 | -| `stg` | Staging (загрузка прогноза) | -| `artem` | Дополнительные данные | -| `dbo` | Стандартные таблицы | - ---- - -## 2. Таблицы (CREATE TABLE) - -### 2.1 Схема pbi - -| Таблица | Ключевые колонки | -|--------|------------------| -| `pbi.pricelist` | Цена, Вид цены, 1c_id, artic_id, Дата, _Period | -| `pbi.Себестоимость` | id, Период, Статья, Вид операции, artic_id, Количество, Сумма, Закупка, Учетная цена, Номер заказа | -| `pbi.СебестоимостьПродажи` | id, 1c_id, artic_id, Количество, Закупка, sebes_id | -| `pbi.ostatki_short` | artic_id, 1c_id, Code, sklad, Категория склада, upakovok, quantity, date | -| `pbi.enums` | — | -| `pbi.nomenclature` | artic_id, 1c_id, code, description, group_id, Цена учетная руб/usd, minAvailableQty | -| `pbi.groups` | group_id, path, 1c_id | -| `pbi.w_ostatok_da_net` | dt, _IDRREF, artic_id, quantity, upakovok, ostatok, sellable_stock | -| `pbi.content_rating` | — | -| `pbi.direct_adv_costs` | — | -| `pbi.direct_orders` | — | -| `pbi.nomenclatureVolumeStorehouse` | — | -| `pbi.ostatki` | Остатки полные | -| `pbi.ostatki_mp` | Остатки МП | -| `pbi.Turnover` | — | -| `pbi.Себестоимость2023`, `Себестоимость2024` | — | -| `pbi.СебестоимостьДо2022Тест` | — | -| `pbi.СебестоимостьСводныйОт2022Тестовый` | — | -| `pbi.СебестоимостьПродажиОт2022` | — | -| `pbi.СебестоимостьПродажиТест`, `СебестоимостьТест` | — | - -### 2.2 Схема analytics - -| Таблица | Ключевые колонки | -|---------|------------------| -| `analytics.forecast` | id, scenario_id, 1c_id, code, month, value | -| `analytics.forecast_scenarios` | scenario_id, name | -| `analytics.deficit_proposal` | scenario_id, 1c_id, code, place_month, arrival_month, order_qty, projected_stock_at_T | -| `analytics.stock_plan_by_arrival` | — | -| `analytics.аналитика за 365 дн.` | Агрегаты ROIC, ТН, средний остаток | -| `analytics.manufacturers` | — | -| `analytics.manufacturer_payment_stage` | — | -| `analytics.manufacturer_counterparty_map` | — | -| `analytics.deficit_money_request` | scenario_id, manufacturer_id, contractor_1c_id, arrival_month, amount_rub/usd | -| `analytics.forecast_history` | — | -| `analytics.load_log_w_ostatok_da_net` | — | -| `analytics.sales_weekly_features` | — | -| `analytics.seasonality_groups` | — | -| `analytics.seasonality_groups_summ_1` | — | -| `analytics.stock_balance` | — | -| `analytics.прогноз из excel` | — | -| `analytics.срез учетных цен` | — | - -### 2.3 Схема pbiProd - -| Таблица | Назначение | -|---------|------------| -| `pbiProd.СебестоимостьСводныйОт2022` | Сводная себестоимость | -| `pbiProd.СебестоимостьОт2022` | Себестоимость от 2022 | -| `pbiProd.СебестоимостьДо2022` | До 2022 | -| `pbiProd.СебестоимостьПроизводствоОт2022` | Производство | -| `pbiProd.СебестоимостьИтогиДо2022` | — | -| `pbiProd.УчетнаяЦенаПоСебестоимости` | — | -| `pbiProd.GroupsOfNomenclature` | — | -| `pbiProd.НоменклатураВПроизводствеПоУровням` | — | - -### 2.4 Схема stg - -| Таблица | Назначение | -|---------|------------| -| `stg.forecast_load` | Staging загрузки прогноза из Excel | - -### 2.5 Схема dbo - -| Таблица | Назначение | -|--------|------------| -| `dbo.content_rating`, `grades_quartal` | — | -| `dbo.lineage_edges`, `lineage_objects` | — | -| `dbo.order_source`, `site_product` | — | -| `dbo.Turnover` | — | -| `dbo.yandex_direct_criteria_stats` | — | - ---- - -## 3. Представления (CREATE VIEW) - -### 3.1 Схема pbi - -| View | Источник / логика | -|------|-------------------| -| `pbi.[Себестоимость+СебестоимостьПродаж]` | pbi.Себестоимость + СебестоимостьПродажи, подстановка цен из pricelist | -| `pbi.ОстаткиTotal` | ostatki_short, накопительный итог по складу/artic_id | -| `pbi.БазоваяУпаковка` | Габариты из MAG_2019 | -| `pbi.Заказы_тех` | Заказы поставщику | -| `pbi.РекламаМаркетплейсы` | Реклама МП | -| `pbi.Стоимость обработки заказа` | Стоимость МП | -| `pbi.Резервы` | Резервы | -| `pbi.Заказы` | Заказы | -| `pbi.Заявки_на_оплату` | Заявки | -| `pbi.Внешние остатки` | Внешние остатки | -| `pbi.Расходы по годам` | Расходы | -| `pbi.node_mp` | Узлы МП | -| `pbi.Внешние продажи` | Продажи МП | -| `pbi.nomeclature_for_pbi` | Номенклатура для PBI | -| `pbi.Заказы в заявках` | — | -| `pbi.[Себестоимость+СебестоимостьПродажОт2022]` | — | -| `pbi.Сборки`, `Сборки_комплекты` | — | -| `pbi.значения доп реквизитов номенклатуры` | — | -| `pbi.Сохраненные настройки 1С для PowerBI` | — | - -### 3.2 Схема analytics - -| View | Назначение | -|------|------------| -| `analytics.get_forecast_by_group` | Прогноз по группе (forecast + nomenclature + groups) | -| `analytics.get_forecast_scenarios` | Сценарии | -| `analytics.get_orders_list` | Список заказов | -| `analytics.get_analytics_by_group` | Аналитика по группе | -| `analytics.get_orders_by_group` | Заказы по группе (входящие) | -| `analytics.deficit_orders` | deficit_proposal + nomenclature (цена, сумма) | -| `analytics.nomenclature` | — | -| `analytics.Внешние остатки` | — | -| `analytics.Остатки МП` | — | -| `analytics.Где товар` | — | -| `analytics.Заявки_на_оплату` | — | -| `analytics.Заявки_без_проекта_неоплачено` | — | -| `analytics.Ожидаемый расход` | — | -| `analytics.Ожидаемое_поступление` | — | -| `analytics.ForecastBasesKs` | Базы прогноза | -| `analytics.doprekvizit`, `doprekvizitvalues` | — | -| `analytics.images` | — | -| `analytics.Курсы валют на сегодня` | — | -| `analytics.Проекты` | — | -| `analytics.v_manufacturers_roi_compat` | — | -| `analytics.v_contractors`, `v_producers` | — | -| `analytics.v_manufacturer_counterparty_mapping` | — | - -### 3.3 Схема pbiProd - -| View | Назначение | -|------|------------| -| `pbiProd.[СводныйСебестоимость Для PBI]` | **Основной источник Себестоимости в PBI** | -| `pbiProd.СводныйСебестоимость` | — | -| `pbiProd.ИтогСебестоимостьПродажОт2022` | — | - -### 3.4 Схема ostatki - -| View | Назначение | -|------|------------| -| `ostatki.РезервыМПиОПТ` | Резервы МП и ОПТ | -| `ostatki.OstatkiMarketSklad` | — | -| `ostatki.МаркировкаОчередьВРАботе` | — | -| `ostatki.НаСогласовании` | — | -| `ostatki.ОчередьНаСборкуРазборку` | — | -| `ostatki.СборкиРазборкиВРаботе` | — | -| `ostatki.СобираетсяИКСборке` | — | -| `ostatki.СобраноНеОплачено` | — | -| `ostatki.ТоварыВПеремещении` | — | - ---- - -## 4. Хранимые процедуры - -### 4.1 analytics — дефицит и прогноз - -| Процедура | Назначение | -|-----------|------------| -| `analytics.sp_build_deficit_proposal` | Расчёт дефицита и рекомендаций к заказу | -| `analytics.sp_fill_deficit_money_request` | Заполнение заявок на оплату по дефициту (manufacturers + contractor) | -| `analytics.sp_rebuild_stock_plan_by_arrival` | План остатков по месяцам прихода | -| `analytics.sp_run_deficit_all_skus` | Пересчёт дефицита по всем SKU | -| `analytics.sp_build_forecast_s4_by_group` | Прогноз по группе | -| `analytics.sp_загрузка_прогноза_закупки` | Загрузка прогноза из Excel | -| `analytics.create_seasonality_groups` | Сезонность по группам | -| `analytics.sp_create_analytics_365` | Аналитика за 365 дней | -| `analytics.sp_load_koef_groups` | Коэффициенты групп | -| `analytics.sp_recalc_roic` | Пересчёт ROIC | -| `analytics.sp_report_ROI` | Отчёт ROI | -| `analytics.Подготовка таблицы продаж к прогнозу` | Подготовка продаж | - -### 4.2 pbi — миграция - -| Процедура | Назначение | -|-----------|------------| -| `pbi.migrate_ostatki` | Миграция остатков | -| `pbi.migrate_nomenclature` | Миграция номенклатуры | -| `pbi.migrate_groups` | Миграция групп | -| `pbi.migrate_pricelist` | Миграция прайс-листа | -| `pbi.migrate_stock_balance` | — | -| `pbi.migrate_max_year_quantity` | — | -| `pbi.migrate_uchet_summa` | — | -| `pbi.создание среза учетных цен` | Срез учётных цен | -| `pbi.[Заполнить себестоимостьОт2022(закупки+продажи)]` | — | -| `pbi.[Заполнить себестоимостьОт2022(СкладХранение)]` | — | -| `pbi.РасчетСебестоимостиОт2022` | — | - -### 4.3 pbiProd — себестоимость - -| Процедура | Назначение | -|-----------|------------| -| `pbiProd.ЗаполнитьСебестоимостьСводныйОт2022` | — | -| `pbiProd.[Пакетное: ...]` | Различные этапы заполнения себестоимости | -| `pbiProd.[Подготовка Производство: ...]` | Подготовка производства | - -### 4.4 sebest — себестоимость до 2022 - -| Процедура | Назначение | -|-----------|------------| -| `sebest.Заполнить себестоимость до 2022` | — | -| `sebest.Заполнить себестоимость закупкой/продажей` | — | -| `sebest.Расчет себестомисти` | — | - ---- - -## 5. Power BI — таблицы и источники - -### 5.1 Таблицы модели (из TMDL) - -| Таблица PBI | Режим | SQL источник | -|-------------|-------|--------------| -| Номенклатура | import | pbi.nomeclature_for_pbi | -| Партнер | import | pbi.Партнеры | -| Стоимость МП | import | pbi.[Стоимость обработки заказа] | -| Себестоимость | import | **pbiProd.[СводныйСебестоимость Для PBI]** | -| Основной отчет | import | Calculated (placeholder) | -| Группы | import | pbi.groups | -| Остатки | import | **pbi.ostatki_short** | -| Заявки на оплату | import | pbi.Заявки_на_оплату | -| План продаж менеджеров | import | pbi.ПланПродажМенеджеров | -| План продаж по группам | import | pbi.ПланыПродажПоГруппам | -| Менеджеры | import | pbi.users_1C | -| mp остатки | import | pbi.Внешние остатки | -| mp аналитика продаж | import | pbi.[Внешние продажи] | -| ПРАЙСлист | import | pbi.pricelist | -| Упущенные продажи | import | pbi.w_ostatok_da_net (+ трансформации) | -| Заказы все | import | pbi.Заказы | -| mp реклама | import | pbi.РекламаМаркетплейсы | -| План маркеты | import | — | -| Резервы | import | pbi.Резервы | -| Расходы по годам | import | pbi.[Расходы по годам] | -| Я.Директ расходы | import | pbi.direct_adv_costs | -| Я.Директ заказы | import | pbi.direct_orders | -| mp узел | import | pbi.node_mp | -| mp оборот | import | pbi.[Внешний оборот] | -| .Календарь | calculated | Calendar | -| LocalDateTable_* | calculated | Calendar по диапазону полей | -| Организация | calculated | VALUES(Себестоимость[Организация]) | -| Закупки | calculated | — | -| Параметр цена продажи, % | calculated | GENERATESERIES(-20, 20, 0.5) | - -### 5.2 Сервер - -- **Sql.Database("prdsql", "mag_pbi")** — основной источник -- **Sql.Databases("prdsql")** → mag_pbi — альтернативный доступ - -### 5.3 Связи (relationships.tmdl) - -- artic_id → Номенклатура._artic_id (Себестоимость, Остатки, mp остатки, Заказы все и др.) -- Период/Дата → .Календарь.Дата -- Номенклатура._group_id → Группы.group_id (bothDirections) -- Остатки.Дата → LocalDateTable (variation) - ---- - -## 6. Цепочка дефицита и прогноза - -``` -forecast (analytics.forecast) - ↓ -sp_build_deficit_proposal → deficit_proposal - ↓ -sp_fill_deficit_money_request → deficit_money_request (заявки на оплату по производителям) - ↓ -sp_rebuild_stock_plan_by_arrival → stock_plan_by_arrival - -Формула: closing = opening + inbound_confirmed + inbound_deficit - forecast_demand -``` - -**Источники:** -- opening_qty — pbi.w_ostatok_da_net (остаток на дату) -- Входящие заказы — статусы: В пути, В производстве, Выгружен на складе, Согласован -- Stock quantity — только `quantity` (не sellable_stock) - ---- - -## 7. Ключевые таблицы для остатков - -| Объект | Роль | -|--------|------| -| `pbi.ostatki_short` | Остатки для PBI (date, sklad, artic_id, quantity, upakovok) | -| `pbi.w_ostatok_da_net` | Остаток на дату, opening_qty, availability (ostatok) | -| `pbi.ostatki` | Полные остатки (накопительная) | -| Фильтр | `[Категория склада] <> 'Виртуальный'` — исключение МП из складского остатка | - ---- - -*Справочник сформирован по mag_pbi_schema.sql и analytics/pbi.* diff --git a/23.txt b/23.txt deleted file mode 100644 index e69de29..0000000