Currency Precision error on bench update

erpnext 8.2.3
frappe 8.2.6
ubuntu 14.04.5

Hello, I am getting the following error running bench update (note, nodejs was updated to v8.1.3 prior to bench update) :

Executing frappe.patches.v8_1.enable_allow_error_traceback_in_system_settings in xxxx
frappe.exceptions.ValidationError: Currency Precision cannot be “0”. It should be one of “”, “1”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”

As I am unable to start erpnext, is it possible to fix this by manually correcting the MySQL table? If so, can someone point me to the relevant table / field?

Many thanks,
Marty

I was able to solve the update error by using SQL to delete the value of 0 for currency_precision field in tabDefaultValue and tabSingles.

1 Like

Can solved by run script update Currency Precision Value, you can set value=‘2’
example:
UPDATE tabSingles SET value=‘2’ WHERE (doctype=‘System Settings’) AND (field=‘currency_precision’);

1 Like

@Marty

May this help:


You should find the patches.txt in the apps/erpnext/erpnext directory or
in apps/frappe/frappe.

Open it with an editor /nano in ubuntu/.

Then find the misslead
frappe.patch
frappe.patches.v8_1.enable_allow_error_traceback_in_system_settings
and comment out /# /

Then run bench migrate.

It should run smoothly then go to you site and add the necessary currency precision.

Then clear out the commented row.

Run bench update --upgrade again.


OR

as advised before if you are in the system,
go to the specific Doctype and reset it.

Hope this helps.

1 Like