Дані Bimp у BigQuery доступні як в'ю набору даних bimp_public: довідники (v_dim_*), факти (v_fact_*), грошові в'ю і розрахункові місячні залишки. Довідник описує кожне поле кожного в'ю. Поля з суфіксом _guid зв'язують таблиці, company_id є в кожній таблиці, а exported_at, created_at, updated_at — технічні дати, не бізнес-дати.
Загальні правила роботи з в’ю
Усі дані Bimp доступні як в’ю (views) у наборі даних «bimp_public» проєкту «Bimpsoft». Назви в’ю й полів у цьому довіднику збігаються з тими, що ви бачите й використовуєте в запитах, Looker Studio та Power BI. Про підключення — у статтях BigQuery і Looker Studio та Power BI.
Правило
Що це означає
Поля із суфіксом _guid
Унікальний ідентифікатор для зв’язку з відповідним довідником. Наприклад, «item_guid» зв’язує факт із «v_dim_nomenclature»
«company_id»
Є в кожній таблиці; ідентифікатор компанії (для компаній з кількома базами чи філіями)
«exported_at», «created_at», «updated_at»
Технічні дати вивантаження чи зміни запису, не бізнес-дата. Для звітів беріть «document_date» або «movement_date»
Залишки на кінець місяця
Колонки «opening_» — значення на початок місяця, «closing_» — на кінець. Поточний місяць у розрахункових в’ю не заповнюється, бо він не завершений
Партії
Залишки товарів ведуться в розрізі партій. Якщо компанія не веде облік партій, «batch_guid» порожній у всіх рядках. Якщо веде, агрегуйте по партіях, коли партія не потрібна
Дві валюти
У грошових в’ю «amount» і «_balance» — у базовій валюті компанії, «_currency» — у валюті рахунку чи каси. Не змішуйте їх в одній сумі
Ціни
Оновлюються раз на добу, решта даних — частіше. Якщо звіт показує «стару» ціну, спершу перевірте «exported_at»
Які в’ю доступні
Набір даних «bimp_public» містить довідники (dimension), факти (fact), грошові в’ю та розрахункові в’ю.
В’ю «v_cash_movements» охоплює надходження й витрати по рахунках і касах: оплати, перекази між рахунками й касами, отримання та повернення кредитів і інвестицій.
Поле
Опис
company_id
Компанія
movement_id
Ключ рядка: document_guid:номер рядка
document_guid
Документ-підстава
document_type
Тип документа
document_number
Номер документа
document_date
Дата документа
movement_date
Дата руху
account_guid
Рахунок або каса
account_kind
bank_account або cash_desk
cash_type_guid
Тип грошових коштів
cash_type_name
Назва типу грошових коштів
currency_guid
Валюта
currency_code
Код валюти за ISO 4217
amount
Сума в базовій валюті
amount_currency
Сума у валюті рахунку або каси
sign
Напрямок руху: надходження чи витрата (+1 / −1)
comment
Призначення платежу
exported_at
Дата вивантаження запису
v_customer_prices: ціни для покупців
В’ю «v_customer_prices» містить чинні ціни номенклатури по кожному прайс-листу. Це зріз актуальних цін, а не історія змін: на кожну пару «товар + прайс-лист» є рівно один рядок з останньою ціною. В’ю оновлюється раз на добу о 02:00, тому ціна, змінена протягом дня, з’явиться наступної ночі.
Поле
Опис
company_id
Компанія
item_guid
Товар (для товарів з характеристиками — конкретна характеристика)
price_list_guid
Прайс-лист (зв’язок з v_customer_price)
price
Ціна
currency_code
Код валюти за ISO 4217; береться з прайс-листа
price_date
Дата, з якої діє ця ціна
exported_at
Момент зняття зрізу — однаковий для всіх рядків одного оновлення
v_dim_monthly_stock_balances: місячні залишки на складах
Розрахункові в’ю не вивантажуються з обліку напряму: рядки рахуються накопиченням по рухах. В’ю «v_dim_monthly_stock_balances» показує залишки товарів по складах на початок і кінець кожного завершеного місяця.
Поле
Опис
company_id
Компанія
warehouse_guid
Склад
item_guid
Товар
batch_guid
Партія товару (порожньо, якщо компанія не веде облік партій)
month_start
Перший день місяця, до якого належить рядок
net_quantity
Чистий рух кількості товару за місяць
opening_balance
Залишок кількості на початок місяця
closing_balance
Залишок кількості на кінець місяця
net_amount
Чистий рух вартості за місяць
opening_amount
Вартість залишку на початок місяця
closing_amount
Вартість залишку на кінець місяця
average_cost
Собівартість одиниці залишку: closing_amount / closing_balance
calculated_at
Дата розрахунку запису
v_monthly_cash_balances: місячні залишки коштів
В’ю «v_monthly_cash_balances» показує обороти й залишки по кожному рахунку чи касі на початок і кінець завершеного місяця, у базовій валюті й у валюті рахунку.
Поле
Опис
company_id
Компанія
account_guid
Рахунок або каса
account_kind
bank_account або cash_desk
currency_code
Код валюти за ISO 4217
month_start
Перший день місяця, до якого належить рядок
net_amount
Оборот за місяць у базовій валюті
opening_balance
Залишок на початок місяця
closing_balance
Залишок на кінець місяця
net_amount_currency
Оборот за місяць у валюті рахунку
opening_balance_currency
Залишок на початок місяця у валюті рахунку
closing_balance_currency
Залишок на кінець місяця у валюті рахунку
calculated_at
Дата розрахунку запису
Які в’ю не описані в довіднику
Два в’ю в наборі даних не мають опису полів.
В’ю
Примітка
v_fact_sales_enriched
Похідне в’ю поверх продажів; склад полів залежить від його визначення
test_whoami
Службове, для перевірки доступу; бізнес-даних не містить
Часті питання
Як зв'язати таблиці BigQuery між собою?
Через поля із суфіксом _guid. Наприклад, item_guid у v_fact_sales відповідає item_guid у v_dim_nomenclature, counterparty_guid — contractor_guid у v_dim_counterparties.
Чому в таблицях залишків немає поточного місяця?
Залишки рахуються на кінець місяця, а поточний місяць ще не завершений, тому в розрахункових в'ю він не заповнюється.
Чому batch_guid порожній?
Якщо компанія не веде облік партій, batch_guid порожній у всіх рядках — це нормально. Якщо веде, агрегуйте по партіях, коли партія в звіті не потрібна.
Чому ціна у звіті застаріла?
Ціни у v_customer_prices оновлюються раз на добу о 02:00, тож змінена вдень ціна з'явиться наступної ночі. Перевірте поле exported_at.
Чому average_cost порожній?
У v_dim_monthly_stock_balances average_cost порожній, коли closing_balance дорівнює нулю: ділити нема на що. Фільтруйте за closing_balance != 0, а не за average_cost IS NOT NULL.