\QUI\Utils\Math::percent überdenken
Probleme mit der Methode:
- Laut PHPDoc gibt sie
integer
zurück. Tatsächlich gibtnumber_format
aberString
zurück (http://php.net/manual/en/function.number-format.php) - Die Funktion müsste eigentlich
float
zurückgeben, da berechnete Prozentwerte auch krumm sein können. - Ich hatte folgenden Fehler, als ich meine Bestellungen (
quiqqer/order
) im Backend aufrufen wollte:
[2019-03-21 11:22:05] - DEBUG - 8 ::
Notice: A non well formed numeric value encountered
#0 /var/www/projects/q_erp/packages/quiqqer/erp/src/QUI/ERP/Accounting/Calc.php(784): exception_error_handler(8, 'A non well form...', '/var/www/projec...', 784, Array)
#1 /var/www/projects/q_erp/packages/quiqqer/order/src/QUI/ERP/Order/Search.php(191): QUI\ERP\Accounting\Calc::calculateTotal(Array)
...
Dies lag daran, dass in \QUI\ERP\Accounting\Calc
Zeile 780
die o.g. ::percent
-Methode aufgerufen wird, mir aber den String "-4,925"
zurückgegeben hat.
Damit konnte der darauffolgende Code nix anfangen, da hier ein float
-Wert bzw. korrekter Zahlenwert erwartet wurde (mit .
als Trenner).
Da das anscheinend auch Auswirkungen auf die Preisberechnung bei Bestellungen hat, bitte einmal drübergucken.