Publicada mayo 6, 2013

Truco: Siempre mostrar los valores de ayer, hoy o mañana

Power Pivot

pic1

Ejecutivo: ¿Son estos los valores correctos?

Analista: sí, pero es necesario comprobar las fechas por las que el reporte está filtrado.

Ejecutivo: Ugh… Yo solo quiero darle click al reporte y   ver los valores actuales

Si alguna vez tuviste esta situación, déjame decirte que no estás solo en eso…

He estado allí antes y es el momento de darle algunos sencillos trucos sobre cómo configurar un reporte con Powerpivot que te muestre los valores de ayer, hoy, mañana, la semana anterior o cualquier tipo de periodo de tiempo.

¿Qué podríamos hacer?

En primer lugar, vamos a analizar la situación y las posibles soluciones que podemos ofrecer:

  1. Enseñar al Ejecutivo a utilizar cortadoras (filtros) y cómo jugar con ellos (enseñarle lo divertido que es!)
    • Siempre se debe tratar de esforzarse por conseguir que los usuarios se sienten más cómodos con las herramientas que están utilizando. Pero tal vez podríamos hacer las cosas más fácil para ellos?
  2. Arrastrar las fechas para las filas o columnas y utilizar la opción de filtrado de fechas
    • Probablemente la mejor opción, pero para este ejemplo vamos a decir que no queremos tocar la estética del reporte o cualquier tipo de diseño en términos de las filas / columnas reales y valores de los campo
  1. Crear una medida con DAX a.ka. Campo calculado
    • Esto también podría ser una gran solución, pero depende de cómo se quiere que las cosas se calculen… hablaremos de ello más adelante
  2. Crear una columna calculada
    • Para ello será necesario agregar una columna a la tabla de calendario, pero, también depende de cómo se quiere que las cosas se calculen

La solución!

Real price on gas!

La imagen de arriba muestra el precio del gas hoy en todo el mundo… (o lo que mis ojos distinguen como precios)

 

Utilizando las fechas como filtros dentro de la tabla dinámica

Todo lo que tienes que hacer es arrastrar la columna de fechas en las filas o columnas, ir a la sección de filtro de la misma y luego seleccionar la opción de filtros de fecha para filtrar como sea necesario.

Sharepoint 2013 Date Filter

Figura de Sharepoint 2013Excel 2013 Date Filter Figura de Excel 2013

Utilizando TODAY() y NOW() – funciones volátiles

Utilizando TODAY() evaluará en la Fecha de hoy y NOW() evaluará en la la fecha y la hora pero… aquí está la cuestión principal, cuando se calculan estos valores?

Cuando se calcula dentro de la ventana de Powerpivot

Podría calcularse de forma automática:

  • Cada vez que haces una actualización del modelo de datos o al crear una columna calculada o medida 

O podría estar pasando manualmente a través de:

Design Tab > Calculation Options > Manual Calculation Mode

Design Tab

Y luego golpear el botón de CALCULATE NOW en cualquier momento que sea necesario para calcular los valores

Cuando se calcula como una medida or campo calculado

El momento exacto en que este valor se calcula es cuando se actualizan las tablas dinámicas.

Estos conceptos son necesarios cuando se está creando la solución, ya que tendrá que tomar en consideración estas 2 preguntas::

  1. ¿Quiero que los valores de las funciones TODAY o NOW coincidan con la fecha y hora cuando mi modelo de datos se actualizó por última vez?
  2. ¿Necesito tener siempre la última fecha y hora siendo calculada en la tabla dinámica?

Depende de ti decidir cómo configurar la solución, pero después de conseguir esta parte hecha, podemos seguir adelante y crear la solución!

Ahora sabemos lo que queremos mostrar en nuestros reportes, veamos la fórmula!

Medida DAX aka Campo Calculado

El enfoque DAX o campo calculado sería algo como esto:

=CALCULATE( SUM( FactTab[Sales] ),

                                FILTER( CalendarTable,

                                                                                CalendarTable[Dates] = TODAY()

                                                )

                                 )

También puede hacer una variación de esto y obtener un mes o año en curso cambiando la columna de la tabla de calendario para #deMes o #deAño y utilizar algo como:

MONTH( TODAY() ) o YEAR( TODAY() )

Columna Calculada (Ventana de Powerpivot)

Utilizando su Tabla Calendario se puede utilizar una nueva tabla como la siguiente::

Categoría Diff
Ayer

-1

Hoy

0

Mañana

1

 

Donde en la categoría se obtiene el nombre que aparecerá en las cortadoras (filtros) y en la columna “Diff” la diferencia en días contra el valor de TODAY(). Una vez que tenga esa tabla agregada al modelo de datos, puede crear una columna calculada en la tabla calendario utilizando la siguiente fórmula:

= [Dates] – TODAY() Powerpivot Grid

Una vez esto sea cubierto puedes ligar la columna calculada [Difference in days] a la columna column Diff en la tabla que hemos agregado.

Para terminar, sólo tiene que añadir la máquina de cortar a su reporte y dejar que el Ejecutivo sepa que la cortadora está lista para su uso y disfrute de su primer aumento de sueldo del 2013!

Power Pivot
Subscribe
Notify of
guest
0 Comentario
Inline Feedbacks
View all comments