Поделиться через


Сведения о реализации

В этой статье описываются сведения о преобразовании и определенные функции, доступные в реализации 2 соединителя Power Query SAP Business Warehouse.

Внимание

Версия 1.0 соединителя SAP Business Warehouse устарела. Новые подключения будут использовать реализацию 2.0 соединителя SAP Business Warehouse. Все поддержку версии 1.0 будут удалены из соединителя в ближайшее время. Используйте сведения, приведенные в этой статье, чтобы обновить существующие отчеты версии 1.0, чтобы они могли использовать реализацию 2.0 этого соединителя.

Новые варианты реализации 2.0

Реализация 2.0 поддерживает следующие параметры:

  • ExecutionMode указывает интерфейс многомерных выражений, используемый для выполнения запросов на сервере. Допустимы следующие параметры:

    • SapBusinessWarehouseExecutionMode.BasXml

    • SapBusinessWarehouseExecutionMode.BasXmlGzip

    • SapBusinessWarehouseExecutionMode.DataStream

      Значение по умолчанию — SapBusinessWarehouseExecutionMode.BasXmlGzip.

      Использование SapBusinessWarehouseExecutionMode.BasXmlGzip может повысить производительность при возникновении высокой задержки для больших наборов данных.

  • BatchSize указывает максимальное количество строк, извлекаемых за раз при выполнении инструкции многомерных выражений. Небольшое число преобразуется в дополнительные вызовы сервера при получении большого набора данных. Большое количество строк может повысить производительность, но может привести к проблемам с памятью на сервере SAP BW. Значение по умолчанию — 50000 строк.

  • EnableStructures указывает, распознаются ли характерные структуры. По умолчанию этот параметр имеет значение false. Влияет на список объектов, доступных для выбора. Не поддерживается в режиме машинного запроса.

Параметр ScaleMeasures устарел в этой реализации. Теперь поведение совпадает с параметром ScaleMeasures значение false, всегда отображающее немасштабированные значения.

Дополнительные улучшения для реализации 2.0

В следующем списке описаны некоторые дополнительные улучшения, которые поставляются с новой реализацией:

  • Повышенная производительность.
  • Возможность получения нескольких миллионов строк данных и точной настройки с помощью параметра размера пакета.
  • Возможность переключения режимов выполнения.
  • Поддержка сжатого режима. Особенно полезно для подключений с высокой задержкой или больших наборов данных.
  • Улучшено обнаружение Date переменных.
  • Предоставление Date измерений (тип ABAP DATS) и Time (ТИП ABAP TIMS) в виде дат и времени соответственно вместо текстовых значений. Дополнительные сведения: поддержка типизированных дат в SAP BW
  • Улучшена обработка исключений. Теперь возникают ошибки, возникающие в вызовах BAPI.
  • Свертывание столбцов в режимах BasXml и BasXmlGzip. Например, если созданный запрос многомерных выражений получает 40 столбцов, но текущий выбор требует только 10, этот запрос будет передан на сервер для получения меньшего набора данных.

Изменение существующих отчетов для использования реализации 2.0

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

  1. Откройте существующий отчет, выберите "Изменить запросы " на ленте и выберите запрос SAP Business Warehouse для обновления.

  2. Щелкните правой кнопкой мыши запрос и выберите Расширенный редактор.

  3. В Расширенный редактор измените SapBusinessWarehouse.Cubes вызов следующим образом:

    Определите, содержит ли запрос запись параметра, например следующий пример.

    Снимок экрана: запрос с открытым текстом с записью параметра.

    Если да, добавьте Implementation 2.0 этот параметр и удалите ScaleMeasures этот параметр, если он присутствует, как показано ниже.

    Снимок экрана: запрос с открытым текстом с добавленной реализацией значения = 2.0.

    Если запрос еще не включает запись параметров, просто добавьте ее. Для следующего параметра:

    Снимок экрана: запрос с открытым текстом с добавленной записью параметра.

    Просто измените его на:

    Снимок экрана: запрос обычного текста нового параметра с добавленным значением Implementation = 2.0.

Все усилия были сделаны для реализации 2.0 соединителя SAP BW, совместимого с версией 1. Однако могут возникнуть некоторые различия из-за различных режимов выполнения многомерных выражений SAP BW. Чтобы устранить несоответствия, попробуйте переключиться между режимами выполнения.

