La “dimensión Time” de SAP HANA

Si alguna dimensión nunca falta en cualquier repositorio de datos o sistema de información, ese el tiempo. SAP HANA también lo tiene en cuenta y nos ofrece la posibilidad de crear estas tablas de una manera inmediata a través de la definición de un “Attibute View”, si seleccionamos el tipo de vista “Time”.


Si alguna dimensión nunca falta en cualquier repositorio de datos o sistema de información, ese el tiempo. SAP HANA también lo tiene en cuenta y nos ofrece la posibilidad de crear estas tablas de una manera inmediata a través de la definición de un “Attibute View”, si seleccionamos el tipo de vista “Time”.

Definción de una vista de atributo de tipo Time (y creación de una dimensión TIME)

En la definición de la vista deberemos indicar lo siguiente:

  • Tipo de Calendario. Deberemos indicar  entre Gregoriano y Fiscal (para este segundo caso es necesario tener la definición de la tabla T009, símil a la tabla del mismo nombre de SAP R/3 que almacena las variantes de años fiscales).
  • Esquema. Sólo necesario para el tipo de calendario Fiscal se deberá indicar la ubicación de la tabla T009. Para el caso de calendario Gregoriano estas tablas se generan en el esquema _SYS_BI.
  • Granularidad.  Nivel de detalle que tendrá la tabla y la vista. En el caso de un nivel de detalle igual o inferior a Date, se crea una tabla con todos los campos o atributos denominada M_TIME_DIMENSION en el esquema _SYS_BI. Para niveles de detalle con menor granularidad se creará en el mismo esquema una tabla con el mismo nombre seguido del nivel de detalle
  • La opción “Auto Create” creará las estructuras y contenidos, la tabla se creará, por defecto, con todos los datos comprendidos entre 1990 y 2020.

Diseño de un Attribute View de tipo tiempo y tablas de tipo tiempo definidas

Una vez introducidos estos parámetros, la tabla y vista se habrán creado, veremos el lienzo de diseño de la vista, podremos agregar más atributos a la vista y finalmente sólo quedará guardarla y activarla.

Vista previa de una dimensión TIME

Creación de una «Attibute View» de SAP HANA

Las vistas de información de SAP HANA, diferencias técnicas al margen, tienen una utilidad funcional similar a los universos de SAP BusinessObjects BI o la capa semántica de cualquier plataforma de Business Intelligence: facilitar a los usuarios el acceso a los datos, haciendo transparente la terminología técnica que los rodea y presentando sólo los datos que realmente se requieren.


Las vistas de información de SAP HANA, diferencias técnicas al margen, tienen una utilidad funcional similar a los universos de SAP BusinessObjects BI o la capa semántica de cualquier plataforma de Business Intelligence: facilitar a los usuarios el acceso a los datos, haciendo transparente la terminología técnica que los rodea y presentando sólo los datos que realmente se requieren.

De los tres tipos de vistas de información que ofrece SAP HANA, las primeras que definiremos son aquellas que nos permitirán acceder a los datos de las tablas que actúan como maestros o dimensiones, estas vistas se denominan Attribute View o Vista de Atributos.  Por ejemplo, una tabla de “Proveedores”  puede tener una gran cantidad de datos, pero quizás, para las tareas de análisis, con el código y razón social será suficiente, brindar más datos podría dificultar la comprensión o desviaría el objetivo del análisis.

Un Attribute View de SAP HANA nos permite acceder a una o más tablas y presentar ciertos atributos o campos de estas tablas como si se tratase una sola.  Para crear las vistas de información se utiliza SAP HANA Studio.

Procedimiento para crear una «Attribute View»

Podemos acceder a la ventana de definición del Attibute View, a través del panel “Quick Launch” o el botón derecho sobre un package del Content (Perspectiva Navigator).

Vías para iniciar la creación de un Attribute View

El nombre de la vista sólo puede contener letras, números y el carácter de subrayado, el nombre que se introduzca se convierte en mayúsculas.  En cuanto a la descripción, no hay ninguna restricción. En el campo paquete debemos indicar dónde lógicamente quedará vinculada nuestra vista, este paquete deberá ser creado previamente.

Ventana inicial de definición de un Attibute View

En cuanto a los tipos de vista, tenemos:

  • Standard. Basada en tablas de la base de datos.
  • Time. Para creación de una visión y datos típica de una dimensión de tiempo que incluye información del día, semana, mes, año, etc.
  • Derived. Para cuando la definición de la vista partirá de la definición de otra vista existente, ambas vistas quedan vinculadas.  Cualquier cambio en la vista de referencia se reflejará en todas las vistas que la utilicen.
  • Copy from. Similar a la de tipo Derived, con la diferencia que no existe vínculo entre las vistas, cualquier cambio en la vista de referencia no se refleja en las vistas que la utilizaron a través de esta opción.

