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

Get certified in Microsoft Fabric—for free! For a limited time, get a free DP-600 exam voucher to use by the end of 2024. Register now

Reply
Syndicate_Admin
Administrator
Administrator

Calcular la suma de valores entre filas específicas

Estoy atrapado tratando de descubrir cómo resolver este problema y realmente espero que puedas ayudarme.

Tengo dos tablas:

  • Fusión de código
SitioLíneaPosición del elementoElementoCampañaCódigo
GRA1ABP0251TUBO2GRA1ABP0251TUBE2
GRA1ABP0251TUBO6GRA1ABP0251TUBE6
GRA1ABP0253COSE3GRA1ABP0253COUD3
GRA1ABP0253COSE7GRA1ABP0253COUD7
GRA1ACO0033TUBO1GRA1ACO0033TUBE1
GRA1ACO0033TUBO5GRA1ACO0033TUBE5
GRA1ACO0035REUC4GRA1ACO0035REUC4
GRA1ACO0035REUC7GRA1ACO0035REUC7
  • Duración de la campaña
SitioLíneaPosición del elementoElementoCampañaCódigoDuración de la campaña (h)
GRA1ABP0251TUBO1GRA1ABP0251TUBE16584
GRA1ABP0251TUBO2GRA1ABP0251TUBE26958
GRA1ABP0251TUBO3GRA1ABP0251TUBE36523
GRA1ABP0251TUBO4GRA1ABP0251TUBE46215
GRA1ABP0251TUBO5GRA1ABP0251TUBE57115
GRA1ABP0251TUBO6GRA1ABP0251TUBE64885
GRA1ABP0251TUBO7GRA1ABP0251TUBE76523
GRA1ABP0251TUBO8GRA1ABP0251TUBE86654
GRA1ABP0253COSE1GRA1ABP0253COUD16656
GRA1ABP0253COSE2GRA1ABP0253COUD27154
GRA1ABP0253COSE3GRA1ABP0253COUD32656
GRA1ABP0253COSE4GRA1ABP0253COUD49845
GRA1ABP0253COSE5GRA1ABP0253COUD56225
GRA1ABP0253COSE6GRA1ABP0253COUD66944
GRA1ABP0253COSE7GRA1ABP0253COUD72354
GRA1ACO0033TUBO1GRA1ACO0033TUBE16644
GRA1ACO0033TUBO2GRA1ACO0033TUBE26666
GRA1ACO0033TUBO3GRA1ACO0033TUBE36774
GRA1ACO0033TUBO4GRA1ACO0033TUBE46885
GRA1ACO0033TUBO5GRA1ACO0033TUBE56445
GRA2ACO0043TUBO6GRA2ACO0043TUBE68554
GRA1ACO0035REUC1GRA1ACO0035REUC12466
GRA1ACO0035REUC2GRA1ACO0035REUC25484
GRA1ACO0035REUC3GRA1ACO0035REUC33524
GRA1ACO0035REUC4GRA1ACO0035REUC44965
GRA1ACO0035REUC5GRA1ACO0035REUC54512
GRA1ACO0035REUC6GRA1ACO0035REUC66577
GRA1ACO0035REUC7GRA1ACO0035REUC78454

Las relaciones actuales entre las dos tablas son:

Duración de la campaña de Code Fusion

Código 1:* Código

Quiero calcular una suma de la [Duración de la campaña] entre las campañas que están presentes en 'Code Fusion' a medida que filtro el sitio, la línea y el elemento con segmentaciones de datos.

Por ejemplo, cuando filtro con las segmentaciones de datos 'Code Fusion' [Site] = GRA1, 'Code Fusion' [Line] = ABP025 y 'Code Fusion' [Element] = TUBE, me gustaría tener una medida que calcule la suma de la duración de la campaña de la campaña 2 a 6 ( = 6958 + 6523 + 6215 + 7115 + 4885 = 31696 )

Pero se complica porque como tengo una relación de uno a muchos, cuando filtro con 'Code Fusion' solo mantendrá las líneas de la campaña 2 y 6 de TUBE en la posición 1 de ABP025 por ejemplo. Traté de hacer una medida como esta: CALCULATE(SUM('Duración de la campaña'[Campaign duration)]), FILTER(ALL('Duración de la campaña'), 'Duración de la campaña'[Campaña] >= MIN('Code Fusion'[Campaña]) && 'Duración de la campaña'[Duración de la campaña] <= MAX('Fusión de código'[Campaña])))

Pero resumirá todas las campañas de 2 a 6 de cada sitio y cada línea y cada elemento.

Espero que mi explicación sea lo suficientemente clara y que haya una salida a este problema. ¡Gracias de antemano por toda su ayuda!

3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

Si la solución de @tamerj1 no funciona, puede probar la medida de la siguiente manera.

Duración =
Dónde _site =
SELECTEDVALUE('Fusión de código'[Sitio])
Dónde _line =
SELECTEDVALUE('Fusión de código'[Línea])
Dónde _element =
SELECTEDVALUE('Fusión de código'[Elemento])
Dónde _codeTable =
ADICIONES('Fusión de código', "_code", DERECHA('Fusión de código'[Código],1))
Dónde _lowerCampaign =
BRIBONA(ADICIONES('Fusión de código', "_code", DERECHA('Fusión de código'[Código],1)),[_code])
Dónde _upperCampaign =
MAXX(ADICIONES('Fusión de código', "_code", DERECHA('Fusión de código'[Código],1)),[_code])
devolución
CALCULAR(
Suma('Duración de la campaña'[Duración de la campaña (h)]),
FILTRO(todo('Duración de la campaña'), 'Duración de la campaña'[Sitio] = _site && 'Duración de la campaña'[Línea] = _line && 'Duración de la campaña'[Elemento] = _element && 'Duración de la campaña'[Campaña] >= _lowerCampaign && 'Duración de la campaña'[Campaña] <= _upperCampaign)
)
Syndicate_Admin
Administrator
Administrator

Hola @huyenaedf
Gracias por esta clara explicación.
Esto se puede resolver si lo trabajamos al revés. En realidad, necesito una tabla de duración de la campaña para filtrar Code Fusion, no lo contrario. ¿Suena extraño? Tal vez, pero esto proporcionará una solución sin problemas a su problema. Por favor, hágamelo saber si no hay otras restricciones en contra de esto para decidir si proceder o pensar en otras soluciones.

Gracias

Hola, gracias por responder! Desafortunadamente la tabla Code Fusion es la que enumera las campañas sobre las que tenemos otros datos interesantes y que realmente estudiamos. Así que si filtramos con duración de campaña, sería como ir más de 1000 tipos de campañas sin saber cuál tiene datos interesantes. Espero que te 🙂 quede claro

Helpful resources

Announcements
November Carousel

Fabric Community Update - November 2024

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

Live Sessions with Fabric DB

Be one of the first to start using Fabric Databases

Starting December 3, join live sessions with database experts and the Fabric product team to learn just how easy it is to get started.

Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.

Nov PBI Update Carousel

Power BI Monthly Update - November 2024

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

Top Solution Authors
Top Kudoed Authors