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

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Reply
Syndicate_Admin
Administrator
Administrator

Necesidad de crear la lógica de las columnas TOP N teniendo en cuenta varias columnas.

Hola Equipos,
¿Podría usted proporcionar por favor la solución para el siguiente problema:



datos Resultado necesario
oportunidad categtegoryArrinicio de la semana TOPN- confirmarTOPN- al alza
acometer 10005/7/2021 2
bcometer 244345/7/2021 1
hlado positivo10005/7/2021 2
clado positivo34245/7/2021 1
dcometer 06/7/2021 2
elado positivo2443246/7/2021 1
fcometer 2316/7/2021 1
glado positivo43557/7/2021 1
hcometer 2143247/7/2021 1
jcometer 3427/7/2021 2
klado positivo35257/7/2021 2


Necesita ayuda para multar las 10 mejores oportunidades para "comprometerse" y top5 para "upside" según ARR para cada inicio de semana.



=> creado la lógica mencionada a continuación, pero no se considera el inicio de la semana y dará TON para datos completos.
También está ignorando ARR=0 mientras rastrilla las oportunidades, no capaz de undertsand la razón.


Upside_top_weekly_5 =
VAR RANKING2 = IF((Opportunity[Category]= "Upside" && Opportunity[ARR] <> BLANK()), RANKX(FILTER(Opportunity, Opportunity[Category]= "Upside" && Opportunity[ARR] <> BLANK())), Opportunity[ARR] , ,DESC, Dense), BLANK())
devolución
IF(RANKING2<6, RANKING2, BLANK())


1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

No @chirag_pandey77,

Por favor, intente utilizar la siguiente medida:

Upside_top_weekly_5 =
VAR RANKING2 =
    IF (
        Opportunity[Category] = "Upside"
            && Opportunity[ARR] <> BLANK (),
        RANKX (
            ALL ( Opportunity[Opportunity] ),
            CALCULATE (
                SUM ( Opportunity[ARR] ),
                FILTER (
                    Opportunity,
                    Opportunity[Category] = "Upside"
                        && Opportunity[ARR] <> BLANK ()
                )
            ),
            ,
            DESC,
            DENSE
        ),
        BLANK ()
    )
RETURN
    IF ( RANKING2 < 6, RANKING2, BLANK () )

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

Saludos

Dedmon Dai

View solution in original post

3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

Creo que esto será más sencillo si lo divides en un par de medidas.

Creé un [Upside ARR] para devolver solo el valor de ARR para category = upside

Upside ARR = calculate(SUM(Opportunity[ARR]), KEEPFILTERS(Opportunity[Category]="Upside"))
Potencialmente podrías incluir esto en tu medida de clasificación, pero hace que sea fácil probar las piezas de tu calc cuando está separado.
Luego ajusté su medida de clasificación de la siguiente manera:
Upside_top_weekly_5 =
var currentWeek = SELECTEDVALUE(Oportunidad[inicio de semana])
VAR RANKING2 = RANKX(FILTER(ALL(Opportunity), Opportunity[Category]= "Upside" && Opportunity[ARR] <> BLANK() && Opportunity[week start] = currentWeek), Opportunity[ARR] , [Upside ARR] ,DESC, Dense)
devolución
IF(RANKING2<6 &&&NOT(ISBLANK([UPSIDE ARR])), RANKING2, BLANK())
Syndicate_Admin
Administrator
Administrator

No @chirag_pandey77,

Por favor, intente utilizar la siguiente medida:

Upside_top_weekly_5 =
VAR RANKING2 =
    IF (
        Opportunity[Category] = "Upside"
            && Opportunity[ARR] <> BLANK (),
        RANKX (
            ALL ( Opportunity[Opportunity] ),
            CALCULATE (
                SUM ( Opportunity[ARR] ),
                FILTER (
                    Opportunity,
                    Opportunity[Category] = "Upside"
                        && Opportunity[ARR] <> BLANK ()
                )
            ),
            ,
            DESC,
            DENSE
        ),
        BLANK ()
    )
RETURN
    IF ( RANKING2 < 6, RANKING2, BLANK () )

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

Saludos

Dedmon Dai

Syndicate_Admin
Administrator
Administrator

No @chirag_pandey77,

Por favor, intente utilizar la siguiente medida:

Upside_top_weekly_5 =
VAR RANKING2 =
    IF (
        Opportunity[Category] = "Upside"
            && Opportunity[ARR] <> BLANK (),
        RANKX (
            ALL ( Opportunity[Opportunity] ),
            CALCULATE (
                SUM ( Opportunity[ARR] ),
                FILTER (
                    Opportunity,
                    Opportunity[Category] = "Upside"
                        && Opportunity[ARR] <> BLANK ()
                )
            ),
            ,
            DESC,
            DENSE
        ),
        BLANK ()
    )
RETURN
    IF ( RANKING2 < 6, RANKING2, BLANK () )

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

Saludos

Dedmon Dai

Helpful resources

Announcements
Fabcon_Europe_Social_Bogo

Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

Power BI Carousel June 2024

Power BI Monthly Update - June 2024

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

PBI_Carousel_NL_June

Fabric Community Update - June 2024

Get the latest Fabric updates from Build 2024, key Skills Challenge voucher deadlines, top blogs, forum posts, and product ideas.

RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

Top Solution Authors
Top Kudoed Authors