diff --git a/modules/purchase_trade/lot.py b/modules/purchase_trade/lot.py index 3e31a7f..f123a7c 100755 --- a/modules/purchase_trade/lot.py +++ b/modules/purchase_trade/lot.py @@ -2821,6 +2821,10 @@ class LotReport( r_sale_line_price = fields.Function( fields.Numeric("Sale Price", digits=(16, 4)), 'get_sale_line_price') + r_purchase_currency_symbol = fields.Function( + fields.Char("Purchase Currency"), 'get_purchase_currency_symbol') + r_sale_currency_symbol = fields.Function( + fields.Char("Sale Currency"), 'get_sale_currency_symbol') r_del_period = fields.Many2One( 'product.month', "Purchase Shipment Period") r_sale_del_period = fields.Many2One( @@ -3067,6 +3071,14 @@ class LotReport( def get_sale_line_price(self, name=None): return getattr(self.r_sale_line, 'unit_price', None) + def get_purchase_currency_symbol(self, name=None): + currency = getattr(getattr(self.r_line, 'purchase', None), 'currency', None) + return getattr(currency, 'symbol', None) or getattr(currency, 'code', None) + + def get_sale_currency_symbol(self, name=None): + currency = getattr(getattr(self.r_sale_line, 'sale', None), 'currency', None) + return getattr(currency, 'symbol', None) or getattr(currency, 'code', None) + #@classmethod #def delete(cls, records): # Unmatch = Pool().get('lot.unmatch', type='wizard') @@ -3761,6 +3773,14 @@ class LotMatching(Wizard): 'lot_r_id': cls._record_id(lqt), 'lot_purchase': cls._record_id(purchase), 'lot_sale': cls._record_id(sale), + 'lot_purchase_reference': ( + getattr(purchase, 'reference', None) + or getattr(purchase, 'our_reference', None)), + 'lot_sale_reference': ( + getattr(sale, 'reference', None) + or getattr(sale, 'our_reference', None)), + 'lot_purchase_line_price': getattr(line, 'unit_price', None), + 'lot_sale_line_price': getattr(sale_line, 'unit_price', None), 'lot_shipment_in': cls._record_id(lqt.lot_shipment_in), 'lot_shipment_internal': cls._record_id( lqt.lot_shipment_internal), @@ -3787,6 +3807,10 @@ class LotMatching(Wizard): 'lot_r_id': None, 'lot_purchase': cls._record_id(purchase), 'lot_sale': None, + 'lot_purchase_reference': ( + getattr(purchase, 'reference', None) + or getattr(purchase, 'our_reference', None)), + 'lot_purchase_line_price': getattr(line, 'unit_price', None), 'lot_shipment_in': cls._record_id( getattr(lot, 'lot_shipment_in', None)), 'lot_shipment_internal': cls._record_id( diff --git a/modules/purchase_trade/view/lot_report_list.xml b/modules/purchase_trade/view/lot_report_list.xml index a595a6d..650fec7 100755 --- a/modules/purchase_trade/view/lot_report_list.xml +++ b/modules/purchase_trade/view/lot_report_list.xml @@ -6,11 +6,11 @@ - + - + @@ -34,6 +34,8 @@ + +