Fechas en PowerPivot

En esta sección se describen algunas prácticas recomendadas para importar datos que contienen fechas y para trabajar con fechas en relaciones y en tablas dinámicas.

Prácticas recomendadas para importar datos de fecha

Al importar datos de fecha y hora, sobre todo de orígenes diversos, muy a menudo, los datos podrían contener fechas en formatos diferentes o con niveles distintos de granularidad.

Por ejemplo, Excel proporciona dos funciones para devolver la fecha y hora actuales: la función TODAY devuelve la misma fecha que la función NOW, pero la función TODAY siempre devuelve la hora predeterminada de las 12 a.m., mientras que la función NOW devuelve una hora precisa.

El problema de esto es que la información horaria adicional puede hacer que los valores no coincidan. Posteriormente, cuando intente sumar los valores en una tabla dinámica, podría comprobar que no pueden agruparse de la forma esperada.

Además de las fechas con niveles diferentes de precisión, los orígenes de datos podrían incluir fechas escritas en varios formatos de texto, fechas en formatos regionales diferentes o fechas basadas en años fiscales distintos.

Para trabajar con estos tipos diferentes de fechas e integrarlos en un modelo único, después de importar los datos, debe:

  • Utilizar las fórmulas de DAX en columnas calculadas para truncar los valores o crear un conjunto coherente de valores de fecha y hora.

  • Cree una tabla de fecha y hora principal que pueda utilizar para crear relaciones entre las columnas de fecha.

En las siguientes secciones se proporciona información detallada.

Determine los requisitos de las fechas.

Antes de cambiar cualquiera de los valores de fecha, piense en el análisis que planea hacer utilizando los datos y formule estas preguntas:

  • ¿Con qué nivel o niveles de granularidad cuento o agrupo los hechos numéricos (días, horas, semanas, trimestres)?

  • ¿Qué niveles de granularidad se utilizarán para agrupar las fechas (semanas, trimestres fiscales, etc.)?

  • ¿Falta alguna fecha? ¿Es aceptable que fechas u otros valores falten o es necesario insertar valores de marcador de posición o fechas? Si faltan valores, ¿se utiliza un cero o algún otro valor decidido para representar los valores desconocidos?

Utilice fórmulas para convertir las fechas en un formato de fecha coherente.

Si los datos que importó contienen fechas en varios formatos, puede dejar las columnas como estén y utilizar fórmulas de DAX para crear columnas calculadas que representen las fechas en el formato correcto y en el nivel especificado de granularidad.

Para obtener ejemplos, vea los siguientes temas:

Función DATE (DAX)

Función DATEVALUE (DAX)

  • Utilice una función DAX para extraer valores como el día, año y mes, si es necesario.

  • Use funciones DAX para crear valores en un formato de fecha y hora.

Si no se da formato a los valores de datos como fechas, o tienen un formato incoherente, puede utilizar las funciones de fecha y hora que se ofrecen en DAX para compilar las fechas válidas.

  • Utilice la función FORMAT para funcionar con formatos de fecha y hora o numéricos personalizados.

Para obtener una lista completa de las funciones de fecha y hora, vea Referencia de funciones DAX para PowerPivot.

Trunque los periodos si necesita trabajar con días, semanas y meses.

Los días son la unidad más pequeña de tiempo que con los que pueden trabajar las funciones de inteligencia de tiempo de DAX. Por consiguiente, si no necesita trabajar con valores de tiempo, debería reducir la granularidad de los datos para utilizar los días como unidad mínima.

Para resolver los problemas con valores de tiempo innecesariamente precisos, hay un par de cosas que puede hacer:

  • Trunque los tiempos de los valores de fecha u hora, o haga que todos los valores de fecha u hora usen el mismo valor de hora predeterminada.

  • Si necesita trabajar con tiempos (por ejemplo, horas, minutos y segundos), cree un campo independiente o campos que representen los incrementos de hora mediante columnas calculadas. A continuación, puede analizar los tiempos separadamente.

El tipo de datos de fecha y hora que se utiliza en PowerPivot es un tipo de datos de SQL Server y de forma predeterminada crea un valor de tiempo para cada fecha.

Filtre los datos en la importación para quitar los que no sean válidos.

Si los datos externos contienen valores no válidos, puede filtrar los datos no válidos en el momento de la importación. Para obtener más información, vea los siguientes temas:

