Saltar al contenido principal

Despacho de Almacen

Guia para Personal de Logistica

Esta seccion describe el proceso que sigue el personal de almacen/logistica una vez que una requisicion ha sido aprobada. El sistema permite despachar desde multiples almacenes, registrar items nuevos en el catalogo de inventario y combinar despacho con enrutamiento a procura en una sola operacion.

Paso 1: Verificar Stock

  1. Abra la requisicion aprobada desde el listado o la notificacion
  2. Haga clic en Verificar Stock para consultar la disponibilidad

El sistema consulta todos los almacenes que tienen stock para cada item y muestra:

EstadoSignificado
AVAILABLEStock suficiente en al menos un almacen para despachar la cantidad completa
PARTIALHay stock pero no cubre la cantidad total solicitada
UNAVAILABLESin stock en ningun almacen. O item sin vinculo al catalogo de inventario
FULFILLEDYa fue despachado anteriormente

Para cada item se muestra:

  • Cantidad solicitada y cantidad pendiente (descontando despachos previos)
  • Stock disponible total sumando todos los almacenes
  • Lista de almacenes con stock, ordenados por cantidad disponible
  • Almacen sugerido: prioriza el almacen de la requisicion si tiene stock

Resumen de disponibilidad

El sistema calcula un resumen general:

  • Total de items
  • Items completamente disponibles
  • Items parcialmente disponibles
  • Items no disponibles
  • Indicador: "Puede despachar completamente" (si/no)

Paso 2: Registrar Items en Inventario

Los items creados como "texto libre" (sin vinculo al catalogo de inventario) deben ser registrados antes de poder despacharse o enrutarse a procura.

  1. Identifique los items marcados como "Sin item de inventario"
  2. Haga clic en Registrar en Inventario junto al item
  3. Complete los datos:
    • Nombre: Se pre-llena con la descripcion del item
    • Unidad: Se pre-llena con la unidad del item
    • Tipo de trazabilidad: Lote (LOT) o Serial (SERIAL)
  4. El sistema crea un nuevo InventoryItem con codigo auto-generado (ITM-00001)
  5. El item de la requisicion queda vinculado al item de inventario

Dialogo de registro de item en inventario

Items registrados y listos para despacho o procura

Requisito para procura

Todos los items deben estar registrados en el catalogo de inventario antes de poder enrutarlos a procura. El sistema valida esto y muestra un error si intenta enrutar un item sin registro.

Endpoint: POST /api/material-requisitions/:id/items/:itemId/register-inventory

Paso 3: Despachar Materiales

La interfaz de despacho ofrece tres modalidades de accion:

Opcion 1: Solo Despacho

Para items que tienen stock completo disponible:

  1. Seleccione los items a despachar
  2. Para cada item, seleccione el almacen de origen del dropdown (muestra todos los almacenes con stock)
  3. Ajuste la cantidad si desea despachar parcialmente
  4. Haga clic en Despachar

Confirmacion de despacho solamente

Endpoint: POST /api/material-requisitions/:id/fulfill

Opcion 2: Solo Procura

Para items sin stock disponible:

  1. Seleccione los items que requieren compra
  2. Ajuste la cantidad a enviar a procura
  3. Haga clic en Enviar a Procura
  4. Se crea un Analisis de Procura (ProcurementAnalysis) vinculado

Confirmacion de solo procura

Endpoint: POST /api/material-requisitions/:id/route-procurement

Opcion 3: Despacho + Procura Combinado

La opcion mas comun cuando hay disponibilidad parcial:

  1. El sistema pre-clasifica los items: los disponibles para despacho y los que requieren procura
  2. Ajuste cantidades y almacenes para los items a despachar
  3. Confirme los items a enviar a procura
  4. Opcionalmente marque Requiere Pase de Salida y seleccione quien recibe
  5. Haga clic en Procesar

Confirmacion de despacho combinado con procura

Endpoint: POST /api/material-requisitions/:id/fulfill-and-procure

Este endpoint realiza en una sola transaccion atomica:

  1. Crea movimientos de inventario EXIT para items despachados
  2. Crea un ProcurementAnalysis para items enrutados a procura
  3. Genera pase de salida (MaterialExitPass) si se solicito
  4. Actualiza el estado de la requisicion segun resultado

Despacho Multi-Almacen

Cada item puede ser despachado desde multiples almacenes en una sola operacion. Esto es util cuando un almacen no tiene toda la cantidad pero entre varios si.

Formato de datos de despacho:

{
"itemId": "uuid-del-item",
"sources": [
{ "warehouseId": "almacen-1", "quantity": 30 },
{ "warehouseId": "almacen-2", "quantity": 20 }
]
}

Cada source genera un movimiento de inventario separado, todos dentro de la misma transaccion.

Interfaz de despacho con selectores de almacen por item

Informacion del Movimiento de Inventario

Cada despacho genera uno o mas movimientos con los siguientes datos:

CampoValor
TipoEXIT (Salida)
RazonSegun proposito: PROJECT_USE, DEPARTMENT_USE, ASSET_ASSIGNMENT, STOCK_TRANSFER
Almacen origenAlmacen seleccionado por logistica
ReferenciaCodigo de la requisicion (ej: RM-2026-0001)
ProyectoProyecto de la requisicion (si aplica)
Centro de costoCentro de costo de la requisicion
DepartamentoDepartamento del solicitante

Pase de Salida (MaterialExitPass)

Al despachar, se puede generar automaticamente un Pase de Salida de Material con:

  • Codigo auto-generado (PASE-YYMMDD-NNNN)
  • Datos del emisor y receptor
  • Datos de transporte (vehiculo, chofer)
  • Items despachados con cantidades
  • Vinculado a los movimientos de inventario generados

Estados de los Items

EstadoCodigoDescripcion
PendientePENDINGAun no procesado por logistica
ParcialPARTIALDespachado parcialmente (parte disponible, parte en procura)
DespachadoFULFILLEDCompletamente despachado del almacen
En ProcuraPROCUREMENTEnrutado al modulo de procura para compra
CanceladoCANCELLEDItem cancelado

Actualizacion Automatica de Estado

El estado de la requisicion se actualiza automaticamente segun el estado de sus items:

CondicionEstado de Requisicion
Todos los items FULFILLED o CANCELLEDFULFILLED
Todos los items PROCUREMENT o CANCELLEDAWAITING_PROCUREMENT
Algunos FULFILLED/PARTIAL, otros pendientesPARTIALLY_FULFILLED

Requisicion parcialmente despachada con historial

Despacho desde AWAITING_PROCUREMENT y READY_FOR_DISPATCH

La requisicion no se cierra cuando se enrutan items a procura. Cuando el material es recibido (via recepcion de OC), la requisicion pasa a READY_FOR_DISPATCH y logistica puede:

  1. Abrir la requisicion (notificacion automatica)
  2. Verificar stock actualizado
  3. Despachar los items que ahora tienen stock disponible

Los estados AWAITING_PROCUREMENT y READY_FOR_DISPATCH tambien permiten despacho.

Validaciones Importantes

  • Solo se pueden despachar requisiciones en estado APPROVED, PARTIALLY_FULFILLED, READY_FOR_DISPATCH o AWAITING_PROCUREMENT
  • No se puede despachar mas de la cantidad pendiente
  • Se valida que haya stock suficiente en el almacen seleccionado antes de cada despacho
  • Items sin vinculo al catalogo de inventario deben ser registrados primero
  • Si el stock es insuficiente a medio proceso, la operacion se revierte completamente (transaccion atomica)
  • Los items con fulfillmentStatus = 'FULFILLED' no pueden volver a despacharse