Merge branch 'develop'
diff --git a/config.json b/config.json
index 77a00b8..28d1a3d 100644
--- a/config.json
+++ b/config.json
@@ -1,6 +1,6 @@
{
"app_name": "ERPNext",
- "app_version": "3.2.1",
+ "app_version": "3.2.2",
"base_template": "app/portal/templates/base.html",
"modules": {
"Accounts": {
diff --git a/selling/doctype/sales_order/sales_order.py b/selling/doctype/sales_order/sales_order.py
index 771aafa..a66c446 100644
--- a/selling/doctype/sales_order/sales_order.py
+++ b/selling/doctype/sales_order/sales_order.py
@@ -110,12 +110,12 @@
self.validate_uom_is_integer("stock_uom", "qty")
self.validate_for_items()
self.validate_warehouse()
-
+
from stock.doctype.packed_item.packed_item import make_packing_list
self.doclist = make_packing_list(self,'sales_order_details')
-
+
self.validate_with_previous_doc()
-
+
if not self.doc.status:
self.doc.status = "Draft"
@@ -124,8 +124,7 @@
"Cancelled"])
if not self.doc.billing_status: self.doc.billing_status = 'Not Billed'
- if not self.doc.delivery_status: self.doc.delivery_status = 'Not Delivered'
-
+ if not self.doc.delivery_status: self.doc.delivery_status = 'Not Delivered'
def validate_warehouse(self):
from stock.utils import validate_warehouse_user, validate_warehouse_company
diff --git a/stock/doctype/delivery_note/delivery_note.py b/stock/doctype/delivery_note/delivery_note.py
index 1089a56..b2149b1 100644
--- a/stock/doctype/delivery_note/delivery_note.py
+++ b/stock/doctype/delivery_note/delivery_note.py
@@ -73,6 +73,9 @@
self.update_current_stock()
self.validate_with_previous_doc()
+ from stock.doctype.packed_item.packed_item import make_packing_list
+ self.doclist = make_packing_list(self, 'delivery_note_details')
+
self.doc.status = 'Draft'
if not self.doc.installation_status: self.doc.installation_status = 'Not Installed'
@@ -142,10 +145,6 @@
bin = webnotes.conn.sql("select actual_qty, projected_qty from `tabBin` where item_code = %s and warehouse = %s", (d.item_code, d.warehouse), as_dict = 1)
d.actual_qty = bin and flt(bin[0]['actual_qty']) or 0
d.projected_qty = bin and flt(bin[0]['projected_qty']) or 0
-
- def on_update(self):
- from stock.doctype.packed_item.packed_item import make_packing_list
- self.doclist = make_packing_list(self, 'delivery_note_details')
def on_submit(self):
self.validate_packed_qty()
diff --git a/stock/doctype/packed_item/packed_item.py b/stock/doctype/packed_item/packed_item.py
index a58444d..ba3cb30 100644
--- a/stock/doctype/packed_item/packed_item.py
+++ b/stock/doctype/packed_item/packed_item.py
@@ -56,9 +56,6 @@
pi.batch_no = cstr(line.batch_no)
pi.idx = packing_list_idx
- # saved, since this function is called on_update of delivery note
- pi.save()
-
packing_list_idx += 1
@@ -87,19 +84,13 @@
for d in obj.doclist.get({"parentfield": "packing_details"}):
if [d.parent_item, d.parent_detail_docname] not in parent_items:
# mark for deletion from doclist
- delete_list.append(d.name)
+ delete_list.append([d.parent_item, d.parent_detail_docname])
if not delete_list:
return obj.doclist
# delete from doclist
- obj.doclist = webnotes.doclist(filter(lambda d: d.name not in delete_list, obj.doclist))
-
- # delete from db
- webnotes.conn.sql("""\
- delete from `tabPacked Item`
- where name in (%s)"""
- % (", ".join(["%s"] * len(delete_list))),
- tuple(delete_list))
+ obj.doclist = webnotes.doclist(filter(lambda d: [d.parent_item, d.parent_detail_docname]
+ not in delete_list, obj.doclist))
return obj.doclist
\ No newline at end of file