I have not, since I don’t have a github account. I’m trying to look into the issue first, though I just installed ERPNext for the first time so it might take a while.
Dears, a temporary solution is:
to remove the following lines:
eval_expression: function(value) {
if (typeof value === 'string'
&& value.match(/^[0-9+-/* ]+$/)
// paresFloat('1,44,000') returns 1.0
// 1,44,000 are being passed when we paste rows from excel sheet to a table
&& value.includes(',')) {
return value.replace(",", "");
}
return value;
},
from file:
/frappe/bench/apps/frappe/frappe/public/js/frappe/form/controls/currency.js
Still isn’t working everywhere though. I did a stock reconciliation, type = opening, and although the value in the table is correct, the saved value showing up in the ledger is still the same with the original problem. Perhaps the changes are deeper than just this.
You need to check the controller code for the DocType you are working on and the business rules enforced on the data or any alterations made to the code in GitHub that has been lately committed. I will check and get back to you if I happen to find a legitimate lead to the cause.
The controller code looks fine. I’ve reverted that PR’s code just to be safe, and is looking through merged commits that touches on stock valuation. I’ll post here if I find anything.
The bug happens if Erpnext has the default decimal separator set to comma ( , ). If it’s set to dot ( . ), everything works as intended.
I’ve just reinstalled Erpnext to confirm this, and yes it only happens when the separator is set to comma.
Tufan_Kaynak2 's recommendation to revert the previously quoted PR works when displaying, but the stored value remains. Perhaps there’s something to do with the field type? Float or currency?