Agregar datos utilizando el Asistente para la importación de tablas (Tutorial)

Cambiar las filas que se importan desde un origen de datos

Prácticas recomendadas para trabajar con fechas en tablas dinámicas

En esta sección, se proporcionan algunas sugerencias para ayudarle a trabajar con fechas en tablas dinámicas y fórmulas que utilicen las funciones de inteligencia de tiempo de DAX.

Evite el uso de claves suplentes enteras en las relaciones.

Al importar datos externos desde un origen de datos relacional, muy a menudo los datos de fecha y las columnas de hora contienen una clave suplente, que es una columna de enteros que se usa para representar una fecha única. Sin embargo, en un libro PowerPivot, debería evitar la creación de relaciones utilizando claves de fecha y hora de tipo entero y, en su lugar, para las claves, utilizar columnas que contengan valores únicos con un tipo de datos date.

Aunque el uso de claves suplentes se considera una práctica recomendada en almacenamientos de datos tradicionales, las claves de enteros no son necesarias en PowerPivot y puede dificultar la agrupación de valores en tablas dinámicas por diferentes periodos de fechas.

Cree una tabla principal de fechas.

Si cada tabla de datos de un libro contiene una columna de valores de fecha u hora, y conecta las tablas de esas columnas de fecha y hora, es probable que muchos valores no coincidan: por ejemplo, una tabla de ventas podría tener las fechas de solo la segunda mitad de 2008, mientras que la tabla de proveedores podría enumerar las fechas de 2006 a 2008.

En lugar de unir varias tablas de datos en muchas columnas independientes que contengan varias fechas y horas, puede lograr mejores resultados creando una tabla principal que almacene únicamente información de fecha. A continuación, puede vincular esa tabla, mediante relaciones, a las tablas de datos y obtener las ventajas de disponer de un conjunto coherente de fechas con el que trabajar.

El libro de ejemplos de DAX proporciona un ejemplo de una tabla de fecha y hora principal que se conecta a otras tablas mediante relaciones.

Además de tener un valor de fecha u hora único para cada fecha que utilizaría, la tabla principal contiene las jerarquías que puede utilizar para agrupar las fechas en tablas dinámicas, como se muestra en esta tabla:

DayNumberOfWeek

WeekNumberOfYear

CalendarQuarter

FiscalQuarter

DayNameOfWeek

WeekNumberOfMonth

CalendarSemester

FiscalSemester

DayNumberOfMonth

MonthName

CalendarYear

FiscalYear

DayNumberOfYear

MonthNumberOfYear

  

  

Crear copias de columnas de fecha cuando sea necesario

El concepto de tabla de fecha principal le resultará conocido si ha trabajado con bases de datos de Analysis Services tradicionales, que usar una dimensión de fecha para representar y agrupar las fechas.

Lo que es diferente en PowerPivot es que que cada columna única de una tabla de PowerPivot puede participar en solo una relación entre dos tablas cualesquiera. Por consiguiente, si una única tabla contiene varias columnas que se deben relacionar con la clave de fecha, debe crear una copia de la columna de clave de la fecha y vínculo.

Por ejemplo, suponga que una tabla de pedidos contiene estas columnas de fecha: SalesDate, TransactionDate y ShippingDate. Desea vincular todas ellas a la columna de clave de la fecha en la tabla de fechas principal, pero PowerPivot no lo permite, para asegurarse de que cualquier relación proporcione una ruta de acceso única e inequívoca a los valores. En su lugar, tiene que pasar columnas de fecha adicionales a las tablas independientes y, a continuación, vincular la columna de fecha en cada una de esas tablas a la clave de fecha en la tabla de fechas principal. Por ejemplo, podría decidir mantener la columna SalesDate en la tabla Orders, pero crear una nueva tabla para las transacciones y una tabla independiente para la información de distribución. Puede utilizar una columna calculada para crear las copias de las columnas, ShippingDate y TransactionDate, y asegurarse de que permaneces sincronizadas.

El libro de ejemplos de DAX proporciona un ejemplo de cómo crear y trabajar con copias de columnas de fecha de forma eficaz. Para obtener más información acerca de dónde obtener los ejemplos, vea Obtener datos de muestra para PowerPivot.

Vea también

Otros recursos