Configuración del valor predeterminado de una rebanadora

Un usuario Pregunto ✅

desertislesql

El cliente tiene datos que se actualizan mensualmente y el tablero contiene un gráfico y una segmentación que se configura para el mes actual. Quieren que la segmentación cambie la selección predeterminada cuando se cargan los datos del nuevo mes. Por ejemplo, el mes actual seleccionado en la segmentación es enero, y les gustaría que el mes seleccionado cambiara a febrero cuando se carga ese dato para que el gráfico correspondiente muestre los datos del último mes.

Me estoy quedando en blanco en cuanto a cómo haría que esto sucediera. ¿Alguien me puede apuntar en la dirección correcta?

Greggyb

No puede hacer esto directamente en el diseñador de informes, pero debería poder hacer algo de modelado para que funcione. Vea el archivo .pbix de muestra aquí.

Básicamente, crea un nuevo campo basado en el siguiente bit de Power Query M:

if Date.IsInCurrentMonth( [Date] )
then "Current Month"
else [Month]

Luego, configura la segmentación en «Mes actual», cuando el mes cambia y el conjunto de datos se actualiza, la selección de «Mes actual» de la segmentación puede permanecer igual. Ha cambiado a qué se refiere realmente el «Mes actual», pero no la selección de la segmentación literal.

Como beneficio adicional, obtienes un adelanto de algunos fragmentos de mi tabla de fecha final de trabajo en progreso personal en ese .pbix. Publicaré la versión completa una vez que finalice.

Mukovnin

¡Hola a todos!

¿Qué sucede si quiero un mes con datos que se marcará de forma predeterminada después de la actualización de PQuery? ¿Y un mes sin datos solo se mostrará en el filtro? ¿Es posible?

Untitled.png

GilbertQ

En respuesta a Mukovnin

Hola

Actualmente eso no es posible porque cuando seleccionas algo, mantendrá ese mes seleccionado.

Lo que funcionaría mejor es utilizar un valor que no cambie cada mes, como «Mes actual».

xonde

¡¡BUENAS NOTICIAS!! La actualización de Power BI de marzo de 2019 acaba de lanzar un objeto visual personalizado llamado «Power Slicer». Puede importar este objeto visual desde el mercado. Este objeto visual tiene un millón de opciones más que la cortadora normal y, lo que es más importante, le permite establecer un valor predeterminado. Esto se puede hacer yendo a la pestaña de formato debajo de las opciones de «selección» y estableciendo el valor predeterminado en un literal en su lista.

Por ejemplo, si tuvieras una cortadora de energía con muchos años en ella:
.2015
.2016
.2017
.2018
.2019

Puede establecer la «Selección predeterminada» en «2019» (menos las comillas). Pero si desea que sea dinámico y siempre muestre el año actual, entonces aún más buenas noticias, esta opción acepta javascript, por lo que puede establecer la «Selección predeterminada» en «(nueva Fecha ()). GetFullYear» (menos las comillas ) y el valor predeterminado siempre será el año actual. Si tiene una necesidad más específica, siempre puede buscarla en Google para obtener ayuda de JavaScript, y alguien en StackOverflow probablemente tendrá su respuesta.

Aquí hay un enlace al video (Pase a las 14:43): https://www.youtube.com/watch?v=rBPGH6eYlT0&feature=youtu.be&t=10

Espero que esto ayude,

Xonde.

xonde

¡¡BUENAS NOTICIAS!! La actualización de Power BI de marzo de 2019 acaba de lanzar un objeto visual personalizado llamado «Power Slicer». Puede importar este objeto visual desde el mercado. Este elemento visual tiene un millón de opciones más que la cortadora normal y, lo que es más importante, le permite establecer un valor predeterminado. Esto se puede hacer yendo a la pestaña de formato debajo de las opciones de «selección» y estableciendo el valor predeterminado en un literal en su lista.

