Cree una cuenta de pérdidas y ganancias con Power BI

Share on facebook
Share on twitter
Share on linkedin
Share on telegram
Share on whatsapp

Contenidos

Decidí hablar sobre la creación de una P&L usando Power BI y DAX. En ese momento, todavía estaba bastante temprano en mi viaje a DAX y ciertamente no tenía ninguna experiencia con la contabilidad financiera usando DAX. Derek compartió conmigo cómo construyó su P&L usando Adventure Works. He utilizado estos principios muchas veces para ayudar a los clientes y pensé que sería un buen momento para transmitir ese conocimiento y las habilidades que he aprendido a lo largo del camino en mi blog.

Es lo que importa

Si ha leído algunos de los artículos de mi blog, habría visto un concepto que se repite una y otra vez; Me gusta compartir «cómo» resolver un problema en lugar de simplemente dar a las personas la respuesta a un problema. Es la diferencia entre darle a alguien un pescado y enseñarle a pescar.

Video de la presentación

Aquí está el video de la presentación. Luego procedí a crear una presentación y una demostración que guiaba a las personas a través del proceso de escritura del DAX. Literalmente escribí cada una de estas fórmulas, una a la vez, y luego coloqué la medida en el objeto visual en Power BI para verificar que hiciera lo que necesitaba. A partir de ahí, me puse a resolver el siguiente problema, con cada paso acercándome a una solución funcional. Repetí el proceso una y otra vez hasta que se completó la solución.

Aquí está el video con la demostración paso a paso.

Las fórmulas

Algunas personas me pidieron el libro de ejercicios que usé. No he compartido el workbook, pero estoy feliz de compartir mis fórmulas. Si ve el video y estudia las fórmulas a continuación, debería poder aprender de allí. Cada P&L es diferente según su sistema de origen y las necesidades específicas de la empresa. Con eso en mente, las fórmulas no son tan importantes como el proceso de escribir las fórmulas. Pero si puede ver las fórmulas que escribí, debería ayudarlo a hacer esto para sus propios datos.

Raw Amount = SUM(GeneralLedger[Amount])

Display Value = SUMX(VALUES(Accounts[Report Sign]),[Raw Amount] * Accounts[Report Sign])

Amount Adds Up = SUMX(VALUES(Accounts[Sign]),[Raw Amount] * Accounts[Sign])

Magic Additive Total = VAR isHeaderFiltered = ISFILTERED(Header[Header])
               VAR Result = if(isHeaderFiltered,[Display Value],[Amount Adds Up])
               RETURN Result

Running Total = VAR ThisHeaderID = SELECTEDVALUE(Header[Header Sort])
                VAR Result = CALCULATE([Magic Additive Total],All(Header),Header[Header Sort] <=ThisHeaderID)
                RETURN Result

Correct Display Amt = VAR CalcType = SELECTEDVALUE(Header[CalcType])
               VAR Result = if(CalcType=1,[Magic Additive Total],[Running Total])
               RETURN Result

Total Amount = VAR CalcType = SELECTEDVALUE(Header[CalcType])  // should it be a simple total or a running total?
               VAR DisplayDetailCode = SELECTEDVALUE(Header[Detail])  // 1 if the detail should display and 0 if detail should be hidden
               VAR isSubHeaderVisible = ISFILTERED(Accounts[Subheader])  //we need to know if the sub header is trying to show itself
               VAR Result = SWITCH(TRUE(),  
                            isSubHeaderVisible=TRUE() && DisplayDetailCode = 0 ,BLANK(), 
                            CalcType=1 ,[Magic Additive Total],
                            CalcType=2 ,[Running Total]
                            )
               RETURN Result

Desactivar Mostrar filas sin valores

En el video, cambié la opción «mostrar filas sin valores» en la matriz, para demostrar un punto, pero olvidé volver a cambiarlo. Si lo hace también, asegúrese de volver a cambiar la configuración; de lo contrario, no podrá ocultar los detalles de las filas de datos en blanco.

Comentarios y pensamientos

¿Qué piensas? ¿Sabía que puede hacer esto con Power BI? ¿Tiene algún truco que utilice para resolver algunos de los problemas, quizás de una manera diferente?

Suscribite a nuestro Newsletter

No te enviaremos correo SPAM. Lo odiamos tanto como tú.