Selecciona la tablas o tablas que utilizaremos para crear nuetra vista de atributo en SAP HANA

Seguidamente, este asistente nos mostrará nuestro Catálogo, buscaremos en el esquema que lo contiene o podremos utilizar la opción para buscar una tabla.  (Podemos seleccionar más de una tabla).

Agregando atributos a nuetras vista Attribute View

A continuación, veremos en un lienzo las tablas seleccionadas en el cual deberemos agregar los atributos que deseamos utilizar en esta vista, para ello nos ubicamos sobre un campo de la tabla, hacemos clic derecho y en el menú contextual tendremos dos opciones para este fin: “Add as Key Attribute” (para los campos o atributos clave) y “Add as Attribute” (para el resto de atributos).

Salvar y validar nuestra Vista

Luego, podremos validar y grabar (primer símbolo verde) o grabar y activar (segundo símbolo verde). En HANA, al igual que los objetos de SAP ERP o SAP BW, ante de poder utilizarlos, estos deben ser activados. 

Ventana de activación de objetos

Finalmente, podremos comprobar el funcionamiento de nuestra vista, a través de una vista previa de los datos, accediendo al «Content» (perspectiva Navigator), y luego al «package» donde hemos almacenado nuestra vista.

Comprobación del funcionamiento de nuestra vista

Los Packages de SAP HANA

Antes de iniciar la definición de las vistas de información con SAP HANA Studio, primero se debe definir los paquetes (packages) que los contendrán. Los paquetes son contenedores lógicos que nos permitirán tener las vistas que corresponden a un proyecto o aplicación, en un solo sitio, esto no impide que las vistas que se utilicen puedan provenir de distintos paquetes (siempre y cuando, se cuento los privilegios de acceso necesarios).


Antes de iniciar la definición de las vistas de información con SAP HANA Studio, primero se debe definir los paquetes (packages) que los contendrán.  Los paquetes son contenedores lógicos que nos permitirán tener las vistas que corresponden a un proyecto o aplicación, en un solo sitio, esto no impide que las vistas que se utilicen puedan provenir de distintos paquetes (siempre y cuando, se cuento los privilegios de acceso necesarios). 

El uso ordenado de paquetes también de ser visto como una buena práctica para las futuras tareas de mantenimiento. No se debe confundir el concepto paquete con el de esquemas, el cual se aplica a las tablas de datos de SAP HANA database.  Los paquetes SAP HANA pueden ser de dos tipos:

  • Estructurales (Structural). Es un paquete que contiene otros paquetes. Utilizado para ordenar los paquetes en un estructura de árbol.
  • No estructurales (Non-Structural). Es un paquete que contiene vistas, procedimientos y otros objetos.

Ventana para la definción de un package de SAP HANA

A través de los enlace del «Quick Launch» de SAP HANA Studio, accederemos a la ventana para definir el package, una vez introducimos los datos solicitados en esta ventana, visualizaremos este objeto en el Content de la Perspectiva Navigator.  (El campo “Delivery Unit”, es opcional, equivale a un número de orden de transporte).

Novedades en SAP HANA 1.0 SPS 05

SAP HANA como plataforma tiene un poco más de un año de existencia oficial, y como es lógico, todos sus componentes están en constante evolución. Desde el 29 de noviembre se ha liberado una de las más importantes actualizaciones, SAP HANA 1.0 SPS 05 (SPS = Support Package Stacks). Revisando la documentación disponible, lo que nos ha parecido más destacable, es lo siguiente


SAP HANA como plataforma tiene un poco más de un año de existencia oficial, y como es lógico, todos sus componentes están en constante evolución.  Desde el 29 de noviembre se ha liberado una de las más importantes actualizaciones, SAP HANA 1.0 SPS 05 (SPS = Support Package Stacks). Revisando la documentación disponible, lo que nos ha parecido más destacable, es lo siguiente

