Ansicht
Dokumentation
MURC_QUANTITY_CHECK - Prüfung und Näherung von Alternativ-Mengen auf erlaubte Dez.-stellen
CPI1466 during Backup BAL Application Log DocumentationDiese Dokumentation steht unter dem Copyright der SAP AG.
Funktionalität
Bei Verwendung alternativer Mengeneinheiten kommt es in der Regel zu Rundungsproblemen bei der Umrechnung einer Menge in die verwendeten Mengeneinheiten. Ursache ist die Speicherung von Mengen als Dezimalzahl mit einer zu geringen (Dezimal-)stellenzahl. Weiterhin schränkt die Darstellung der Umrechnungsfaktoren als rationale Zahl mit 5-stelligen Zähler und Nenner die Mengenabwicklung weiter ein.
Diese Funktion berechnet anhand der Umrechnungsfaktoren die Werte, die exakt in alle beteiligten Mengeneinheiten umgerechnet werden können. Es werden dabei die Definitionen der Dezimalstellen in der Definition der Mengeneinheiten berücksichtigt.
Der Algorithmus kalkuliert das kleinste gemeinsame Vielfache (kgV) einer vorgegeben Schrittweite (Rasterung) der Menge in Basismengeneinheit und der Schrittweite, die sich aufgrund der Umrechnungsfaktoren (Zähler und Nenner) einer alternativen Mengeneinheit ergibt. Diese Funktion sollte daher solange hintereinander aufgerufen werden, bis alle verwendeten Mengeneinheiten geprüft sind.
Durch diese Konzept kann die Funktion auf einfache Weise in eine Variantenfunktion eingebunden werden, so daß z.B. bei Verwendung von chargenspezifischen Mengeneinheiten die Erfassungsmenge in der Konfiguration entsprechend angepaßt werden kann und damit die Konsistenz der Mengenumrechnungen gewährleistet ist.
Beispiel
Basis-ME: KG (3 Dezimalstellen)
Alternativ-ME: ST (0 Dezimalstellen)
MET (2 Dezimalstellen)
Umrechnungsfaktoren: KG / ST = 1,4 = 7 / 5
KG / MET = 0,1875 = 3 / 16
1. Aufruf mit ST
=> Schrittweite 1,4 KG
2. Aufruf mit MET
Schrittweite: 1,4 KG
Erfassungmenge: 2 ST
Ausgabe: 3 ST
Erklärung:
kleinste Rasterung der einzelnen Alternativmengen zur Basismenge:
1,4 KG = 1 ST
0,015 KG = 0,08 MET
Berechnung des kgV für die Rasterwerte der Basis-ME:
ggT( 1,4 0,015 ) = 0,005
=> kleinste Rasterung bezogen auf alle Mengeneinheiten
1,4 * 0,015 / 0,005 KG = 4,2 KG = 3 ST = 22,4 MET
Hinweise
Die Schrittweite, die sich aufgrund der Umrechnungsfaktoren (Zähler und Nenner) zwischen einer alternativen Mengeneinheit und der Basismengeneinheit ergibt, wird durch eine Verallgemeinerung der Berechnung des größten gemeinsamen Teilers (ggT) kalkuliert. Dabei werden die Umrechnungfaktoren vor der Berechnung des klassischen ggT mit der Anzahl Zehnerpotenzen multipliziert, die der Anzahl der Dezimalstellen entspricht.
Beispiel:
KG : Basis-ME mit 3 Dezimalstellen
MET: Alternativ-ME mit 2 Dezimalstellen
Umrechnungsfaktor: KG / MET = 3 / 16 = 0,1875
ggT( 3000 1600 ) = 200
=> Schrittweite: 3 / 200 KG = 0,015 KG = 16 / 200 MET = 0,08 MET
Weiterführende Informationen
Parameter
E_ERFMGE_MENGE_LCM
I_ALTME
I_ANDEC_LIMIT
I_DENOM
I_ERFME
I_ERFMG
I_MATNR
I_MEINS
I_MENGE_LCM
I_NUMER
I_ROUND_SIGN
Ausnahmen
I_ALTME_INVALIDI_ERFME_INVALID
I_MEINS_INVALID
I_NUMER_OR_DENOM_INVALID
OVERFLOW
Funktionsgruppe
MURCRFUMSV00 - Advance Return for Tax on Sales/Purchases CL_GUI_FRONTEND_SERVICES - Frontend Services
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 3858 Date: 20240605 Time: 214614 sap01-206 ( 104 ms )