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

The ultimate Microsoft Fabric, Power BI, Azure AI & SQL learning event! Join us in Las Vegas from March 26-28, 2024. Use code MSCUST for a $100 discount. Register Now

Reply
Syndicate_Admin
Administrator
Administrator

Casos nuevos, casos cerrados y casos abiertos por mes basados en el mes anterior

Hola a todos

Tratando de lograr algo de poder bi a través de medidas. Tengo datos mensuales con las siguientes columnas

Report_date, Unique_ID

Tengo mi tabla de fechas.


Quiero rellenar el recuento de casos nuevos, casos cerrados y casos abiertos basados en estos datos en un formato de tabla.

Las condiciones a aplicar son todos estos casos deben rellenarse en función de la comparación del mes seleccionado y el mes anterior del mes seleccionado.


Casos nuevos: no en el mes anterior y solo en el mes seleccionado

Casos cerrados: en el mes anterior pero no en el mes seleccionado (Este recuento de casos cerrados debe mostrarse en el próximo mes en la tabla, es decir, si un caso se cierra en enero de 2023, el recuento del caso cerrado debe mostrarse en la fila de casos cerrados de febrero de 2023).

Casos abiertos: presente tanto en el mes anterior como en el mes seleccionado


Nota: La comparación siempre debe ser con el mes seleccionado y el mes anterior del mes seleccionado.

Es decir, si se seleccionan en febrero de 2023, los datos de febrero de 2023 solo deben compararse con los de enero de 2023 O si se seleccionan en enero de 2023, los datos de enero de 2023 solo deben compararse con los datos de diciembre de 2022 y viceversa.

Datos de muestra:

Año y mesREPORT_DATEUNIQUE_ID
2023 febrero2023/02/011005749180317
2023 febrero2023/02/014655959445590
2023 febrero2023/02/014655959445897
2023 febrero2023/02/011017363709676
2023 febrero2023/02/011218868736510
2023 febrero2023/02/013387008658371
2023 febrero2023/02/013423128237554
2023 enero2023/01/011017363709676
2023 enero2023/01/019017363709674
2023 enero2023/01/019017363709675
2023 enero2023/01/019017363709676
2023 enero2023/01/013387008658371
2022 diciembre2022/12/011017363709676
2022 diciembre2022/12/013387008658371
2022 diciembre2022/12/013423128237554
2022 diciembre2022/12/015873128237666
2022 diciembre2022/12/015873128237667
2022 noviembre2022/11/011005749180317
2022 noviembre2022/11/011017363709676
2022 noviembre2022/11/011218868736510
2022 noviembre2022/11/013387008658371
2022 noviembre2022/11/013423128237554
2022 noviembre2022/11/013423128237555
2022 noviembre2022/11/013423128237556




Resultado previsto:

Año y mesNuevos casosCasos abiertosCasos cerrados
2023 marzo 6
2023 febrero433
2023 enero323
2022 diciembre234
2022 noviembre7

Gracias.

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Lo siento por el retraso en la respuesta

Tengo una solución que funciona para mí:

