Multi Currency Credit/Debit wont go over 1 Billion+, Database Bug?

Still Testing Multi Currency Feature

Noticed that debit/credit_in_account_currency field wont go over 1 Billion after saving

The Problem is Caused by the Database Length having a limit of 18 Decimals

.

Is it Safe to Increase the Database Length?
Will it Affect something in the system?

1 Like

@claily thanks for reporting this. This needs to be fixed at the framework level.

Do you use a precision of 9? If you use a precision of upto 6, it uses DECIMAL(18,6) which will give you 12 digits.

I’m Currently using a precision of 8 ,Will it be ok if i adjust all the columns in the database to DECIMAL (30,9).

It won’t stay! Update also syncs schema.

Are you on Master or Develop branch? We can fix this in the product.

Im currently using.

ERPNext: v6.12.1
Frappe Framework: v6.11.0

Not updating since. i manually update some modules from master but not all.

We can fix this in the develop branch. Which will be released as version 7 sometime in May. Or you can cherry-pick this particular commit.

Why do you need a range of 30 digits? Shouldn’t Decimal(21,9) do which will give you 999,999,999,999.999999999?

2 Likes

Here you go: https://github.com/frappe/frappe/commit/4f93c976a7a0fe1d1c7a847624e50a762fc9e0cb

1 Like

i used Decimal(30,9) for testing. maybe i will use Decimal(21,9)

Thank you so much anand.