diff --git a/erpnext/stock/doctype/packed_item/packed_item.py b/erpnext/stock/doctype/packed_item/packed_item.py
index d6db40d..74dfa05 100644
--- a/erpnext/stock/doctype/packed_item/packed_item.py
+++ b/erpnext/stock/doctype/packed_item/packed_item.py
@@ -19,7 +19,7 @@
 		where t2.new_item_code=%s and t1.parent = t2.name order by t1.idx""", item_code, as_dict=1)
 
 def get_packing_item_details(item):
-	return frappe.db.sql("""select item_name, description, stock_uom from `tabItem`
+	return frappe.db.sql("""select item_name, description, stock_uom, default_warehouse from `tabItem`
 		where name = %s""", item, as_dict = 1)[0]
 
 def get_bin_qty(item, warehouse):
@@ -28,7 +28,6 @@
 	return det and det[0] or frappe._dict()
 
 def update_packing_list_item(doc, packing_item_code, qty, main_item_row, description):
-	bin = get_bin_qty(packing_item_code, main_item_row.warehouse)
 	item = get_packing_item_details(packing_item_code)
 
 	# check if exists
@@ -48,15 +47,16 @@
 	pi.description = item.description
 	pi.uom = item.stock_uom
 	pi.qty = flt(qty)
-	pi.actual_qty = flt(bin.get("actual_qty"))
-	pi.projected_qty = flt(bin.get("projected_qty"))
 	pi.description = description
 	if not pi.warehouse:
-		pi.warehouse = main_item_row.warehouse
+		pi.warehouse = item.default_warehouse or main_item_row.warehouse
 	if not pi.batch_no:
 		pi.batch_no = cstr(main_item_row.get("batch_no"))
 	if not pi.target_warehouse:
 		pi.target_warehouse = main_item_row.get("target_warehouse")
+	bin = get_bin_qty(packing_item_code, pi.warehouse)
+	pi.actual_qty = flt(bin.get("actual_qty"))
+	pi.projected_qty = flt(bin.get("projected_qty"))
 
 def make_packing_list(doc):
 	"""make packing list for Product Bundle item"""
