Robots que entran a tus portales y sistemas cada día, bajan el reporte y lo guardan. Si una fuente deja de entregar, avisan el mismo día en lugar de callarse.
# corre todos los días a las 06:00
sesion = portal.entrar(credencial="boveda://ventas")
reporte = sesion.descargar("ventas_diarias", fecha=hoy)
if reporte.filas == 0:
alerta("el portal no entregó nada hoy")
base.cargar("ventas", reporte, llave="folio")
Inventario, ventas, servicio, cobranza y personal se encuentran en un mismo lugar, con la misma llave. Las preguntas que antes tomaban una semana se contestan con una consulta.
SELECT v.unidad, v.fecha_venta, i.dias_en_piso, s.ultima_visita
FROM ventas v
JOIN inventario i USING (unidad)
LEFT JOIN servicio s USING (unidad)
WHERE i.dias_en_piso > 90;
La dirección ve el negocio en una pantalla; el piso trabaja en una app hecha para su rutina. Las dos leen el mismo dato, y cada cifra dice de dónde sale y a qué fecha.
# la cifra y su fuente viajan juntas
tablero.indicador("Unidades con más de 90 días",
valor=consulta.total,
fuente="inventario", al=hoy)
app.accion("Atender hoy", lista=consulta.primeras(20))
Inteligencia artificial que conoce tus reglas, tu vocabulario y tus fuentes. No es un chat genérico: responde con el dato de tu base y dice de qué consulta salió cada número.
agente = Agente(contexto=["reglas.md", "glosario.md"])
r = agente.pregunta("¿Qué cambió esta semana en cartera?")
r.respuesta # en tus palabras
r.fuentes # cada cifra con su consulta