Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and a 50 percent discount on exams.
Get startedEarn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.
Hola a todos
Tengo un archivo donde tengo varias suscripciones cuya frecuencia puede variar (puede tener una subscipción trimestral, anual, etc.) y tengo la primera fecha en la que un suscriptor tiene que pagar el monto de la suscripción.
Me gustaría mostrar la suma de la cantidad por cada mes cuando se debe pagar una tarifa de suscripción, por ejemplo:
La fecha de la factura es en julio y es una suscripción trimestral, luego me gustaría mostrar la tarifa de este sub en julio y también en octubre (un trimestre, 3 meses después) y también en enero y así sucesivamente.
También tengo varias columnas de fecha en mi tabla y una tabla de calendario. No hay una relación activa entre las fechas y la tabla del calendario.
Mi lógica para identificar en qué mes categorizar ciertos subs es esta:
Si la diferencia de meses entre la fecha de la factura y la fecha actual se puede dividir por la duración de la suscripción sin valor de remanente, entonces devolverá el valor de la suscripción, de lo contrario estará en blanco.
Básicamente:
Measure =
varlastdate = LASTDATE ( Calendar[Date] )
var calcualtion =
IF(
MOD(
DATEDIFF ( MAXX(Table, Table[Invoice_Date]), var_lastdate, MONTH ),
MAXX ( Table, Table[Invoice_Frequiency_in_months] )
) = 0,
CALCULATE(
SUM ( Amount ),
USERELATIONSHIP ( Calendar[Date], Table[Invoice_Date])
)
)
Esto va a mostrar el valor de los meses en Invoice_Date columna, y no asumir que sale mal cuando activo la relación entre mi tabla y la tabla de calendario.
¿Alguna idea de cómo resolver esto? También es una posibilidad de que sobrecolpete las cosas con la lógica anterior y es una forma más difícil de hacer esto.
¡Gracias de antemano!
CreationDateOtherDateInvoiceDateInvoice_Frequiency_in_monthsAmount
2022-07-04 | 3 | 5 | ||
2022-07-04 | 6 | 10 | ||
2022-08-04 | 3 | 23 | ||
2022-10-04 | 12 | 15 | ||
2022-06-04 | 12 | 2 | ||
2022-08-04 | 3 | 1 | ||
2022-09-04 | 6 | 4 | ||
2022-10-04 | 6 | 8 | ||
2022-07-04 | 3 | 12 | ||
2022-08-04 | 12 | 100 |
¿Puede compartir un pbix o algunos datos ficticios que mantengan la estructura de datos sin procesar con los resultados esperados? Debería ayudarnos a aclarar su escenario y probar la fórmula de codificación.
Cómo obtener respuestas a su pregunta rápidamente
Saludos
Xiaoxin Sheng
Hi Xiaoxin @v-shex-msft ,
los datos de samle están en la parte inferior de mi publicación, parece que han sido reformateados por el foro, así que lo estoy volviendo a agregar ahora también agregando una tabla con los resultados esperados.
CreationDate | Otrafecha | Fecha de factura | Invoice_Frequiency_in_months | Importe | IDENTIFICACIÓN |
6/4/2022 | 12 | 2 | 1 | ||
7/4/2022 | 3 | 5 | 2 | ||
7/4/2022 | 6 | 10 | 3 | ||
7/4/2022 | 3 | 12 | 4 | ||
8/4/2022 | 3 | 23 | 5 | ||
8/4/2022 | 3 | 1 | 6 | ||
8/4/2022 | 12 | 100 | 7 | ||
9/4/2022 | 6 | 4 | 8 | ||
10/4/2022 | 12 | 15 | 9 | ||
10/4/2022 | 6 | 8 | 10 |
Resultado esperado | ||
Fecha | Importe | Invoiced_Ids |
2022-Mayo | 0 | - |
2022-jun | 2 | 1 |
2022-julio | 27 | 2,3,4 |
2022-Ago | 124 | 5,6,7 |
2022-sep | 4 | 8 |
2022-octubre | 40 | 9,10,2,4 |
2022-Noviembre | 24 | 5,6 |
2022-Dic | 0 | - |
2023-Enero | 27 | 2,3,4 |
2023-feb | 24 | 5,6 |
2023-Marzo | 4 | 8 |
2023-Abr | 25 | 10,2,4 |
2023-Mayo | 24 | 5,6 |
2023-jun | 2 | 1 |
2023-julio | 27 | 2,3,4 |
2023-Ago | 124 | 5,6,7 |
Gracias
Hice algunos progresos, pero la situación todavía no es ideal.
Entonces, usando paralellperiod logré mover un período, sin embargo, necesito crear una calcualción separada para cada tipo de suscripción (trimestral, semestral, anual, etc.) y solo funciona por un período por delante y necesitaría calcualte esto durante los próximos 2 años.
Quarterly=
CALCULATE(
SUM ( Amount ),
Invoice_Frequency_in_months = 3,
USERELATIONSHIP ( Calendar[Date], Table[Invoice_Date]),
PARALELLPERIOD(Calendar[Date], -3, MONTH)
)
Semi Annualy =
CALCULATE(
SUM ( Amount ),
Invoice_Frequency_in_months = 6,
USERELATIONSHIP ( Calendar[Date], Table[Invoice_Date]),
PARALELLPERIOD(Calendar[Date], -6, MONTH)
)