OneStream

Замечание

Этот соединитель принадлежит и предоставляется OneStream.

Сводка

Item Description
Статус релиза Общая доступность
Products Power BI (наборы данных)
Power BI (потоки данных)
Fabric (Dataflow 2-го поколения)
Поддерживаемые типы проверки подлинности Учетная запись организации

Предпосылки

Требуется платформа OneStream версии 8.2 или более поздней. Перед установкой Microsoft Power BI Desktop необходимо проверить системные требования.

Поддерживаемые возможности

Соединитель OneStream обеспечивает безопасный доступ к приложениям OneStream. С помощью соединителя можно:

  • Из приложений OneStream обеспечивается доступ к кубическим и реляционным данным непосредственно в Power BI.
  • Доступ к элементам метаданных и всем их свойствам в OneStream.
  • Легко воссоздавайте полные иерархические структуры в Power BI.
  • Автоматизация загрузки данных в служба Power BI.

Подключение к OneStream из Power BI Desktop

Получение данных

  1. Откройте Power BI Desktop и выберите Получить данные из других источников.

    Снимок экрана: процесс получения данных.

  2. Введите OneStream в поле поиска, чтобы найти настраиваемый соединитель OneStream .

    Снимок экрана: диалоговое окно получения данных с введенным в поле поиска OneStream.

  3. Выберите OneStream.

  4. Нажмите Подключиться.

Настройка соединителя

  1. Введите URL-адрес среды OneStream. Убедитесь, что URL-адрес среды введен с префиксом https:// (как показано на следующем снимке экрана). В противном случае попытки подключения не работают должным образом.

    Снимок экрана: диалоговое окно конфигурации соединителя с введенным URL-адресом среды.

  2. Нажмите ОК.

Authenticate

  1. Нажмите кнопку "Войти" , чтобы запустить процесс проверки подлинности.

  2. Этот выбор перенаправляет и открывает сервер удостоверений OneStream в браузере по умолчанию для входа.

  3. Войдите в учетную запись OneStream.

    Снимок экрана: диалоговое окно проверки подлинности с диалоговым окном входа OneStream.

  4. После успешного входа нажмите кнопку "Подключить".

    Снимок экрана: диалоговое окно проверки подлинности с пользователем, вошедшего в систему.

Навигатор OneStream

После успешного входа соединитель OneStream отображает навигатор с четырьмя типами вызовов:

Снимок экрана: диалоговое окно навигатора с выбранным параметром

Ознакомьтесь с рекомендациями , если вам нужна помощь по настройке функций.

Выбрав функцию, которую вы хотите использовать, выполните инструкции, чтобы загрузить данные.

Загрузка данных

  1. В зависимости от требований укажите значения для данной функции. При необходимости можно переключить параметры только на необходимые или использовать все из них. Power BI отображает предварительный просмотр данных для возвращаемой таблицы.

  2. После предоставления параметров загрузите или преобразуйте данные.

    • Выберите Load, чтобы загрузить таблицу в внутреннюю модель данных Power BI Desktop.
    • Выберите Transform data, чтобы внести изменения в таблицу перед загрузкой в внутреннюю модель данных Power BI Desktop. Transform data запускает редактор Power Query в новом окне с репрезентативным представлением таблицы.
  3. Если необходимо загрузить другие таблицы, повторите предыдущие шаги выбора функции, предоставления значений и загрузки или преобразования таблицы.

  4. После загрузки в модель данных Power BI Desktop вы сможете создавать связи между таблицами и создавать отчеты.

Сведения о пользовательском соединителе OneStream

Соединитель OneStream извлекает данные из экземпляра OneStream с помощью API передачи репрезентативного состояния (REST).

Соединитель OneStream выполняет все вызовы API в рамках границы разрешений текущего пользователя, вошедшего в систему, поэтому применяет безопасность, определенную для пользователя в OneStream.

Замечание

Соединитель использует только области READ от имени пользователя отчета Power BI для выполнения всех операций. Соединитель OneStream не может выполнять операцию обновления.

Соединитель OneStream имеет ограничение в 2 миллиона строк на вызов. Выполнение запроса по этому ограничению вызывает ошибку.

Публикация отчетов Power BI в службе Power BI

  1. Нажмите кнопку Publish в Power BI Desktop для публикации данных, отчетов и модели данных в облачной служба Power BI.

  2. Выберите соответствующую рабочую область Power BI и выберите Select.

    Скриншот Power BI Desktop с выделенной кнопкой публикации, рабочей областью и кнопкой выбора публикации.

  3. После успешной публикации отображается сообщение "Успешно" со ссылкой для перехода к службе Power BI.

    Снимок экрана диалогового окна публикации в Power BI с сообщением об успешной операции и выделенной ссылкой.

  4. Выберите ссылку, чтобы просмотреть все отчеты из Power BI Desktop в служба Power BI и создать панели мониторинга в служба Power BI.

    Снимок экрана: модель обновления данных в службе с выделенным значком обновления.

Подключение к OneStream из Power Query Online

Чтобы подключиться к данным OneStream, выполните приведенные ниже действия.

  1. Выберите OneStream на странице Power Query Подключение к источнику данных.

  2. В диалоговом окне OneStream введите URL-адрес среды для экземпляра OneStream. https:// Включите префикс.

  3. Выберите "Войти" , чтобы войти с помощью учетной записи организации. Вы перенаправляетесь на сервер удостоверений OneStream, чтобы ввести учетные данные.

  4. После успешного входа выберите Далее.

  5. На странице Выбор данных выберите нужные функции (например, Получить Куб, Получить Настраиваемый Адаптер, Получить Измерение или Получить Свойства Элемента), а затем выберите Преобразование данных для преобразования данных в Редактор Power Query.

