Detalles de la implementación
Este artículo describe la información de conversión y las características específicas disponibles en la implementación 2 del conector de Power Query SAP Business Warehouse.
Importante
La versión 1.0 del conector de SAP Business Warehouse está en desuso. Las nuevas conexiones utilizarán la Implementación 2.0 del conector de SAP Business Warehouse. Toda compatibilidad con la versión 1.0 se quitará del conector en un futuro próximo. Utilice la información de este artículo para actualizar los informes existentes de la versión 1.0 para que puedan utilizar la implementación 2.0 de este conector.
Nuevas opciones para la Implementación 2.0
La implementación 2.0 admite las siguientes opciones:
ExecutionMode especifica la interfaz MDX utilizada para ejecutar consultas en el servidor. Son válidas las opciones siguientes:
SapBusinessWarehouseExecutionMode.BasXml
SapBusinessWarehouseExecutionMode.BasXmlGzip
SapBusinessWarehouseExecutionMode.DataStream
El valor predeterminado es
SapBusinessWarehouseExecutionMode.BasXmlGzip
.El uso de
SapBusinessWarehouseExecutionMode.BasXmlGzip
puede mejorar el rendimiento al experimentar una latencia alta para grandes conjuntos de datos.
BatchSize especifica el número máximo de filas que se van a recuperar a la vez al ejecutar una instrucción MDX. Un número pequeño se traduce en más llamadas al servidor mientras se recupera un conjunto de datos grande. Un gran número de filas puede mejorar el rendimiento, pero podría causar problemas de memoria en el servidor SAP BW. El valor predeterminado es 50000 filas.
EnableStructures indica si se reconocen estructuras de características. El valor predeterminado de esta opción es false. Afecta a la lista de objetos disponibles para la selección. No se admite en el modo de consulta nativa.
La opción ScaleMeasures ha quedado en desuso en esta implementación. El comportamiento es ahora el mismo que establecer ScaleMeasures en falso, siempre mostrando valores sin escalar.
Mejoras adicionales para la implementación 2.0
En la lista siguiente se describen algunas de las mejoras adicionales que se incluyen con la nueva implementación:
- Rendimiento mejorado.
- Capacidad para recuperar varios millones de filas de datos y ajuste mediante el parámetro de tamaño del lote.
- Capacidad de cambiar los modos de ejecución.
- Compatibilidad con el modo comprimido. Especialmente beneficioso para conexiones de alta latencia o grandes conjuntos de datos.
- Detección mejorada de las variables
Date
. - Exponer
Date
las dimensiones (ABAP tipo DATS) yTime
(ABAP tipo TIMS) como fechas y horas respectivamente, en lugar de valores de texto. Más información: Compatibilidad con fechas escritas en SAP BW - Tratamiento de excepciones mejorado. Ahora aparecen errores que se producen en las llamadas BAPI.
- Plegado de columnas en los modos BasXml y BasXmlGzip. Por ejemplo, si la consulta MDX generada recupera 40 columnas pero la selección actual sólo necesita 10, esta solicitud se pasará al servidor para recuperar un conjunto de datos más pequeño.
Cambio de los informes existentes para usar la implementación 2.0
Cambiar los informes existentes para utilizar la implementación 2.0 sólo es posible en modo de importación. Siga estos pasos:
Abra un informe existente, seleccione Editar consultas en la cinta de opciones y, a continuación, seleccione la consulta de SAP Business Warehouse que desea actualizar.
Haga clic con el botón derecho en la consulta y seleccione Editor avanzado.
En el Editor avanzado, cambie la llamada
SapBusinessWarehouse.Cubes
como se muestra a continuación:Determine si la consulta ya contiene un registro de opciones, como en el ejemplo siguiente.
Si es así, agregue la
Implementation 2.0
opción y quite laScaleMeasures
opción, si está presente, tal como se muestra.Si la consulta aún no incluye un registro de opciones, simplemente agréguelo. Para la siguiente opción:
Simplemente cámbielo a:
Se ha hecho todo lo posible para que la implementación 2.0 del conector de SAP BW sea compatible con la versión 1. Sin embargo, puede haber algunas diferencias debido a los diferentes modos de ejecución de SAP BW MDX que se utilizan. Para resolver cualquier discrepancia, intente cambiar de modo de ejecución.
Compatibilidad con fechas con tipo en SAP BW
La implementación 2.0 del conector de SAP BW es compatible con fechas y horas escritas. Si consulta un informe que tiene dimensiones con los tipos de ABAP, DATS o TIMS, ahora se pueden generar como fechas en lugar de texto.
Las limitaciones de usar esta funcionalidad son:
- Solo está disponible en la implementación 2.0 del conector de SAP BW.
- Solo está disponible en el modo de importación.
- La cuenta que se usa para conectarse al servidor sap BW debe tener permisos suficientes para llamar a 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"
Deberá agregar la clave para acceder a la fecha escrita. Por ejemplo, si hay un atributo de dimensión denominado [0CALDAY], deberá agregar la clave [20CALDAY] para obtener el valor escrito.
En el ejemplo anterior, esto significa que:
- Día del calendario. El nivel 01 del día del calendario [0CALDAY] será texto (un título). (Se agrega de forma predeterminada cuando se agrega la dimensión).
- Día del calendario. El día del calendario nivel 01.Key [20CALDAY] será una fecha (debe seleccionarse manualmente).
Para agregar manualmente la clave en modo de importación, expanda Propiedades y seleccione la clave.
La columna de clave será de tipo date y se puede usar para el filtrado. El filtrado en esta columna se plegará al servidor.
Compatibilidad con las características de SAP BW
En la tabla siguiente se enumeran todas las características de SAP BW que no son totalmente compatibles o que se comportan de manera diferente al usar el conector de SAP BW de Power Query.
Característica | Descripción |
---|---|
Cálculos locales | Los cálculos locales definidos en una consulta BEX cambiarán los números tal como se muestran a través de herramientas como Bex Analyzer. Sin embargo, no se reflejan en los números que devuelve SAP, mediante la interfaz pública de MDX. Como tal, los números vistos en Power Query no coincidirán necesariamente con los de un objeto visual correspondiente en una herramienta SAP. Por ejemplo, al conectarse a un cubo de consulta desde una consulta BEx que establece la agregación para que se acumule (por ejemplo, suma corriente), Power Query recuperaría los números base, ignorando esa configuración. Un analista podría entonces aplicar un cálculo de suma corriente de manera local en, por ejemplo, Power BI, pero tendría que tener cuidado en cómo se interpretan los números si esto no se hace. |
Agregaciones | En algunos casos (particularmente cuando se trata de múltiples monedas), los números agregados devueltos por la interfaz pública de SAP no coinciden con los que muestran las herramientas de SAP. Como tal, los números vistos en Power Query no coincidirán necesariamente con los de un objeto visual correspondiente en una herramienta SAP. Por ejemplo, los totales sobre diferentes monedas se mostrarían como "*" en Bex Analyzer, pero el total sería devuelto por la interfaz pública de SAP, sin ninguna información de que dicho número agregado no tenga sentido. Por lo tanto, el número (agregando, por ejemplo, $, EUR y AUD) se mostraría mediante Power Query. |
Formato de moneda | Cualquier formato de moneda (por ejemplo, $2,300 o 4000 AUD) no se refleja en Power Query. |
Unidades de medida | Las unidades de medida (por ejemplo, 230 kg) no se reflejan en Power Query. |
Clave frente a texto (corta, media, larga) | Para una característica de SAP BW como CostCenter, el navegador mostrará un solo elemento Nivel de Centro de costos 01. Al seleccionar este elemento se incluirá el texto predeterminado de Cost Center en la lista de campos. Además, los valores Clave, Nombre corto, Nombre medio y Nombre largo están disponibles para su selección en el nodo Propiedades para la característica (si se mantiene en SAP BW). Tenga en cuenta que esto solo se aplica al modo de conectividad de importación. En el modo DirectQuery, solo se incluirá el texto predeterminado en el conjunto de datos. |
Atributos | Los atributos de una característica estarán disponibles para la selección en Propiedades para la característica. Esto solo se aplica al modo de conectividad de importación. En el modo DirectQuery, los atributos no estarán disponibles. |
Varias jerarquías de una característica | En SAP, una característica puede tener varias jerarquías. A continuación, en herramientas como BEx Analyzer, cuando una característica se incluye en una consulta, el usuario puede seleccionar la jerarquía que se va a usar. En Power BI, las distintas jerarquías se pueden ver en la lista de campos como jerarquías diferentes en la misma dimensión. Sin embargo, la selección de varios niveles de dos jerarquías diferentes en la misma dimensión dará como resultado que SAP devuelva datos vacíos. |
Tratamiento de las jerarquías desiguales | SAP BW admite jerarquías irregulares, donde se pueden perder niveles, por ejemplo: Continent América Canadá EE. UU. No asignado Australia En Power BI, aparece con (en blanco) en el nivel que falta: Continent América Canadá EE. UU. No asignado (espacio en blanco) Australia |
Factor de escala/invertir signo | En SAP, una cifra clave puede tener un factor de escala (por ejemplo, 1000) definido como una opción de formato, lo que significa que todas las pantallas se escalarán por ese factor. De forma similar puede tener una propiedad establecida que invierta el signo. El uso de una cifra clave de este tipo en Power BI (en un objeto visual o como parte de un cálculo) dará como resultado el uso del número sin escalar (y el signo no se invierte). El factor de escala subyacente no está disponible. En los objetos visuales de Power BI, las unidades de escalado que se muestran en el eje (K, M, B) se pueden controlar del formato del objeto visual. |
Jerarquías en las que aparecen y desaparecen niveles dinámicamente | Inicialmente, al conectarse a SAP BW, se recuperará la información sobre los niveles de una jerarquía, lo que dará lugar a un conjunto de campos en la lista de campos. Esto se almacena en caché y, si el conjunto de niveles cambia, el conjunto de campos no cambia hasta que se llama a Actualizar. Esto solo es posible en Power BI Desktop. Dicha actualización para reflejar los cambios en los niveles no se puede llamar en el servicio Power BI después de Publicar. |
Filtro predeterminado | Una consulta BEX puede incluir filtros predeterminados, que SAP Bex Analyzer aplicará de manera automática. Estos no están expuestos, por lo que el uso equivalente en Power Query no aplicará los mismos filtros de forma predeterminada. |
Cifras clave ocultas | Una consulta BEX puede controlar la visibilidad de las cifras clave, y las que están ocultas no aparecerán en el analizador SAP BEx. Esto no se refleja a través de la API pública, por lo que esas cifras clave ocultas seguirán apareciendo en la lista de campos. Sin embargo, se pueden ocultar dentro de Power Query. |
Formato numérico | Cualquier formato numérico (número de posiciones decimales, punto decimal, etc.) no se reflejará automáticamente en Power Query. Sin embargo, es posible entonces controlar dicho formato dentro de Power Query. |
Control de versiones de jerarquías | SAP BW permite mantener diferentes versiones de una jerarquía, por ejemplo, la jerarquía de centro de costo en 2007 frente a 2008. Solo la versión más reciente estará disponible en Power Query, ya que la API pública no expone la información sobre las versiones. |
Jerarquías dependientes del tiempo | Cuando se usa Power Query, las jerarquías dependientes del tiempo se evalúan en la fecha actual. |
Conversión de moneda | SAP BW admite la conversión de moneda con las tasas del cubo. Estas capacidades no están expuestas por la API pública y, por lo tanto, no están disponibles en Power Query. |
Criterio de ordenación | El criterio de ordenación (por texto o por clave) para una característica se puede definir en SAP. Este criterio de ordenación no se refleja en Power Query. Por ejemplo, los meses podrían aparecer como "abril", "ago.", etc. No es posible cambiar este criterio de ordenación en Power Query. |
Nombres técnicos | En el navegador, los nombres de características y medidas (descripciones) y los nombres técnicos se pueden mostrar mediante el selector opciones de visualización. La lista de campos contiene los nombres de características/medidas (descripciones). |
Configuración del idioma del usuario final | La configuración regional que se utiliza para conectarse a SAP BW se establece como parte de los detalles de la conexión y no refleja la configuración regional del consumidor final del informe. |
Variables de texto | SAP BW permite que los nombres de campo contengan marcadores de posición para variables (por ejemplo, "$YEAR$ Actuals") que luego serían reemplazadas por el valor seleccionado. Por ejemplo, el campo aparece como "2016 Actuals" en las herramientas de BEx, si se seleccionara el año 2016 como variable. El nombre de columna en Power Query no se cambiará en función del valor de la variable y, por lo tanto, aparecerá como "$YEAR$ Actuals". Sin embargo, el nombre de columna puede entonces cambiarse en Power Query. |
Variables de salida del cliente | Las variables de salida del cliente no están expuestas por la API pública y, por lo tanto, Power Query no las admite. |
Consideraciones de rendimiento
En la tabla siguiente se proporciona una lista de resumen de sugerencias para mejorar el rendimiento de la carga de datos y la actualización desde SAP BW.
Sugerencia | Descripción |
---|---|
Limitar la selección de características y propiedades (atributo). | El tiempo necesario para cargar datos de SAP BW en Power Query aumenta con el tamaño del conjunto de datos, es decir, el número de columnas y filas del conjunto de resultados sin formato. Para reducir el número de columnas, seleccione solo las características y propiedades en el navegador que finalmente desea ver en el informe o panel. |
Use los parámetros | El uso de filtros o parámetros contribuye a reducir el tamaño del conjunto de resultados, lo que mejora significativamente los tiempos de ejecución de consultas. Los parámetros son especialmente valiosos cuando se usan con grandes dimensiones, donde hay muchos miembros, como clientes, materiales o números de documento. |
Limitar el número de cifras clave | La selección de muchas figuras clave de un modelo de consulta BEx o BW puede tener un impacto significativo en el rendimiento durante la ejecución de la consulta debido al tiempo que se dedica a cargar metadatos para unidades. Incluya solo las cifras clave que necesita en Power Query. |
Dividir consultas muy grandes en varias consultas más pequeñas | En el caso de consultas muy grandes en InfoCubes o de consultas BEx, puede ser beneficioso dividir la consulta. Por ejemplo, una consulta podría obtener las cifras clave, mientras que otra consulta (u otras consultas) obtiene los datos de características. Puede combinar los resultados de la consulta individual en Power Query. |
Evitar proveedores virtuales (MultiProviders o InfoSets) | VirtualProviders son similares a las estructuras sin almacenamiento persistente. Son útiles en muchos escenarios, pero pueden mostrar un rendimiento de consulta más lento porque representan una capa adicional sobre los datos reales. |
Evitar el uso de atributos de navegación en la consulta BEx | Una consulta con un atributo de navegación tiene que ejecutar una combinación adicional, en comparación con una consulta con el mismo objeto que una característica para llegar a los valores. |
Uso de RSRT para supervisar y solucionar problemas de consultas de ejecución lenta | El administrador de SAP puede usar el Monitor de consultas en SAP BW (RSRT de transacción) para analizar problemas de rendimiento con consultas de SAP BW. Consulte SAP note 1591837 para obtener más información. |
Evitar cifras clave restringidas y cifras clave calculadas | Ambos se calculan durante la ejecución de consultas y pueden ralentizar el rendimiento de las consultas. |
Considere la posibilidad de usar la actualización incremental para mejorar el rendimiento | Power BI actualiza el conjunto de datos completo con cada actualización. Si está trabajando con un gran volumen de datos, es posible que la actualización del conjunto de datos completo en cada actualización no sea óptima. En este escenario, puede usar la actualización incremental, por lo que solo se actualiza un subconjunto de datos. Para más información, vaya a Actualización incremental en Power BI. |
Comparación con el análisis de Office (AFO)
Existen diferencias fundamentales entre la herramienta Analysis for Office (AFO) y el conector de Power Query SAP Business Warehouse, por lo que las salidas de los datos pueden diferir. AFO no usa MDX, sino que usa un protocolo propietario desarrollado por SAP que no está disponible para terceros, como el conector de Sap Business Warehouse de Power Query. SAP solo certifica los conectores que usan la interfaz MDX. AFO usa una estrategia de consulta multidimensional, que navega por los datos de forma diferente, mientras que el conector de Power Query SAP Business Warehouse debe aplanar los datos para que se pueda representar como una tabla. Por lo tanto, aunque sea los mismos datos, se consultan, representan y, en última instancia, se generan de forma diferente.