Calcular ingresos por persona

Un usuario Pregunto ✅

danny-feliz

Hola a todos,

Soy bastante nuevo en el mundo de Power BI y espero que me puedan ayudar con un problema.

Me gustaría calcular un ingreso por persona por proyecto basado en el % de horas escritas, por ejemplo:

Proyecto X

Los ingresos totales; 1000 €

Persona x ; 10 horas escritas (10%) = ingresos 100€

Persona y ; 90 horas escritas (90%) = ingresos 900€

Tengo los siguientes conjuntos de datos:

Proyecto de ingresos de tabla de hechos (basado en facturas enviadas)

Tabla de hechos horas escritas (por persona, por día, por proyecto)

proyecto de tabla de dimensiones

Tabla de dimensiones empleados

Tiempo de tabla de dimensiones

¿Cómo puedo hacer un cálculo que me muestre los ingresos como el anterior?

Me gustaría mostrar esto por proyecto pero también por persona con todos los proyectos en los que trabajó.

¡Muchas gracias!

En respuesta a danny-feliz

Hola @Danny-Happy,

Puede consultar el siguiente DAX.

Measure =
SUM ( 'F - invoices'[Invoice value] )
    * DIVIDE (
        CALCULATE (
            SUM ( 'F - written hours'[Written hours] ),
            ALLEXCEPT ( 'D - employee', 'D - employee'[Name] )
        ),
        CALCULATE (
            SUM ( 'F - written hours'[Written hours] ),
            ALL ( 'F - written hours' )
        )
    )

amichandak

Prueba Me Gusta

Ingresos por persona como = divide(Suma(Tabla1[Revenue])/suma(Tabla2[Hour]) )

Se debe crear una dimensión de persona común para analizar los datos.

En algún momento, el contexto de la fila es importante, consulte: https://community.powerbi.com/t5/Community-Blog/Decoding-Direct-Query-in-Power-BI-Part-2-Date-Differ…

danny-feliz

En respuesta a amichandak

Gracias por su respuesta.

Sin embargo, el resultado no es lo que esperaba:

Proyecto 1

Ingresos = 5474 € (2 facturas)

Total de horas escritas = 32

Horas escritas persona X = 6,50

Resultado = 842 €

Resultado esperado = 1111 € (5474 € / 32 * 6,50)

amichandak

En respuesta a danny-feliz

divide(Suma(Tabla1[Revenue])/suma(Tabla2[Hour]) ) * suma(Tabla[Written hours person])

Pero dudo que esto funcione sin tomar un contexto.

¿Puede compartir datos de muestra y resultados de muestra?

danny-feliz

En respuesta a amichandak

¡Aqui tienes!

https://1drv.ms/u/s!AuI4FRcSEkqBgQI6vt-9f7AYNXY7?e=yKdoUS

En respuesta a danny-feliz

Hola @Danny-Happy,

Puede consultar el siguiente DAX.

Measure =
SUM ( 'F - invoices'[Invoice value] )
    * DIVIDE (
        CALCULATE (
            SUM ( 'F - written hours'[Written hours] ),
            ALLEXCEPT ( 'D - employee', 'D - employee'[Name] )
        ),
        CALCULATE (
            SUM ( 'F - written hours'[Written hours] ),
            ALL ( 'F - written hours' )
        )
    )

danny-feliz

En respuesta a v-eachen-msft

Una pregunta más.

¿Cuál sería el DAX si las «horas escritas» contienen varios proyectos?

1 persona puede escribir sus horas en más de un proyecto.

He añadido nuevos archivos de prueba:

https://1drv.ms/u/s!AuI4FRcSEkqBgQ-jHXmlJRi0_2RQ?e=grhuNU

danny-feliz

En respuesta a amichandak

Sí, puedo.

Pero, ¿cómo puedo hacer eso?

En respuesta a danny-feliz

Hola @Danny-Happy,

Cargue sus archivos sin información confidencial en OneDrive y comparta el enlace aquí.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *