Are all of those digit significant? If not, can you modify the values when generated? You mentioned "a wired method"; if the values are being computed in Apex, you can use
Decimal.round(), it supports eight different rounding models, but unlike
round() it allows you to round to a specified number of decimal places.
The method returns a new Decimal, so you'll need to apply it to your calculated value and store the result. Here's an example pulled from one of my projects:
this.tx.Local_Amount__c = (Math.abs(writeoff.Local_Amount__c) * guarantor.Guarantee_Percentage__c / 100.0).setScale(2, LoanUtil.RoundingMode);
In this case,
LoanUtil.RoundingMode is a centralized constant to allow all rounding code in the system to use the same value, which can be changed if needed. In practice, we only ever use
RoundingMode.HALF_EVEN, as this is the most common for financial transactions. If you expect lots of values ending in '999...' which you don't want rounded up, consider