Поддержка типизированных дат в SAP BW

Реализация 2.0 соединителя SAP BW включает поддержку типизированных дат и времени. Если вы запрашиваете отчет с измерениями с типами ABAP, DATS или TIMS, они теперь могут быть выходными в виде дат вместо текста.

Ограничения использования этой функции:

  • Доступно только в реализации 2.0 соединителя SAP BW.
  • Доступно только в режиме импорта.
  • Учетная запись, используемая для подключения к серверу SAP BW, должна иметь достаточно разрешений для вызова BAPI_IOBJ_GETDETAIL.
let
   Source = SapBusinessWarehouse.Cubes("sapbwtestserver", "00", "837", [ExecutionMode=SapBusinessWarehouseExecutionMode.BasXmlGzip, Implementation="2.0"]),
   #"$INFOCUBE" = Source{[Name="$INFOCUBE"]}[Data],
   #"$0D_DECU" = #"$INFOCUBE"{[Id="$0D_DECU"]}[Data],
   #"Added Items" = Cube.Transform(#"$0D_DECU",
   {
      {Cube.AddAndExpandDimensionColumn, "[0CALDAY]", {"[0CALDAY].[LEVEL01]"}, {"Calendar day.Calendar day Level 01"}},
      {Table.AddColumn, "Calendar day.Calendar day Level 01.Key", each Cube.AttributeMemberProperty([Calendar day.Calendar day Level 01], "[20CALDAY]")},
      {Cube.AddMeasureColumn, "Billed Quantity", "[Measures].[0D_INV_QTY]"}
   }) 
in
     #"Added Items"

Чтобы получить доступ к типизированной дате, необходимо добавить ключ. Например, если есть атрибут измерения с именем [0CALDAY], необходимо добавить ключ [20CALDAY], чтобы получить типизированное значение.

В приведенном выше примере это означает следующее:

  • День календаря. На уровне календаря 01 [0CALDAY] будет текст (подпись). (Добавляется по умолчанию при добавлении измерения.)
  • День календаря. День календаря 01.Key [20CALDAY] будет датой (необходимо выбрать вручную).

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

Выбор свойства Key в навигаторе Power Query.

Ключевой столбец будет иметь дату типа и может использоваться для фильтрации. Фильтрация по этому столбцу будет свернута на сервер.

Поддержка функций SAP BW

В следующей таблице перечислены все функции SAP BW, которые не полностью поддерживаются или ведут себя по-разному при использовании соединителя SAP BW Power Query.

Возможность Description
Локальные вычисления Локальные вычисления, определенные в запросе BEX, изменят числа, отображаемые с помощью таких средств, как Bex Analyzer. Однако они не отражаются в числах, возвращаемых из SAP, через общедоступный интерфейс многомерных выражений.

Таким образом, числа, видимые в Power Query, не обязательно соответствуют соответствующим визуальным элементам в средстве SAP.

Например, при подключении к кубу запросов из запроса BEx, который задает агрегирование, которое должно быть суммировано (например, при выполнении суммы), Power Query вернется к базовым числам, игнорируя этот параметр. Затем аналитик может применить вычисление суммы выполнения локально в Power BI, но необходимо соблюдать осторожность в том, как цифры интерпретируются, если это не сделано.
Статистические схемы В некоторых случаях (особенно при работе с несколькими валютами) статистические числа, возвращаемые общедоступным интерфейсом SAP, не соответствуют тем, которые отображаются средствами SAP.

Таким образом, числа, видимые в Power Query, не обязательно соответствуют соответствующим визуальным элементам в средстве SAP.

Например, итоги по разным валютам будут отображаться как "*" в Bex Analyzer, но общее значение возвращается общедоступным интерфейсом SAP без каких-либо сведений о том, что такое статистическое число является бессмысленным. Таким образом, число (агрегирование, например, $, EUR и AUD) будет отображаться Power Query.
Форматирование валют Любое форматирование валют (например, $2300 или 4000 AUD) не отражается в Power Query.
Единицы измерения Единицы измерения (например, 230 КГ) не отражаются в Power Query.
Ключ и текст (короткий, средний, длинный) Для характеристик SAP BW, таких как CostCenter, навигатор отобразит один элемент уровня 01. При выборе этого элемента в списке полей будет содержаться текст по умолчанию для центра затрат. Кроме того, значения ключа, короткое имя, среднее имя и длинное имя доступны для выбора в узле "Свойства" для характеристик (при сохранении в SAP BW).