Nuevos casos =
VAR SelectedMonth = MES(MAX(Calendario[Fecha]))
VAR SelectedYear = AÑO(MAX(Calendario[Fecha]))
VAR PreviousMonth1 = EOMONTH(MAX(Calendario[Fecha]), -1)
VAR PreviousMonthYear = YEAR(PreviousMonth1)
VAR PreviousMonthNumber = MES(PreviousMonth1)
DEVOLUCIÓN
CALCULAR(
COUNTROWS(FILTER('Tabla',
MES('Tabla'[Fecha del informe]) = SelectedMonth &&
AÑO('Tabla'[Fecha del informe]) = SelectedYear &&
NOT( 'Tabla'[UNIQUE_ID] EN CALCULATETABLE(
VALUES('Tabla'[UNIQUE_ID]),
FILTER('Tabla',
AÑO('Tabla'[ Fecha del informe]) = AnteriorMesAño &&
MONTH('Tabla'[ Fecha del informe]) = PreviousMonthNumber
)
)
))),
ALLSELECTED('Tabla')

Caso cerrado =
VAR SelectedMonth = MES(MAX(Calendario[Fecha]))
VAR SelectedYear = AÑO(MAX(Calendario[Fecha]))
VAR PreviousMonth1 = EOMONTH(MAX(Calendario[Fecha]), -1)
VAR PreviousMonthYear = YEAR(PreviousMonth1)
VAR PreviousMonthNumber = MES(PreviousMonth1)
DEVOLUCIÓN
CALCULAR(
COUNTROWS(FILTER('Tabla',
MES('Tabla'[Fecha del informe]) = PreviousMonthNumber &&
AÑO('Tabla'[ Fecha del informe]) = AnteriorMesAño &&
NOT( 'Tabla'[UNIQUE_ID] EN CALCULATETABLE(
VALUES('Tabla'[UNIQUE_ID]),
FILTER('Tabla',
AÑO('Tabla'[Fecha del informe]) = SelectedYear &&
MES('Tabla'[Fecha del informe]) = SelectedMonth
)
)
))),
ALLSELECTED('Tabla')
)

Casos abiertos =
VAR SelectedMonth = MES(MAX(Calendario[Fecha]))
VAR SelectedYear = AÑO(MAX(Calendario[Fecha]))
VAR PreviousMonth1 = EOMONTH(MAX(Calendario[Fecha]), -1)
VAR PreviousMonthYear = YEAR(PreviousMonth1)
VAR PreviousMonthNumber = MES(PreviousMonth1)
DEVOLUCIÓN
CALCULAR(
COUNTROWS(FILTER('Tabla',
MES('Tabla'[Fecha del informe]) = SelectedMonth &&
AÑO('Tabla'[Fecha del informe]) = SelectedYear &&
'Tabla'[UNIQUE_ID] EN CALCULATETABLE(
VALUES('Tabla'[UNIQUE_ID]),
FILTER('Tabla',
AÑO('Tabla'[Fecha del informe]) = AnteriorMesAño &&
MES('Tabla'[Fecha del informe]) = PreviousMonthNumber
)
)
)),
ALLSELECTED('Tabla')
)



View solution in original post

2 REPLIES 2
Syndicate_Admin
Administrator
Administrator

Lo siento por el retraso en la respuesta

Tengo una solución que funciona para mí:

Nuevos casos =
VAR SelectedMonth = MES(MAX(Calendario[Fecha]))
VAR SelectedYear = AÑO(MAX(Calendario[Fecha]))
VAR PreviousMonth1 = EOMONTH(MAX(Calendario[Fecha]), -1)
VAR PreviousMonthYear = YEAR(PreviousMonth1)
VAR PreviousMonthNumber = MES(PreviousMonth1)
DEVOLUCIÓN
CALCULAR(
COUNTROWS(FILTER('Tabla',
MES('Tabla'[Fecha del informe]) = SelectedMonth &&
AÑO('Tabla'[Fecha del informe]) = SelectedYear &&
NOT( 'Tabla'[UNIQUE_ID] EN CALCULATETABLE(
VALUES('Tabla'[UNIQUE_ID]),
FILTER('Tabla',
AÑO('Tabla'[ Fecha del informe]) = AnteriorMesAño &&
MONTH('Tabla'[ Fecha del informe]) = PreviousMonthNumber
)
)
))),
ALLSELECTED('Tabla')

Caso cerrado =
VAR SelectedMonth = MES(MAX(Calendario[Fecha]))
VAR SelectedYear = AÑO(MAX(Calendario[Fecha]))
VAR PreviousMonth1 = EOMONTH(MAX(Calendario[Fecha]), -1)
VAR PreviousMonthYear = YEAR(PreviousMonth1)
VAR PreviousMonthNumber = MES(PreviousMonth1)
DEVOLUCIÓN
CALCULAR(
COUNTROWS(FILTER('Tabla',
MES('Tabla'[Fecha del informe]) = PreviousMonthNumber &&
AÑO('Tabla'[ Fecha del informe]) = AnteriorMesAño &&
NOT( 'Tabla'[UNIQUE_ID] EN CALCULATETABLE(
VALUES('Tabla'[UNIQUE_ID]),
FILTER('Tabla',
AÑO('Tabla'[Fecha del informe]) = SelectedYear &&
MES('Tabla'[Fecha del informe]) = SelectedMonth
)
)
))),
ALLSELECTED('Tabla')
)

Casos abiertos =
VAR SelectedMonth = MES(MAX(Calendario[Fecha]))
VAR SelectedYear = AÑO(MAX(Calendario[Fecha]))
VAR PreviousMonth1 = EOMONTH(MAX(Calendario[Fecha]), -1)
VAR PreviousMonthYear = YEAR(PreviousMonth1)
VAR PreviousMonthNumber = MES(PreviousMonth1)
DEVOLUCIÓN
CALCULAR(
COUNTROWS(FILTER('Tabla',
MES('Tabla'[Fecha del informe]) = SelectedMonth &&
AÑO('Tabla'[Fecha del informe]) = SelectedYear &&
'Tabla'[UNIQUE_ID] EN CALCULATETABLE(
VALUES('Tabla'[UNIQUE_ID]),
FILTER('Tabla',
AÑO('Tabla'[Fecha del informe]) = AnteriorMesAño &&
MES('Tabla'[Fecha del informe]) = PreviousMonthNumber
)
)
)),
ALLSELECTED('Tabla')
)



Syndicate_Admin
Administrator
Administrator

Helpful resources

Announcements
Fabric Community Conference

Microsoft Fabric Community Conference

Join us at our first-ever Microsoft Fabric Community Conference, March 26-28, 2024 in Las Vegas with 100+ sessions by community experts and Microsoft engineering.

Top Solution Authors