Inventory

Bestand und Lager

MarktplatzBetriebVersion 0.1.0manifest

Wofür sie gedacht ist ​

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.

Was das Paket leistet und was nicht ​

Warehouses, stock locations, stock levels and stock moves. Quantities are entered and validated by people; they are not updated automatically by moves.

Modelle ​

inventory_warehouse ​

A building or site where stock is kept

Lesegruppe: inventory.user. Schreibgruppe: inventory.manager.

FeldArtDatenklassePersonenbezogene DatenGruppeAgenten sehenBeschreibung
nametextnoneneininventory.userim KlartextWarehouse name
codetextnoneneininventory.userim KlartextShort code printed on documents, for example WH1
addresslongtextnoneneininventory.userim KlartextPostal address of the site
activeboolnoneneininventory.userim KlartextWhether the warehouse is in use

inventory_location ​

A place inside a warehouse where stock can sit

Lesegruppe: inventory.user. Schreibgruppe: inventory.manager.

FeldArtDatenklassePersonenbezogene DatenGruppeAgenten sehenBeschreibung
nametextnoneneininventory.userim KlartextLocation name, for example Shelf A3
warehouse_idref → inventory_warehousenoneneininventory.userim KlartextThe warehouse the location belongs to
kindselect (internal, receiving, shipping, transit, scrap)noneneininventory.userim KlartextWhat the location is used for: internal, receiving, shipping, transit, scrap
activeboolnoneneininventory.userim KlartextWhether the location is in use

inventory_item ​

The quantity of one product held at one location

Lesegruppe: inventory.user. Schreibgruppe: inventory.manager.

FeldArtDatenklassePersonenbezogene DatenGruppeAgenten sehenBeschreibung
product_idref → productnoneneininventory.userim KlartextThe product held
location_idref → inventory_locationnoneneininventory.userim KlartextWhere it is held
quantitynumbernoneneininventory.userim KlartextUnits on hand
reorder_levelnumbernoneneininventory.userim KlartextQuantity at or below which the product should be replenished
lottextnoneneininventory.userim KlartextLot or batch number, if tracked

inventory_move ​

A movement of a product between locations, or into or out of the business

Lesegruppe: inventory.user. Schreibgruppe: inventory.user.

FeldArtDatenklassePersonenbezogene DatenGruppeAgenten sehenBeschreibung
referencetextnoneneininventory.userim KlartextReference of the move, for example a delivery or receipt number
product_idref → productnoneneininventory.userim KlartextThe product moved
from_location_idref → inventory_locationnoneneininventory.userim KlartextWhere it leaves; empty for a receipt from a supplier
to_location_idref → inventory_locationnoneneininventory.userim KlartextWhere it arrives; empty for a delivery to a customer
quantitynumbernoneneininventory.userim KlartextUnits moved
scheduled_ondatenoneneininventory.userim KlartextDate the move is planned for (YYYY-MM-DD)
stateselect (draft, done, cancelled)noneneininventory.userim KlartextMove status: draft, done, cancelled

Workflows ​

inventory_move ​

AktionBewegtWer sie ausführen darfFreigabe
inventory_move.validatestate: draft → doneinventory.userja
inventory_move.cancelstate: draft → cancelledinventory.usernein

Berechtigungsgruppen ​

Von dieser App verwendete Gruppen:

  • inventory.manager
  • inventory.user

Freigabeschritte ​

Schritte, die ein Agent nur vorschlagen kann:

  • inventory_move.validate

Was Agenten tun können und was nicht ​

Ein Agent kann Datensätze dieser App lesen, durchsuchen, anlegen und aktualisieren sowie Aktionen ausführen, die keine Freigabe brauchen, und zwar innerhalb der Berechtigungsgruppen seines Tokens.

Diese Schritte kann er nur vorschlagen, und eine Person muss sie freigeben: inventory_move.validate, inventory_warehouse.delete, inventory_location.delete, inventory_item.delete, inventory_move.delete.

Abhängigkeiten ​

  • product

Installation ​

Installieren Sie sie in der App Customize (Marktplatz) oder über die Kommandozeile:

bash
obop modules install-from inventory

Erfordert eine Datenbank und Administratorrechte.

Selbst bauen ​

Der Modulleitfaden zeigt, wie Apps wie diese geschrieben werden