[ https://issues.apache.org/jira/browse/OFBIZ-6436?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14566577#comment-14566577 ]
Michael Brohl commented on OFBIZ-6436: -------------------------------------- Now you have a .gitignore file added to the patch. > Different price Order vs. Invoice due rounding > ---------------------------------------------- > > Key: OFBIZ-6436 > URL: https://issues.apache.org/jira/browse/OFBIZ-6436 > Project: OFBiz > Issue Type: Improvement > Affects Versions: Release Branch 13.07, Release Branch 14.12, Trunk > Reporter: Ingo Wolfmayr > Assignee: Michael Brohl > Attachments: PriceService.patch, priceservices.patch > > > When creating an order with the following data, invoice and order calculates > different prices due to different rounding strategies: > Example: > Net price: 8,70 > Price Rule: 2 % > Calc price: 8,526 > Order quantity: 2 > Rounding order: 2 dec > Rounding invoice: 2 dec > Both: ROUND_HALF_UP > Calculation for order price: > 8,526 * 2 = 17,052 --> Rouning = 17,05 (rounding takes place after multipying > with the order quantity ) > Calculation for invoice price: > 8,53 * 2 = 17,06 (rounding takes place before multipying with the order > quantity) > Rounding takes place on different places and leads to (from my understanding) > misscalculation. > I create a patch that applies rounding on PriceCalculation level. Therefore: > 1) get singe unit price and do all calculations on it (Price rules ...) > 2) before forwarding the price, apply rounding (ORDER SETTINGS) on single > unit price > As the invoice calculation uses the unit price (if invoice is associate with > order) from ORDER_ITEM it will calculate with the already rounded value. > Result: Order Price = Invoice Price > I would appreciate any thought on it. -- This message was sent by Atlassian JIRA (v6.3.4#6332)