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
Dellis81
Continued Contributor
Continued Contributor

SUMX gran total

Hola

Tengo un informe donde tengo múltiples tipos de "años" estoy tratando de sumar los ingresos netos a través de las divisiones de entidades - donde una división de cultivos de un año específico puede abarcar varios años calendario. Por ejemplo -2019 maíz abarca el año calendario 2018-2020. Dentro de este mismo informe - Tengo divisiones (es decir, financiamiento) donde queremos sólo los dólares representados con 2019.

En este ejemplo - Tengo los ingresos netos correctos dentro de las columnas de calendario y año de producción, pero obviamente el GRAND TOTAL es incorrecto.

Tengo una cortadora para cosechar el valor del año de ProjectGroupSetup[ProdYear] - así que si se selecciona 2019, quiero todos los cultivos de 2019 (que abarca varios años calendario) + esas divisiones con un calendario designado año año 2019.

DivisionalReporting.PNG

Esta primera medida es mi intento inicial utilizando una instrucción IF para determinar qué calculate([Net Income] y filtrar en función del año seleccionado).

ExecYr NetMargin Test =
VAR SelectedYr =
    SELECTEDVALUE ( ProjectGroupSetup[ProdYear] )
VAR CurrentDivisionYr =
    MAX ( Division[ExecYr] )
VAR ReportValue =
    IF (
        CurrentDivisionYr = "CalYr",
        CALCULATE (
            [BS Net Income],
            ALL ( ProjectGroupSetup[ProdYear] ),
            'CALENDAR'[Year] = SelectedYr
        ),
        CALCULATE (
            [BS Net Income],
            ALL ( 'CALENDAR' ),
            ProjectGroupSetup[ProdYear] = SelectedYr
        )
    )
RETURN
    ReportValue

Esta segunda medida fue mi intento de usar el SUMX a través de "divisiones" pensando que eventualmente podría usar este valor como total. Termino con el mismo resultado que se muestra arriba

ExecYr NetMargin Test2 =
VAR SelectedYr =
    SELECTEDVALUE ( ProjectGroupSetup[ProdYear] )
VAR ReportValue =
    SUMX (
        Division,
        VAR CurrentDivisionYr =
            MAX ( Division[ExecYr] )
        RETURN
            IF (
                CurrentDivisionYr = "CalYr",
                CALCULATE (
                    [BS Net Income],
                    ALL ( ProjectGroupSetup[ProdYear] ),
                    'CALENDAR'[Year] = SelectedYr
                ),
                CALCULATE (
                    [BS Net Income],
                    ALL ( 'CALENDAR' ),
                    ProjectGroupSetup[ProdYear] = SelectedYr
                )
            )
    )
RETURN
    ReportValue

Una vez más, los valores individuales son correctos - el total general no lo es. Mi objetivo final es eliminar la división como un encabezado de columna, reflejando un total general adecuado en la parte inferior.

Realmente aprecio el apoyo ofrecido en el foro. ¡Gracias!

6 REPLIES 6
amitchandak
Super User
Super User

@Dellis81 , Tienes que probar una nueva medida como

sumx(summarize(Division, Division[ExecYr], "_1",[ExecYr NetMargin Test]),[_1])

O
sumx(summarize(Division,Division[Division], Division[ExecYr], "_1",[ExecYr NetMargin Test]),[_1])

es posible que tenga que agregar otros bys de grupo en resumen

Dellis81
Continued Contributor
Continued Contributor

Gracias a ambos por responder 🙂

He probado ambas ideas, todavía no del todo. Por lo tanto, he intentado "atonar" el archivo en vivo, y tengo un ejemplo más simplificado para mostrar. Aquí hay un enlace de una unidad

https://1drv.ms/u/s!AmBVCme14p7xlVa2IR8lDSI2XNhu?e=btu7qg

La siguiente imagen ilustra los resultados de las dos medidas proporcionadas anteriormente: la línea total en amarillo debe ser de 1.264.497,44 dólares para el año 2019

DivisionalReporting.PNG

PD - lo siento, mientras manipulaba los datos para atraer, no pude obtener un valor mayor en la división de financiamiento. Pero, creo que puedes trabajar con lo que yo tengo.

¡Agradezco su ayuda!

Hola @Dellis81 ,

Cree 2 medidas como se indica a continuación:

Measure = SUMX(VALUES('Division'[Division]),'CALENDAR'[ExecYr NetMargin Test])
Measure2 = SUMX(VALUES('Division'[Division]),'CALENDAR'[ExecYr NetMargin Test2])

Y verás:

Annotation 2020-08-05 085440.png

Para el archivo .pbix actualizado, pls ver adjunto.

Saludos
Kelly
¿He respondido a tu pregunta? ¡Marca mi puesto como una solución!

¡¡¡Sí!!! ¡Gracias!

Pude transferir con éxito su medida en el archivo en vivo más grande - IMPRESIONANTE!

Creo que estaba cerca de hacer lo mismo - excepto que estaba tratando de poner las declaraciones IF dentro de la SumX. Tomó la medida que contiene el IF - y se colocó dentro del SumX. ¿Cuál es la diferencia? A continuación se mide mi intento de tomar su medida -y reemplazar con lo que pensé que debería funcionar. No quiero tomarte mucho tiempo en esto, ¿es más mi intento de entenderlo?

¡Gracias!

ExecYr NetMargin Test3 = 
VAR SelectedYr =
    SELECTEDVALUE ( ProjectGroupSetup[ProdYear] )

return
SUMX(VALUES('Division'[Division]),
VAR SelectedYr =
    SELECTEDVALUE ( ProjectGroupSetup[ProdYear] )
VAR CurrentDivisionYr = max(Division[ExecYr])
return IF ( CurrentDivisionYr = "CalYr", 
    CALCULATE([BS Net Income],ALL(ProjectGroupSetup[ProdYear]),'CALENDAR'[Year]=SelectedYr), 
    CALCULATE([BS Net Income],ALL('CALENDAR'),ProjectGroupSetup[ProdYear]=SelectedYr )
    ))

v-kelly-msft
Community Support
Community Support

Hola @Dellis81 ,

Es un problema grandtotal que es un problema común.

Intente crear una medida como se indica a continuación:

_Sum=SUMX(ALLSELECTED([diviation]),[ExecYr NetMargin Test2])

Aquí está la referencia:

https://community.powerbi.com/t5/Desktop/SUMX-grand-total/td-p/1269630


Saludos
Kelly
¿He respondido a tu pregunta? ¡Marca mi puesto como una solución!
parry2k
Super User
Super User

@Dellis81 ofender, pero demasiado para leer. Será más fácil si proporciona datos de ejemplo y salida esperada.



Subscribe to the @PowerBIHowTo YT channel for an upcoming video on List and Record functions in Power Query!!

Learn Power BI and Fabric - subscribe to our YT channel - Click here: @PowerBIHowTo

If my solution proved useful, I'd be delighted to receive Kudos. When you put effort into asking a question, it's equally thoughtful to acknowledge and give Kudos to the individual who helped you solve the problem. It's a small gesture that shows appreciation and encouragement! ❤


Did I answer your question? Mark my post as a solution. Proud to be a Super User! Appreciate your Kudos 🙂
Feel free to email me with any of your BI needs.

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