Forum Discussion

Syndicate_Admin's avatar
Syndicate_Admin
Icon for Administrator rankAdministrator
1 year ago
Solved

Ayuda

Hola

Soy desarrollador junior en Power BI.

Tengo una tabla de horarios y una tabla de tarifas que es Tau_annuel.

Mi necesidad es poder mostrar una fecha seleccionada de un segmento de fecha más los 12 meses anteriores en un gráfico de líneas eliminando las fechas nulas o vacías.

Necesito su ayuda y agradecería su apoyo.

  • Hola
    Vengo a ofrecerte mi solución que además funciona muy bien.
    -------------------------------------------------------------------------------------------
    Tasa 12 meses rodantes =
    VAR Fecha actual = MÁXIMO('SEGMENTO DE FECHA de sol'[FECHA]) Recupera la fecha seleccionada más reciente en el contexto del segmento de fecha. Este SEGMENTO DE FECHA dim representa la imagen de la tabla de tiempo original
    VAR Fecha anterior = FECHA(Fecha actual, -12) /*DATE(YEAR(Currentdate), MONTH(Currentdate) - 12, DAY(Currentdate))*/
    Calcula la fecha que es 12 meses antes de la fecha seleccionada.
    Atención: Si el mes es enero (1), MONTH(Currentdate) - 12 dará un resultado negativo.
    Para una gestión sólida de años y meses, es mejor utilizar EDATE(Currentdate, -12).
    VAR Resultado =
    CALCULAR(
    SUMX(Mesa,
    Mesa[Puntuación]),
    FILTRO(HORA,
    Condiciones del filtro:
    NO ISBLANK(HORA[FECHA]) && Excluir fechas en blanco
    HORA[FECHA] <= Fecha actual && Fechas <= fecha courante
    HORA[FECHA] >= Fecha anterior) Fechas>= Hace 12 meses
    )
    CALCULATE aplica un filtro en la tabla de fechas (TEMD_TEMPS) para mantener solo las fechas entre Anteriorfecha y Fecha actual (ambas incluidas), excluyendo los valores de fecha vacíos.
    Para este contexto filtrado, SUMX suma todas las tasas de la tabla.
    DEVOLUCIÓN
    Resultado

4 Replies

  • Hola @patrickmballa90 - Asegúrese de que las relaciones estén en su lugar entre las tablas:

    Time[Date] debe marcarse como una tabla de fechas. Annual_Rate tabla debe tener una columna Date (o una columna relacionada) que se conecte a Time[Date].

    Ahora cree una medida para ayudar a filtrar solo los últimos 12 meses

    IsInLast12Months =
    VAR SelectedDate = MAX('Time'[Date])
    DEVOLUCIÓN
    SI(
    'Hora'[Fecha] <= FechaSeleccionada &&
    'time'[Date] >= EDATE(SelectedDate, -11),
    1,
    0
    )

    Ahora use el gráfico y establezca el parámetro de filtro en 1.

    Espero que esto ayude.

  • Proporcione datos de muestra que cubran su problema o pregunta por completo, en un formato utilizable (no como una captura de pantalla).
    No incluyas información confidencial. No incluya nada que no esté relacionado con el problema o la pregunta.
    Muestre el resultado esperado en función de los datos de muestra que proporcionó.

    ¿Necesitas ayuda para subir datos? https://community.fabric.microsoft.com/t5/Community-Blog/How-to-provide-sample-data-in-the-Power-BI-Forum/ba-p/963216
    ¿Quieres respuestas más rápidas? https://community.fabric.microsoft.com/t5/Desktop/How-to-Get-Your-Question-Answered-Quickly/m-p/1447523

  • Hola @patrickmballa90 ,

    Gracias @rajendraongole1 por su respuesta en este hilo.

    ¿Puedo preguntarle si ha resuelto este problema?

    Si se resuelve, marque la respuesta útil o comparta su solución y acéptela como solución, será útil para que otros miembros de la comunidad que tengan problemas similares al suyo lo resuelvan más rápido.

    Saludos
    Chaithra.

  • Hola
    Vengo a ofrecerte mi solución que además funciona muy bien.
    -------------------------------------------------------------------------------------------
    Tasa 12 meses rodantes =
    VAR Fecha actual = MÁXIMO('SEGMENTO DE FECHA de sol'[FECHA]) Recupera la fecha seleccionada más reciente en el contexto del segmento de fecha. Este SEGMENTO DE FECHA dim representa la imagen de la tabla de tiempo original
    VAR Fecha anterior = FECHA(Fecha actual, -12) /*DATE(YEAR(Currentdate), MONTH(Currentdate) - 12, DAY(Currentdate))*/
    Calcula la fecha que es 12 meses antes de la fecha seleccionada.
    Atención: Si el mes es enero (1), MONTH(Currentdate) - 12 dará un resultado negativo.
    Para una gestión sólida de años y meses, es mejor utilizar EDATE(Currentdate, -12).
    VAR Resultado =
    CALCULAR(
    SUMX(Mesa,
    Mesa[Puntuación]),
    FILTRO(HORA,
    Condiciones del filtro:
    NO ISBLANK(HORA[FECHA]) && Excluir fechas en blanco
    HORA[FECHA] <= Fecha actual && Fechas <= fecha courante
    HORA[FECHA] >= Fecha anterior) Fechas>= Hace 12 meses
    )
    CALCULATE aplica un filtro en la tabla de fechas (TEMD_TEMPS) para mantener solo las fechas entre Anteriorfecha y Fecha actual (ambas incluidas), excluyendo los valores de fecha vacíos.
    Para este contexto filtrado, SUMX suma todas las tasas de la tabla.
    DEVOLUCIÓN
    Resultado