Join us for an expert-led overview of the tools and concepts you'll need to pass exam PL-300. The first session starts on June 11th. See you there!
Get registeredPower BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.
Estoy tratando de crear una tabla en la que estoy restando los totales del año fiscal actual por mes por el mismo período del año pasado. Tenemos un retraso en nuestros datos y estamos viendo los datos uno o dos meses después de que ocurrió. A continuación se muestra exactamente cómo quiero que se vea el gráfico, excepto que el total es incorrecto. Sé que se debe a que está tratando abril, mayo y junio como $0 para este año fiscal actual menos los ingresos del año fiscal pasado. Pero no sé cómo solucionarlo. Todavía soy muy nuevo en PowerBI, así que todavía tengo mucho que aprender.
Difference =
VAR ReceiptsPriorYear =
CALCULATE(
sum(Receipts[Net Amount]),
PARALLELPERIOD(
'Calendar'[Date],
-12,MONTH))
VAR ReceiptsCurrentYear =
CALCULATE(
Sum(Receipts[Net Amount]))
RETURN
if((sum(Receipts[Net Amount])) <> 0,
CALCULATE(
(ReceiptsCurrentYear - ReceiptsPriorYear), DATESYTD('Calendar'[Date], "30/6")),"")
@ThisIsHalloween Primero, por favor, vota por esta idea: https://ideas.powerbi.com/ideas/idea/?ideaid=082203f1-594f-4ba7-ac87-bb91096c742e
Esto parece un problema de totales de medida. Muy común. Mira mi post al respecto aquí: https://community.powerbi.com/t5/DAX-Commands-and-Tips/Dealing-with-Measure-Totals/td-p/63376
Además, esta Medida Rápida, Totales de Medida, La Última Palabra debería darte lo que necesitas:
https://community.powerbi.com/t5/Quick-Measures-Gallery/Measure-Totals-The-Final-Word/m-p/547907
También: https://youtu.be/uXRriTN0cfY
Y: https://youtu.be/n4TYhF2ARe8
Le di una oportunidad a esto, pero sigue teniendo el mismo aspecto:
Difference =
VAR ReceiptsPriorYear =
CALCULATE(
sum(Receipts[Net Amount]),
PARALLELPERIOD(
'Calendar'[Date],
-12,MONTH))
VAR ReceiptsCurrentYear =
CALCULATE(
Sum(Receipts[Net Amount]))
RETURN
if(HASONEFILTER('Calendar'[FY]),IF(sum(Receipts[Net Amount]) <> 0,
CALCULATE(
(ReceiptsCurrentYear - ReceiptsPriorYear), DATESYTD('Calendar'[Date], "30/6")),""),
SUMX(
(filter
(Receipts, max('calendar'[fy]))),ReceiptsCurrentYear))
@ThisIsHalloween No lo implementaste correctamente. ReceiptsCurrentYear es una variable y las variables son estáticas, por lo que no estoy seguro de qué es exactamente lo que está sumando allí en ese último SUMX, pero será el mismo número, solo que repetido una y otra vez, lo que no puedo imaginar que sea correcto. La solución presentada muestra obtener una medida que se calcule correctamente en el nivel de fila individual y, a continuación, crear una segunda medida que devuelva esa medida en el nivel de fila y un SUMX de la medida en el nivel total.
Lo intenté de nuevo y los totales siguen sin ser correctos. ¿Dónde estoy estropeando la fórmula de hasonefilter?
Difference =
VAR RPY =
CALCULATE(
sum(Receipts[Net Amount]),
PARALLELPERIOD('Date'[Date],-12,month))
VAR RCY =
CALCULATE(
SUM(Receipts[Net Amount]))
RETURN
if(HASONEFILTER('Date'[FY]),
if(sum(Receipts[Net Amount]) <> 0,
CALCULATE(
(RCY - RPY), DATESYTD('Date'[Date], "30/6")), "0"))
Lo intenté, pero sin suerte en el cambio total. Esto es lo que usé:
Difference =
VAR ReceiptsPriorYear =
CALCULATE(
sum(Receipts[Net Amount]),
PARALLELPERIOD(
'Calendar'[Date],
-12,MONTH))
VAR ReceiptsCurrentYear =
CALCULATE(
Sum(Receipts[Net Amount]))
RETURN
if(HASONEFILTER('Calendar'[FY]),IF(sum(Receipts[Net Amount]) <> 0,
CALCULATE(
(ReceiptsCurrentYear - ReceiptsPriorYear), DATESYTD('Calendar'[Date], "30/6")),""))
This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.
Check out the June 2025 Power BI update to learn about new features.