Обратите внимание, что это относится только к режиму импорта подключения. В режиме DirectQuery в набор данных будет включен только текст по умолчанию.
Атрибуты Атрибуты характеристик будут доступны для выбора в свойствах для характеристик. Это относится только к режиму импорта подключения. Для режима DirectQuery атрибуты не будут доступны.
Несколько иерархий характеристик В SAP характеристика может иметь несколько иерархий. Затем в таких инструментах, как BEx Analyzer, когда характеристика включена в запрос, пользователь может выбрать иерархию для использования.

В Power BI различные иерархии можно увидеть в списке полей как разные иерархии в одном измерении. Однако выбор нескольких уровней из двух разных иерархий в одном измерении приведет к возврату пустых данных SAP.
Лечение рваных иерархий SAP BW поддерживает неровные иерархии, где можно пропустить уровни, например:

   Континент
      Северная и Южная Америка
         Канада
         USA
   Не назначено
      Австралия

В Power BI это отображается с (пустой) на отсутствующий уровень:

   Континент
      Северная и Южная Америка
         Канада
         USA
   Не назначено
      (Пусто)
         Австралия
Коэффициент масштабирования или обратный знак В SAP ключевой рисунок может иметь коэффициент масштабирования (например, 1000), определенный как параметр форматирования, то есть все отображаемые элементы будут масштабироваться по данному фактору.

Он также может иметь набор свойств, который изменяет знак. Использование такого ключевого рисунка в Power BI (в визуальном элементе или в рамках вычисления) приведет к использованию немасштабированного числа (и знак не будет обратно). Базовый коэффициент масштабирования недоступен. В визуальных элементах Power BI единицы масштабирования, отображаемые на оси (K,M,B), можно управлять как часть визуального форматирования.
Иерархии, в которых уровни отображаются и исчезают динамически Первоначально при подключении к SAP BW будут получены сведения о уровнях иерархии, что приведет к набору полей в списке полей. Это кэшируется и если набор уровней изменяется, набор полей не изменяется до вызова обновления.

Это возможно только в Power BI Desktop. Такое обновление для отражения изменений уровней невозможно вызвать в служба Power BI после публикации.
Фильтр по умолчанию Запрос BEX может включать фильтры по умолчанию, которые будут применяться автоматически анализатором SAP Bex. Они не предоставляются, поэтому эквивалентное использование в Power Query не будет применять те же фильтры по умолчанию.
Скрытые ключевые цифры Запрос BEX может управлять видимостью ключевых цифр, и скрытые не будут отображаться в SAP BEx Analyzer. Это не отражается через общедоступный API, поэтому такие скрытые ключевые цифры по-прежнему будут отображаться в списке полей. Однако их можно скрыть в Power Query.
Числовое форматирование Любое числовое форматирование (число десятичных разрядов, десятичная точка и т. д.) не будет автоматически отражено в Power Query. Однако затем можно управлять таким форматированием в Power Query.
Управление версиями иерархии SAP BW позволяет поддерживать различные версии иерархии, например иерархию центра затрат в 2007 году и 2008. В Power Query будет доступна только последняя версия, так как сведения о версиях не предоставляются общедоступным API.
Иерархии, зависящие от времени При использовании Power Query иерархии, зависящие от времени, оцениваются по текущей дате.
Конвертация валюты SAP BW поддерживает преобразование валют на основе ставок, содержащихся в кубе. Такие возможности не предоставляются общедоступным API и поэтому недоступны в Power Query.
Порядок сортировки Порядок сортировки (по тексту или по ключу) для характеристик можно определить в SAP. Этот порядок сортировки не отражается в Power Query. Например, месяцы могут отображаться как "Апрель", "Август" и т. д.

