> ## Documentation Index
> Fetch the complete documentation index at: https://docs.1unic.com/odatav4/llms.txt
> Use this file to discover all available pages before exploring further.

# Power BI

> Подключение Power BI к OData4 через канал OData: токен в адресе или Basic

Power BI подключается к OData4 штатным источником **«Канал OData»**. Удобнее всего токен в пути адреса:
в отчёте не хранится пароль пользователя 1С, а доступ ограничен [профилем](/odatav4/security/profiles) токена.

## Токен в адресе (рекомендуется)

<Steps>
  <Step title="Выпустите токен">
    Форма «Настройки OData4» → вкладка **«Токены»** → **«Выпустить»**. Значение показывается один раз — сохраните
    готовый адрес вида `https://server/base-svc/hs/odatat/t/<токен>/v4/`. Вкладка **«Адреса»** формы
    показывает готовые адреса для Power BI и Excel.
  </Step>

  <Step title="Подключите канал">
    **Получить данные → Канал OData**, вставьте адрес с токеном.
  </Step>

  <Step title="Выберите вход «Анонимный»">
    Токен уже в адресе, учётные данные не нужны.
  </Step>

  <Step title="Выберите таблицы">
    В навигаторе отметьте нужные наборы: `Catalog_Номенклатура`, `Document_РеализацияТоваровУслуг`,
    `AccumulationRegister_ТоварыНаСкладах_RecordType`…
  </Step>
</Steps>

<Note>
  Токен передаётся именно в пути, а не параметром `?token=`: Power BI строит адрес `$metadata` от корня сервиса
  и теряет параметры запроса, а путь сохраняет. Все ссылки ответа (`@odata.context`, `@odata.nextLink`) несут
  токен, поэтому постраничная загрузка работает.
</Note>

Сервис токенов работает на отдельной публикации — см. [Публикация токенов](/odatav4/install/token-publication).

## Токен в заголовке

Если адрес с токеном не годится (например, попадает в журналы прокси), передайте токен заголовком через
пустой запрос Power Query (**Получить данные → Пустой запрос → Расширенный редактор**):

```powerquery theme={null}
let
    Source = OData.Feed(
        "https://server/base-svc/hs/odatat/v4/",
        null,
        [Headers = [#"X-OData4-Token" = "o4_…"]]
    )
in
    Source
```

## Basic

Можно подключиться и к основному сервису `https://server/base/hs/odata/v4/` с входом **«Обычная»** (Basic) под
пользователем 1С. Пользователю нужна роль `OData4_Пользователь` и права на данные в конфигурации.

## Советы

* **Берите только нужные колонки.** `$select` сокращает объём в разы: в Power Query выбирайте столбцы до первого
  шага преобразования, тогда фильтр уходит на сервер. Можно задать запрос явно:
  `OData.Feed("…/Document_РеализацияТоваровУслуг?$select=Ref_Key,Date,Number,Контрагент_Key,СуммаДокумента&$filter=Date ge 2026-01-01T00:00:00Z")`.
* **Считайте на сервере.** Итоги по регистрам дают виртуальные таблицы (`Balance`, `Turnovers`) и `$apply` —
  см. [Регистры](/odatav4/read/registers) и [Агрегация](/odatav4/read/apply).
* **Размер страницы.** По умолчанию сервис отдаёт коллекции страницами по 1000 строк, Power BI проходит их по
  `@odata.nextLink` сам. На больших таблицах страницы покрупнее быстрее: заголовок `Prefer: odata.maxpagesize=5000`
  (в `OData.Feed` — параметр `Headers`) или настройка «Выдача коллекций» — см. [Постраничная выдача](/odatav4/read/paging).
* **Обновление по расписанию** в Power BI Service для базы во внутренней сети идёт через локальный шлюз данных;
  источник в шлюзе — тот же адрес и вход «Анонимный» (токен в пути).
* **Повторы.** Изредка, после простоя сеанса веб-сервера, запрос может получить `500`; Power BI повторяет
  обновление сам. См. [Известные ограничения](/odatav4/reference/limitations).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.