changeset 4ad69cbbe49d in modules/stock:default details: https://hg.tryton.org/modules/stock?cmd=changeset&node=4ad69cbbe49d description: Remove default currency on stock move
issue11512 review433171003 diffstat: CHANGELOG | 1 + move.py | 8 -------- tests/scenario_stock_average_cost_price.rst | 4 +--- tests/scenario_stock_product_quantities_by_warehouse.rst | 4 ++++ tests/scenario_stock_recompute_average_cost_price.rst | 4 ++++ tests/scenario_stock_recompute_average_cost_price_production.rst | 2 ++ tests/scenario_stock_reporting_margin.rst | 5 +++++ tests/scenario_stock_shipment_in_same_storage_input.rst | 1 + tests/scenario_stock_shipment_out_same_storage_output.rst | 1 + tests/test_module.py | 9 ++++++++- 10 files changed, 27 insertions(+), 12 deletions(-) diffs (274 lines): diff -r becc2c65395d -r 4ad69cbbe49d CHANGELOG --- a/CHANGELOG Wed Sep 28 09:47:03 2022 +0200 +++ b/CHANGELOG Thu Sep 29 09:08:06 2022 +0200 @@ -1,3 +1,4 @@ +* Remove default currency on move * Allow cancelling move done * Support warehouse pickup * Allow resetting packed customer shipments diff -r becc2c65395d -r 4ad69cbbe49d move.py --- a/move.py Wed Sep 28 09:47:03 2022 +0200 +++ b/move.py Thu Sep 29 09:08:06 2022 +0200 @@ -392,14 +392,6 @@ def default_unit_price_updated(cls): return True - @staticmethod - def default_currency(): - Company = Pool().get('company.company') - company = Transaction().context.get('company') - if company: - company = Company(company) - return company.currency.id - @fields.depends('product', 'uom') def on_change_product(self): if self.product: diff -r becc2c65395d -r 4ad69cbbe49d tests/scenario_stock_average_cost_price.rst --- a/tests/scenario_stock_average_cost_price.rst Wed Sep 28 09:47:03 2022 +0200 +++ b/tests/scenario_stock_average_cost_price.rst Thu Sep 29 09:08:06 2022 +0200 @@ -190,12 +190,12 @@ >>> outgoing_move.uom = unit >>> outgoing_move.quantity = 1 >>> outgoing_move.unit_price = Decimal('28') + >>> outgoing_move.currency = company.currency >>> outgoing_move.from_location = storage_loc >>> outgoing_move.to_location = supplier_loc >>> outgoing_move.planned_date = today >>> outgoing_move.effective_date = today >>> outgoing_move.company = company - >>> outgoing_move.currency = company.currency >>> outgoing_move.click('do') Cost price should stay 5:: @@ -209,7 +209,6 @@ >>> incoming_move.product = negative_product >>> incoming_move.uom = unit >>> incoming_move.quantity = 1 - >>> outgoing_move.unit_price = Decimal('28') >>> incoming_move.from_location = supplier_loc >>> incoming_move.to_location = storage_loc >>> incoming_move.planned_date = today @@ -231,7 +230,6 @@ >>> incoming_move.product = negative_product >>> incoming_move.uom = unit >>> incoming_move.quantity = 2 - >>> outgoing_move.unit_price = Decimal('28') >>> incoming_move.from_location = supplier_loc >>> incoming_move.to_location = storage_loc >>> incoming_move.planned_date = today diff -r becc2c65395d -r 4ad69cbbe49d tests/scenario_stock_product_quantities_by_warehouse.rst --- a/tests/scenario_stock_product_quantities_by_warehouse.rst Wed Sep 28 09:47:03 2022 +0200 +++ b/tests/scenario_stock_product_quantities_by_warehouse.rst Thu Sep 29 09:08:06 2022 +0200 @@ -57,6 +57,7 @@ >>> move.quantity = 10 >>> move.effective_date = yesterday >>> move.unit_price = Decimal('10') + >>> move.currency = company.currency >>> move.click('do') Forecast some moves:: @@ -69,6 +70,7 @@ >>> move.quantity = 6 >>> move.planned_date = tomorrow >>> move.unit_price = Decimal('20') + >>> move.currency = company.currency >>> move.save() >>> move = Move() @@ -79,6 +81,7 @@ >>> move.quantity = 5 >>> move.planned_date = tomorrow >>> move.unit_price = Decimal('10') + >>> move.currency = company.currency >>> move.save() >>> move = Move() @@ -89,6 +92,7 @@ >>> move.quantity = 3 >>> move.planned_date = tomorrow >>> move.unit_price = Decimal('20') + >>> move.currency = company.currency >>> move.save() diff -r becc2c65395d -r 4ad69cbbe49d tests/scenario_stock_recompute_average_cost_price.rst --- a/tests/scenario_stock_recompute_average_cost_price.rst Wed Sep 28 09:47:03 2022 +0200 +++ b/tests/scenario_stock_recompute_average_cost_price.rst Thu Sep 29 09:08:06 2022 +0200 @@ -55,6 +55,7 @@ ... from_location=supplier_loc, ... to_location=storage_loc, ... unit_price=Decimal('100'), + ... currency=company.currency, ... effective_date=today - dt.timedelta(days=2)).click('do') >>> StockMove( ... product=product, @@ -62,6 +63,7 @@ ... from_location=storage_loc, ... to_location=customer_loc, ... unit_price=Decimal('300'), + ... currency=company.currency, ... effective_date=today - dt.timedelta(days=1)).click('do') >>> StockMove( ... product=product, @@ -69,6 +71,7 @@ ... from_location=supplier_loc, ... to_location=storage_loc, ... unit_price=Decimal('120'), + ... currency=company.currency, ... effective_date=today - dt.timedelta(days=1)).click('do') >>> StockMove( ... product=product, @@ -76,6 +79,7 @@ ... from_location=supplier_loc, ... to_location=storage_loc, ... unit_price=Decimal('100'), + ... currency=company.currency, ... effective_date=today).click('do') >>> [m.cost_price for m in StockMove.find([])] diff -r becc2c65395d -r 4ad69cbbe49d tests/scenario_stock_recompute_average_cost_price_production.rst --- a/tests/scenario_stock_recompute_average_cost_price_production.rst Wed Sep 28 09:47:03 2022 +0200 +++ b/tests/scenario_stock_recompute_average_cost_price_production.rst Thu Sep 29 09:08:06 2022 +0200 @@ -65,6 +65,7 @@ ... from_location=production_loc, ... to_location=storage_loc, ... unit_price=Decimal('40.0000'), + ... currency=company.currency, ... effective_date=today).click('do') >>> [m.cost_price for m in StockMove.find([])] @@ -90,6 +91,7 @@ ... from_location=supplier_loc, ... to_location=storage_loc, ... unit_price=Decimal('20.0000'), + ... currency=company.currency, ... effective_date=yesterday).click('do') Recompute cost price:: diff -r becc2c65395d -r 4ad69cbbe49d tests/scenario_stock_reporting_margin.rst --- a/tests/scenario_stock_reporting_margin.rst Wed Sep 28 09:47:03 2022 +0200 +++ b/tests/scenario_stock_reporting_margin.rst Thu Sep 29 09:08:06 2022 +0200 @@ -70,6 +70,7 @@ >>> move.to_location = storage_loc >>> move.quantity = 8 >>> move.unit_price = Decimal('20') + >>> move.currency = company.currency >>> move.effective_date = yesterday >>> move.click('do') @@ -79,6 +80,7 @@ >>> move.to_location = customer_loc >>> move.quantity = 2 >>> move.unit_price = Decimal('40') + >>> move.currency = company.currency >>> move.effective_date = yesterday >>> move.click('do') @@ -88,6 +90,7 @@ >>> move.to_location = customer_loc >>> move.quantity = 4 >>> move.unit_price = Decimal('30') + >>> move.currency = company.currency >>> move.effective_date = today >>> move.click('do') @@ -97,6 +100,7 @@ >>> move.to_location = storage_loc >>> move.quantity = 1 >>> move.unit_price = Decimal('30') + >>> move.currency = company.currency >>> move.effective_date = today >>> move.click('do') @@ -106,6 +110,7 @@ >>> move.to_location = customer_loc >>> move.quantity = 2 >>> move.unit_price = Decimal('50') + >>> move.currency = company.currency >>> move.effective_date = today >>> move.click('do') diff -r becc2c65395d -r 4ad69cbbe49d tests/scenario_stock_shipment_in_same_storage_input.rst --- a/tests/scenario_stock_shipment_in_same_storage_input.rst Wed Sep 28 09:47:03 2022 +0200 +++ b/tests/scenario_stock_shipment_in_same_storage_input.rst Thu Sep 29 09:08:06 2022 +0200 @@ -64,6 +64,7 @@ >>> move.uom = unit >>> move.quantity = 1 >>> move.unit_price = Decimal('5') + >>> move.currency = company.currency >>> move.from_location = supplier_loc >>> move.to_location = storage1 >>> shipment_in.save() diff -r becc2c65395d -r 4ad69cbbe49d tests/scenario_stock_shipment_out_same_storage_output.rst --- a/tests/scenario_stock_shipment_out_same_storage_output.rst Wed Sep 28 09:47:03 2022 +0200 +++ b/tests/scenario_stock_shipment_out_same_storage_output.rst Thu Sep 29 09:08:06 2022 +0200 @@ -60,6 +60,7 @@ >>> move.uom = unit >>> move.quantity = 1 >>> move.unit_price = Decimal('5') + >>> move.currency = company.currency >>> move.from_location = storage_loc >>> move.to_location = customer_loc >>> shipment_out.save() diff -r becc2c65395d -r 4ad69cbbe49d tests/test_module.py --- a/tests/test_module.py Wed Sep 28 09:47:03 2022 +0200 +++ b/tests/test_module.py Thu Sep 29 09:08:06 2022 +0200 @@ -624,7 +624,8 @@ 'to_location': storage.id, 'effective_date': date, 'company': company.id, - 'unit_price': 10.0 + 'unit_price': 10.0, + 'currency': company.currency.id, }, { 'product': product.id, 'uom': unit.id, @@ -1573,6 +1574,7 @@ 'from_location': supplier.id, 'to_location': storage.id, 'unit_price': Decimal('5'), + 'currency': company.currency.id, 'company': company.id, }, { 'product': product2.id, @@ -1581,6 +1583,7 @@ 'from_location': supplier.id, 'to_location': storage.id, 'unit_price': Decimal('5'), + 'currency': company.currency.id, 'company': company.id, }]) with self.assertRaises(UserWarning): @@ -1593,6 +1596,7 @@ 'from_location': storage.id, 'to_location': supplier.id, 'unit_price': Decimal('5'), + 'currency': company.currency.id, 'company': company.id, }, { 'product': product2.id, @@ -1601,6 +1605,7 @@ 'from_location': storage.id, 'to_location': supplier.id, 'unit_price': Decimal('5'), + 'currency': company.currency.id, 'company': company.id, }]) Product.write(products, {'active': False}) @@ -1635,6 +1640,7 @@ 'from_location': supplier.id, 'to_location': storage.id, 'unit_price': Decimal('5'), + 'currency': company.currency.id, 'company': company.id, }]) with self.assertRaises(UserWarning): @@ -1647,6 +1653,7 @@ 'from_location': storage.id, 'to_location': supplier.id, 'unit_price': Decimal('5'), + 'currency': company.currency.id, 'company': company.id, }]) Product.write(products, {'active': False})