GX-Bug #60935
geschlossenDer Basispreis der VPE aus Eigenschaften wird in einigen Fällen in den Kacheln nicht angezeigt
100%
Die Grundpreise (Verpackungseinheit) werden in der Artikelübersicht nun bei Artikeln mit Eigenschaften und linearen Aufpreisen korrekt angezeigt
Beschreibung
In den Kacheln wird der Basispreis aus VPE manchmal nicht angezeigt.
Der Eigenschaftenpreis und der VPE-Wert werden mit vier Nachkommastellen in der Datenbank hinterlegt.
Beim Auslesen/Berechnen der PropertiesDataAgent::has_non_linear_combi_surcharge() können Aufgrund der höheren Anzahl an Nachkommastellen Abweichungen in der Berechnung entstehen, womit durch die Angabe "GROUP base_price" mehrere Ergebnisse geliefert werden, wobei eine lineare Preisentwicklung gegeben ist.
Beispiel:
- Preis 3 EUR bei VPE 0.0500 = 60 EURO ... Der Basispreis wird in den Kacheln angezeigt.
- Preis 4.56 EUR bei VPE 0.0760 = 60 EUR ... Der Basispreis wird in den Kacheln nicht angezeigt.
Grund:
Bei der SQL-Berechnung findet eine Gruppierung mit acht Nachkommastellen statt.
Abweichungen können jedoch Aufgrund der Berechnung aus den jeweiligen Werten mit vier Nachkommastellen gegeben sein.
Ansatz:
Die SQL-Berechnung auf 2 Nachkommastellen runden.
Sometimes the base price from VPE is not displayed in the tiles.
The property price and the XLPE value are stored in the database with four decimal places.
When reading/calculating the PropertiesDataAgent::has_non_linear_combi_surcharge(), deviations in the calculation can occur due to the higher number of decimal places, whereby the specification "GROUP base_price" delivers several results, whereby a linear price development is given.
Example:
- price 3 EUR with PU 0.0500 = 60 EURO ... The base price is displayed in the tiles.
- price 4.56 EUR with PU 0.0760 = 60 EUR ... The base price is not displayed in the tiles.
reason:
During SQL calculation, a grouping with eight decimal places takes place.
Deviations may occur, however, due to the calculation from the respective values with four decimal places.
approach:
Round the SQL calculation to 2 decimal places.