Лучшие практики и функции: справка

Общие рекомендации

  • Загрузка только необходимых наборов данных. Это означает, что если вам нужны только агрегированные данные на уровне месяца, не загружайте данные на ежедневном уровне. Чем меньше модель, тем более производительной она всегда является.

  • Ограничение количества преобразований, которые вы делаете. Чем больше усложнять запрос, тем больше шансов на сбой запроса.

  • Примените финансовую логику OneStream и кубовые представления и адаптеры данных для создания таблиц, которые затем загружаются в Power BI.

    Пример: Консолидации предполагают, что родительская сущность принимает только 40% значений одной из дочерних сущностей. Убедитесь, что эта логика выполняется в OneStream, и вы загружаете адаптер данных в Power BI, который уже заполнен значениями.

    Попытка репликации логики в Power BI будет неэффективной и лучше выполняется в исходной системе.

Загрузка большого набора данных с помощью цикла для пользовательских запросов M

При загрузке больших объемов данных, которые могут привести к сбою из-за максимального ограничения на количество строк, рекомендуется создать настраиваемый запрос непосредственно в Power BI для выполнения цикла по измерению, разделив запрос на несколько запросов и объединив результаты запросов напрямую в Power BI.

В следующем примере запроса адаптер данных CubeViewMD используется для получения данных несколько раз. Ниже перечислены три основных компонента:

  • GetCubeViewColumns: возвращает список всех столбцов из указанного адаптера, который вы пытаетесь загрузить. Столбцы задаются вручную, чтобы избежать динамического анализа их, что является дорогостоящим (требуется одно дополнительное выполнение запроса).

  • GetEntities: выполняет dataAdapter, настроенный в качестве метода — элементы (см. следующее изображение), чтобы получить все элементы, необходимые для измерения (в данном случае сущность). Это можно изменить, чтобы выполнять цикл по любому требуемому измерению или элементу.

    Снимок экрана: настройка конфигурации адаптера данных участников.

  • GetCubeViewData: запускает адаптер CubeViewMD. CubeView содержит параметр с именем pbi_param_entity, который используется для передачи значений GetEntities при выполнении цикла.

Этот код можно использовать в пользовательском запросе для выполнения выбранного адаптера данных в цикле по указанному скрипту-члену для измерения.

let
   GetCubeViewColumns = () as list =>
      let 
            Source = {"Cube","Entity","Parent","Cons","Scenario","Time","StartDate","EndDate","View","Account","Flow","Origin","IC","UD1","UD2","UD3","UD4","UD5","UD6","UD7","UD8","CalcScript","Amount"}
      in
            Source,

   GetEmptyTable = () as table =>
      let
            Source = #table(
               GetCubeViewColumns(),
               {
               }
            )
      in 
            Source,

   GetEntities = () as table =>
      let
            Source = OneStream.Navigation("https://your-environment.onestreamcloud.com"),
            YourApp = Source{[Key="YourApp"]}[Data],
            YourCube = YourApp{[Key="YourCube"]}[Data],
            #"Get Custom Adapter" = YourCube{[Key="Get Custom Adapter"]}[Data],
            MemberList = #"Get Custom Adapter"("zzz_PBI_EntityMembers", "Default", null, null),
            MemberListNoDuplicates = Table.Distinct(#"Invoked FunctionGet Custom Adapter1", {"MemberId"}),
            MemberListNamesOnly = Table.RemoveColumns(MemberListNoDuplicates,{"DimTypeId", "DimId", "MemberId", "Description", "SupportsChildren", "IndentLevel"})
      in
            MemberListNamesOnly,


   GetCubeViewData = (EntityName) as table =>
      let
            Source = OneStream.Navigation("https://your-environment.onestreamcloud.com"),
            YourApp = Source{[Key="YourApp"]}[Data],
            YourCube = YourApp{[Key="YourCube"]}[Data],
            #"Get Custom Adapter" = YourCube{[Key="Get Custom Adapter"]}[Data],
            CubeView = try #"Get Custom Adapter"("zzz_PBI_CubeViewAdapter", "Default", null, "pbi_param_entity="& EntityName),
            CubeViewOrDefault = if CubeView[HasError] then GetEmptyTable() else CubeView[Value]
      in
            CubeViewOrDefault,

   List = GetCubeViewColumns(),
   Source = GetEntities(),
   Data = Table.AddColumn(Source, "LoopCubeViewData", each GetCubeViewData([Name])),
   Expand = Table.ExpandTableColumn(Data, "LoopCubeViewData", List),
   Rows = Table.SelectRows(Expand, each [Cube] <> null)
in
   Rows

Получите куб

Эта функция извлекает данные из куба OneStream.

  • Все параметры можно указать с помощью скрипта члена OneStream (например, 2023.Base для времени), за исключением представления и валюты, для которых требуется единый элемент.
  • Валюта относится к измерению консолидации в OneStream, поэтому можно использовать локальную или агрегатную, например.

Снимок экрана диалогового окна навигатора с выделенной функцией получения данных куба.

Получите пользовательский адаптер

  • Укажите имя рабочей области и адаптера (обязательные параметры).
  • Имя таблицы и параметры являются необязательными.
  • Чтобы убедиться, что вы вставляете правильные значения, обратитесь к настроенному адаптеру приборной панели в OneStream.

Снимок экрана диалогового окна навигатора с выделенной функцией получения пользовательских данных адаптера.

Получите размерность и свойства элемента

  • Укажите тип измерения OneStream, который требуется извлечь.
  • Укажите тип сценария. Используйте значение default или All для использования выбранных измерений куба по умолчанию и получения свойств по умолчанию.
  • Включаемые описания могут иметь значение True или False.

Снимок экрана: диалоговое окно навигатора с выделенной функцией Get Dimension.