changeset e84b2aaefd4e in modules/sale:default
details: https://hg.tryton.org/modules/sale?cmd=changeset&node=e84b2aaefd4e
description:
Add marketing_campaign module
issue11587
review425381003
diffstat:
sale_reporting.py | 26 ++++++++++++++++----------
1 files changed, 16 insertions(+), 10 deletions(-)
diffs (41 lines):
diff -r 8f0ce648a628 -r e84b2aaefd4e sale_reporting.py
--- a/sale_reporting.py Sat Oct 01 14:45:59 2022 +0200
+++ b/sale_reporting.py Sat Oct 01 15:12:38 2022 +0200
@@ -70,21 +70,27 @@
.join(sale, condition=line.sale == sale.id)
.select(
(line.id * length + index).as_('id'),
- line.product.as_('product'),
- Coalesce(line.actual_quantity, line.quantity).as_('quantity'),
- line.unit_price.as_('unit_price'),
- Concat('sale.sale,', line.sale).as_('order'),
- sale.sale_date.as_('date'),
- sale.company.as_('company'),
- sale.currency.as_('currency'),
- sale.party.as_('customer'),
- sale.warehouse.as_('location'),
- sale.shipment_address.as_('shipment_address'),
+ *cls._sale_line_columns(line, sale),
where=sale.state.in_(cls._sale_states())
& (sale.company == company_id),
))
@classmethod
+ def _sale_line_columns(cls, line, sale):
+ return [
+ line.product.as_('product'),
+ Coalesce(line.actual_quantity, line.quantity).as_('quantity'),
+ line.unit_price.as_('unit_price'),
+ Concat('sale.sale,', line.sale).as_('order'),
+ sale.sale_date.as_('date'),
+ sale.company.as_('company'),
+ sale.currency.as_('currency'),
+ sale.party.as_('customer'),
+ sale.warehouse.as_('location'),
+ sale.shipment_address.as_('shipment_address'),
+ ]
+
+ @classmethod
def _lines(cls):
return [cls._sale_line]