Delivery note to packing slip mapping
diff --git a/erpnext/stock/doctype/delivery_note/delivery_note.js b/erpnext/stock/doctype/delivery_note/delivery_note.js
index fb94b88..10fe650 100644
--- a/erpnext/stock/doctype/delivery_note/delivery_note.js
+++ b/erpnext/stock/doctype/delivery_note/delivery_note.js
@@ -118,10 +118,10 @@
}
cur_frm.cscript['Make Packing Slip'] = function() {
- n = frappe.model.make_new_doc_and_get_name('Packing Slip');
- ps = locals["Packing Slip"][n];
- ps.delivery_note = cur_frm.doc.name;
- loaddoc('Packing Slip', n);
+ frappe.model.open_mapped_doc({
+ method: "erpnext.stock.doctype.delivery_note.delivery_note.make_packing_slip",
+ frm: cur_frm
+ })
}
var set_print_hide= function(doc, cdt, cdn){
diff --git a/erpnext/stock/doctype/delivery_note/delivery_note.py b/erpnext/stock/doctype/delivery_note/delivery_note.py
index da7dd7a..1600950 100644
--- a/erpnext/stock/doctype/delivery_note/delivery_note.py
+++ b/erpnext/stock/doctype/delivery_note/delivery_note.py
@@ -346,3 +346,19 @@
}, target_doc)
return doclist
+
+@frappe.whitelist()
+def make_packing_slip(source_name, target_doc=None):
+ doclist = get_mapped_doc("Delivery Note", source_name, {
+ "Delivery Note": {
+ "doctype": "Packing Slip",
+ "field_map": {
+ "name": "delivery_note"
+ },
+ "validation": {
+ "docstatus": ["=", 0]
+ }
+ }
+ }, target_doc)
+
+ return doclist
diff --git a/erpnext/stock/doctype/material_request/material_request.py b/erpnext/stock/doctype/material_request/material_request.py
index f8f0d09..9951fc8 100644
--- a/erpnext/stock/doctype/material_request/material_request.py
+++ b/erpnext/stock/doctype/material_request/material_request.py
@@ -48,7 +48,7 @@
def validate_schedule_date(self):
for d in self.get('indent_details'):
- if d.schedule_date < self.transaction_date:
+ if d.schedule_date and d.schedule_date < self.transaction_date:
frappe.throw(_("Expected Date cannot be before Material Request Date"))
# Validate
diff --git a/erpnext/stock/doctype/packing_slip/packing_slip.js b/erpnext/stock/doctype/packing_slip/packing_slip.js
index acdd27e..9788290 100644
--- a/erpnext/stock/doctype/packing_slip/packing_slip.js
+++ b/erpnext/stock/doctype/packing_slip/packing_slip.js
@@ -18,7 +18,7 @@
cur_frm.cscript.onload_post_render = function(doc, cdt, cdn) {
if(doc.delivery_note && doc.__islocal) {
- cur_frm.cscript.get_items(doc, cdt, cdn);
+ cur_frm.cscript.get_items(doc, cdt, cdn);
}
}