Funciones de Tabla SAP HANA
Recientemente hablé con varios desarrolladores que trabajan en el sistema nativo de SAP HANA para el desarrollo de informes. Lo que realmente me sorprendió fue el hecho de que la mayoría de ellos siguen utilizando vistas de cálculo de tipo SQL Script en lugar de Funciones de Tabla. Además, algunos ni siquiera sabían que este tipo de vistas están obsoletas y fueron reemplazadas por Funciones de Tabla. Tampoco encontré ningún tutorial paso a paso que describa cuándo crear Funciones de Tabla, cómo hacerlo, cuáles son los beneficios y cómo consumirlas en las vistas de cálculo.
Esto me inspiró a escribir un artículo sobre las Funciones de Tabla y compartir mi experiencia sobre ese tema.
¿Qué son las Funciones de Tabla?
Desde SP11, las vistas de cálculo de tipo SQL Script están obsoletas. Como alternativa, SAP introdujo un nuevo artefacto de desarrollo llamado Función de Tabla. HANA proporciona una herramienta de migración que permite la conversión automática de una Vista de Cálculo basada en script en una Función de Tabla.
Las funciones de tabla se utilizan siempre que las vistas gráficas no son suficientes, es decir, para bucles, ejecución de funciones personalizadas o consultas complejas.
¿Cuáles son los Pros y los Contras de usar Funciones de Tabla?
Pros:
-
SQL Script ofrece mucha más funcionalidad y flexibilidad (más funciones disponibles, la lógica compleja se puede implementar de manera más sencilla, SQL se puede combinar con la Biblioteca de Funciones de Aplicación - AFL que proporciona aún más funciones para análisis complejos)
Contras:
-
El mantenimiento es mucho más difícil (preservar el orden y los tipos de datos de las columnas de salida; la vista previa de datos para parte del código no es tan directa en comparación con la vista previa de nodos en las vistas gráficas; al cambiar la salida, tanto la Función de Tabla como la vista que la utiliza deben ajustarse; etc.)
-
Los parámetros de entrada de múltiples valores no son compatibles (no hay una forma sencilla de pasar múltiples valores a un solo parámetro de entrada a la Función de Tabla, sin embargo, hay una solución alternativa para eso)
-
Por definición, las vistas gráficas proporcionan un mejor rendimiento gracias al optimizador de HANA
-
No hay GUI disponible: se necesita conocimiento de SQL Script
En general, las Funciones de Tabla deben usarse en caso de que la lógica no pueda ser cubierta por una vista gráfica o si la lógica es demasiado compleja para modelarla gráficamente.
...