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
Linq
Regular Visitor

Totales en matriz de diferentes tablas dependiendo del valor del campo en la tabla

Hola a todos, estoy atascado con un problema estoy tratando de lidiar por un par de días ahora... Mi conjunto de datos contiene tablas relacionadas por uno con el tipo de relación de mayo. Estos son: Cliente > Proyectos (relacionados por ID de cliente) > Tareas (relacionadas por ProjectID) > Actividades (relacionadas por TaskID).

Además, la tabla Actividades está relacionada con la tabla de calendario (por [Fecha de actividad]. Hay otra tabla denominada RecurringProjects que está relacionada con la tabla Projects por [ProjectID] y con Calendar por [PeriodStartDate].

En la tabla Proyectos simplemente tengo ID, CustomerID, Name, Type (StandardProject/RecurringProject/Implementation), StartingDate, EndDate y Status (acvite/finished).

En RecurringProjects tengo ID (incremental de la base de datos), ProjectID, StartPeriod, TimeBudgetAmount y CashBudgetAmount.

El trato con dos tablas de proyectos es que tengo datos separados para dos tipos diferentes de proyectos. Los proyectos estándar (por ejemplo, NUEVO PROYECTO DE SITIO WEB) se separan en tareas (por ejemplo, BACKEND, FRONTEND) y las tareas tienen su presupuesto de tiempo y presupuesto en efectivo (por ejemplo, BACKEND tiene un presupuesto de 30h y $30 y FRONTEND tiene 20h y $20), por lo que el proyecto tendrá un presupuesto de 50 horas y un presupuesto en efectivo de $50.

El segundo tipo de proyecto son los proyectos recurrentes (diferente mecanismo de tabla y llenado en una base de datos) que tiene presupuesto de tiempo para cada mes y está relacionado con todo el proyecto en lugar de una tarea (por ejemplo, PROYECTO DE APOYO AL SITIO WEB que comienza el 1 de marzo '20 y todavía se está ejecutando tendrá tres filas en la tabla RecurringProjects:

1) ProjectID 5; StartPeriod 03/01/2020; TimeBudgetAmount 20; CashBudgetAmount $20

2) ProjectID 5; StartPeriod 04/01/2020; TimeBudgetAmount 10; CashBudgetAmount $10

3) ProjectID 5; StartPeriod 05/01/2020; TimeBudgetAmount 5 ; CashBudgetAmount $5

Y ahora aquí viene el problema - lo que necesito lograr es mostrar una matriz que contiene Customer y ProjectName en filas y Type(Standard/Recurring/Implementation), TimeUsed, [TimeBudget], [CashBudget], [CashUsed] y [Outcome $] en valores.

Los últimos cuatro valores son medidas:

1) TimeBudget - tiene que ser sth como < si ProjectType es 'Recurrente' entonces SUM(RecurringProjects.TimeBudgetAmount) else SUM(Tasks.TimeBudget) >

2) CashBudget - similar - < si ProjectType es 'Recurrente' entonces SUM(RecurringProjects.CashBudgetAmount) otro SUM(Tasks.CashBudgetAmount) >

3) CashUsed - tiene que ser TimeUsed (suma de horas de trabajo de la tabla Acitivities gastadas en cada tarea relacionada con el proyecto) multiplicado por $1

4) Resultado - debe ser CashUsed restado de CashBudgetAmount y - para conseguirlo más difícil - debe incluir el período de tiempo seleccionado en el calendario.

Por lo tanto, para los ejemplos anteriores, suponiendo que ambos proyectos hacen referencia al mismo cliente, si selecciona 03/2020 debe mostrar dos filas en una matriz:

CLIENTE1

1) NUEVO PROYECTO DE SITIO WEB ; Implementación; 10h; 50h; $50 ; $10 ; $40

2) PROYECTO DE APOYO AL SITIO WEB; Recurrente ; 2h; 20h; $20 ; $2 ; $18

TOTAL ------------------------------------------------ 12:00 p.m.; 70 horas; $70; $12; $58

He intentado simple IF(... , SUM(), SUM()) pero por desgracia TOTALS no están funcionando....

Estaría agradecido por cualquier consejo.

1 ACCEPTED SOLUTION

Debe poder agregar los valores de proyecto recurrentes y regulares en una función CALCULATE y, a continuación, la matriz realizará la lógica IF mediante las filas de tipo de cliente y de proyecto que especifique. Hemos detectado un problema desconocido.

Tiempo ?

CALCULAR(
SUM( RecurringProjects[TimeBudgetAmount] ) +
SUM( Tareas[TimeBudget] ),
Calendario[Fecha]
)

View solution in original post

8 REPLIES 8
VijayP
Super User
Super User

@Linq Es esto posible para crear una pequeña hoja de spread de Excel con estos números y también cómo necesita Matrix en la forma de hoja de cálculo de Excel puedo responderle rápidamente




Did I answer your question? Mark my post as a solution! Appreciate your Kudos!!
MY Blog || My YouTube Channel || Connect with me on Linkedin || My Latest Data Story - Ageing Analysis

Proud to be a Super User!


jstorm
Resolver III
Resolver III

Necesita una tabla asociativa para "Tipo de proyecto" para relacionar las dos tablas de proyecto. A continuación, agregue 'Tipo de proyecto' como una fila junto con el nombre del cliente y del proyecto. Realice medidas para cada columna que esté intentando mostrar utilizando CALCULATE( SUM( Recurring ) + SUM(Projects[Field]), [Filter1]...).

Linq
Regular Visitor

Quiere decir que debo crear una tabla denominada "Project Type" que contendrá la columna [ProjectID] y [TYPE] y estará relacionada con la tabla Projects por ID - ProjectID y con RecurringProjects por ID - ProjectID ?

Lo siento, puede que haya malinterpretado lo que intentalograr. ¿Puede publicar una captura de pantalla de su modelo?

Linq
Regular Visitor

Lo siento, pero los lables están en otro idioma. Mi modelo se ve así:model.png

Por supuesto, cada relación es de uno a muchos tipos con la dirección de flecha de uno a muchos.

Debe poder agregar los valores de proyecto recurrentes y regulares en una función CALCULATE y, a continuación, la matriz realizará la lógica IF mediante las filas de tipo de cliente y de proyecto que especifique. Hemos detectado un problema desconocido.

Tiempo ?

CALCULAR(
SUM( RecurringProjects[TimeBudgetAmount] ) +
SUM( Tareas[TimeBudget] ),
Calendario[Fecha]
)

Linq
Regular Visitor

OMG, esto ni siquiera necesita el parámetro de filtro para CALCULATE o nivel de desglose con tipo de proyecto :).

Gracias a un ton 😄

¡Power BI nos da lo mejor de todos! Me alegra que pudieras resolverlo 👍

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.

Top Solution Authors