Por ejemplo, si tuvieras una cortadora de energía con muchos años en ella:
.2015
.2016
.2017
.2018
.2019

Puede establecer la «Selección predeterminada» en «2019» (menos las comillas). Pero si desea que sea dinámico y siempre muestre el año actual, entonces aún más buenas noticias, esta opción acepta javascript, por lo que puede establecer la «Selección predeterminada» en «(nueva Fecha ()). GetFullYear» (menos las comillas ) y el valor predeterminado siempre será el año actual. Si tiene una necesidad más específica, siempre puede buscarla en Google para obtener ayuda de JavaScript, y alguien en StackOverflow probablemente tendrá su respuesta.

Espero que esto ayude,

Xonde.

Anónimo

Filtro interno (una copia de) su tabla de calendario lo suficientemente grande con su tabla de datos. Agregue una columna como AÑO * 10000 + MES * 100 + DÍA y borre todas las filas excepto la última y obtendrá una TABLA DE UNA FILA.

Haga una expresión DAX como if (isfiltered (A), (if (hasonevalue (A), selectedvalue (A), ¿?), )

A, por ejemplo, puede ser el calendario real, o la lista de países, o la lista de estados o lo que sea que desee que tenga un comportamiento predeterminado.

Cuando actualice sus datos, sus TABLAS DE UNA FILA cambiarán, por lo que sus valores predeterminados también cambiarán.

Dinu

Tengo el mismo problema. También necesito establecer el valor predeterminado para la fecha de hoy al abrir el panel / informe.

felyoubi

En respuesta a Dinu

* Enlace agregado *

Consulte esta publicación para obtener una mejor solución utilizando DAX Current Month Using DAX.

Gracias,

Fahd

FrugalEconomista

En respuesta a felyoubi

¿Hay alguna forma de modificar esto para mostrar la fecha más reciente?

Tenemos un tablero que se almacena semanalmente.

GilbertQ

En respuesta a FrugalEconomista

Hola @FrugalEconomist

Puede hacer esto usando una medida DAX llamada LASTDATE, o puede hacerlo en el Editor de consultas y crear una tabla que solo tendrá la fecha MAX. Para hacer eso, su tipo de datos en su columna debe ser FECHA, y luego, cuando filtre, le dará la opción para el más antiguo o el más reciente.

KHorseman

En respuesta a felyoubi

@felyoubi Si desea crear la misma columna de mes usando DAX en el editor de tablas, la fórmula de la columna sería

Nombre del mes = IF (MONTH (DateTable[Date]) = MES (HOY ()) && AÑO (DateTable[Date]) = AÑO (HOY ()), «Mes actual», Tabla de fechas[Month])

Y para el día actual sería

Día = IF (DateTable[Date] = HOY (), «Hoy», DateTable[Date])

… asumiendo la existencia previa de dos columnas llamadas Fecha y Mes obviamente.

AndrewDang

En respuesta a KHorseman

Gracias @KHorseman y todo por su ayuda;

Pude usar esto para solucionar mis problemas.

Gracias;

Andrés

felyoubi

En respuesta a KHorseman

Es una buena adición, pero en mi caso es útil si desea ver qué tan bien se está desempeñando históricamente mes a mes. Si necesito ver solo el mes actual, utilizo un filtro.

Aprecio los comentarios

KHorseman

En respuesta a felyoubi

@felyoubi, ¿no estabas pidiendo la fórmula DAX equivalente entonces? Su publicación anterior estaba redactada de manera extraña, así que no estoy seguro de lo que estaba pidiendo.

felyoubi

En respuesta a KHorseman

Jaja gracias

Olvidé agregar el enlace. Publicar actualizado y agradezco sus comentarios Smiley feliz

-Fahd

SK_79

Hola a todos,

Espero que alguien pueda ayudarme. Tengo un informe que contiene múltiples segmentaciones para permitir al usuario seleccionar un año, un mes y un día específicos. He utilizado la solución sugerida por Greggyb dentro de este hilo que ha funcionado de manera brillante para darme el ‘Mes actual’. Sin embargo, ahora tengo que hacer lo mismo para que la segmentación se establezca de forma predeterminada en el día actual. He intentado varias cosas pero me quedo en blanco. Me pregunto si alguien más ha intentado hacer algo similar o si estoy perdiendo el tiempo y hay otra solución que me he perdido. Estaría agradecido por cualquier sugerencia y gracias de antemano.

Greggyb

No puede hacer esto directamente en el diseñador de informes, pero debería poder hacer algo de modelado para que funcione. Vea el archivo .pbix de muestra aquí.

Básicamente, crea un nuevo campo basado en el siguiente bit de Power Query M:

if Date.IsInCurrentMonth( [Date] )
then "Current Month"
else [Month]

Luego, configura la segmentación en «Mes actual», cuando el mes cambia y el conjunto de datos se actualiza, la selección de «Mes actual» de la segmentación puede permanecer igual. A qué se refiere realmente el «mes actual» ha cambiado, pero no el selección de cortadora literal.

Como beneficio adicional, obtienes un adelanto de algunos fragmentos de mi tabla de fecha final de trabajo en progreso personal en ese .pbix. Publicaré la versión completa una vez que finalice.

Anónimo

En respuesta a Greggyb

Hola Greg,

tengo un problema similar. Espero que pueda ayudarme con esto, ya que soy relativamente nuevo en Power BI.

Yo tengo un «fecha de entrada» columna que tiene Valores de fecha y hora(el formato es «m / d / aaaa hh: mm: ss AM«).

Dentro de esta columna, tengo un valor de fecha (por ejemplo, 1/1/1970) que obtiene datos históricos y todos los demás valores de fecha actuales de los 2 años anteriores.

Mi requisito es cuando Utilizo este campo «Input_date» en una segmentación. Necesito que la columna de fecha histórica esté siempre preseleccionada y la última fecha (fecha máxima) para ser preseleccionada en la segmentación. Entonces, cuando abro el informe, digo después de un mes a partir de ahora, la cortadora debería seleccionar y mostrar de forma predeterminada la fecha histórica (1/1/1970) y la última fecha (que es el próximo mes). es posible? ¿Podrías ayudarme con la lógica, por favor? Estoy usando la siguiente lógica que no funciona.

¿También podría sugerir una solución si la columna Fecha fuera un tipo de datos de texto con los valores de fecha?

si [input_date] = #fechahora (1,1,1970,12,00,00)
luego «Datos históricos»

si no [input_date] = Lista.Máx ([input_date])
luego «Última fecha»
demás [input_date])

harib

En respuesta a Greggyb

@greggyb

¿Puede proporcionar el archivo de muestra? El que ha proporcionado el enlace no funciona.

Muchas gracias

chucksteel

En respuesta a Greggyb

Creé una variación de esto que crea la tabla usando la fecha actual y los 365 días anteriores. Gracias a @greggyb por la solución original. Esto ha sido muy útil.

En el código original, la fuente de la tabla es esta:

= List.Dates(
  #date(2015,1,1)
  ,Duration.Days( #date(2016,12,31) - #date(2015,1,1) ) + 1
  ,#duration(1,0,0,0) )

Usé este código en su lugar:

= List.Dates(
  DateTime.Date(Date.AddYears(DateTime.LocalNow(), -1))
  ,365  ,#duration(1,0,0,0) )

En respuesta a Greggyb

@greggyb

¡Hola!

¡gran idea!

¿Hay alguna forma de mostrar tanto el «Mes actual» como el valor del mes?

Quiero que la selección predeterminada sea ‘Últimas 4 semanas’, pero quiero que el usuario tenga la opción de seleccionar solo la última semana,

de esta manera no está disponible

¡Gracias!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *