From 510eda353a58321fdb61460612b77a8476e02117 Mon Sep 17 00:00:00 2001 From: Nabin Hait Date: Wed, 18 Jul 2012 13:19:01 +0530 Subject: [PATCH] packing list issue fixed --- erpnext/selling/doctype/sales_common/sales_common.py | 8 ++++++-- erpnext/selling/doctype/sales_order/sales_order.py | 2 +- erpnext/stock/doctype/delivery_note/delivery_note.py | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/erpnext/selling/doctype/sales_common/sales_common.py b/erpnext/selling/doctype/sales_common/sales_common.py index 74963fbc07..ff65e8c138 100644 --- a/erpnext/selling/doctype/sales_common/sales_common.py +++ b/erpnext/selling/doctype/sales_common/sales_common.py @@ -410,7 +410,7 @@ class DocType(TransactionBase): if self.has_sales_bom(d.item_code): for p in getlist(obj.doclist, 'packing_details'): - if p.parent_detail_docname == d.name: + if p.parent_detail_docname == d.name and p.parent_item == d.item_code: # the packing details table's qty is already multiplied with parent's qty il.append({ 'warehouse': d.warehouse, @@ -525,7 +525,9 @@ class DocType(TransactionBase): if [d.item_code, d.name] not in parent_items: parent_items.append([d.item_code, d.name]) - self.cleanup_packing_list(obj, parent_items) + obj.doclist = self.cleanup_packing_list(obj, parent_items) + + return obj.doclist def cleanup_packing_list(self, obj, parent_items): """Remove all those child items which are no longer present in main item table""" @@ -546,6 +548,8 @@ class DocType(TransactionBase): where name in (%s)""" % (", ".join(["%s"] * len(delete_list))), tuple(delete_list)) + + return obj.doclist # Get total in words # ================================================================== diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py index 02bffca098..fc7f4bcbbb 100644 --- a/erpnext/selling/doctype/sales_order/sales_order.py +++ b/erpnext/selling/doctype/sales_order/sales_order.py @@ -316,7 +316,7 @@ class DocType(TransactionBase): sales_com_obj.validate_max_discount(self,'sales_order_details') # this is to verify that the allocated % of sales persons is 100% sales_com_obj.get_allocated_sum(self) - sales_com_obj.make_packing_list(self,'sales_order_details') + self.doclist = sales_com_obj.make_packing_list(self,'sales_order_details') # get total in words dcc = TransactionBase().get_company_currency(self.doc.company) diff --git a/erpnext/stock/doctype/delivery_note/delivery_note.py b/erpnext/stock/doctype/delivery_note/delivery_note.py index ad95cf1e9e..ce83db041a 100644 --- a/erpnext/stock/doctype/delivery_note/delivery_note.py +++ b/erpnext/stock/doctype/delivery_note/delivery_note.py @@ -434,7 +434,7 @@ class DocType(TransactionBase): def on_update(self): - get_obj('Sales Common').make_packing_list(self,'delivery_note_details') + self.doclist = get_obj('Sales Common').make_packing_list(self,'delivery_note_details') self.set_actual_qty() get_obj('Stock Ledger').scrub_serial_nos(self)