La solicitud

De Robert Kim, COO
Tu objetivo
Paso 1 de 3. Crea una medida llamada Sales que sume order_items[line_total], el valor de cada línea de pedido tras el descuento.
- Llena
[Sales]en cada fila del visualpendiente - También la fila Total correctapendiente
Paso 2 de 3. Debajo de Sales, añade una medida llamada Orders que cuente los pedidos: una fila de la tabla orders es un pedido.
- Llena
[Orders]en cada fila del visualpendiente - También la fila Total correctapendiente
Paso 3 de 3. Sales y Orders ya están guardadas en el informe y se muestran en la matriz. Añade una tercera medida, Average Order Value: Sales dividido entre Orders, escrita con DIVIDE para que una celda vacía nunca cause un error.
- Llena
[Average Order Value]en cada fila del visualpendiente - También la fila Total correctapendiente
Paso 1 · tu medida
- Visual
- A matrix: rows = orders[channel]; values = [Sales]
- Segmentaciones
- 'Date'[Year] = 2025orders[status] = completed
Panel de datos: tablas y columnas
- 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
- products product_id, name, category, subcategory, unit_price, unit_cost, launched_on, is_active
- customers customer_id, first_name, last_name, email, city, state, signup_date, segment, referral_source
- returns return_id, order_item_id, returned_on, reason, refund_amount
- Date Date, Year, Quarter, Month Number, Month, Year Month, Year Quarter, Day, Weekday Number, Weekday
Cargando el editor…
Solución de referencia
| channel | Sales |
|---|---|
| app | |
| marketplace | |
| web | |
| Total |
Mote revisa tu resultado
Presiona Comprobar. Mote completa tu respuesta y la compara con lo que necesita el informe.
Paso 2 · tu medida
- Visual
- A matrix: rows = orders[channel]; values = [Orders]
- Segmentaciones
- 'Date'[Year] = 2025orders[status] = completed
Panel de datos: tablas y columnas
- 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
- products product_id, name, category, subcategory, unit_price, unit_cost, launched_on, is_active
- customers customer_id, first_name, last_name, email, city, state, signup_date, segment, referral_source
- returns return_id, order_item_id, returned_on, reason, refund_amount
- Date Date, Year, Quarter, Month Number, Month, Year Month, Year Quarter, Day, Weekday Number, Weekday
Cargando el editor…
Solución de referencia
| channel | Orders |
|---|---|
| app | |
| marketplace | |
| web | |
| Total |
Mote revisa tu resultado
Presiona Comprobar. Mote completa tu respuesta y la compara con lo que necesita el informe.
Paso 3 · tu medida
- Visual
- A matrix: rows = orders[channel]; values = [Sales], [Orders], [Average Order Value]
- Segmentaciones
- 'Date'[Year] = 2025orders[status] = completed
- Medidas del informe
Sales = SUM(order_items[line_total])Orders = COUNTROWS(orders)
Panel de datos: tablas y columnas
- 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
- products product_id, name, category, subcategory, unit_price, unit_cost, launched_on, is_active
- customers customer_id, first_name, last_name, email, city, state, signup_date, segment, referral_source
- returns return_id, order_item_id, returned_on, reason, refund_amount
- Date Date, Year, Quarter, Month Number, Month, Year Month, Year Quarter, Day, Weekday Number, Weekday
Cargando el editor…
Solución de referencia
| channel | Sales | Orders | Average Order Value |
|---|---|---|---|
| app | 995,524.18 | 1,904 | |
| marketplace | 324,298.57 | 630 | |
| web | 980,346.78 | 1,761 | |
| Total | 2,300,169.53 | 4,295 |
Mote revisa tu resultado
Presiona Comprobar. Mote completa tu respuesta y la compara con lo que necesita el informe.
Lo que recibe Robert, y por qué
La lección
Este Desafío final son tres medidas, construidas como las construirías en Power BI Desktop: una a la vez, cada una probada en el visual antes de escribir la siguiente.
El informe en el que trabajas
El informe de práctica tiene una matriz con orders[channel] en las filas (web, app, marketplace)
y una fila Total. La página ya tiene dos filtros, de los que se configuran en el panel Filters
bajo Filters on this page: 'Date'[Year] es 2025 y orders[status] es completed. Se aplican
a todas las medidas de la página, así que tus fórmulas no necesitan mencionarlos.
El motor DAX de aquí está hecho para este sitio y sigue las reglas de Power BI, así que las medidas funcionan sin cambios en Desktop. Allí: selecciona una tabla en el panel Data, Home → New measure, escribe la fórmula, pulsa Enter y arrastra la medida a Values de la matriz. Repite con cada una.
Paso 1: Sales
Sales = SUM(order_items[line_total])
line_total es el valor de cada línea de pedido tras su descuento. Cada celda suma las líneas que
puede ver: los filtros de la página y el canal de la fila viajan de orders a order_items por
la relación, así que la fila web suma solo las líneas web de pedidos completados de 2025.
Paso 2: Orders
Orders = COUNTROWS(orders)
COUNTROWS cuenta las filas de una tabla en el contexto de filtro de la celda. orders tiene una
fila por pedido, así que esto es el número de pedidos. Contar order_items contaría líneas de
pedido, que es un número distinto (unas 2.5 líneas por pedido).
Paso 3: Average Order Value
Average Order Value = DIVIDE([Sales], [Orders])
Una medida puede usar otras medidas: escribe sus nombres entre corchetes. DIVIDE(a, b) devuelve
a / b, o vacío cuando b es cero o está vacío, donde a / b mostraría un error o infinito.
Úsalo para cada razón.
Por qué el Total no es un promedio de las filas
En cada fila de canal, Average Order Value son las ventas de ese canal entre los pedidos de ese canal. En la fila Total, Power BI evalúa la medida una vez más sin filtro de canal: todas las ventas entre todos los pedidos. La app y la web tienen cada una unas tres veces más pedidos que el marketplace, así que pesan más. Ese es el número correcto para «¿cuánto vale un pedido promedio?» ($535.55); promediar los tres valores de las filas daría a cada canal el mismo peso y una respuesta equivocada.
Dale formato
El valor medio del pedido es dinero: selecciona la medida y luego Measure tools → Format → Currency y dos decimales. La matriz de práctica lo hace por ti en el paso 3.
Qué le dice a Robert
En 2025 la app vendió más ($995.5K con 1,904 pedidos), justo por delante de la web ($980.3K con 1,761), con el marketplace en $324.3K con 630. Sin embargo, el pedido promedio de la web es el mayor, unos $557 frente a $523 en la app y $515 en el marketplace: la app gana en número de pedidos, no en su tamaño. Un canal puede vender menos porque tiene menos pedidos o porque cada pedido es más pequeño, y los dos problemas tienen arreglos distintos, por eso Robert pidió los tres.
¡Linterna encendida!
Practicaste: daxmeasuresumcountrowsdivideaverage order valuefilters panefilter context
- Resuelto
- Sin pistas
- Al primer intento
