Purchase

Lieferanten und Bestellungen

MarktplatzBetriebVersion 0.3.0AGPL-3.0-or-latermanifest

Wofür sie gedacht ist ​

Keep vendors and the purchase orders you send them, with order lines and a draft to received flow. Totals are entered, not summed from the lines.

Was das Paket leistet und was nicht ​

Vendors, purchase orders and order lines with a draft, sent, confirmed, received and cancelled flow. An order has a number from a series, its total is the sum of its lines, and receiving the goods creates a draft stock move per line at the receiving location (the warehouse validates them).

Moduldetails ​

  • Version: 0.3.0
  • Autor: SpaceCorps
  • Lizenz: AGPL-3.0-or-later
  • Benötigt Kern: ^0.2 (aktuell ist Kern 0.2.0)
  • Reifegrad: Beta
  • Kategorien: Lieferkette

Modelle ​

purchase_vendor ​

Purchasing terms for a contact you buy from

Lesegruppe: purchase.user. Schreibgruppe: purchase.manager.

FeldArtDatenklassePersonenbezogene DatenGruppeAgenten sehenBeschreibung
party_idref → partynoneneinpurchase.userim KlartextThe contact record of the vendor
vendor_referencetextnoneneinpurchase.userim KlartextYour customer number at this vendor
payment_terms_daysnumbernoneneinpurchase.userim KlartextDays allowed to pay an invoice
lead_time_daysnumbernoneneinpurchase.userim KlartextUsual days between order and delivery
ibantextfinancialjapurchase.managerzurückgehaltenBank account the vendor is paid into
activeboolnoneneinpurchase.userim KlartextWhether you still buy from this vendor

purchase_order ​

A request to a vendor to supply goods or services

Lesegruppe: purchase.user. Schreibgruppe: purchase.user.

FeldArtDatenklassePersonenbezogene DatenGruppeAgenten sehenBeschreibung
numbersequencenoneneinpurchase.userim KlartextPurchase order number such as PO-00042, assigned when the order is created
referencetextnoneneinpurchase.userim KlartextOrder number printed on the document
vendor_idref → purchase_vendornoneneinpurchase.userim KlartextThe vendor ordered from
ordered_ondatenoneneinpurchase.userim KlartextDate the order was placed (YYYY-MM-DD)
expected_ondatenoneneinpurchase.userim KlartextDate the goods are expected (YYYY-MM-DD)
currencytextnoneneinpurchase.userim KlartextISO 4217 currency code, for example EUR
receive_location_idref → inventory_locationnoneneinpurchase.userim KlartextWhere the goods are to be received; receiving the order creates the stock moves to this location
totalmoneynoneneinpurchase.userim KlartextOrder total: the sum of the line amounts (minor currency units, e.g. cents)
noteslongtextnoneneinpurchase.userim KlartextDelivery instructions and remarks for the vendor
stateselect (draft, sent, confirmed, received, cancelled)noneneinpurchase.userim KlartextOrder status: draft, sent, confirmed, received, cancelled

purchase_order_line ​

One product or service on a purchase order

Lesegruppe: purchase.user. Schreibgruppe: purchase.user.

FeldArtDatenklassePersonenbezogene DatenGruppeAgenten sehenBeschreibung
order_idref → purchase_ordernoneneinpurchase.userim KlartextThe order the line belongs to
product_idref → productnoneneinpurchase.userim KlartextThe product ordered
descriptiontextnoneneinpurchase.userim KlartextWording for the vendor if different from the product name
quantitynumbernoneneinpurchase.userim KlartextUnits ordered
unit_pricemoneynoneneinpurchase.userim KlartextAgreed price per unit (minor currency units, e.g. cents)
amountmoneynoneneinpurchase.userim KlartextLine amount: quantity times unit price (minor currency units)
received_quantitynumbernoneneinpurchase.userim KlartextUnits received so far

Workflows ​

purchase_order ​

AktionBewegtWer sie ausführen darfFreigabe
purchase_order.sendstate: draft → sentpurchase.usernein
purchase_order.confirmstate: sent → confirmedpurchase.managerja
purchase_order.receivestate: confirmed → receivedpurchase.usernein
purchase_order.cancelstate: draft → cancelledpurchase.usernein

Berechtigungsgruppen ​

Von dieser App verwendete Gruppen:

  • purchase.manager
  • purchase.user

Freigabeschritte ​

Schritte, die ein Agent nur vorschlagen kann:

  • purchase_order.confirm

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: purchase_order.confirm, purchase_vendor.delete, purchase_order.delete, purchase_order_line.delete.

Diese Felder werden Agenten vollständig vorenthalten: purchase_vendor.iban.

Abhängigkeiten ​

Jede Abhängigkeit nennt die Versionen, die sie akzeptiert. Integrierte Apps werden mit dem Kern versioniert; eine Anforderung an sie wird daher gegen die Kernversion geprüft.

Beim Installieren dieser App aus dem Marktplatz werden fehlende Abhängigkeiten mitinstalliert, in einem Plan, der einmal bestätigt wird.

Installation ​

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

bash
obop modules install-from purchase

Erfordert eine Datenbank und Administratorrechte.

Selbst bauen ​

Der Modulleitfaden zeigt, wie Apps wie diese geschrieben werden