Forum Discussion

Syndicate_Admin's avatar
Syndicate_Admin
Administrator
2 years ago

Datos semanales

Hola a todos

Tengo el panel de control anterior y estoy buscando un filtro de algún tipo que mostrará los usos máximos de la semana en el rendimiento diario de forma predeterminada y, cuando se filtre por fin de semana, seguirá siendo el último (si no hay datos, no mostrará datos)

Tengo un máximo de usos de semanas cuando no se selecciona nada contra el promedio:

Max Week Usages = 
Var MaxMonthValue = 
    CALCULATE(
        MAX('Date'[Year Week new]),
        FILTER('Date',[UsagesCount] >= 1),
        ALL('Date'))
        
RETURN 
CALCULATE(
    [Total Kwh],
    FILTER( 
        ALL('Date'),
        'Date'[Year Week new] = MaxMonthValue
    )
UsagesCount = CALCULATE(COUNTROWS('Emporia Device Usage'))

Esto esencialmente devuelve la última semana donde hay usos, solo estoy tratando de encontrar una manera de mostrar esto en la imagen debajo de él.

Gracias de antemano, James

3 Replies

  • Hola, @JamesBurke, estoy dispuesto a ayudarte.
    De acuerdo con su descripción, creé los siguientes resultados de prueba.

    Desea obtener un uso semanal, la medida que creó funcionó, ahora su problema es tratar de encontrar un elemento visual adecuado para mostrarlo, pero no sabe cómo poner la medida creada en el elemento visual, le recomiendo que use el elemento visual combinado.

    De esta manera, puede mostrar los datos originales y, al mismo tiempo, mostrar la medida que ha creado.

    Tenga en cuenta que los resultados de la medida pueden verse afectados por otros filtros o segmentaciones.

    Tengo las siguientes preguntas sobre su código, si puede responderlas por mí o proporcionarme algunos datos no confidenciales, sería de gran ayuda para resolver su problema.

    1. ¿Cuál es el significado de la columna [Año semana nuevo], la reemplacé en mis propias pruebas con la columna calculada recién creada weeknum (el número de semanas en el año de cada fecha) en la tabla "Fecha".
    2.¿Qué significa la métrica [Kwh total] cuando se filtra (supongo que es una métrica porque el primer parámetro en la función de cálculo es la expresión)?

    3. [Uso del dispositivo Emporia]

    ¿Cuál es exactamente el significado de la columna [Emporia Device Usage] para la que finalmente desea calcular la función, y se refiere al uso del dispositivo?

    Espero que mis sugerencias le den buenas ideas, si tiene más preguntas, por favor aclare en una respuesta de seguimiento.

    Saludos

    Carson Jian,

    Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.



    • Syndicate_Admin's avatar
      Syndicate_Admin
      Administrator

      Hola @v-jtian-msft ,

      Gracias por esto, estoy buscando cuando no se selecciona nada, en la cortadora se mostrará la última semana de datos por defualt, en la imagen de arriba tengo el promedio diario donde en su lugar, pero me gustaría que se mostrara la última semana cuando no se selecciona ninguna semana.

      Cuando la segmentación aplica una semana seleccionada, mostrará esa semana en su lugar.

      1)

      Year Week new = 'Date'[Year] * 12 + 'Date'[Week Of Year] 

      Este es solo un valor nermico que puedo referir para obtener los usos máximos -1 para comparar agianst la semana anterior

      2) kWh totales

      Total Kwh = SUM('Emporia Device Usage'[Usages KWH])

      Esto es solo un total de los usos, pero la medición es kWh.

      3) Usos de dispositivos de Emporia

      Esto se refiere a los usos de los dispositivos del dispositivo emporia (que es un registrador de datos)

      Pero sí, no estaba claro, la imagen que adjunté era el promedio diario en el visual, me gustaría en cambio la última semana por defualt, pero se puede filtrar con una cortadora.

      Gracias, James.

      • Syndicate_Admin's avatar
        Syndicate_Admin
        Administrator

        Hola, @JamesBurke .
        Gracias por su detallada explicación y respuesta.

        De acuerdo con su descripción, desea establecer el valor predeterminado de la segmentación de datos de la semana anterior, al ver el tablero, si no manipula la segmentación, el visual mostrará el historial de navegación de la semana anterior de forma predeterminada (datos de filtrado dinámico).

        Solución 1:

        Es necesario crear dos columnas de cálculo

        1. Calcule el número semanal de semanas según la fecha.

        weekNum = WEEKNUM('Date'[Dates],2)

        2. Si el número de semana de datos = WEEKNUM(today())-1, es decir, el número de semana de los datos de la última semana, se etiquetará como "LastWeek" y el resto del número de semana de datos se cambiará al tipo "texto".

        LastWeek = 
         IF([weekNum]=  WEEKNUM(TODAY())-1,"LastWeek",FORMAT([weekNum],""))
        

        Haga que la columna de cálculo creada "LastWeek" sea la opción predeterminada para la segmentación.


        Vuelva a publicar el informe en el servicio Power BI.
        Así:


        Solución2
        Puede intentar usar la función ISFILTERED() para determinar si un campo se está aplicando actualmente como una condición de filtro
        Aquí está mi caso de prueba. (Creé una nueva página para mostrarlo)



        IsSelected =
        IF(ISFILTERED('Date'[LastWeek]),SUM('Date'[dailyUsageNum]),
        CALCULATE(SUM('Date'[dailyUsageNum]),FILTER('Date','Date'[LastWeek]="LastWeek"))
        )


        Creé una medida y la puse en el eje Y de Visual para mostrar: si el campo [Last Week] no se está utilizando como filtro en este momento, significa que la segmentación con [Last Week] como campo de filtro en este momento no está seleccionando ningún valor en este momento, ISFILTERED('Date'[LastWeek])=false, y en este momento, se está utilizando como un campo de filtro con ' Date'[LastWeek]="LastWeek")) como filtro para mostrar los resultados, es decir, nada para elegir el caso, la visualización predeterminada de la semana más reciente (la semana anterior) de datos, de lo contrario se selecciona el slicer, esta vez el uso normal del valor del slicer como condición de filtro.

        Aquí está el resultado de la prueba:

        LastWeek =
        IF([weekNum]= WEEKNUM(TODAY())-1,"LastWeek",FORMAT([weekNum],""))

        Espero que mis sugerencias le den buenas ideas, si tiene más preguntas, por favor aclare en una respuesta de seguimiento.

        Saludos

        Carson Jian,

        Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.