Maßeinheiten
Durch "Maßeinheiten" oder auch "Mengeneinheiten" werden nicht-monetäre Maßeinheiten festgelegt. Es können direkte Umrechnungen zwischen Maßeinheiten durchgeführt werden. Das System bietet manche automatische Umrechnungen (z.B. Minute, Stunde, Tag, Arbeitstag, etc.) an. Weitere Maßeinheiten können natürlich selbst im Fenster Maßeinheit angelegt werden.
Dieser Artikel ist von Thomas Bayen. Meine Artikel sind grundsätzlich nie "fertig", sondern immer eine Einladung, sie zu verbessern. Ich lade jeden gerne jederzeit ein, Verbesserungen hier direkt einzupflegen. Wer möchte, kann mich auch gerne kontaktieren.
Maßeinheiten in iDempiere
Manchmal gibt es Artikel, die man in unterschiedlichen Maßeinheiten verkauft. So kann man Kabel in Metern oder als 50m-Rolle verkaufen; Getränke als Flasche, Kasten, Palette oder auch in Litern oder Hektolitern; Farbpigmente in kg oder in amerikanischen Pfund.
Dem Problem begegnet man in iDempiere, indem man alle verwendeten Maßeinheiten einheitlich im Fenster Maßeinheit definiert. Dann stellt man bei jedem einzelnen Artikel ein, was seine Basiseinheit ist (z.B. Flasche). Nun kann man auf einer Registerkarte Umrechnungen in andere Einheiten angeben.
Bestimmte Angaben wie der Preis oder die Lagermenge werden immer in der Basiseinheit angegeben.
Ich habe übrigens festgestellt, das in einer Rechnungszeile die Berechnung der Mengen nur dann ordentlich funktioniert, wenn die gewählte Maßeinheit auch einen Maßeinheits-Typ angibt. Hier kann man auch "Other" auswählen, wenn keiner der anderen Werte passt.
Festlegung der Standard-Maßeinheit eines Artikels
Schon aus Compiere-Zeiten ist festgelegt, das die Basiseinheit eines Artikels immer die kleinste verwendete Einheit sein muss. Das dient insbesondere dazu, Rundungsfehler bei der Lagerhaltung zu vermeiden. Die Umrechnungen geschehen nämlich mit einer bei der Maßeinheit angegebenen Genauigkeit. Wer z.B. einen 24er Kasten Bier anlegt und jetzt eine einzelne Flasche verkauft, würde nämlich 1/24 (mit einer Genauigkeit von z.B. 2 Stellen) = 0,04 Kästen verkaufen. Wer das 24 mal macht, hat 0,04*24 = 0,96 Kästen verkauft. Natürlich kann man die Genauigkeit hochstellen, aber letztlich ist 1/24*24 für dezimal arbeitende Zahlen nie gleich 1.
Wer sich dieses Risikos bewusst ist, kann iDempiere dennoch so umstellen, das man eine kleinere Umrechnungseinheit angeben kann. Das geschieht mit einem Sysconfig Key namens ProductUOMConversionRateValidate. Die genaue Diskussion, die zur Implementierung dieses Keys geführt hat, kann man unter http://sourceforge.net/p/adempiere/bugs/441/ sehen.
Normen für Maßeinheiten
X12DE355
Die Kodierung der Maßeinheiten wird gemäß ASC X12 angegeben. Diese Organisation ist für die Wartung des US-EDI-Standards (en) zuständig. Sie hat eine Reihe von Dokumenten (DE=Code Data Elements) veröffentlicht, under anderem den Code DE355, das mit vollem Namen "Unit or Basis for Measurement Code" heißt.
Im DE355 ist beispielsweise definiert, daß der Code für Stück EA (=Each) ist. Ein "Six pack" wird mit P6 kodiert.
Bei robert-kuhlemann oder mercateo.com findet man einige Übersetzungen der Maßeinheiten.
ISO-Code
Die ISO-Norm 31 beschreibt Maßeinheiten. Es gibt aber keine Norm (ISO-Code) für Bezeichnungen von Maßeinheiten. Auch das Internationale Größensystem ISQ (International System of Quantities) / ISO 80000 ist in diesem Punkt nicht ganz hilfreich. Dort und im internationalem Einheitensystem SI (Système international d’unités) werden die normativen Grundgrößen (Raum, Zeit, ...) definiert.
SI-Einheiten
Es gibt demnach sieben SI-Basiseinheiten, abgeleitete Einheiten und zugelassene nicht SI-Einheiten:
- SI-Basiseinheiten
- Länge : Meter m
- Masse : Kilogramm kg
- Zeit : Sekunde s
- elektrische Stromstärke : Ampere A
- Temperatur : Kelvin K
- Stoffmenge : Mol mol
- Lichtstärke : Candela cd
- zugelassene nicht SI-Einheiten
In Deutschland gelten die SI-Einheiten für den amtlichen und geschäftlichen Verkehr (Einheiten- und Zeitgesetz). Die Physikalisch-Technische Bundesanstalt (PTB) hat im März 2012 das Merkblatt "Die gesetzlichen Einheiten in Deutschland" veröffentlicht.
UNECE recommendation 20/21
Es gibt aber eine Empfehlung der UN-Wirtschaftskommission UNECE die über die Basisgrößen hinausgeht. Recommendation No. 21 enthält über 2000 informative Codes "for types of cargo, packages and packaging materials".
Siehe Rec21rev11e_Annex-V-VI_2020.xls
bzw. rec20_Rev7e_2010.xls
mit Annex I bis III.
- - Annex I beinhaltet ca 1000 (physikalische) SI-Basiseinheiten und ca 600 abgeleitete Einheiten (meist aus UK und US, wie foot oder mile)
- - in Annex II & III kommen ca 700 informative UoM's hinzu (Level/Category 3 units) mit EA (=Each)
- - mit Annex IV & V wurden zusätzlich ca 400 Definitionen für Verpackungen eingeführt, P6 (=Six pack)
Maßeinheiten für Stück
Die UNECE Empfehlungen 20 und 21 beinhalten mehrere Kodierungen für Stück. C62 (one; unit), H87 (piece), NAR (number of articles), XPP (piece). Oft wird auch PCE, bzw. Stk verwendet, was nicht normkonform ist. EA (each) ist meine Präferenz, wird auch von sfti.se empfohlen.
(Danke an Eugen Hanussek für die oben genannte Spezifizierung der Maßeinheiten)