La solicitud

De Brian Foster, Analista de FP&A
Tu objetivo
order_items ya está relacionada con orders. Relaciona orders con la tabla Date por la fecha del pedido (varios a uno, única, activa) y marca 'Date' como la tabla de fechas del modelo usando su columna Date.
- Todas las relaciones que el informe necesita, bien configuradaspendiente
- La tabla de fechas marcadapendiente
Tu modelo
Las tablas del modelo: order_items (order_item_id, order_id, product_id, quantity, unit_price, discount_pct, line_total), orders (order_id, customer_id, order_date, status, channel, shipping_fee, coupon_code), Date (Date, Year, Quarter, Month Number, Month, Year Month, Year Quarter, Day, Weekday Number, Weekday).
Ya relacionadas: order_items[order_id] > orders[order_id] | many-to-one | single | active
Cargando el editor…
Solución de referencia
Mote revisa tu resultado
Presiona Comprobar. Mote completa tu respuesta y la compara con lo que necesita el informe.
Lo que recibe Brian, y por qué
La lección
La segmentación de mes de Brian filtra una tabla a la que no hay nada conectado. Una tabla de calendario solo funciona una vez relacionada con los hechos, y funciona mejor cuando Power BI sabe que es el calendario.
En qué estás trabajando
Este es un diagrama de práctica creado para este sitio; Power BI Desktop solo funciona en Windows. Añade la relación con el formulario y luego marca la tabla de fechas. El diagrama comprueba ambas cosas como lo hace Power BI.
En Power BI Desktop: vista Modelo → arrastra order_date de orders sobre Date en la tabla
Date. Luego selecciona la tabla Date y elige Table tools → Mark as date table, elige la
columna Date y pulsa OK. Power BI valida la columna antes de aceptar la marca.
Por qué una tabla Date separada
orders[order_date] solo tiene los días en que alguien hizo un pedido, y solo la fecha en sí. Una
tabla Date (o calendario) tiene:
- una fila por día, sin huecos, desde la primera fecha de los datos hasta la última (aquí del 2023-01-01 al 2025-12-31);
- columnas para cada forma en que la gente agrupa el tiempo: Year, Quarter, Month, Month Number, Year Month, Weekday.
Pon 'Date'[Month] en un eje y aparece cada mes, incluso uno sin ventas. Ponlo en una
segmentación y filtra todas las tablas de hechos relacionadas con el calendario, no solo una.
La relación
'Date'[Date] es única, una fila por día, así que es el lado «uno». Muchos pedidos comparten un
día, así que orders[order_date] es el lado «varios»:
orders[order_date] > 'Date'[Date] | many-to-one | single | active
Ambas columnas deben ser fechas sin parte horaria. Los pedidos de Harbor & Pine guardan solo la fecha; si los tuyos llevan hora, cambia primero el tipo de la columna a Date en Power Query, o ninguna hora del día coincidirá nunca con una fila del calendario.
Marcarla como tabla de fechas
date table: 'Date'[Date]
Marcar hace dos cosas. Le dice a las funciones de inteligencia de tiempo como TOTALYTD y
SAMEPERIODLASTYEAR qué columna contiene el calendario, y desactiva las tablas de fechas
automáticas ocultas de Power BI para esa columna, que inflan el modelo y no se pueden compartir
entre hechos. Power BI solo acepta una columna de fechas sin duplicados ni vacíos, por eso la
marca va en el calendario y nunca en la columna de fecha de un hecho.
Errores comunes
- Marcar la fecha del hecho.
orders[order_date]repite días y tiene huecos. - Invertir los lados.
'Date'[Date]en el lado varios significa «cada día tiene muchas fechas»; Power BI lo rechaza. - Segmentar por
orders[order_date]. Funciona para una tabla y se salta los días vacíos. Usa las columnas de'Date'.
¡Linterna encendida!
Practicaste: date tablecalendarmark as date tablerelationshiptime intelligence
- Resuelto
- Sin pistas
- Al primer intento
