Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Total acumulado: quiero tener en cuenta todas las fechas anteriores al intervalo de fechas seleccionado

Estoy tratando de calcular el valor acumulado usando TODAS las fechas anteriores, pero solo MOSTRAR los últimos 5 días.

Actual:

JoyH_2-1714418454711.png

Expectativa:

JoyH_4-1714418598709.png

Tengo 3 tablas trans, cuenta, fecha

Hay una relación activa en trans.date = date.date

Hay una relación inactiva en account.accountcreateddate = date.date.

Recuento de cuentas = CALCULAR(
COUNTROWS(Cuenta),
USERELATIONSHIP(Cuenta[CuentaFechaCreada],DateTable (Tabla de fechas)[Fecha])
)

Desde el 1/3/24 hasta el 29/4/24 se creó 1 cuenta por día.

Si miro la suma acumulada sin ningún filtro, la suma acumulada del recuento de cuentas el 25/4 fue 56

JoyH_0-1714418175605.png

Pero cuando filtro la página en DateTable.Date, el recuento acumulado o de suma acumulada se restablece para incluir solo ese intervalo de fechas. El importe de la transacción se muestra correctamente.

JoyH_1-1714418241724.png

Importe total acumulado =
CALCULAR(
[TotalAmount],
FILTRO(
TODO('trans'),
Trans[fecha] <= MÁXIMO(Trans[fecha])
))
¿Cuál es el DAX correcto para el recuento total acumulado de cuentas?
4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

Hola @JoyH

Descargar archivo PBIX de ejemplo

Si tiene una tabla de fechas, debe usar una relación activa con ella. Eliminé la relación entre trans y la tabla Date y activé la relación entre la tabla Date y la cuenta.

Entonces escribí esto

Measure = CALCULATE(COUNTROWS('Account'), FILTER(ALL('Account'), 'Account'[AccountCreatedDate] <= SELECTEDVALUE('Account'[AccountCreatedDate]) ))

A continuación, puede aplicar un filtro relativo al objeto visual para mostrar solo el último número X de días

reldates.png

Saludos

Phil

Gracias por tomarse el tiempo de responder.
Necesito mantener la relación de trans a DateTable, ya que la fecha de la transacción es de lo que trata la mayor parte del informe. El usuario final desea ver las cuentas acumuladas activas durante el mismo intervalo de fechas.

Sin embargo, me diste otra idea, y es contar las cuentas de la tabla de transacciones y no la cuenta. Verán el # de cuentas que tenían transacciones frente al # de cuentas activas, pero debería estar muy cerca.

Gracias @PhilipTreacy y @PhilipTreacy

Hola, @JoyH

En función del archivo PBIX de ejemplo que proporcionó, creé la siguiente expresión DAX:

Total Cumulative Account Count1 = 
VAR _seleteddate =
    SELECTEDVALUE ( DateTable[Date] )
RETURN
    IF (
        ISINSCOPE ( DateTable[Date] ),
        COUNTAX (
            FILTER ( ALL('Account'), 'Account'[AccountCreatedDate] <= _seleteddate ),
            'Account'[account]
        ),
        COUNTA ( Account[account] )
    )

Estos son los resultados:

vjianpengmsft_0-1714629459218.png

vjianpengmsft_1-1714629776552.png

He subido el archivo PBIX que utilicé esta vez a continuación.

Cómo obtener respuestas rápidas a tu pregunta

Si no ayuda, proporcione más detalles con la salida deseada y el archivo pbix sin información de privacidad (o algunos datos de muestra).

Saludos

Jianpeng Li

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
Administrator
Administrator

Creo que desea usar la dimensión Fecha en el DAX:

Total Cumulative Account Count = 
    CALCULATE(
        [Account Count],
         DateTable[Date] <= MAX(DateTable[Date])
         )

Helpful resources

Announcements
LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.