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

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
NaderSaeed
Helper II
Helper II

Columna calculada que devuelve recuento distinto con una segmentación de fecha

Hola a todos

Esta es una columna calculada en Hoja (Correos) que devuelve 1 si alguien en Hoja (Prueba) enviado dos veces (contando distintos los enviados en fechas),0.5, si alguien se envió una vez, y 0 si alguien no se envió en absoluto.

Columna ?
VAR M - Correos[Correo]
devolución
SI(
CALCULATE(
DISTINCTCOUNT(Test[SubmittedOn]),
FILTRO (ALLSELECTED(Test),
Test[Submittedby] á M && Test[SubmittedOn] >- SELECTEDVALUE('Start Date'[Start Date]) && Test[SubmittedOn] <- SELECTEDVALUE('End Date'[End Date]))
)>-2,1,
SI(
CALCULATE(
DISTINCTCOUNT(Test[SubmittedOn]),
FILTRO (ALLSELECTED(Test),
Test[Submittedby] á M && Test[SubmittedOn] >- SELECTEDVALUE('Start Date'[Start Date]) && Test[SubmittedOn] <- SELECTEDVALUE('End Date'[End Date]))
)-1,0,5,0
)
)
La fecha de inicio y la hora de finalización son
• GENERATESERIES(DATE(2020, 1,1), DATE(2060,12,31))
El problema es que quiero que una segmentación de fechas en mi panel de información me desanime y no puedo hacerlo con el DAX anterior.
Pero cuando bajo las fechas manualmente en la función, usando Date(Year, Month, Day), funciona perfectamente.
¿Hay de todos modos para hacer que esto funcione en una columna calculada?
Gracias.
4 REPLIES 4
v-zhenbw-msft
Community Support
Community Support

Hola @NaderSaeed ,

Si desea utilizar la segmentación de fechas para controlar el resultado, debe crear una medida que no sea una columna de cálculo.

Creamos una medida basada en su lógica de negocio para satisfacer sus requisitos.

1. Necesitamos crear una relación entre la tabla Mail y la tabla de pruebas.

cal1.jpg

2. Entonces podemos crear una medida.

Measure = 
VAR M =
    MAX ( Mail[Mails] )
VAR _selected_Start =
    SELECTEDVALUE ( 'Start Date'[Value] )
VAR _selected_End =
    SELECTEDVALUE ( 'End Date'[Value] )
VAR _result1 =
    IF (
        CALCULATE (
            DISTINCTCOUNT ( Test[SubmittedOn] ),
            FILTER (
                ALLSELECTED ( Test ),
                Test[Submittedby] = M
                    && Test[SubmittedOn] >= _selected_Start
                    && Test[SubmittedOn] <= _selected_End
            )
        ) >= 2,
        1,
        IF (
            CALCULATE (
                DISTINCTCOUNT ( Test[SubmittedOn] ),
                FILTER (
                    ALLSELECTED ( Test ),
                    Test[Submittedby] = M
                        && Test[SubmittedOn] >= _selected_Start
                        && Test[SubmittedOn] <= _selected_End
                )
            ) = 1,
            0.5,
            0
        )
    )
VAR _result2 =
    IF (
        CALCULATE (
            DISTINCTCOUNT ( Test[SubmittedOn] ),
            FILTER ( ALLSELECTED ( Test ), Test[Submittedby] = M )
        ) >= 2,
        1,
        IF (
            CALCULATE (
                DISTINCTCOUNT ( Test[SubmittedOn] ),
                FILTER ( ALLSELECTED ( Test ), Test[Submittedby] = M )
            ) = 1,
            0.5,
            0
        )
    )
RETURN
    IF (
        ISBLANK ( _selected_Start ) || ISBLANK ( _selected_End ),
        _result2,
        _result1
    )

3. Por fin creamos dos segmentaciones de datos basadas en la fecha de inicio y la fecha de finalización.

cal2.jpg

cal3.jpg

Si no cumple con sus requisitos, ¿podría mostrar el resultado esperado exacto basado en la tabla que ha compartido?

BTW, pbix como adjunto.

Saludos

Equipo de apoyo a la comunidad _ zhenbw

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

Genio, gracias.

amitchandak
Super User
Super User

@NaderSaeed ,¿Puede compartir datos de ejemplo y salida de ejemplo en formato de tabla?

Hoja (Prueba)

NaderSaeed_1-1594655021982.png

Hoja (Correo)

NaderSaeed_0-1594654987744.png

La hoja (Mail) tiene toda la base de datos para todos los correos electrónicos, y la hoja (Prueba) sólo tiene los que han enviado, por lo que estoy contando el SubmittedOn Coulmn como sería el mejor indicador en nuestro caso.

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

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

Top Solution Authors