Cómo construir una medida para el % de ocupación de un hotel

Un usuario Pregunto ✅

Malcolm Leong

Aquí hay una muestra de lo que estoy viendo:

1. Tengo varios hoteles. En este caso, Hotel A y Hotel B.

2. En cada hotel, tengo (i) un desglose diario y (ii) el desglose por segmento que contribuye a las ventas

3. Tengo un inventario de habitaciones fijo para cada hotel: hotel A (300 habitaciones por día) y hotel B (100 habitaciones por día)

Problema :

1. Necesito construir una medida sólida para la ocupación, que es (Noches de habitación/Inventario).

2. La medida prevalecerá si elimino el segmento y/o elimino las fechas

Así es como se verá. Estoy tratando de calcular el % de ocupación de la columna verde.

1. La medida se puede desglosar por día/por segmento/por hotel, etc.

2. Pero también debería poder agregarlo, por ejemplo, si eliminé el segmento, el Hotel A será del 77 % el 1 de diciembre (es decir, (80+100+50)/300)), o incluso si eliminé las fechas, El hotel A será del 71 % el 1 y el 2 de diciembre agregados (es decir, (80+100+50+50+120+30) / (300+300).

Datos de muestra.png

Así es como se ve realmente mi tabla de datos y tengo dificultades para construir la medida que necesito:

Tabla de datos.png

¡Cualquier ayuda será muy apreciada!

@MalcolmLeong,

En tu tabla, crea la siguiente medida.

Occupancy% = SUM(Table[Room Nights])/MAX(Table[Inventory])

1.JPG2.JPG

Para su último requisito de que «incluso si elimino las fechas, el Hotel A tendrá un 71% el 1 de diciembre y el 2 de diciembre agregados (es decir, (80+100+50+50+120+30) / (300+300)», primero cree nueva tabla usando DAX a continuación.

NewTable = SUMMARIZE(Table,Table[Hotel],Table[Date],"room nights",SUM(Table[Room Nights]),"inventory",MAX(Table[Inventory]))

Luego cree la siguiente medida en la nueva tabla.

percentage = DIVIDE(SUM('NewTable'[room nights]),CALCULATE(SUM('NewTable'[inventory]),FILTER('NewTable','NewTable'[Date]<=MAX('NewTable'[Date]))))

3.JPG

Saludos,
lidia

@MalcolmLeong,

En tu tabla, crea la siguiente medida.

Occupancy% = SUM(Table[Room Nights])/MAX(Table[Inventory])

1.JPG2.JPG

Para su último requisito de que «incluso si elimino las fechas, el Hotel A tendrá un 71% el 1 de diciembre y el 2 de diciembre agregados (es decir, (80+100+50+50+120+30) / (300+300)», primero cree nueva tabla usando DAX a continuación.

NewTable = SUMMARIZE(Table,Table[Hotel],Table[Date],"room nights",SUM(Table[Room Nights]),"inventory",MAX(Table[Inventory]))

Luego cree la siguiente medida en la nueva tabla.

percentage = DIVIDE(SUM('NewTable'[room nights]),CALCULATE(SUM('NewTable'[inventory]),FILTER('NewTable','NewTable'[Date]<=MAX('NewTable'[Date]))))

3.JPG

Saludos,
lidia

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *