Inventory
Existencias y almacenes
Para qué sirve
Describe warehouses and locations, record stock levels and log stock moves. Quantities are entered by people, so it works as a ledger of what was counted and moved rather than an automatic stock engine.
Qué hace y qué no hace el paquete
Warehouses, stock locations, stock levels and stock moves. Validating a move takes the quantity out of the stock item at the source location and adds it to the item at the destination, in one step; an item that does not exist yet is created. There is one item per product, location and lot. Negative quantities are allowed, as for virtual locations such as suppliers.
Detalles del módulo
- Versión:
0.3.0 - Autor: SpaceCorps
- Licencia: AGPL-3.0-or-later
- Requiere núcleo:
^0.2(el núcleo actual es 0.2.0) - Madurez: Beta
- Categorías: Cadena de suministro
Modelos
inventory_warehouse
A building or site where stock is kept
Grupo de lectura: inventory.user. Grupo de escritura: inventory.manager.
| Campo | Tipo | Clase de datos | Datos personales | Grupo | Los agentes ven | Descripción |
|---|---|---|---|---|---|---|
name | text | none | no | inventory.user | en claro | Warehouse name |
code | text | none | no | inventory.user | en claro | Short code printed on documents, for example WH1 |
address | longtext | none | no | inventory.user | en claro | Postal address of the site |
active | bool | none | no | inventory.user | en claro | Whether the warehouse is in use |
inventory_location
A place inside a warehouse where stock can sit
Grupo de lectura: inventory.user. Grupo de escritura: inventory.manager.
| Campo | Tipo | Clase de datos | Datos personales | Grupo | Los agentes ven | Descripción |
|---|---|---|---|---|---|---|
name | text | none | no | inventory.user | en claro | Location name, for example Shelf A3 |
warehouse_id | ref → inventory_warehouse | none | no | inventory.user | en claro | The warehouse the location belongs to |
kind | select (internal, receiving, shipping, transit, scrap) | none | no | inventory.user | en claro | What the location is used for: internal, receiving, shipping, transit, scrap |
active | bool | none | no | inventory.user | en claro | Whether the location is in use |
inventory_item
The quantity of one product held at one location
Grupo de lectura: inventory.user. Grupo de escritura: inventory.manager.
| Campo | Tipo | Clase de datos | Datos personales | Grupo | Los agentes ven | Descripción |
|---|---|---|---|---|---|---|
product_id | ref → product | none | no | inventory.user | en claro | The product held; there is one item per product, location and lot |
location_id | ref → inventory_location | none | no | inventory.user | en claro | Where it is held |
quantity | number | none | no | inventory.user | en claro | Units on hand |
reorder_level | number | none | no | inventory.user | en claro | Quantity at or below which the product should be replenished |
lot | text | none | no | inventory.user | en claro | Lot or batch number, if tracked |
inventory_move
A movement of a product between locations, or into or out of the business
Grupo de lectura: inventory.user. Grupo de escritura: inventory.user.
| Campo | Tipo | Clase de datos | Datos personales | Grupo | Los agentes ven | Descripción |
|---|---|---|---|---|---|---|
reference | sequence | none | no | inventory.user | en claro | Number of the move such as MV-00042, assigned when the move is created |
product_id | ref → product | none | no | inventory.user | en claro | The product moved |
from_location_id | ref → inventory_location | none | no | inventory.user | en claro | Where it leaves; empty for a receipt from a supplier |
to_location_id | ref → inventory_location | none | no | inventory.user | en claro | Where it arrives; empty for a delivery to a customer |
quantity | number | none | no | inventory.user | en claro | Units moved |
scheduled_on | date | none | no | inventory.user | en claro | Date the move is planned for (YYYY-MM-DD) |
state | select (draft, done, cancelled) | none | no | inventory.user | en claro | Move status: draft, done, cancelled |
Flujos de trabajo
inventory_move
| Acción | Mueve | Quién puede ejecutarla | Aprobación |
|---|---|---|---|
inventory_move.validate | state: draft → done | inventory.manager | sí |
inventory_move.cancel | state: draft → cancelled | inventory.user | no |
Grupos de permisos
Grupos que usa esta aplicación:
inventory.managerinventory.user
Pasos con aprobación
Pasos que un agente solo puede proponer:
inventory_move.validate
Qué pueden y qué no pueden hacer los agentes
Un agente puede leer, buscar, crear y actualizar registros de esta aplicación, y ejecutar las acciones que no requieren aprobación, dentro de los grupos de permisos de su token.
Solo puede proponer estos pasos, y una persona debe aprobarlos: inventory_move.validate, inventory_warehouse.delete, inventory_location.delete, inventory_item.delete, inventory_move.delete.
Dependencias
Cada dependencia indica las versiones que acepta. Las aplicaciones integradas se versionan con el núcleo, así que un requisito sobre ellas se comprueba con la versión del núcleo.
- Products:
^0.2(integrada)
Al instalar esta aplicación desde el mercado también se instalan las dependencias que falten, en un único plan que se confirma una vez.
Instalación
Instálala desde la aplicación Customize (Marketplace) o desde la línea de comandos:
obop modules install-from inventoryRequiere una base de datos y derechos de administrador.
Crea la tuya
La guía de módulos explica cómo se escriben aplicaciones como esta