VBA for SAP EPM Add-in: No te olvides de los «pequeños detalles» (#VBAforEPMAddin)

Cuando revisamos un código VBA por optimizar, podemos ver detalles aparentemente “insignificantes” o poco relevantes pero cuando se ejecutan de manera conjunta con datos reales, podrían repercutir en los tiempos de procesamiento. Cuando utilizamos VBA en nuestros formularios EPM Add-in (cliente para SAP BPC – SAP Business Planning and Consolidation) restamos importancia a pequeños detalles como los siguientes:


Cuando revisamos un código VBA por optimizar, podemos ver detalles aparentemente “insignificantes” o poco relevantes pero cuando se ejecutan de manera conjunta con datos reales, podrían repercutir en los tiempos de procesamiento. Cuando utilizamos VBA en nuestros formularios EPM Add-in (cliente para SAP BPCSAP Business Planning and Consolidation) restamos importancia a pequeños detalles como los siguientes:

  • Declara todas las variables
  • Señalar siempre el alcance de las funciones (públicas o privadas)
  • No dejes funciones de evento vacías, si no las usas, elimínalas (olvídate de “quizás la use más adelante”)
  • Las referencias a objetos siempre entre With y End With
  • Si utilizarás un objeto de MS Excel en más de una sentencia, será mejor que utilices una variable objeto que referencia alobjeto.
  • Las funciones de tratamiento de cadenas son más eficientes las de MS Excel que las de VBA.
  • Salvo para e tratamiento de errores, olvídate del “Go To”, terminarás perdiendo el control.

VBA for SAP EPM Add-in: No todas las “instrucciones clave” agilizan siempre la ejecución del código (#VBAforEPMAddin)

Si buscamos en Internet qué hacer para agilizar la ejecución de nuestro código VBA de nuestros formularios EPM Add-in (cliente de SAP BPC – SAP Business Planning and Consolidation), seguro que encontraríamos sugerencias que señalan, entre otras cosas, el uso de las siguientes sentencias:


Si buscamos en Internet qué hacer para agilizar la ejecución de nuestro código VBA de nuestros formularios EPM Add-in (cliente de SAP BPCSAP Business Planning and Consolidation), seguro que encontraríamos sugerencias que señalan, entre otras cosas, el uso de las siguientes sentencias:

  • Application.Interactive
  • Application.ScreenUpdating
  • Application.Calculation
  • Application.EnableEvents

Podríamos utilizar estas instrucciones al iniciar nuestras rutinas, pero como en todo, “el café para todos” no siempre resulta lo más aconsejable, dependiendo de la complejidad de las rutinas, en ocasiones será necesario revisar el código vía las opciones de Debug que tenemos en la interfaz para trabajar con VBA y comprobar si la aplicación de todas estas instrucciones resultan aconsejable, en especial, la desactivación del cálculo automático de MS Excel.

Por otro lado, recomendamos especial cuidado en el uso generalizado de estas sentencias en todos los procedimientos, dado que una llamada a una subrutina podría dejar estos parámetros con los valores no deseados al retornar el control al procedimiento que lo invocó.

«Data Disaggregation» para SAP BPC on HANA (#HANABPC)

La actualización SP11 de SAP BPC 10.0 NW (SAP Business Planning and Consolidation), la última actualización del componente HANABPC (HANABPC 800 SP05 para BW 7.30 o HANABPC 801 SP02 para BW 7.31) y a partir de la actualización SP15 del EPM Add-in es posible utilizar una nueva funcionalidad denominada “Desagregación de datos” (Data Disaggregation) sólo disponible para instalaciones SAP BPC on HANA.


La actualización SP11 de SAP BPC 10.0 NW (SAP Business Planning and Consolidation), la última actualización del componente HANABPC (HANABPC 800 SP05 para BW 7.30 o HANABPC 801 SP02 para BW 7.31) y la actualización SP15 del EPM Add-in, en conjunto brindan una nueva funcionalidad, denominada “Desagregación de datos” (Data Disaggregation) sólo disponible para instalaciones SAP BPC on HANA.

Esta nueva funcionalidad es accesible desde un formulario de entrada de datos EPM Add-in a través del menú Planning, el cual mostrará, además de las clásicas opciones Spread, Trend y Weight, una nueva opción denominada Disaggregation, la cual se visualizará si se está accediendo a un Environment habilitado para trabajar sobre SAP HANA (ACCELERATOR_ON = X) y la desagregación de datos ha sido habilitada a nivel de Environment (ENABLE_DISAGGREGATION = X).  El procedimiento para utilizar esta nueva característica sería el siguiente:

  1. Desde un formulario de entrada se selecciona los miembros nodos o padre.
  2. Se introducen los valores que se desean desagregar.
  3. Se accede a la nueva opción (Planning > Disaggregation).
  4. Se visualizará una ventana que permita escoger el método de desagregación (Proportional, Equal y Relative Proportional).
  5. El sistema efecturá la operación (a nivel SAP HANA Database), grabándose en los «miembros base» el dato repartido según el método seleccionado.
  6. Luego se podrá refrescar el formulario para verificar los valores calculados.

Existen algunas condiciones para el correcto funcionamiento de esta característica, tales como:

  • El atributo Account Type de todos los miembros de dimensión de la dimensión de tipo Account deben ser “AST” y “LEQ” o todos “INC” y “EXP”.
  • No deberían incluirse miembros de dimensión con fórmulas.
  • El usuario debe tener acceso a las regiones de datos que actualizaría y si se utiliza el método “Relative Proportional” también deberá tener acceso a la región de datos que se utilizará de referencia.
  • El Work Status deberá permitir la entrada de datos de Owner o Manager.
  • Si se han definido reglas o condiciones a través de la UJ_VALIDATION, los cálculos a realizar por la Desagregación deberían cumplirlos.
  • La desagregación en modelos con ciertas implementaciones BAdI (de los siguientes tipos: Write-back, WorkStatus y Validation) no funcionaría a menos que se define un nuevo parámetro a nivel de modelo (DISAGGREGATION_IGNORE_BADI) pero el resultado podría no ser el esperado.
  • Las “lógicas por defecto” por entrada manual de datos no se activarán por los datos desagregados.

Referencia: SAP Note 1903169

Notas SAP para la conectividad SAP BPC con los componentes SAP BusinessObjects BI

SAP BusinessObjects Business Intelligence (SAP BO BI o SAP BI) poco a poco va mejorando como el mejor complemento para el reporting y análisis de la información de las distintas soluciones SAP. SAP Business Planning and Consolidation (SAP BPC) tanto la edición para NetWeaver (NW) como para plataformas Microsoft (MS) tienen en el SAP EPM Add-in la herramienta de reporting y diseño de formularios de entrada de datos en entorno MS Office (especialmente en MS Excel), pero para ciertas necesidades de usuario puede resultar insuficiente.


SAP BusinessObjects Business Intelligence (SAP BO BI o SAP BI) poco a poco va mejorando como el mejor complemento para el reporting y análisis de la información de las distintas soluciones SAP. SAP Business Planning and Consolidation (SAP BPC) tanto la edición para NetWeaver (NW) como para plataformas Microsoft (MS) tienen en el SAP EPM Add-in la herramienta de reporting y diseño de formularios de entrada de datos en entorno MS Office (especialmente en MS Excel), pero para ciertas necesidades de usuario puede resultar insuficiente.

En los casos que el usuario requiere cuadros de mando interactivos o realizar reporting analítico utilizando la funcionalidad de herramientas tales como Web Intelligence, existe la posibilidad de «explotar» los datos BPC NW / MS con visualizaciones Xcelsius (SAP Dashboards) y otros componentes de SAP BO BI que accedan a universos BusinessObjects.  En la nota de referencia encontrarás un compendio de notas técnicas que hacen referencia a las posibilidades de conectividad SAP BPC – SAP BusinessObjects BI (sugerimos su consulta directa con cierta frecuencia por la novedades que surjan en el futuro).

Referencia: SAP Note 1909030 – Common topics regarding connections from BI to BPC data sources

 

VBA for SAP EPM Add-in: Uso de la función Aggregate (#VBAforEPMAddin)

Decidir que versión de MS Office se utilizará como estándar en la implementación de una solución SAP BPC (SAP Business Planning and Consolidation) es un factor clave que repercutirá en el desarrollo del proyecto. Por lo pronto, cualquier nuevo proyecto SAP BPC 10.0 debería valorar las siguientes versiones 2007, 2010 y 2013 (esta última a partir del EPM Add-in SP14).


Decidir que versión de MS Office se utilizará como estándar en la implementación de una solución SAP BPC (SAP Business Planning and Consolidation) es un factor clave que repercutirá en el desarrollo del proyecto.  Por lo pronto, cualquier nuevo proyecto SAP BPC 10.0 debería valorar las siguientes versiones 2007, 2010 y 2013 (esta última a partir del EPM Add-in SP14).

Primer parámetro de la función AGGREGATE o AGREGAR de MS Excel 2010 y 2013

No tan sólo está comprobada la mayor eficiencia y rapidez de MS Excel de la versión 2010 con respecto a la 2007, sino también la mayor disponibilidad de funcionalidades y características, facilitarán las tareas de diseño de formularios. Por ejemplo, la función AGGREGATE o Agregar, incorporada a partir de la versión 2010, permite realizar cualquier función de agregación (ver tabla adjunta) señalando el tratamiento que se le dará a las filas/columnas ocultas o las celdas con errores o valores nulos, realizar estas operaciones en la versión 2007 significaría recurrir a código VBA (macros).

Segundo parámetro de la función AGGREGATE o AGREGAR de MS Excel 2010 y 2013

Nuestra sugerencia es apostar por el uso de la versión 2010 para el diseño de formularios de entrada e informes EPM Add-in para SAP BPC,  por las mejoras con respecto a la versión 2007 y debido a que la novedad de versión 2013 podría dar lugar a algunas sorpresas o contratiempos.  La versión 2003 será retirada del soporte de Microsoft y por consiguiente de SAP en abril de 2014.