Невозможно изменить порядок сортировки в Power Query.
Технические имена В навигаторе можно отобразить имена характеристик и мер (описания) и технические имена с помощью селектора параметров отображения. Список полей содержит имена характеристик и мер (описания).
Настройка языка конечных пользователей Языковой стандарт, используемый для подключения к SAP BW, устанавливается как часть сведений о подключении и не отражает языковой стандарт конечного потребителя отчета.
Текстовые переменные SAP BW позволяет именам полей содержать заполнители для переменных (например, "$YEAR$ фактов"), которые затем будут заменены выбранным значением. Например, поле отображается как "Факты 2016" в средствах BEx, если для переменной выбран год 2016 года.

Имя столбца в Power Query не изменится в зависимости от значения переменной, поэтому будет отображаться как "$YEAR$ Actuals". Однако имя столбца можно изменить в Power Query.
Переменные выхода клиента Переменные выхода клиента не предоставляются общедоступным API и поэтому не поддерживаются Power Query.

Performance Considerations (Приложения-функции Azure. Рекомендации по производительности)

В следующей таблице представлен сводный список предложений по повышению производительности загрузки данных и обновлению из SAP BW.

Предложение Description
Ограничение характеристик и свойств (атрибута) Время загрузки данных из SAP BW в Power Query увеличивается с размером набора данных, т. е. число столбцов и строк в неструктурированном результирующем наборе. Чтобы уменьшить количество столбцов, выберите только характеристики и свойства навигатора, которые в конечном итоге нужно просмотреть в отчете или панели мониторинга.
Использование параметров Использование фильтров и параметров способствует уменьшению размера результирующий набор, что значительно улучшает среду выполнения запросов.

Параметры особенно полезны при использовании с большими измерениями, где имеется множество элементов, таких как клиенты, материалы или номера документов.
Ограничение количества ключевых цифр Выбор большого количества ключевых цифр из модели запроса BEx или BW может существенно повлиять на производительность во время выполнения запроса из-за времени, затраченного на загрузку метаданных для единиц. Включите только ключевые цифры, необходимые в Power Query.
Разделение очень больших запросов на несколько, меньших запросов Для очень больших запросов к Запросам InfoCubes или BEx может быть полезно разделить запрос. Например, один запрос может получить ключевые цифры, а другой запрос (или несколько других запросов) получает данные характеристик. Вы можете присоединиться к отдельным запросам в Power Query.
Избегайте виртуальных поставщиков (MultiProviders или InfoSets) VirtualProviders похожи на структуры без постоянного хранилища. Они полезны во многих сценариях, но могут отображать более низкую производительность запросов, так как они представляют дополнительный слой на вершине фактических данных.
Избегайте использования атрибутов навигации в запросе BEx Запрос с атрибутом навигации должен выполнять дополнительное соединение по сравнению с запросом с тем же объектом, что и характеристика, чтобы получить значения.
Использование RSRT для мониторинга и устранения неполадок с медленными выполнением запросов Ваш Администратор SAP может использовать монитор запросов в SAP BW (транзакция RSRT) для анализа проблем производительности с запросами SAP BW. Дополнительные сведения см. в 1591837 заметки SAP.
Избегайте ограниченных ключевых цифр и вычисляемых ключевых цифр Они вычисляются во время выполнения запроса и могут замедлять производительность запросов.
Рассмотрите возможность использования добавочного обновления для повышения производительности Power BI обновляет полный набор данных при каждом обновлении. Если вы работаете с большим объемом данных, обновление полного набора данных при каждом обновлении может оказаться не оптимальным. В этом сценарии можно использовать добавочное обновление, поэтому вы обновляете только подмножество данных. Дополнительные сведения см. в статье "Добавочное обновление" в Power BI.

Сравнение с анализом для Office (AFO)

Существуют фундаментальные различия между средством анализа для Office (AFO) и соединителем SAP Business Warehouse Power Query, поэтому выходные данные могут отличаться. AFO не использует многомерные выражения, но вместо этого использует собственный протокол, разработанный SAP, который недоступен для 3-х сторон, таких как соединитель Power Query SAP Business Warehouse. SAP сертифицирован только соединители, использующие интерфейс многомерных выражений. AFO использует многомерную стратегию запросов, которая перемещает данные по-разному, в то время как соединитель Power Query SAP Business Warehouse должен сравнять данные, чтобы их можно было представить в виде таблицы. Таким образом, несмотря на то, что это те же данные, они запрашиваются, представляются и в конечном итоге выводились по-разному.

См. также