Dónde vive la data de órdenes de compra (Mongo purchaseOrders + planilla Proyección Compras) y cómo saber si un producto
<!-- ESTADO-VIVO:INICIO -->
⚡ ÚLTIMO ESTADO VIVO (Actualizado: 2026-10-29 16:48 · Orden Cronológico Inverso: Más Nuevo Arriba)
itemsestá clavado por objectID del producto madre (verificado 25-ago-2026, 5/5 match contraproducts.data.objectID). Cada item:{q, title, purchasePrice, iva}. Eltitleviene sucio ("undefined X - undefined"): usar el nombre deproducts.- Lead time real 2026: 5,5 días vs 6,9 prometidos · 73% a tiempo (3.893 recepciones). Está en KV
ocs:caminobajolead(por proveedor, ≥8 OCs) yleadGlobal.
<!-- ESTADO-VIVO:FIN -->
Las OCs de mercadería viven en Mongo, índice purchaseOrders (18.757 docs desde 2019). Campos clave:
number, providerName, brandsNames, date/date_timestamp (emisión), expirationDate (llegada estimada),
status y items.
itemsestá clavado por objectID del producto madre (verificado 25-ago-2026, 5/5 match contraproducts.data.objectID). Cada item:{q, title, purchasePrice, iva}. Eltitleviene sucio ("undefined X - undefined"): usar el nombre deproducts.status:pending= pendiente de recepción ·received= recibida ·cancelled/canceled·nullen las viejas (pre-status).received={s, by, t, inventoryAdjustment}.tes el timestamp real de recepción yinventoryAdjustmentlinkea al índiceinventoryAdjustments(type:"receive",items: {pid: {nroInventario: {depósito: cantidad}}}) — ahí están las cantidades REALMENTE recibidas, que es lo que permite fill rate de verdad.- Lead time real 2026: 5,5 días vs 6,9 prometidos · 73% a tiempo (3.893 recepciones). Está en KV
ocs:caminobajolead(por proveedor, ≥8 OCs) yleadGlobal.
Trampa importante: status:"pending" NO significa "en camino". Al 25-ago-2026 había 1.505 pendientes, de las cuales 1.315 estaban abandonadas (nunca cerradas; mediana 274 días de atraso, la más vieja de 921 días). La regla que uso: en camino = pending Y (llegada ≥ hoy−7d O emitida ≤ 45 días). El resto va aparte como "abandonadas".
No se pueden cancelar desde acá: mongoAggregate es solo lectura y no existe función de escritura (probado: mongoUpdate/mongoWrite/mongoSet/mongoInsert → 404). Cancelar es del equipo en el sistema, o Juan por backend.
Los montos de la OC (total, subTotal) están corruptos en muchos docs (suman $6,49 billones en las pendientes). Nunca publicar plata de OCs.
Planilla de seguimiento de Compras: Proyección Compras Distribuidora (1bbCck-EsVCeDsym_pG9gvSJ0jbxzQk0vTQ9VVWC93KM), 17 hojas. La que importa es "Pedidos Armados Compras": OC | ENTIDAD | PROVEEDOR | MARCA | CENTRO DE COSTOS | CONCEPTO | ESTADO | EMITIDO | APROBADO | ENVIADO | RECIBIDO | MONTO | % X NEGOCIO | MONTO REAL | FACTURAS | LT RECEP | LT TOTAL | PRIORIDAD. También "Info Proveedores" (categoría de provisión, condición y plazo de pago, cuenta contable) y "Agregar OC" (el formulario del circuito de servicios, el mismo de ordenes.plantinterno.com).
Ver plant-datos-endpoints y plant-stock-sobrevaluado.
Datos/plant-ocs-compras