Ubicaciones Almacén
Exportar contenido
Gestiona ubicaciones físicas dentro de almacenes con estructura jerárquica (pasillo, estante, compartimento).
- Ve a la pestaña “Almacenes → Ubicaciones”.
- Clic en ”+ Nueva Ubicación”.
- Selecciona el almacén padre.
- Completa los campos obligatorios (ver tabla abajo).
- (Opcional) Define estructura jerárquica (pasillo, estante, compartimento).
- Clic en “Guardar” — ubicación creada.
Campos obligatorios
Sección titulada «Campos obligatorios»| Campo | Descripción | Ejemplo |
|---|---|---|
| Almacén | Almacén padre | Almacén Central |
| Nombre | Identificador descriptivo | Zona de Ropa |
| Código | Código único de ubicación | A1-E2-C3 |
Campos opcionales — Estructura jerárquica
Sección titulada «Campos opcionales — Estructura jerárquica»| Campo | Descripción | Ejemplo |
|---|---|---|
| Pasillo | Identificador de pasillo | A1 |
| Estante | Número de estantería | E2 |
| Compartimento | Compartimento específico | C3 |
Cómo sé que lo hice bien
Sección titulada «Cómo sé que lo hice bien»- La ubicación aparece en la lista con su código único.
- Puedes asignar productos a la ubicación.
- El código se puede usar en transferencias de stock.
Errores comunes
Sección titulada «Errores comunes»| Mensaje | Causa | Solución |
|---|---|---|
| ”El almacén es requerido” | No seleccionaste almacén | Elige un almacén de la lista |
| ”El nombre es requerido” | Campo vacío | Introduce nombre descriptivo |
| ”El código es requerido” | Campo vacío | Introduce código único |
| ”Código duplicado” | Ya existe | Usa código diferente |
🔧 Detalles Técnicos — Ubicaciones Almacén
Tablas involucradas:
| Tabla | Columnas clave | FK |
|---|---|---|
warehouse_locations | id, warehouse_id, name, code, description, aisle, shelf, bin, is_active | warehouses |
Tipo de dato:
interface LocationData { id: string; warehouse_id: string; name: string; code: string; description?: string; aisle?: string; shelf?: string; bin?: string; is_active: boolean;}Componente:
- Sub-módulo:
/src/features/products/sub-modules/warehouse/ LocationManager.tsx— Gestión de ubicacionesLocationSelector.tsx— Selector de ubicaciones en formularios
Queries de diagnóstico:
-- Ubicaciones de un almacénSELECT id, name, code, aisle, shelf, binFROM warehouse_locationsWHERE warehouse_id = '<warehouse_id>' AND is_active = trueORDER BY code;
-- Productos por ubicaciónSELECT wl.code as ubicacion, p.name, sm.quantityFROM stock_movements smINNER JOIN warehouse_locations wl ON wl.id = sm.warehouse_location_to_idINNER JOIN products p ON p.id = sm.product_idWHERE wl.warehouse_id = '<warehouse_id>' AND sm.movement_type = 'entrada';Query keys:
- Ubicación:
/src/features/products/sub-modules/warehouse/api/query-keys.ts warehouseLocationKeys.allwarehouseLocationKeys.byWarehouse(warehouseId)