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.
Hola, tengo un conjunto de datos y necesito calcular los ingresos y el volumen de cada mes en función de la fecha de inicio y finalización del contrato.
¿Hay alguna manera de crear una medida para ver los ingresos de cada mes?
A continuación se muestra el ejemplo de la columna que creé para el 18 de octubre. El usuario desea ver los ingresos de cada mes hasta el mes actual.
Oct-18 Ingresos =
IF('Tabla'[Fecha de finalización del contrato]<Fecha(2018,10,1),0,
IF('Tabla'[Fecha de inicio del contrato]>Fecha(2018,10,31),0,
IF(AND('Table'[Fecha de inicio del contrato]<=Date(2018,10,1),'Table'[Fecha de finalización del contrato]>Date(2018,10,31)),(DATEDIFF(Date(2018,10,1),Date(2018,10,31),DAY)+1)*'Table'[Precio neto],
IF(AND('Table'[Fecha de inicio del contrato]>Date(2018,10,1),'Table'[Fecha de finalización del contrato]>Date(2018,10,31)),(DATEDIFF('Table'[Fecha de inicio del contrato],Date(2018,10,31),DAY)+1)*'Table'[Precio neto],
IF(AND('Table'[Contract Start Date]<=Date(2018,10,1),'Table'[Contract End Date]<=Date(2018,10,31)),(DATEDIFF(Date(2018,10,1),'Table'[Contract End Date],DAY)+1)*'Table'[Net Price],
IF(AND('Table'[Contract Start Date]>=Date(2018,10,1),'Table'[Contract End Date]<=Date(2018,10,31)),(DATEDIFF('Table'[Contract Start Date],'Table'[Contract End Date],DAY)+1)*'Table'[Net Price],0))))))
Aquí está el ejemplo.
Solved! Go to Solution.
No @PBI_newuser
Debido a su modelo de datos, no podíamos usar measure para obtener el resultado directamente. Si desea mostrar la suma de cada mes por el grupo de Product, Order Doc y Conrtact number, puede usar generate function para crear una tabla dax y, a continuación, generar un objeto visual de matriz.
Append Table =
VAR _T =
GENERATE (
ADDCOLUMNS (
CALENDAR (
DATE(2018,10,01),
MAX ( 'Table'[Contract End Date] )
),
"Year", YEAR ( [Date] ),
"Month", MONTH ( [Date] ),
"YearMonth", FORMAT ( [Date], "YYYY-MM" )
),
SUMMARIZE (
'Table',
'Table'[Product],
'Table'[Order Doc.],
'Table'[Contract Number],
'Table'[Net Price],
'Table'[Contract Start Date],
'Table'[Contract End Date]
)
)
VAR _T2 =
SUMMARIZE (
FILTER ( _T, [Date] >= [Contract Start Date] && [Date] <= [Contract End Date] ),
[Date],
[Product],
[Order Doc.],
[Contract Number],
[Net Price],
[YearMonth],
[Contract Start Date],
[Contract End Date]
)
RETURN
_T2
El resultado es el siguiente.
Saludos
Rico Zhou
Si este post ayuda,entonces por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
No @PBI_newuser
Debido a su modelo de datos, no podíamos usar measure para obtener el resultado directamente. Si desea mostrar la suma de cada mes por el grupo de Product, Order Doc y Conrtact number, puede usar generate function para crear una tabla dax y, a continuación, generar un objeto visual de matriz.
Append Table =
VAR _T =
GENERATE (
ADDCOLUMNS (
CALENDAR (
DATE(2018,10,01),
MAX ( 'Table'[Contract End Date] )
),
"Year", YEAR ( [Date] ),
"Month", MONTH ( [Date] ),
"YearMonth", FORMAT ( [Date], "YYYY-MM" )
),
SUMMARIZE (
'Table',
'Table'[Product],
'Table'[Order Doc.],
'Table'[Contract Number],
'Table'[Net Price],
'Table'[Contract Start Date],
'Table'[Contract End Date]
)
)
VAR _T2 =
SUMMARIZE (
FILTER ( _T, [Date] >= [Contract Start Date] && [Date] <= [Contract End Date] ),
[Date],
[Product],
[Order Doc.],
[Contract Number],
[Net Price],
[YearMonth],
[Contract Start Date],
[Contract End Date]
)
RETURN
_T2
El resultado es el siguiente.
Saludos
Rico Zhou
Si este post ayuda,entonces por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Hola @RicoZhou , gracias por la solución.
¿Puedo saber cómo calcular el volumen por mes en la "Tabla anexar"?
Oct-18 Volumen =
IF('Tabla'[Fecha de finalización del contrato]<Fecha(2018,10,1),0,
IF('Tabla'[Fecha de inicio del contrato]>Fecha(2018,10,31),0,
IF(AND('Tabla'[Fecha de inicio del contrato]<=Fecha(2018,10,1),'Tabla'[Fecha de finalización del contrato]>Fecha(2018,10,31)),1,
IF(AND('Table'[Fecha de inicio del contrato]>Date(2018,10,1),'Table'[Fecha de finalización del contrato]>Date(2018,10,31)),(DATEDIFF('Table'[Fecha de inicio del contrato],Date(2018,10,31),DAY)+1)/(DATEDIFF(Date(2018,10,1),Date(2018,10,31),DAY)+1),
IF(AND('Table'[Fecha de inicio del contrato]<=Date(2018,10,1),'Table'[Fecha de finalización del contrato]<=Date(2018,10,31)),(DATEDIFF(Date(2018,10,1),'Table'[Fecha de finalización del contrato],DAY)+1)/(DATEDIFF(Date(2018,10,1),Date(2018,10,31),DAY)+1),
IF(AND('Table'[Contract Start Date]>=Date(2018,10,1),'Table'[Contract End Date]<=Date(2018,10,31)),(DATEDIFF('Table'[Contract Start Date],'Table'[Contract End Date],DAY)+1)/(DATEDIFF(Date(2018,10,1),Date(2018,10,31),DAY)+1),0)))))))
No @PBI_newuser
Oct-18 Revenue =
IF('Table'[Contract End Date]<Date(2018,10,1),0,
IF('Table'[Contract Start Date]>Date(2018,10,31),0,
IF(AND('Table'[Contract Start Date]<=Date(2018,10,1),'Table'[Contract End Date]>Date(2018,10,31)),(DATEDIFF(Date(2018,10,1),Date(2018,10,31),DAY)+1)*'Table'[Net Price],
IF(AND('Table'[Contract Start Date]>Date(2018,10,1),'Table'[Contract End Date]>Date(2018,10,31)),(DATEDIFF('Table'[Contract Start Date],Date(2018,10,31),DAY)+1)*'Table'[Net Price],
IF(AND('Table'[Contract Start Date]<=Date(2018,10,1),'Table'[Contract End Date]<=Date(2018,10,31)),(DATEDIFF(Date(2018,10,1),'Table'[Contract End Date],DAY)+1)*'Table'[Net Price],
IF(AND('Table'[Contract Start Date]>=Date(2018,10,1),'Table'[Contract End Date]<=Date(2018,10,31)),(DATEDIFF('Table'[Contract Start Date],'Table'[Contract End Date],DAY)+1)*'Table'[Net Price],0))))))
La columna calcualted es distinguish si la fecha en el mes correcto (en ejemplo es oct en 2018) por la función if y luego devolver 0 si está fuera del rango, y mostrar los días de resultado * Precio neto.
En Anexar tabla, no necesitamos calcular el volumen por código. Verá en nuestra tabla Anexar hay precio neto para cada fecha en el rango, solo necesitamos agregar precio neto en el campo de valor en visual y seleccionar suma.
resultado:
Puede descargar el ejemplo anterior y realizar una prueba.
Saludos
Rico Zhou
Si este post ayuda,entonces por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
@PBI_newuser , consulte esto o el blog de recursos humanos puede ayudar
Cómo dividir/distribuir valores entre fecha de inicio o fecha de finalización o contar días entre meses/días: https://community.powerbi.com/t5/Community-Blog/How-to-divide-distribute-values-between-start-date-o...
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
1 | |
1 |