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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Syndicate_Admin
Administrator
Administrator

Calcular la suma $ para cada proyecto en función de los valores de una columna

Hola

Los datos que tengo son los que se muestran en la imagen. Los datos tienen ID de proyecto, número de proyecto, número de tarea, $, hora 1 y hora 2.

La hora 1 y la hora 2 están disponibles solo para el número de 1ª tarea o solo para la tarea abierta, pero $ es para cada tarea.

Necesito sumar $ si el proyecto tiene hora 1 u hora 2.

Sum for Average.png

Intenté usar la siguiente medida

Orden $ con horas = calcular(suma('Proyectos'[$]),filtro('Proyectos',suma('Proyectos'[Hora 1])>=1))

Pero esto suma solo las filas donde tengo la hora 1 (es decir, $ 28200). Pero necesito una medida para devolver el valor correcto de $63650
Resultado
ID del proyectoNúmero de proyecto$Horas 1Horas 2
XYZ1231234567890US$ 9,4508515
ABC7898976543210US$ 17,5000150
CBA5672134567899US$ 15.000125250
BCA3219876543219US$ 9,700125150
BCA4569876543219US$ 12.0008500
Saludos
Satheesh

1 ACCEPTED SOLUTION

Pude lograr el resultado deseado usando la función Resumir.

calculate(sum('Projects'[$]),filter(SUMMARIZE('Projects','Projects'[Project ID],"SH",[Hours]),[SH]>0))

Así que este post se puede cerrar.

View solution in original post

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

@reachkrs ,

Por qué los siguientes datos no satisfacen las condiciones (cuál es la base de su agrupación específica).

vhenrykmstf_0-1663298171316.png

A continuación se muestra mi prueba:

Column =
VAR a =
    CALCULATE (
        SUM ( Projects[Total Hour] ),
        FILTER (
            ALL ( Projects ),
            Projects[Project Number] = EARLIER ( Projects[Project Number] )
        )
    )
RETURN
    IF ( a > 0, 1, 0 )



M_ =
CALCULATE (
    SUM ( Projects[$] ),
    FILTER (
        ALL ( Projects ),
        MAX ( Projects[Column] ) = 1
            && Projects[Project Number] = MAX ( Projects[Project Number] )
    )
)

vhenrykmstf_1-1663298304335.png

vhenrykmstf_2-1663298490901.png


Si el problema aún no se resuelve, proporcione información detallada sobre el error y hágamelo saber de inmediato. Esperamos su respuesta.


Saludos
Henrio


Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Hi Henry,

Gracias por compartir el código. Está mostrando resultados. No hay mensajes de error.

Permítanme explicar mi requisito en detalle. Project ID es una referencia de herramienta del sistema de gestión de proyectos que se puede vincular a

  1. un único número de proyecto con número(s) de tarea múltiple o único(s)
  2. número de proyecto múltiple con número(s) de tarea múltiple o única

$ está asociado con cada uno de los números de tarea, pero las horas están en el nivel de ID del proyecto. Entonces, los datos que obtengo del sistema de gestión de proyectos tienen horas asociadas con un solo número de tarea porque si se repite para cada tarea, resultaría en horas incorrectas para un proyecto. No deben ser horas multiplicadas por tarea.

Teniendo en cuenta esto, quería calcular la suma de $ para un proyecto si tiene horas asociadas con él, pero independientemente del número de tareas en un proyecto. No calcule la suma $ si no tiene ninguna hora asociada.

Hice una pequeña corrección a los datos para que quede claro. Lo sentimos, la publicación anterior tenía algunas discrepancias de datos.


ID del proyecto y número de proyecto

ABC788, 8976543222 : $0, correcto

ABC789, 8976543210 : $17500 correcto. tiene horas (150)
BCA321, 9876543219: debería ser de $ 9700 ($ 1200 + $ 1500 + $ 7000) pero muestra $ 33700. Tiene horas (275)
BCA456, 9876543219: debería ser de $ 12000 ($ 4000 + $ 8000) pero muestra $ 33700. Tiene horas (850)
BCA322, 9876543219: debería ser $ 0 pero muestra $ 33700. No tiene horario
CBA567, 2134567899 : $15000 correcto. Tiene horas (375)
XYZ123, 1234567890 : $9450, correcto. Tiene horas (100)
XYZ124, 7891234567 : $0, correcto. No tiene horario

Sum for Average.png

Se adjuntan enlaces a datos y archivos PBI.

https://filetransfer.io/data-package/F0io6t4r#link

https://filetransfer.io/data-package/TTrSBhV0#link

Saludos

Satheesh

Pude lograr el resultado deseado usando la función Resumir.

calculate(sum('Projects'[$]),filter(SUMMARIZE('Projects','Projects'[Project ID],"SH",[Hours]),[SH]>0))

Así que este post se puede cerrar.

Syndicate_Admin
Administrator
Administrator

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

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