Definición de venta futura
| Concepto | En BI |
|---|---|
| Venta futura | Boleto pagado cuya travel_date es posterior a hoy (o > sale_date) |
| Eje temporal | travel_date — no sale_date |
| Grano | 1 fila = 1 boleto → fact_ticket |
| Canal web | channel_group = 'web' (canal crudo websales) |
| Plataforma 10 | agency_code = 'PTF' |
Filtros obligatorios:
is_paid = true, currency = 'ARS' (montos), product_type = 'reservation' (opcional), travel_date >= CURRENT_DATE.
sale_date vs travel_date
sale_date = cuándo se vendió el boleto → tablero “Ventas General”, cierre mensual de caja.
travel_date = cuándo viaja el pasajero → tablero “Ventas Futuras”, planificación operativa.
Un mismo boleto puede venderse en mayo (sale_date) y viajar en julio (travel_date). Mezclar ejes en un gráfico produce números incoherentes.
Canal vs agencia: la confusión más común
En Betterez/GCP hay dos ejes distintos:
| Eje | Campo BI | Significado |
|---|---|---|
| Canal | channel_group | Cómo se emitió: mostrador (físico), web (websales), call center |
| Agencia | agency_label | Quién figura como punto de venta: sucursal, integrador o marketplace |
“Canal web” ≠ “web de Andesmar”. Casi todo el web está atribuido a integradores con nombre propio (PTF, Central de Pasajes, Recorridos…). No existe hoy una fila
andesmar.com separada en dim_agency.
Canal web
→
websalesPTF Plataforma10
CJ2 Central Pasajes
RAA / RC1 / VEW…
Plataforma 10 vs resto del web
Distribución aproximada del canal web (boletos pagados, 2026 YTD):
Dos cortes distintos: las barras arriba son histórico YTD (~30% PTF). En boletos web con
sale_date solo 2026, PTF ≈ 39% vs 61% resto integradores (decisión 2026-06-12).
Ventas futuras — desglose PTF (ejemplo comunicación Faby, jun-2026)
| Segmento | Boletos futuros (aprox.) |
|---|---|
| Plataforma 10 (PTF) | ~1.500 |
| Web — otros integradores | ~3.900 |
Filtros: is_paid = true, channel_group = web, travel_date > CURRENT_DATE.
Opciones de segmentación (decisión pendiente negocio)
| Opción | Definición “resto” | Cuándo |
|---|---|---|
| A (default técnico) | Todo web con agency_code <> 'PTF' | Comparar PTF vs mercado web total |
| B | Lista blanca Andesmar (definir códigos) | Si “resto” = web propia excluyendo marketplaces |
| C | Desglose completo por agency_label | Ranking fino de integradores |
Pregunta abierta para Adrián / Faby:
Cuando decís “el resto del web”, ¿querés todos los otros integradores juntos o solo ventas de web directa Andesmar?
Cuando decís “el resto del web”, ¿querés todos los otros integradores juntos o solo ventas de web directa Andesmar?
Modelado en MicroStrategy
Atributo derivado web_segment_ptf (Opción A)
CASE WHEN channel_group <> 'web' THEN 'No aplica' WHEN agency_code = 'PTF' THEN 'Plataforma 10' ELSE 'Web - otros integradores' END
Visual recomendada (Ventas Futuras)
| Elemento | Valor |
|---|---|
| Eje X | travel_date (etiquetar “Fecha de viaje”) |
| Series | web_segment_ptf (barras apiladas o dos líneas) |
| Métricas | Count(ticket_id), Sum(ticket_amount) ARS |
| Filtro reporte | channel_group = web + viaje futuro |
Replicar el mismo desglose en Ventas General pero con eje sale_date en lugar de travel_date.
Checklist publicación
- Cubo base =
fact_ticket(tiene agencia; evitar solofact_ticket_mstrsin join) - Filtro:
travel_datefuturo +is_paid = true - Atributo
web_segment_ptfo drill-down poragency_label - Refresh cubo post-job nocturno
- Validar con
validate_web_segment_ptf.sql