48 lines
1.9 KiB
Markdown
48 lines
1.9 KiB
Markdown
# Changelog
|
||
|
||
## [17.0.1.0.2] - 2025-11-22
|
||
|
||
### Fixed
|
||
- **CRITICAL FIX**: Increased precision from 6 to 10 decimal places
|
||
- Fixed issue where 1,264,733 would display as 1,264,732.98
|
||
- Now handles both small and large quantities accurately
|
||
|
||
### Technical Details
|
||
- Changed `digits=(16, 6)` to `digits=(16, 10)` for maximum precision
|
||
- Test cases:
|
||
- 277,534 ÷ 150 = 1850.2266666667 → 277,534.00 ✅
|
||
- 1,264,733 ÷ 60,000 = 21.0788833333 → 1,264,733.00 ✅
|
||
|
||
## [17.0.1.0.1] - 2025-11-21
|
||
|
||
### Fixed
|
||
- **CRITICAL FIX**: Fixed precision issue where manually entering values like 277,534 would display as 277,534.50
|
||
- Overrode `price_unit` field to use 6 decimal places instead of 2 (Product Price precision)
|
||
- Removed explicit rounding in onchange methods to preserve maximum precision
|
||
- This ensures that manually entered tax excluded and tax included amounts are preserved exactly
|
||
|
||
### Technical Details
|
||
- **Root Cause**: The `price_unit` field was using the "Product Price" decimal precision (2 decimals)
|
||
- **Solution**: Override the field definition with `digits=(16, 6)` to allow 6 decimal places
|
||
- When you enter 277,534 with quantity 150:
|
||
- Old: price_unit = 1850.23 (2 decimals) → recalc = 277,534.50 ❌
|
||
- New: price_unit = 1850.226667 (6 decimals) → recalc = 277,534.00 ✅
|
||
|
||
### Example
|
||
Before fix:
|
||
- Enter Tax excl: 277,534
|
||
- Calculated price_unit: 1850.23 (limited to 2 decimals by field definition)
|
||
- Displayed Tax excl: 277,534.50 ❌ (1850.23 × 150)
|
||
|
||
After fix:
|
||
- Enter Tax excl: 277,534
|
||
- Calculated price_unit: 1850.226667 (now supports 6 decimals)
|
||
- Displayed Tax excl: 277,534.00 ✅ (1850.226667 × 150 = 277,534.0005, rounded to 277,534.00)
|
||
|
||
### Upgrade Instructions
|
||
1. Stop Odoo server
|
||
2. Run: `python3 odoo/odoo-bin -c odoo.conf -d YOUR_DB -u vendor_bill_editable_totals --stop-after-init`
|
||
3. Start Odoo server
|
||
4. Clear browser cache (important!)
|
||
5. Test with a vendor bill
|