Seguridad y auditoría

  • Se amplían las políticas de seguridad, por ejemplo, el administrador podrá establecer si al definir las contraseñas se distinguirán entre mayúsculas y minúsculas o que palabras no se podrán utilizar (Password blacklist).
  • Nuevos tipos de roles.
  • Auditoría con visibilidad sobre quién hizo qué (o intentó hacer qué) y cuándo.

 Administración de la plataforma

  • Más información, más verificaciones y alertas sobre probable situaciones críticas en el sistema.
  • Mejoras en las herramientas de administración (Load monitor, Job progress monitor, Session monitor, Overview tab y Volumes tab).
  • Nuevo concepto de las “Decision Tables“ para definir “reglas” en tareas de automatización.
  •  Más información sobre el uso de la memoria (por ejemplo se pueden borrar estas estadísticas, ejecutar un proceso y analizar los picos de uso de la memoria).
  • Mejoras en el sistema de replicación de datos.
  • Mejoras en las tareas de configuración de sistema. Por ejemplo, soporte de la configuración de un sistema multi-host para la conectividad de SAP HANA Studio (alta disponibilidad).
  • Nuevas tablas y vistas para monitorizar el sistema.
  • Novedades y mejoras en el sistema de copias de seguridad y recuperación (Backup & Recovery). Disponibilidad de una API para que otros fabricantes acondicionen sus aplicaciones y puedan trabajar sobre SAP HANA. Mejora de la interfaz en SAP HANA Studio para estas tareas. 

Desarrollo de aplicaciones

  • SAP HANA Extended Application Services (SAP HANA XS), es el nuevo servidor para el desarrollo de aplicaciones Web con acceso directo a los datos rompiendo con el clásico enfoque MVC (Model-View-Controller)
  • Ahora es posible en el entorno de modelamiento (para implementaciones de SAP NW BW on HANA), importar infocubos y DSO optimizados, los cuales podrán ser tratados como modelos SAP HANA y utilizados en las herramientas de reporting.
  • Interfaz para desarrollo con HTML5
  •  Nuevas funciones y sentencias SQL.
  • Nueva perspectiva en SAP HANA Studio: SAP HANA Development.
  • Mejoras en las posibilidades de depuración y trazabilidad de operaciones SQL.
  • Mejoras en el asistente para importar y exportar los objetos del Catálogo.
  • Cambios y mejoras en la codificación de procedimientos (stored procedures)  SQLScript, así como en su editor y la depuración de este código (como la definición de breakpoints).
  • Mejoras y más información en “Plan Visualizer” (herramienta para analizar el rendimiento o calidad de las consultas).

SAP HANA Studio

  • Se potencia el papel de SAP HANA Studio como principal herramienta para la configuración de todos los objetos del sistema.
  • A través de SAP HANA Studio es posible configurar todas las opciones de los sistemas de autenticación.
  • Nuevo asistente y editor para creación de vistas de atributos y vistas analíticas. El editor de vistas calculadas permanece sin cambios.

Adicionalmente señalamos que la edición Enterprise Extended desaparece a partir de 2013. (Tendríamos dos ediciones del sistema SAP HANA, la Platform y Extended, esta última sería la más completa).

SQLScript para tener la lógica en la base de datos de HANA

Los desarrolladores con conocimientos en SQL (Structured Query Language) se sentirán muy cómodos con SAP HANA y especialmente con SAP HANA Studio, tanto para el diseño de datos como para el diseño de vistas de información, este conocimiento será de mucha utilidad. Pero SAP HANA tiene algo más, tiene una extensión del lenguaje estándar para acceder y manipular las estructuras de bases de datos, denominado SQLScript


Los desarrolladores con conocimientos en SQL (Structured Query Language) se sentirán muy cómodos con SAP HANA y especialmente con SAP HANA Studio, tanto para el diseño de datos como para el diseño de vistas de información, este conocimiento será de mucha utilidad.  Pero SAP HANA tiene algo más, tiene una extensión del lenguaje estándar para acceder y manipular las estructuras de bases de datos, denominado SQLScript 

Tal como lo hemos comentado en entradas anteriores, uno de los objetivos de SAP HANA es evitar el movimiento de datos entre base de datos y aplicaciones, para ello, permite que cálculos y operaciones lógicas se ejecuten en la base de datos y no en las aplicaciones, contribuyendo de este modo, a lograr menores tiempo de consulta, notorio sobre todo cuando se procesa grandes cantidades de información. 

Con las lógicas en las aplicaciones, además del tráfico que generan al recuperar los datos que van a procesar, este procesamiento se hace registro por registro, lógicas con muy pocas posibilidades de optimizar.  Por otro lado con las lógicas en la base de datos hay mayores posibilidades de tener un código estandarizado y reutilizable, facilitando las tareas de mantenimiento y desarrollo. 

SQLScript incluye una serie de operadores, funciones y sentencias, las cuales podremos utilizar en la definición de objetos tipo procedimiento que crearemos con la sentencia CREATE PROCEDURE <nombre del procedimiento> LANGUAGE SQLSCRIPT AS…