Merge branch 'develop' into batch_bom_operations
diff --git a/erpnext/accounts/doctype/accounting_dimension/accounting_dimension.js b/erpnext/accounts/doctype/accounting_dimension/accounting_dimension.js
index dd20632..ffb6d5e 100644
--- a/erpnext/accounts/doctype/accounting_dimension/accounting_dimension.js
+++ b/erpnext/accounts/doctype/accounting_dimension/accounting_dimension.js
@@ -10,6 +10,14 @@
 			});
 		}
 
+		frm.set_query('document_type', () => {
+			return {
+				filters: {
+					name: ['not in', ['Accounting Dimension', 'Project', 'Cost Center']]
+				}
+			};
+		});
+
 		let button = frm.doc.disabled ? "Enable" : "Disable";
 
 		frm.add_custom_button(__(button), function() {
@@ -33,10 +41,10 @@
 
 	document_type: function(frm) {
 		frm.set_value('label', frm.doc.document_type);
-		frm.set_value('fieldname', frappe.scrub(frm.doc.document_type));
+		frm.set_value('fieldname', frappe.model.scrub(frm.doc.document_type));
 
 		frappe.db.get_value('Accounting Dimension', {'document_type': frm.doc.document_type}, 'document_type', (r) => {
-			if (r.document_type) {
+			if (r && r.document_type) {
 				frm.set_df_property('document_type', 'description', "Document type is already set as dimension");
 			}
 		});
diff --git a/erpnext/accounts/doctype/accounting_dimension/accounting_dimension.json b/erpnext/accounts/doctype/accounting_dimension/accounting_dimension.json
index 57543a0..6a4dc5c 100644
--- a/erpnext/accounts/doctype/accounting_dimension/accounting_dimension.json
+++ b/erpnext/accounts/doctype/accounting_dimension/accounting_dimension.json
@@ -38,6 +38,7 @@
    "default": "0",
    "fieldname": "disabled",
    "fieldtype": "Check",
+   "hidden": 1,
    "label": "Disable",
    "read_only": 1
   },
@@ -54,7 +55,7 @@
    "label": "Mandatory For Profit and Loss Account"
   }
  ],
- "modified": "2019-07-07 18:56:19.517450",
+ "modified": "2019-07-14 17:25:01.307948",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Accounting Dimension",
diff --git a/erpnext/accounts/doctype/accounting_dimension/accounting_dimension.py b/erpnext/accounts/doctype/accounting_dimension/accounting_dimension.py
index 15ace72..3148498 100644
--- a/erpnext/accounts/doctype/accounting_dimension/accounting_dimension.py
+++ b/erpnext/accounts/doctype/accounting_dimension/accounting_dimension.py
@@ -155,7 +155,7 @@
 	return doclist
 
 def get_accounting_dimensions(as_list=True):
-	accounting_dimensions = frappe.get_all("Accounting Dimension", fields=["label", "fieldname", "mandatory_for_pl", "mandatory_for_bs", "disabled"])
+	accounting_dimensions = frappe.get_all("Accounting Dimension", fields=["label", "fieldname", "mandatory_for_pl", "mandatory_for_bs", "disabled"], filters={"disabled": 0})
 
 	if as_list:
 		return [d.fieldname for d in accounting_dimensions]
diff --git a/erpnext/accounts/doctype/gl_entry/gl_entry.py b/erpnext/accounts/doctype/gl_entry/gl_entry.py
index c543225..84276ea 100644
--- a/erpnext/accounts/doctype/gl_entry/gl_entry.py
+++ b/erpnext/accounts/doctype/gl_entry/gl_entry.py
@@ -91,13 +91,13 @@
 			if account_type == "Profit and Loss" \
 				and dimension.mandatory_for_pl and not dimension.disabled:
 				if not self.get(dimension.fieldname):
-					frappe.throw(_("{0} is required for 'Profit and Loss' account {1}.")
+					frappe.throw(_("Accounting Dimension <b>{0}</b> is required for 'Profit and Loss' account {1}.")
 						.format(dimension.label, self.account))
 
 			if account_type == "Balance Sheet" \
 				and dimension.mandatory_for_bs and not dimension.disabled:
 				if not self.get(dimension.fieldname):
-					frappe.throw(_("{0} is required for 'Balance Sheet' account {1}.")
+					frappe.throw(_("Accounting Dimension <b>{0}</b> is required for 'Balance Sheet' account {1}.")
 						.format(dimension.label, self.account))
 
 
diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.py b/erpnext/accounts/doctype/payment_entry/payment_entry.py
index 699f046..3683898 100644
--- a/erpnext/accounts/doctype/payment_entry/payment_entry.py
+++ b/erpnext/accounts/doctype/payment_entry/payment_entry.py
@@ -601,7 +601,7 @@
 		condition += " and company = {0}".format(frappe.db.escape(args.get("company")))
 
 	outstanding_invoices = get_outstanding_invoices(args.get("party_type"), args.get("party"),
-		args.get("party_account"), filters=args, condition=condition, limit=100)
+		args.get("party_account"), filters=args, condition=condition)
 
 	for d in outstanding_invoices:
 		d["exchange_rate"] = 1
diff --git a/erpnext/accounts/doctype/sales_invoice/pos.py b/erpnext/accounts/doctype/sales_invoice/pos.py
index 3e013f5..e2f99d6 100755
--- a/erpnext/accounts/doctype/sales_invoice/pos.py
+++ b/erpnext/accounts/doctype/sales_invoice/pos.py
@@ -451,6 +451,10 @@
 
 
 def add_customer(data):
+	customer = data.get('full_name') or data.get('customer')
+	if frappe.db.exists("Customer", customer.strip()):
+		return customer.strip()
+
 	customer_doc = frappe.new_doc('Customer')
 	customer_doc.customer_name = data.get('full_name') or data.get('customer')
 	customer_doc.customer_pos_id = data.get('customer_pos_id')
diff --git a/erpnext/accounts/report/accounts_payable/accounts_payable.js b/erpnext/accounts/report/accounts_payable/accounts_payable.js
index f6a561f..cfcc575 100644
--- a/erpnext/accounts/report/accounts_payable/accounts_payable.js
+++ b/erpnext/accounts/report/accounts_payable/accounts_payable.js
@@ -89,6 +89,12 @@
 			}
 		},
 		{
+			"fieldname":"payment_terms_template",
+			"label": __("Payment Terms Template"),
+			"fieldtype": "Link",
+			"options": "Payment Terms Template"
+		},
+		{
 			"fieldname":"supplier_group",
 			"label": __("Supplier Group"),
 			"fieldtype": "Link",
diff --git a/erpnext/accounts/report/accounts_payable_summary/accounts_payable_summary.js b/erpnext/accounts/report/accounts_payable_summary/accounts_payable_summary.js
index ec4f0c9..006068a 100644
--- a/erpnext/accounts/report/accounts_payable_summary/accounts_payable_summary.js
+++ b/erpnext/accounts/report/accounts_payable_summary/accounts_payable_summary.js
@@ -78,6 +78,12 @@
 			"options": "Supplier"
 		},
 		{
+			"fieldname":"payment_terms_template",
+			"label": __("Payment Terms Template"),
+			"fieldtype": "Link",
+			"options": "Payment Terms Template"
+		},
+		{
 			"fieldname":"supplier_group",
 			"label": __("Supplier Group"),
 			"fieldtype": "Link",
diff --git a/erpnext/accounts/report/accounts_receivable/accounts_receivable.py b/erpnext/accounts/report/accounts_receivable/accounts_receivable.py
index 0cda2c1..ecf149b 100755
--- a/erpnext/accounts/report/accounts_receivable/accounts_receivable.py
+++ b/erpnext/accounts/report/accounts_receivable/accounts_receivable.py
@@ -541,6 +541,10 @@
 					where supplier_group=%s)""")
 				values.append(self.filters.get("supplier_group"))
 
+			if self.filters.get("payment_terms_template"):
+				conditions.append("party in (select name from tabSupplier where payment_terms=%s)")
+				values.append(self.filters.get("payment_terms_template"))
+
 		if self.filters.get("cost_center"):
 			lft, rgt = frappe.get_cached_value("Cost Center",
 				self.filters.get("cost_center"), ['lft', 'rgt'])
diff --git a/erpnext/accounts/utils.py b/erpnext/accounts/utils.py
index e75dd95..8f1dfbc 100644
--- a/erpnext/accounts/utils.py
+++ b/erpnext/accounts/utils.py
@@ -104,6 +104,9 @@
 		# get balance of all entries that exist
 		date = nowdate()
 
+	if account:
+		acc = frappe.get_doc("Account", account)
+
 	try:
 		year_start_date = get_fiscal_year(date, verbose=0)[1]
 	except FiscalYearError:
@@ -118,7 +121,7 @@
 
 	allow_cost_center_in_entry_of_bs_account = get_allow_cost_center_in_entry_of_bs_account()
 
-	if cost_center and allow_cost_center_in_entry_of_bs_account:
+	if cost_center and (allow_cost_center_in_entry_of_bs_account or acc.report_type =='Profit and Loss'):
 		cc = frappe.get_doc("Cost Center", cost_center)
 		if cc.is_group:
 			cond.append(""" exists (
@@ -132,20 +135,13 @@
 
 	if account:
 
-		acc = frappe.get_doc("Account", account)
-
 		if not frappe.flags.ignore_account_permission:
 			acc.check_permission("read")
 
-
-		if not allow_cost_center_in_entry_of_bs_account and acc.report_type == 'Profit and Loss':
+		if acc.report_type == 'Profit and Loss':
 			# for pl accounts, get balance within a fiscal year
 			cond.append("posting_date >= '%s' and voucher_type != 'Period Closing Voucher'" \
 				% year_start_date)
-		elif allow_cost_center_in_entry_of_bs_account:
-			# for all accounts, get balance within a fiscal year if maintain cost center in balance account is checked
-			cond.append("posting_date >= '%s' and voucher_type != 'Period Closing Voucher'" \
-				% year_start_date)
 		# different filter for group and ledger - improved performance
 		if acc.is_group:
 			cond.append("""exists (
@@ -734,7 +730,6 @@
 	parent_fieldname = 'parent_' + doctype.lower().replace(' ', '_')
 	fields = [
 		'name as value',
-		'root_type',
 		'is_group as expandable'
 	]
 	filters = [['docstatus', '<', 2]]
@@ -742,11 +737,11 @@
 	filters.append(['ifnull(`{0}`,"")'.format(parent_fieldname), '=', '' if is_root else parent])
 
 	if is_root:
-		fields += ['report_type', 'account_currency'] if doctype == 'Account' else []
+		fields += ['root_type', 'report_type', 'account_currency'] if doctype == 'Account' else []
 		filters.append(['company', '=', company])
 
 	else:
-		fields += ['account_currency'] if doctype == 'Account' else []
+		fields += ['root_type', 'account_currency'] if doctype == 'Account' else []
 		fields += [parent_fieldname + ' as parent']
 
 	acc = frappe.get_list(doctype, fields=fields, filters=filters)
diff --git a/erpnext/controllers/taxes_and_totals.py b/erpnext/controllers/taxes_and_totals.py
index 8e1510a..8d24e7a 100644
--- a/erpnext/controllers/taxes_and_totals.py
+++ b/erpnext/controllers/taxes_and_totals.py
@@ -323,7 +323,7 @@
 		self._set_in_company_currency(self.doc, ["total_taxes_and_charges", "rounding_adjustment"])
 
 		if self.doc.doctype in ["Quotation", "Sales Order", "Delivery Note", "Sales Invoice"]:
-			self.doc.base_grand_total = flt(self.doc.grand_total * self.doc.conversion_rate) \
+			self.doc.base_grand_total = flt(self.doc.grand_total * self.doc.conversion_rate, self.doc.precision("base_grand_total")) \
 				if self.doc.total_taxes_and_charges else self.doc.base_net_total
 		else:
 			self.doc.taxes_and_charges_added = self.doc.taxes_and_charges_deducted = 0.0
diff --git a/erpnext/crm/doctype/opportunity/opportunity.js b/erpnext/crm/doctype/opportunity/opportunity.js
index 9dcd0c4..90a12b7 100644
--- a/erpnext/crm/doctype/opportunity/opportunity.js
+++ b/erpnext/crm/doctype/opportunity/opportunity.js
@@ -19,6 +19,10 @@
 				}
 			}
 		});
+
+		if (frm.doc.opportunity_from && frm.doc.party_name){
+			frm.trigger('set_contact_link');
+		}
 	},
 
 	onload_post_render: function(frm) {
diff --git a/erpnext/manufacturing/doctype/bom/bom.py b/erpnext/manufacturing/doctype/bom/bom.py
index 0fb94e7..a716293 100644
--- a/erpnext/manufacturing/doctype/bom/bom.py
+++ b/erpnext/manufacturing/doctype/bom/bom.py
@@ -594,7 +594,6 @@
 				bom_item.idx,
 				item.item_name,
 				sum(bom_item.{qty_field}/ifnull(bom.quantity, 1)) * %(qty)s as qty,
-				item.description,
 				item.image,
 				bom.project,
 				item.stock_uom,
@@ -623,17 +622,22 @@
 			where_conditions="",
 			is_stock_item=is_stock_item,
 			qty_field="stock_qty",
-			select_columns = """, bom_item.source_warehouse, bom_item.operation, bom_item.include_item_in_manufacturing,
+			select_columns = """, bom_item.source_warehouse, bom_item.operation,
+				bom_item.include_item_in_manufacturing, bom_item.description,
 				(Select idx from `tabBOM Item` where item_code = bom_item.item_code and parent = %(parent)s limit 1) as idx""")
 
 		items = frappe.db.sql(query, { "parent": bom, "qty": qty, "bom": bom, "company": company }, as_dict=True)
 	elif fetch_scrap_items:
-		query = query.format(table="BOM Scrap Item", where_conditions="", select_columns=", bom_item.idx", is_stock_item=is_stock_item, qty_field="stock_qty")
+		query = query.format(table="BOM Scrap Item", where_conditions="",
+			select_columns=", bom_item.idx, item.description", is_stock_item=is_stock_item, qty_field="stock_qty")
+
 		items = frappe.db.sql(query, { "qty": qty, "bom": bom, "company": company }, as_dict=True)
 	else:
 		query = query.format(table="BOM Item", where_conditions="", is_stock_item=is_stock_item,
 			qty_field="stock_qty" if fetch_qty_in_stock_uom else "qty",
-			select_columns = ", bom_item.uom, bom_item.conversion_factor, bom_item.source_warehouse, bom_item.idx, bom_item.operation, bom_item.include_item_in_manufacturing")
+			select_columns = """, bom_item.uom, bom_item.conversion_factor, bom_item.source_warehouse,
+				bom_item.idx, bom_item.operation, bom_item.include_item_in_manufacturing,
+				bom_item.description """)
 		items = frappe.db.sql(query, { "qty": qty, "bom": bom, "company": company }, as_dict=True)
 
 	for item in items:
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index 15e3166..078a61d 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -623,3 +623,4 @@
 erpnext.patches.v11_1.update_default_supplier_in_item_defaults
 erpnext.patches.v12_0.update_due_date_in_gle
 erpnext.patches.v12_0.add_default_buying_selling_terms_in_company
+erpnext.patches.v12_0.update_ewaybill_field_position
diff --git a/erpnext/patches/v12_0/update_ewaybill_field_position.py b/erpnext/patches/v12_0/update_ewaybill_field_position.py
new file mode 100644
index 0000000..d0291d2
--- /dev/null
+++ b/erpnext/patches/v12_0/update_ewaybill_field_position.py
@@ -0,0 +1,27 @@
+from __future__ import unicode_literals
+import frappe
+from erpnext.regional.india.setup import make_custom_fields
+
+def execute():
+	company = frappe.get_all('Company', filters = {'country': 'India'})
+
+	if not company:
+		return
+
+	field = frappe.db.get_value("Custom Field", {"dt": "Sales Invoice", "fieldname": "ewaybill"})
+
+	ewaybill_field = frappe.get_doc("Custom Field", field)
+
+	ewaybill_field.flags.ignore_validate = True
+
+	ewaybill_field.update({
+		'fieldname': 'ewaybill',
+		'label': 'e-Way Bill No.',
+		'fieldtype': 'Data',
+		'depends_on': 'eval:(doc.docstatus === 1)',
+		'allow_on_submit': 1,
+		'insert_after': 'tax_id',
+		'translatable': 0
+	})
+
+	ewaybill_field.save()
\ No newline at end of file
diff --git a/erpnext/patches/v9_0/fix_subscription_next_date.py b/erpnext/patches/v9_0/fix_subscription_next_date.py
index 1789848..4595c8d 100644
--- a/erpnext/patches/v9_0/fix_subscription_next_date.py
+++ b/erpnext/patches/v9_0/fix_subscription_next_date.py
@@ -4,7 +4,7 @@
 from __future__ import unicode_literals
 import frappe
 from frappe.utils import getdate
-from frappe.desk.doctype.auto_repeat.auto_repeat import get_next_schedule_date
+from frappe.automation.doctype.auto_repeat.auto_repeat import get_next_schedule_date
 
 def execute():
 	frappe.reload_doc('accounts', 'doctype', 'subscription')
diff --git a/erpnext/projects/doctype/project/project.json b/erpnext/projects/doctype/project/project.json
index b4536c0..dc221bc 100644
--- a/erpnext/projects/doctype/project/project.json
+++ b/erpnext/projects/doctype/project/project.json
@@ -126,7 +126,8 @@
    "fieldname": "project_template",
    "fieldtype": "Link",
    "label": "From Template",
-   "options": "Project Template"
+   "options": "Project Template",
+   "set_only_once": 1
   },
   {
    "fieldname": "expected_start_date",
@@ -442,7 +443,7 @@
  "icon": "fa fa-puzzle-piece",
  "idx": 29,
  "max_attachments": 4,
- "modified": "2019-06-25 16:14:43.887151",
+ "modified": "2019-07-16 11:11:12.343658",
  "modified_by": "Administrator",
  "module": "Projects",
  "name": "Project",
@@ -481,6 +482,7 @@
  "quick_entry": 1,
  "search_fields": "customer, status, priority, is_active",
  "show_name_in_global_search": 1,
+ "sort_field": "modified",
  "sort_order": "DESC",
  "timeline_field": "customer",
  "track_seen": 1
diff --git a/erpnext/projects/doctype/project_user/project_user.json b/erpnext/projects/doctype/project_user/project_user.json
index 458028f..f0a70dd 100644
--- a/erpnext/projects/doctype/project_user/project_user.json
+++ b/erpnext/projects/doctype/project_user/project_user.json
@@ -1,333 +1,85 @@
 {
- "allow_copy": 0, 
- "allow_events_in_timeline": 0, 
- "allow_guest_to_view": 0, 
- "allow_import": 0, 
- "allow_rename": 0, 
- "beta": 0, 
- "creation": "2016-03-25 02:52:19.283003", 
- "custom": 0, 
- "docstatus": 0, 
- "doctype": "DocType", 
- "document_type": "", 
- "editable_grid": 1, 
+ "creation": "2016-03-25 02:52:19.283003",
+ "doctype": "DocType",
+ "editable_grid": 1,
+ "engine": "InnoDB",
+ "field_order": [
+  "user",
+  "email",
+  "image",
+  "column_break_2",
+  "full_name",
+  "welcome_email_sent",
+  "view_attachments",
+  "section_break_5",
+  "project_status"
+ ],
  "fields": [
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fieldname": "user", 
-   "fieldtype": "Link", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 1, 
-   "in_standard_filter": 0, 
-   "label": "User", 
-   "length": 0, 
-   "no_copy": 0, 
-   "options": "User", 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 1, 
-   "search_index": 1, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "fieldname": "user",
+   "fieldtype": "Link",
+   "in_list_view": 1,
+   "label": "User",
+   "options": "User",
+   "reqd": 1,
+   "search_index": 1
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fetch_from": "user.email", 
-   "fieldname": "email", 
-   "fieldtype": "Read Only", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "label": "Email", 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "fetch_from": "user.email",
+   "fieldname": "email",
+   "fieldtype": "Read Only",
+   "label": "Email"
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fetch_from": "user.user_image", 
-   "fieldname": "image", 
-   "fieldtype": "Read Only", 
-   "hidden": 1, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 1, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "label": "Image", 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "fetch_from": "user.user_image",
+   "fieldname": "image",
+   "fieldtype": "Read Only",
+   "hidden": 1,
+   "in_global_search": 1,
+   "label": "Image"
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fieldname": "column_break_2", 
-   "fieldtype": "Column Break", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "fieldname": "column_break_2",
+   "fieldtype": "Column Break"
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "default": "user.full_name", 
-   "fieldname": "full_name", 
-   "fieldtype": "Read Only", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "label": "Full Name", 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "fetch_from": "user.full_name",
+   "fieldname": "full_name",
+   "fieldtype": "Read Only",
+   "label": "Full Name"
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fieldname": "welcome_email_sent", 
-   "fieldtype": "Check", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "label": "Welcome email sent", 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "default": "0",
+   "fieldname": "welcome_email_sent",
+   "fieldtype": "Check",
+   "label": "Welcome email sent"
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 1, 
-   "fieldname": "view_attachments", 
-   "fieldtype": "Check", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 1, 
-   "in_standard_filter": 0, 
-   "label": "View attachments", 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "columns": 1,
+   "default": "0",
+   "fieldname": "view_attachments",
+   "fieldtype": "Check",
+   "in_list_view": 1,
+   "label": "View attachments"
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "fieldname": "section_break_5", 
-   "fieldtype": "Section Break", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
-  }, 
+   "fieldname": "section_break_5",
+   "fieldtype": "Section Break"
+  },
   {
-   "allow_bulk_edit": 0, 
-   "allow_in_quick_entry": 0, 
-   "allow_on_submit": 0, 
-   "bold": 0, 
-   "collapsible": 0, 
-   "columns": 0, 
-   "depends_on": "eval:parent.doctype == 'Project Update'", 
-   "fieldname": "project_status", 
-   "fieldtype": "Text", 
-   "hidden": 0, 
-   "ignore_user_permissions": 0, 
-   "ignore_xss_filter": 0, 
-   "in_filter": 0, 
-   "in_global_search": 0, 
-   "in_list_view": 0, 
-   "in_standard_filter": 0, 
-   "label": "Project Status", 
-   "length": 0, 
-   "no_copy": 0, 
-   "permlevel": 0, 
-   "precision": "", 
-   "print_hide": 0, 
-   "print_hide_if_no_value": 0, 
-   "read_only": 0, 
-   "remember_last_selected_value": 0, 
-   "report_hide": 0, 
-   "reqd": 0, 
-   "search_index": 0, 
-   "set_only_once": 0, 
-   "translatable": 0, 
-   "unique": 0
+   "depends_on": "eval:parent.doctype == 'Project Update'",
+   "fieldname": "project_status",
+   "fieldtype": "Text",
+   "label": "Project Status"
   }
- ], 
- "has_web_view": 0, 
- "hide_heading": 0, 
- "hide_toolbar": 0, 
- "idx": 0, 
- "image_view": 0, 
- "in_create": 0, 
- "is_submittable": 0, 
- "issingle": 0, 
- "istable": 1, 
- "max_attachments": 0, 
- "modified": "2019-01-17 17:10:05.339735", 
- "modified_by": "Administrator", 
- "module": "Projects", 
- "name": "Project User", 
- "name_case": "", 
- "owner": "Administrator", 
- "permissions": [], 
- "quick_entry": 0, 
- "read_only": 0, 
- "read_only_onload": 0, 
- "show_name_in_global_search": 0, 
- "sort_field": "modified", 
- "sort_order": "DESC", 
- "track_changes": 0, 
- "track_seen": 0, 
- "track_views": 0
+ ],
+ "istable": 1,
+ "modified": "2019-07-15 19:37:26.942294",
+ "modified_by": "Administrator",
+ "module": "Projects",
+ "name": "Project User",
+ "owner": "Administrator",
+ "permissions": [],
+ "sort_field": "modified",
+ "sort_order": "DESC"
 }
\ No newline at end of file
diff --git a/erpnext/projects/doctype/task/task.js b/erpnext/projects/doctype/task/task.js
index 489c7a3..5719276 100644
--- a/erpnext/projects/doctype/task/task.js
+++ b/erpnext/projects/doctype/task/task.js
@@ -42,20 +42,6 @@
 						frappe.set_route("List", "Expense Claim");
 					}, __("View"), true);
 				}
-
-				if (frm.perm[0].write) {
-					if (!["Closed", "Cancelled"].includes(frm.doc.status)) {
-						frm.add_custom_button(__("Close"), () => {
-							frm.set_value("status", "Closed");
-							frm.save();
-						});
-					} else {
-						frm.add_custom_button(__("Reopen"), () => {
-							frm.set_value("status", "Open");
-							frm.save();
-						});
-					}
-				}
 			}
 		}
 	},
diff --git a/erpnext/public/js/controllers/buying.js b/erpnext/public/js/controllers/buying.js
index 750900e..acc09ed 100644
--- a/erpnext/public/js/controllers/buying.js
+++ b/erpnext/public/js/controllers/buying.js
@@ -346,7 +346,7 @@
 	update_auto_repeat_reference: function(doc) {
 		if (doc.auto_repeat) {
 			frappe.call({
-				method:"frappe.desk.doctype.auto_repeat.auto_repeat.update_reference",
+				method:"frappe.automation.doctype.auto_repeat.auto_repeat.update_reference",
 				args:{
 					docname: doc.auto_repeat,
 					reference:doc.name
diff --git a/erpnext/public/js/utils.js b/erpnext/public/js/utils.js
index 0cd648e..0252f38 100755
--- a/erpnext/public/js/utils.js
+++ b/erpnext/public/js/utils.js
@@ -180,7 +180,7 @@
 
 	make_subscription: function(doctype, docname) {
 		frappe.call({
-			method: "frappe.desk.doctype.auto_repeat.auto_repeat.make_auto_repeat",
+			method: "frappe.automation.doctype.auto_repeat.auto_repeat.make_auto_repeat",
 			args: {
 				doctype: doctype,
 				docname: docname
diff --git a/erpnext/public/js/utils/party.js b/erpnext/public/js/utils/party.js
index 35185c9..a8d3888 100644
--- a/erpnext/public/js/utils/party.js
+++ b/erpnext/public/js/utils/party.js
@@ -145,7 +145,7 @@
 erpnext.utils.set_taxes = function(frm, triggered_from_field) {
 	if(frappe.meta.get_docfield(frm.doc.doctype, "taxes")) {
 		if(!erpnext.utils.validate_mandatory(frm, "Lead/Customer/Supplier",
-			frm.doc.customer || frm.doc.supplier || frm.doc.lead, triggered_from_field)) {
+			frm.doc.customer || frm.doc.supplier || frm.doc.lead || frm.doc.party_name, triggered_from_field)) {
 			return;
 		}
 
diff --git a/erpnext/regional/india/setup.py b/erpnext/regional/india/setup.py
index eeb314c..40b98ed 100644
--- a/erpnext/regional/india/setup.py
+++ b/erpnext/regional/india/setup.py
@@ -354,7 +354,7 @@
 			'fieldtype': 'Data',
 			'depends_on': 'eval:(doc.docstatus === 1)',
 			'allow_on_submit': 1,
-			'insert_after': 'project',
+			'insert_after': 'tax_id',
 			'translatable': 0
 		}
 	]
diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py
index e9b310e..0c5188a 100755
--- a/erpnext/selling/doctype/sales_order/sales_order.py
+++ b/erpnext/selling/doctype/sales_order/sales_order.py
@@ -14,7 +14,7 @@
 from frappe.desk.notifications import clear_doctype_notifications
 from frappe.contacts.doctype.address.address import get_company_address
 from erpnext.controllers.selling_controller import SellingController
-from frappe.desk.doctype.auto_repeat.auto_repeat import get_next_schedule_date
+from frappe.automation.doctype.auto_repeat.auto_repeat import get_next_schedule_date
 from erpnext.selling.doctype.customer.customer import check_credit_limit
 from erpnext.stock.doctype.item.item import get_item_defaults
 from erpnext.setup.doctype.item_group.item_group import get_item_group_defaults
diff --git a/erpnext/selling/report/customer_credit_balance/customer_credit_balance.js b/erpnext/selling/report/customer_credit_balance/customer_credit_balance.js
index de8abdc..3a99eb0 100644
--- a/erpnext/selling/report/customer_credit_balance/customer_credit_balance.js
+++ b/erpnext/selling/report/customer_credit_balance/customer_credit_balance.js
@@ -16,20 +16,6 @@
 			"label": __("Customer"),
 			"fieldtype": "Link",
 			"options": "Customer"
-		},
-		{
-			"fieldname":"cost_center",
-			"label": __("Cost Center"),
-			"fieldtype": "Link",
-			"options": "Cost Center",
-			get_query: () => {
-				var company = frappe.query_report.get_filter_value('company');
-				return {
-					filters: {
-						'company': company
-					}
-				}
-			}
-		},
+		}
 	]
 }
diff --git a/erpnext/selling/report/customer_credit_balance/customer_credit_balance.py b/erpnext/selling/report/customer_credit_balance/customer_credit_balance.py
index a57d975..ee0d72b 100644
--- a/erpnext/selling/report/customer_credit_balance/customer_credit_balance.py
+++ b/erpnext/selling/report/customer_credit_balance/customer_credit_balance.py
@@ -21,8 +21,7 @@
 		row = []
 
 		outstanding_amt = get_customer_outstanding(d.name, filters.get("company"),
-			ignore_outstanding_sales_order=d.bypass_credit_limit_check_at_sales_order,
-			cost_center=filters.get("cost_center"))
+			ignore_outstanding_sales_order=d.bypass_credit_limit_check_at_sales_order)
 
 		credit_limit = get_credit_limit(d.name, filters.get("company"))
 
@@ -66,3 +65,4 @@
 	return frappe.db.sql("""select name, customer_name,
 		bypass_credit_limit_check_at_sales_order, is_frozen, disabled from `tabCustomer` %s
 	""" % conditions, filters, as_dict=1)
+
diff --git a/erpnext/selling/sales_common.js b/erpnext/selling/sales_common.js
index a2bae56..000d666 100644
--- a/erpnext/selling/sales_common.js
+++ b/erpnext/selling/sales_common.js
@@ -428,7 +428,7 @@
 	update_auto_repeat_reference: function(doc) {
 		if (doc.auto_repeat) {
 			frappe.call({
-				method:"frappe.desk.doctype.auto_repeat.auto_repeat.update_reference",
+				method:"frappe.automation.doctype.auto_repeat.auto_repeat.update_reference",
 				args:{
 					docname: doc.auto_repeat,
 					reference:doc.name
diff --git a/erpnext/stock/dashboard/item_dashboard.js b/erpnext/stock/dashboard/item_dashboard.js
index 157dbfe..1bfa2cf 100644
--- a/erpnext/stock/dashboard/item_dashboard.js
+++ b/erpnext/stock/dashboard/item_dashboard.js
@@ -16,18 +16,47 @@
 		this.content = $(frappe.render_template('item_dashboard')).appendTo(this.parent);
 		this.result = this.content.find('.result');
 
-		// move
 		this.content.on('click', '.btn-move', function() {
-			erpnext.stock.move_item(unescape($(this).attr('data-item')), $(this).attr('data-warehouse'),
-				null, $(this).attr('data-actual_qty'), null, function() { me.refresh(); });
+			handle_move_add($(this), "Move")
 		});
 
 		this.content.on('click', '.btn-add', function() {
-			erpnext.stock.move_item(unescape($(this).attr('data-item')), null, $(this).attr('data-warehouse'),
-				$(this).attr('data-actual_qty'), $(this).attr('data-rate'),
-				function() { me.refresh(); });
+			handle_move_add($(this), "Add")
 		});
 
+		function handle_move_add(element, action) {
+			let item = unescape(element.attr('data-item'));
+			let warehouse = unescape(element.attr('data-warehouse'));
+			let actual_qty = unescape(element.attr('data-actual_qty'));
+			let disable_quick_entry = Number(unescape(element.attr('data-disable_quick_entry')));
+			let entry_type = action === "Move" ? "Material Transfer": null;
+
+			if (disable_quick_entry) {
+				open_stock_entry(item, warehouse, entry_type);
+			} else {
+				if (action === "Add") {
+					let rate = unescape($(this).attr('data-rate'));
+					erpnext.stock.move_item(item, null, warehouse, actual_qty, rate, function() { me.refresh(); });
+				}
+				else {
+					erpnext.stock.move_item(item, warehouse, null, actual_qty, null, function() { me.refresh(); });
+				}
+			}
+		}
+
+		function open_stock_entry(item, warehouse, entry_type) {
+			frappe.model.with_doctype('Stock Entry', function() {
+				var doc = frappe.model.get_new_doc('Stock Entry');
+				if (entry_type) doc.stock_entry_type = entry_type;
+
+				var row = frappe.model.add_child(doc, 'items');
+				row.item_code = item;
+				row.s_warehouse = warehouse;
+
+				frappe.set_route('Form', doc.doctype, doc.name);
+			})
+		}
+
 		// more
 		this.content.find('.btn-more').on('click', function() {
 			me.start += 20;
@@ -196,4 +225,4 @@
 				frappe.set_route('Form', doc.doctype, doc.name);
 			})
 		});
-}
\ No newline at end of file
+}
diff --git a/erpnext/stock/dashboard/item_dashboard.py b/erpnext/stock/dashboard/item_dashboard.py
index 487c765..cafb5c3 100644
--- a/erpnext/stock/dashboard/item_dashboard.py
+++ b/erpnext/stock/dashboard/item_dashboard.py
@@ -44,7 +44,9 @@
 
 	for item in items:
 		item.update({
-			'item_name': frappe.get_cached_value("Item", item.item_code, 'item_name')
+			'item_name': frappe.get_cached_value("Item", item.item_code, 'item_name'),
+			'disable_quick_entry': frappe.get_cached_value("Item", item.item_code, 'has_batch_no')
+				or frappe.get_cached_value("Item", item.item_code, 'has_serial_no'),
 		})
 
 	return items
diff --git a/erpnext/stock/dashboard/item_dashboard_list.html b/erpnext/stock/dashboard/item_dashboard_list.html
index 5a3fa2e..e1914ed 100644
--- a/erpnext/stock/dashboard/item_dashboard_list.html
+++ b/erpnext/stock/dashboard/item_dashboard_list.html
@@ -43,11 +43,13 @@
 			<div class="col-sm-2 text-right" style="margin-top: 8px;">
 				{% if d.actual_qty %}
 				<button class="btn btn-default btn-xs btn-move"
+					data-disable_quick_entry="{{ d.disable_quick_entry }}"
 					data-warehouse="{{ d.warehouse }}"
 					data-actual_qty="{{ d.actual_qty }}"
 					data-item="{{ escape(d.item_code) }}">{{ __("Move") }}</a>
 				{% endif %}
 				<button style="margin-left: 7px;" class="btn btn-default btn-xs btn-add"
+					data-disable_quick_entry="{{ d.disable_quick_entry }}"
 					data-warehouse="{{ d.warehouse }}"
 					data-actual_qty="{{ d.actual_qty }}"
 					data-item="{{ escape(d.item_code) }}"
diff --git a/erpnext/stock/doctype/stock_entry/stock_entry.json b/erpnext/stock/doctype/stock_entry/stock_entry.json
index bbc54ec..ee563cb 100644
--- a/erpnext/stock/doctype/stock_entry/stock_entry.json
+++ b/erpnext/stock/doctype/stock_entry/stock_entry.json
@@ -1,2376 +1,693 @@
 {
-  "allow_copy": 0,
-  "allow_events_in_timeline": 0,
-  "allow_guest_to_view": 0,
-  "allow_import": 1,
-  "allow_rename": 0,
-  "autoname": "naming_series:",
-  "beta": 0,
-  "creation": "2013-04-09 11:43:55",
-  "custom": 0,
-  "docstatus": 0,
-  "doctype": "DocType",
-  "document_type": "Document",
-  "editable_grid": 0,
-  "engine": "InnoDB",
-  "fields": [
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "items_section",
-    "fieldtype": "Section Break",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "",
-    "length": 0,
-    "no_copy": 0,
-    "oldfieldtype": "Section Break",
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 1,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "default": "{purpose}",
-    "fetch_if_empty": 0,
-    "fieldname": "title",
-    "fieldtype": "Data",
-    "hidden": 1,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Title",
-    "length": 0,
-    "no_copy": 1,
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "default": "",
-    "fetch_if_empty": 0,
-    "fieldname": "naming_series",
-    "fieldtype": "Select",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Series",
-    "length": 0,
-    "no_copy": 1,
-    "oldfieldname": "naming_series",
-    "oldfieldtype": "Select",
-    "options": "MAT-STE-.YYYY.-",
-    "permlevel": 0,
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 1,
-    "search_index": 0,
-    "set_only_once": 1,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "stock_entry_type",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 1,
-    "in_standard_filter": 1,
-    "label": "Stock Entry Type",
-    "length": 0,
-    "no_copy": 0,
-    "options": "Stock Entry Type",
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 1,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "eval:doc.purpose == 'Receive at Warehouse'",
-    "fetch_if_empty": 0,
-    "fieldname": "outgoing_stock_entry",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Stock Entry (Outward GIT)",
-    "length": 0,
-    "no_copy": 0,
-    "options": "Stock Entry",
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 1,
-    "collapsible": 0,
-    "columns": 0,
-    "default": "",
-    "fetch_from": "stock_entry_type.purpose",
-    "fetch_if_empty": 0,
-    "fieldname": "purpose",
-    "fieldtype": "Select",
-    "hidden": 1,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 1,
-    "in_standard_filter": 0,
-    "label": "Purpose",
-    "length": 0,
-    "no_copy": 0,
-    "oldfieldname": "purpose",
-    "oldfieldtype": "Select",
-    "options": "Material Issue\nMaterial Receipt\nMaterial Transfer\nMaterial Transfer for Manufacture\nMaterial Consumption for Manufacture\nManufacture\nRepack\nSend to Subcontractor\nSend to Warehouse\nReceive at Warehouse",
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 1,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "company",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Company",
-    "length": 0,
-    "no_copy": 0,
-    "oldfieldname": "company",
-    "oldfieldtype": "Link",
-    "options": "Company",
-    "permlevel": 0,
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 1,
-    "report_hide": 0,
-    "reqd": 1,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "eval:in_list([\"Material Transfer for Manufacture\", \"Manufacture\", \"Material Consumption for Manufacture\"], doc.purpose)",
-    "fetch_if_empty": 0,
-    "fieldname": "work_order",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Work Order",
-    "length": 0,
-    "no_copy": 0,
-    "oldfieldname": "production_order",
-    "oldfieldtype": "Link",
-    "options": "Work Order",
-    "permlevel": 0,
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 1,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "eval:doc.purpose==\"Send to Subcontractor\"",
-    "fetch_if_empty": 0,
-    "fieldname": "purchase_order",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Purchase Order",
-    "length": 0,
-    "no_copy": 0,
-    "options": "Purchase Order",
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "eval:doc.purpose==\"Sales Return\"",
-    "fetch_if_empty": 0,
-    "fieldname": "delivery_note_no",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Delivery Note No",
-    "length": 0,
-    "no_copy": 1,
-    "oldfieldname": "delivery_note_no",
-    "oldfieldtype": "Link",
-    "options": "Delivery Note",
-    "permlevel": 0,
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 1,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "eval:doc.purpose==\"Sales Return\"",
-    "fetch_if_empty": 0,
-    "fieldname": "sales_invoice_no",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Sales Invoice No",
-    "length": 0,
-    "no_copy": 1,
-    "options": "Sales Invoice",
-    "permlevel": 0,
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "eval:doc.purpose==\"Purchase Return\"",
-    "fetch_if_empty": 0,
-    "fieldname": "purchase_receipt_no",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Purchase Receipt No",
-    "length": 0,
-    "no_copy": 1,
-    "oldfieldname": "purchase_receipt_no",
-    "oldfieldtype": "Link",
-    "options": "Purchase Receipt",
-    "permlevel": 0,
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 1,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "col2",
-    "fieldtype": "Column Break",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "length": 0,
-    "no_copy": 0,
-    "oldfieldtype": "Column Break",
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "print_width": "50%",
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0,
-    "width": "50%"
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "default": "Today",
-    "depends_on": "",
-    "fetch_if_empty": 0,
-    "fieldname": "posting_date",
-    "fieldtype": "Date",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Posting Date",
-    "length": 0,
-    "no_copy": 1,
-    "oldfieldname": "posting_date",
-    "oldfieldtype": "Date",
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 1,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "",
-    "fetch_if_empty": 0,
-    "fieldname": "posting_time",
-    "fieldtype": "Time",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Posting Time",
-    "length": 0,
-    "no_copy": 1,
-    "oldfieldname": "posting_time",
-    "oldfieldtype": "Time",
-    "permlevel": 0,
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "eval:doc.docstatus==0",
-    "fetch_if_empty": 0,
-    "fieldname": "set_posting_time",
-    "fieldtype": "Check",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Edit Posting Date and Time",
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "inspection_required",
-    "fieldtype": "Check",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Inspection Required",
-    "length": 0,
-    "no_copy": 0,
-    "options": "",
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "eval:in_list([\"Material Issue\", \"Material Transfer\", \"Manufacture\", \"Repack\", \t\t\t\t\t\"Send to Subcontractor\", \"Material Transfer for Manufacture\", \"Material Consumption for Manufacture\"], doc.purpose)",
-    "fetch_if_empty": 0,
-    "fieldname": "from_bom",
-    "fieldtype": "Check",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "From BOM",
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "eval: doc.from_bom && (doc.purpose!==\"Sales Return\" && doc.purpose!==\"Purchase Return\")",
-    "fetch_if_empty": 0,
-    "fieldname": "sb1",
-    "fieldtype": "Section Break",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "",
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "from_bom",
-    "fetch_if_empty": 0,
-    "fieldname": "bom_no",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "BOM No",
-    "length": 0,
-    "no_copy": 0,
-    "options": "BOM",
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "from_bom",
-    "description": "As per Stock UOM",
-    "fetch_if_empty": 0,
-    "fieldname": "fg_completed_qty",
-    "fieldtype": "Float",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "For Quantity",
-    "length": 0,
-    "no_copy": 0,
-    "oldfieldname": "fg_completed_qty",
-    "oldfieldtype": "Currency",
-    "permlevel": 0,
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "cb1",
-    "fieldtype": "Column Break",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "default": "1",
-    "depends_on": "from_bom",
-    "description": "Including items for sub assemblies",
-    "fetch_if_empty": 0,
-    "fieldname": "use_multi_level_bom",
-    "fieldtype": "Check",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Use Multi-Level BOM",
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "from_bom",
-    "fetch_if_empty": 0,
-    "fieldname": "get_items",
-    "fieldtype": "Button",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Get Items",
-    "length": 0,
-    "no_copy": 0,
-    "oldfieldtype": "Button",
-    "permlevel": 0,
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "section_break_12",
-    "fieldtype": "Section Break",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "from_warehouse",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 1,
-    "in_standard_filter": 1,
-    "label": "Default Source Warehouse",
-    "length": 0,
-    "no_copy": 1,
-    "oldfieldname": "from_warehouse",
-    "oldfieldtype": "Link",
-    "options": "Warehouse",
-    "permlevel": 0,
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "from_warehouse",
-    "fetch_if_empty": 0,
-    "fieldname": "source_warehouse_address",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Source Warehouse Address",
-    "length": 0,
-    "no_copy": 0,
-    "options": "Address",
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "source_address_display",
-    "fieldtype": "Small Text",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Source Warehouse Address",
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 1,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "cb0",
-    "fieldtype": "Column Break",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "to_warehouse",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 1,
-    "in_standard_filter": 1,
-    "label": "Default Target Warehouse",
-    "length": 0,
-    "no_copy": 1,
-    "oldfieldname": "to_warehouse",
-    "oldfieldtype": "Link",
-    "options": "Warehouse",
-    "permlevel": 0,
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "to_warehouse",
-    "fetch_if_empty": 0,
-    "fieldname": "target_warehouse_address",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Target Warehouse Name",
-    "length": 0,
-    "no_copy": 0,
-    "options": "Address",
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "target_address_display",
-    "fieldtype": "Small Text",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Target Warehouse Address",
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 1,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "sb0",
-    "fieldtype": "Section Break",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "length": 0,
-    "no_copy": 0,
-    "options": "Simple",
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "scan_barcode",
-    "fieldtype": "Data",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Scan Barcode",
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "items",
-    "fieldtype": "Table",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Items",
-    "length": 0,
-    "no_copy": 0,
-    "oldfieldname": "mtn_details",
-    "oldfieldtype": "Table",
-    "options": "Stock Entry Detail",
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 1,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "description": "",
-    "fetch_if_empty": 0,
-    "fieldname": "get_stock_and_rate",
-    "fieldtype": "Button",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Update Rate and Availability",
-    "length": 0,
-    "no_copy": 0,
-    "oldfieldtype": "Button",
-    "options": "get_stock_and_rate",
-    "permlevel": 0,
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "section_break_19",
-    "fieldtype": "Section Break",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "total_incoming_value",
-    "fieldtype": "Currency",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Total Incoming Value",
-    "length": 0,
-    "no_copy": 0,
-    "options": "Company:company:default_currency",
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 1,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "column_break_22",
-    "fieldtype": "Column Break",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "total_outgoing_value",
-    "fieldtype": "Currency",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Total Outgoing Value",
-    "length": 0,
-    "no_copy": 0,
-    "options": "Company:company:default_currency",
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 1,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "value_difference",
-    "fieldtype": "Currency",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Total Value Difference (Out - In)",
-    "length": 0,
-    "no_copy": 0,
-    "options": "Company:company:default_currency",
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 1,
-    "read_only": 1,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 1,
-    "collapsible_depends_on": "total_additional_costs",
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "additional_costs_section",
-    "fieldtype": "Section Break",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Additional Costs",
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "additional_costs",
-    "fieldtype": "Table",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Additional Costs",
-    "length": 0,
-    "no_copy": 0,
-    "options": "Landed Cost Taxes and Charges",
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "total_additional_costs",
-    "fieldtype": "Currency",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Total Additional Costs",
-    "length": 0,
-    "no_copy": 0,
-    "options": "Company:company:default_currency",
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 1,
-    "read_only": 1,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 1,
-    "columns": 0,
-    "depends_on": "eval: in_list([\"Sales Return\", \"Purchase Return\", \"Send to Subcontractor\"], doc.purpose)",
-    "fetch_if_empty": 0,
-    "fieldname": "contact_section",
-    "fieldtype": "Section Break",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Customer or Supplier Details",
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "eval:doc.purpose==\"Purchase Return\" || doc.purpose==\"Send to Subcontractor\"",
-    "fetch_if_empty": 0,
-    "fieldname": "supplier",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Supplier",
-    "length": 0,
-    "no_copy": 1,
-    "oldfieldname": "supplier",
-    "oldfieldtype": "Link",
-    "options": "Supplier",
-    "permlevel": 0,
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 1,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "eval:doc.purpose==\"Purchase Return\" || doc.purpose==\"Send to Subcontractor\"",
-    "fetch_if_empty": 0,
-    "fieldname": "supplier_name",
-    "fieldtype": "Data",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Supplier Name",
-    "length": 0,
-    "no_copy": 1,
-    "oldfieldname": "supplier_name",
-    "oldfieldtype": "Data",
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 1,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "eval:doc.purpose==\"Purchase Return\" || doc.purpose==\"Send to Subcontractor\"",
-    "fetch_if_empty": 0,
-    "fieldname": "supplier_address",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Supplier Address",
-    "length": 0,
-    "no_copy": 1,
-    "oldfieldname": "supplier_address",
-    "oldfieldtype": "Small Text",
-    "options": "Address",
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "address_display",
-    "fieldtype": "Small Text",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Address",
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "column_break_39",
-    "fieldtype": "Column Break",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "eval:doc.purpose==\"Sales Return\"",
-    "fetch_if_empty": 0,
-    "fieldname": "customer",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Customer",
-    "length": 0,
-    "no_copy": 1,
-    "oldfieldname": "customer",
-    "oldfieldtype": "Link",
-    "options": "Customer",
-    "permlevel": 0,
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 1,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "eval:doc.purpose==\"Sales Return\"",
-    "fetch_if_empty": 0,
-    "fieldname": "customer_name",
-    "fieldtype": "Data",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Customer Name",
-    "length": 0,
-    "no_copy": 1,
-    "oldfieldname": "customer_name",
-    "oldfieldtype": "Data",
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 1,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "eval:doc.purpose==\"Sales Return\"",
-    "fetch_if_empty": 0,
-    "fieldname": "customer_address",
-    "fieldtype": "Small Text",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Customer Address",
-    "length": 0,
-    "no_copy": 1,
-    "oldfieldname": "customer_address",
-    "oldfieldtype": "Small Text",
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 1,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "printing_settings",
-    "fieldtype": "Section Break",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Printing Settings",
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 1,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "select_print_heading",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Print Heading",
-    "length": 0,
-    "no_copy": 0,
-    "oldfieldname": "select_print_heading",
-    "oldfieldtype": "Link",
-    "options": "Print Heading",
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "letter_head",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Letter Head",
-    "length": 0,
-    "no_copy": 0,
-    "options": "Letter Head",
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 1,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "more_info",
-    "fieldtype": "Section Break",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "More Information",
-    "length": 0,
-    "no_copy": 0,
-    "oldfieldtype": "Section Break",
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-     "allow_bulk_edit": 0,
-     "allow_in_quick_entry": 0,
-     "allow_on_submit": 0,
-     "bold": 0,
-     "collapsible": 0,
-     "columns": 0,
-     "fetch_if_empty": 0,
-     "fieldname": "is_opening",
-     "fieldtype": "Select",
-     "hidden": 0,
-     "ignore_user_permissions": 0,
-     "ignore_xss_filter": 0,
-     "in_filter": 0,
-     "in_global_search": 0,
-     "in_list_view": 0,
-     "in_standard_filter": 0,
-     "label": "Is Opening",
-     "length": 0,
-     "no_copy": 0,
-     "options": "No\nYes",
-     "permlevel": 0,
-     "precision": "",
-     "print_hide": 0,
-     "print_hide_if_no_value": 0,
-     "read_only": 0,
-     "remember_last_selected_value": 0,
-     "report_hide": 0,
-     "reqd": 0,
-     "search_index": 0,
-     "set_only_once": 0,
-     "translatable": 0,
-     "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "project",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Project",
-    "length": 0,
-    "no_copy": 0,
-    "oldfieldtype": "Link",
-    "options": "Project",
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "remarks",
-    "fieldtype": "Text",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Remarks",
-    "length": 0,
-    "no_copy": 1,
-    "oldfieldname": "remarks",
-    "oldfieldtype": "Text",
-    "permlevel": 0,
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "col5",
-    "fieldtype": "Column Break",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "length": 0,
-    "no_copy": 0,
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "print_width": "50%",
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0,
-    "width": "50%"
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "",
-    "fetch_if_empty": 0,
-    "fieldname": "per_transferred",
-    "fieldtype": "Percent",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 1,
-    "in_standard_filter": 0,
-    "label": "Per Transferred",
-    "length": 0,
-    "no_copy": 1,
-    "options": "",
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 1,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "depends_on": "total_amount",
-    "fetch_if_empty": 0,
-    "fieldname": "total_amount",
-    "fieldtype": "Currency",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Total Amount",
-    "length": 0,
-    "no_copy": 0,
-    "options": "Company:company:default_currency",
-    "permlevel": 0,
-    "print_hide": 0,
-    "print_hide_if_no_value": 1,
-    "read_only": 1,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "job_card",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Job Card",
-    "length": 0,
-    "no_copy": 0,
-    "options": "Job Card",
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 1,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "amended_from",
-    "fieldtype": "Link",
-    "hidden": 0,
-    "ignore_user_permissions": 1,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Amended From",
-    "length": 0,
-    "no_copy": 1,
-    "oldfieldname": "amended_from",
-    "oldfieldtype": "Link",
-    "options": "Stock Entry",
-    "permlevel": 0,
-    "print_hide": 1,
-    "print_hide_if_no_value": 0,
-    "read_only": 1,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   },
-   {
-    "allow_bulk_edit": 0,
-    "allow_in_quick_entry": 0,
-    "allow_on_submit": 0,
-    "bold": 0,
-    "collapsible": 0,
-    "columns": 0,
-    "fetch_if_empty": 0,
-    "fieldname": "credit_note",
-    "fieldtype": "Link",
-    "hidden": 1,
-    "ignore_user_permissions": 0,
-    "ignore_xss_filter": 0,
-    "in_filter": 0,
-    "in_global_search": 0,
-    "in_list_view": 0,
-    "in_standard_filter": 0,
-    "label": "Credit Note",
-    "length": 0,
-    "no_copy": 0,
-    "options": "Journal Entry",
-    "permlevel": 0,
-    "precision": "",
-    "print_hide": 0,
-    "print_hide_if_no_value": 0,
-    "read_only": 0,
-    "remember_last_selected_value": 0,
-    "report_hide": 0,
-    "reqd": 0,
-    "search_index": 0,
-    "set_only_once": 0,
-    "translatable": 0,
-    "unique": 0
-   }
-  ],
-  "has_web_view": 0,
-  "hide_toolbar": 0,
-  "icon": "fa fa-file-text",
-  "idx": 1,
-  "in_create": 0,
-  "is_submittable": 1,
-  "issingle": 0,
-  "istable": 0,
-  "max_attachments": 0,
-  "modified": "2019-05-23 12:24:46.439626",
-  "modified_by": "Administrator",
-  "module": "Stock",
-  "name": "Stock Entry",
-  "owner": "Administrator",
-  "permissions": [
-   {
-    "amend": 1,
-    "cancel": 1,
-    "create": 1,
-    "delete": 1,
-    "email": 1,
-    "export": 0,
-    "if_owner": 0,
-    "import": 0,
-    "permlevel": 0,
-    "print": 1,
-    "read": 1,
-    "report": 1,
-    "role": "Stock User",
-    "set_user_permissions": 0,
-    "share": 1,
-    "submit": 1,
-    "write": 1
-   },
-   {
-    "amend": 1,
-    "cancel": 1,
-    "create": 1,
-    "delete": 1,
-    "email": 1,
-    "export": 0,
-    "if_owner": 0,
-    "import": 0,
-    "permlevel": 0,
-    "print": 1,
-    "read": 1,
-    "report": 1,
-    "role": "Manufacturing User",
-    "set_user_permissions": 0,
-    "share": 1,
-    "submit": 1,
-    "write": 1
-   },
-   {
-    "amend": 1,
-    "cancel": 1,
-    "create": 1,
-    "delete": 1,
-    "email": 1,
-    "export": 0,
-    "if_owner": 0,
-    "import": 0,
-    "permlevel": 0,
-    "print": 1,
-    "read": 1,
-    "report": 1,
-    "role": "Manufacturing Manager",
-    "set_user_permissions": 0,
-    "share": 1,
-    "submit": 1,
-    "write": 1
-   },
-   {
-    "amend": 1,
-    "cancel": 1,
-    "create": 1,
-    "delete": 1,
-    "email": 1,
-    "export": 1,
-    "if_owner": 0,
-    "import": 1,
-    "permlevel": 0,
-    "print": 1,
-    "read": 1,
-    "report": 1,
-    "role": "Stock Manager",
-    "set_user_permissions": 1,
-    "share": 1,
-    "submit": 1,
-    "write": 1
-   }
-  ],
-  "quick_entry": 0,
-  "read_only": 0,
-  "search_fields": "posting_date, from_warehouse, to_warehouse, purpose, remarks",
-  "show_name_in_global_search": 1,
-  "sort_field": "modified",
-  "sort_order": "DESC",
-  "title_field": "title",
-  "track_changes": 1,
-  "track_seen": 0,
-  "track_views": 0
- }
\ No newline at end of file
+ "allow_import": 1,
+ "autoname": "naming_series:",
+ "creation": "2013-04-09 11:43:55",
+ "doctype": "DocType",
+ "document_type": "Document",
+ "engine": "InnoDB",
+ "field_order": [
+  "items_section",
+  "title",
+  "naming_series",
+  "stock_entry_type",
+  "outgoing_stock_entry",
+  "purpose",
+  "company",
+  "work_order",
+  "purchase_order",
+  "delivery_note_no",
+  "sales_invoice_no",
+  "purchase_receipt_no",
+  "col2",
+  "posting_date",
+  "posting_time",
+  "set_posting_time",
+  "inspection_required",
+  "from_bom",
+  "sb1",
+  "bom_no",
+  "fg_completed_qty",
+  "cb1",
+  "use_multi_level_bom",
+  "get_items",
+  "section_break_12",
+  "from_warehouse",
+  "source_warehouse_address",
+  "source_address_display",
+  "cb0",
+  "to_warehouse",
+  "target_warehouse_address",
+  "target_address_display",
+  "sb0",
+  "scan_barcode",
+  "items",
+  "get_stock_and_rate",
+  "section_break_19",
+  "total_incoming_value",
+  "column_break_22",
+  "total_outgoing_value",
+  "value_difference",
+  "additional_costs_section",
+  "additional_costs",
+  "total_additional_costs",
+  "contact_section",
+  "supplier",
+  "supplier_name",
+  "supplier_address",
+  "address_display",
+  "column_break_39",
+  "customer",
+  "customer_name",
+  "customer_address",
+  "accounting_dimensions_section",
+  "project",
+  "dimension_col_break",
+  "printing_settings",
+  "select_print_heading",
+  "letter_head",
+  "more_info",
+  "is_opening",
+  "remarks",
+  "col5",
+  "per_transferred",
+  "total_amount",
+  "job_card",
+  "amended_from",
+  "credit_note"
+ ],
+ "fields": [
+  {
+   "fieldname": "items_section",
+   "fieldtype": "Section Break",
+   "oldfieldtype": "Section Break"
+  },
+  {
+   "allow_on_submit": 1,
+   "default": "{purpose}",
+   "fieldname": "title",
+   "fieldtype": "Data",
+   "hidden": 1,
+   "label": "Title",
+   "no_copy": 1,
+   "print_hide": 1
+  },
+  {
+   "fieldname": "naming_series",
+   "fieldtype": "Select",
+   "label": "Series",
+   "no_copy": 1,
+   "oldfieldname": "naming_series",
+   "oldfieldtype": "Select",
+   "options": "MAT-STE-.YYYY.-",
+   "print_hide": 1,
+   "reqd": 1,
+   "set_only_once": 1
+  },
+  {
+   "fieldname": "stock_entry_type",
+   "fieldtype": "Link",
+   "in_list_view": 1,
+   "in_standard_filter": 1,
+   "label": "Stock Entry Type",
+   "options": "Stock Entry Type",
+   "reqd": 1
+  },
+  {
+   "depends_on": "eval:doc.purpose == 'Receive at Warehouse'",
+   "fieldname": "outgoing_stock_entry",
+   "fieldtype": "Link",
+   "label": "Stock Entry (Outward GIT)",
+   "options": "Stock Entry"
+  },
+  {
+   "bold": 1,
+   "fetch_from": "stock_entry_type.purpose",
+   "fieldname": "purpose",
+   "fieldtype": "Select",
+   "hidden": 1,
+   "in_list_view": 1,
+   "label": "Purpose",
+   "oldfieldname": "purpose",
+   "oldfieldtype": "Select",
+   "options": "Material Issue\nMaterial Receipt\nMaterial Transfer\nMaterial Transfer for Manufacture\nMaterial Consumption for Manufacture\nManufacture\nRepack\nSend to Subcontractor\nSend to Warehouse\nReceive at Warehouse",
+   "read_only": 1
+  },
+  {
+   "fieldname": "company",
+   "fieldtype": "Link",
+   "label": "Company",
+   "oldfieldname": "company",
+   "oldfieldtype": "Link",
+   "options": "Company",
+   "print_hide": 1,
+   "remember_last_selected_value": 1,
+   "reqd": 1
+  },
+  {
+   "depends_on": "eval:in_list([\"Material Transfer for Manufacture\", \"Manufacture\", \"Material Consumption for Manufacture\"], doc.purpose)",
+   "fieldname": "work_order",
+   "fieldtype": "Link",
+   "label": "Work Order",
+   "oldfieldname": "production_order",
+   "oldfieldtype": "Link",
+   "options": "Work Order",
+   "print_hide": 1,
+   "search_index": 1
+  },
+  {
+   "depends_on": "eval:doc.purpose==\"Send to Subcontractor\"",
+   "fieldname": "purchase_order",
+   "fieldtype": "Link",
+   "label": "Purchase Order",
+   "options": "Purchase Order"
+  },
+  {
+   "depends_on": "eval:doc.purpose==\"Sales Return\"",
+   "fieldname": "delivery_note_no",
+   "fieldtype": "Link",
+   "label": "Delivery Note No",
+   "no_copy": 1,
+   "oldfieldname": "delivery_note_no",
+   "oldfieldtype": "Link",
+   "options": "Delivery Note",
+   "print_hide": 1,
+   "search_index": 1
+  },
+  {
+   "depends_on": "eval:doc.purpose==\"Sales Return\"",
+   "fieldname": "sales_invoice_no",
+   "fieldtype": "Link",
+   "label": "Sales Invoice No",
+   "no_copy": 1,
+   "options": "Sales Invoice",
+   "print_hide": 1
+  },
+  {
+   "depends_on": "eval:doc.purpose==\"Purchase Return\"",
+   "fieldname": "purchase_receipt_no",
+   "fieldtype": "Link",
+   "label": "Purchase Receipt No",
+   "no_copy": 1,
+   "oldfieldname": "purchase_receipt_no",
+   "oldfieldtype": "Link",
+   "options": "Purchase Receipt",
+   "print_hide": 1,
+   "search_index": 1
+  },
+  {
+   "fieldname": "col2",
+   "fieldtype": "Column Break",
+   "oldfieldtype": "Column Break",
+   "print_width": "50%",
+   "width": "50%"
+  },
+  {
+   "default": "Today",
+   "fieldname": "posting_date",
+   "fieldtype": "Date",
+   "label": "Posting Date",
+   "no_copy": 1,
+   "oldfieldname": "posting_date",
+   "oldfieldtype": "Date",
+   "search_index": 1
+  },
+  {
+   "fieldname": "posting_time",
+   "fieldtype": "Time",
+   "label": "Posting Time",
+   "no_copy": 1,
+   "oldfieldname": "posting_time",
+   "oldfieldtype": "Time",
+   "print_hide": 1
+  },
+  {
+   "default": "0",
+   "depends_on": "eval:doc.docstatus==0",
+   "fieldname": "set_posting_time",
+   "fieldtype": "Check",
+   "label": "Edit Posting Date and Time",
+   "print_hide": 1
+  },
+  {
+   "default": "0",
+   "fieldname": "inspection_required",
+   "fieldtype": "Check",
+   "label": "Inspection Required"
+  },
+  {
+   "default": "0",
+   "depends_on": "eval:in_list([\"Material Issue\", \"Material Transfer\", \"Manufacture\", \"Repack\", \t\t\t\t\t\"Send to Subcontractor\", \"Material Transfer for Manufacture\", \"Material Consumption for Manufacture\"], doc.purpose)",
+   "fieldname": "from_bom",
+   "fieldtype": "Check",
+   "label": "From BOM",
+   "print_hide": 1
+  },
+  {
+   "depends_on": "eval: doc.from_bom && (doc.purpose!==\"Sales Return\" && doc.purpose!==\"Purchase Return\")",
+   "fieldname": "sb1",
+   "fieldtype": "Section Break"
+  },
+  {
+   "depends_on": "from_bom",
+   "fieldname": "bom_no",
+   "fieldtype": "Link",
+   "label": "BOM No",
+   "options": "BOM"
+  },
+  {
+   "depends_on": "from_bom",
+   "description": "As per Stock UOM",
+   "fieldname": "fg_completed_qty",
+   "fieldtype": "Float",
+   "label": "For Quantity",
+   "oldfieldname": "fg_completed_qty",
+   "oldfieldtype": "Currency",
+   "print_hide": 1
+  },
+  {
+   "fieldname": "cb1",
+   "fieldtype": "Column Break"
+  },
+  {
+   "default": "1",
+   "depends_on": "from_bom",
+   "description": "Including items for sub assemblies",
+   "fieldname": "use_multi_level_bom",
+   "fieldtype": "Check",
+   "label": "Use Multi-Level BOM",
+   "print_hide": 1
+  },
+  {
+   "depends_on": "from_bom",
+   "fieldname": "get_items",
+   "fieldtype": "Button",
+   "label": "Get Items",
+   "oldfieldtype": "Button",
+   "print_hide": 1
+  },
+  {
+   "fieldname": "section_break_12",
+   "fieldtype": "Section Break"
+  },
+  {
+   "fieldname": "from_warehouse",
+   "fieldtype": "Link",
+   "in_list_view": 1,
+   "in_standard_filter": 1,
+   "label": "Default Source Warehouse",
+   "no_copy": 1,
+   "oldfieldname": "from_warehouse",
+   "oldfieldtype": "Link",
+   "options": "Warehouse",
+   "print_hide": 1
+  },
+  {
+   "depends_on": "from_warehouse",
+   "fieldname": "source_warehouse_address",
+   "fieldtype": "Link",
+   "label": "Source Warehouse Address",
+   "options": "Address"
+  },
+  {
+   "fieldname": "source_address_display",
+   "fieldtype": "Small Text",
+   "label": "Source Warehouse Address",
+   "read_only": 1
+  },
+  {
+   "fieldname": "cb0",
+   "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "to_warehouse",
+   "fieldtype": "Link",
+   "in_list_view": 1,
+   "in_standard_filter": 1,
+   "label": "Default Target Warehouse",
+   "no_copy": 1,
+   "oldfieldname": "to_warehouse",
+   "oldfieldtype": "Link",
+   "options": "Warehouse",
+   "print_hide": 1
+  },
+  {
+   "depends_on": "to_warehouse",
+   "fieldname": "target_warehouse_address",
+   "fieldtype": "Link",
+   "label": "Target Warehouse Name",
+   "options": "Address"
+  },
+  {
+   "fieldname": "target_address_display",
+   "fieldtype": "Small Text",
+   "label": "Target Warehouse Address",
+   "read_only": 1
+  },
+  {
+   "fieldname": "sb0",
+   "fieldtype": "Section Break",
+   "options": "Simple"
+  },
+  {
+   "fieldname": "scan_barcode",
+   "fieldtype": "Data",
+   "label": "Scan Barcode"
+  },
+  {
+   "fieldname": "items",
+   "fieldtype": "Table",
+   "label": "Items",
+   "oldfieldname": "mtn_details",
+   "oldfieldtype": "Table",
+   "options": "Stock Entry Detail",
+   "reqd": 1
+  },
+  {
+   "fieldname": "get_stock_and_rate",
+   "fieldtype": "Button",
+   "label": "Update Rate and Availability",
+   "oldfieldtype": "Button",
+   "options": "get_stock_and_rate",
+   "print_hide": 1
+  },
+  {
+   "fieldname": "section_break_19",
+   "fieldtype": "Section Break",
+   "print_hide": 1
+  },
+  {
+   "fieldname": "total_incoming_value",
+   "fieldtype": "Currency",
+   "label": "Total Incoming Value",
+   "options": "Company:company:default_currency",
+   "print_hide": 1,
+   "read_only": 1
+  },
+  {
+   "fieldname": "column_break_22",
+   "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "total_outgoing_value",
+   "fieldtype": "Currency",
+   "label": "Total Outgoing Value",
+   "options": "Company:company:default_currency",
+   "print_hide": 1,
+   "read_only": 1
+  },
+  {
+   "fieldname": "value_difference",
+   "fieldtype": "Currency",
+   "label": "Total Value Difference (Out - In)",
+   "options": "Company:company:default_currency",
+   "print_hide_if_no_value": 1,
+   "read_only": 1
+  },
+  {
+   "collapsible": 1,
+   "collapsible_depends_on": "total_additional_costs",
+   "fieldname": "additional_costs_section",
+   "fieldtype": "Section Break",
+   "label": "Additional Costs"
+  },
+  {
+   "fieldname": "additional_costs",
+   "fieldtype": "Table",
+   "label": "Additional Costs",
+   "options": "Landed Cost Taxes and Charges"
+  },
+  {
+   "fieldname": "total_additional_costs",
+   "fieldtype": "Currency",
+   "label": "Total Additional Costs",
+   "options": "Company:company:default_currency",
+   "print_hide_if_no_value": 1,
+   "read_only": 1
+  },
+  {
+   "collapsible": 1,
+   "depends_on": "eval: in_list([\"Sales Return\", \"Purchase Return\", \"Send to Subcontractor\"], doc.purpose)",
+   "fieldname": "contact_section",
+   "fieldtype": "Section Break",
+   "label": "Customer or Supplier Details"
+  },
+  {
+   "depends_on": "eval:doc.purpose==\"Purchase Return\" || doc.purpose==\"Send to Subcontractor\"",
+   "fieldname": "supplier",
+   "fieldtype": "Link",
+   "label": "Supplier",
+   "no_copy": 1,
+   "oldfieldname": "supplier",
+   "oldfieldtype": "Link",
+   "options": "Supplier",
+   "print_hide": 1
+  },
+  {
+   "bold": 1,
+   "depends_on": "eval:doc.purpose==\"Purchase Return\" || doc.purpose==\"Send to Subcontractor\"",
+   "fieldname": "supplier_name",
+   "fieldtype": "Data",
+   "label": "Supplier Name",
+   "no_copy": 1,
+   "oldfieldname": "supplier_name",
+   "oldfieldtype": "Data",
+   "read_only": 1
+  },
+  {
+   "depends_on": "eval:doc.purpose==\"Purchase Return\" || doc.purpose==\"Send to Subcontractor\"",
+   "fieldname": "supplier_address",
+   "fieldtype": "Link",
+   "label": "Supplier Address",
+   "no_copy": 1,
+   "oldfieldname": "supplier_address",
+   "oldfieldtype": "Small Text",
+   "options": "Address"
+  },
+  {
+   "fieldname": "address_display",
+   "fieldtype": "Small Text",
+   "label": "Address"
+  },
+  {
+   "fieldname": "column_break_39",
+   "fieldtype": "Column Break"
+  },
+  {
+   "depends_on": "eval:doc.purpose==\"Sales Return\"",
+   "fieldname": "customer",
+   "fieldtype": "Link",
+   "label": "Customer",
+   "no_copy": 1,
+   "oldfieldname": "customer",
+   "oldfieldtype": "Link",
+   "options": "Customer",
+   "print_hide": 1
+  },
+  {
+   "bold": 1,
+   "depends_on": "eval:doc.purpose==\"Sales Return\"",
+   "fieldname": "customer_name",
+   "fieldtype": "Data",
+   "label": "Customer Name",
+   "no_copy": 1,
+   "oldfieldname": "customer_name",
+   "oldfieldtype": "Data",
+   "read_only": 1
+  },
+  {
+   "depends_on": "eval:doc.purpose==\"Sales Return\"",
+   "fieldname": "customer_address",
+   "fieldtype": "Small Text",
+   "label": "Customer Address",
+   "no_copy": 1,
+   "oldfieldname": "customer_address",
+   "oldfieldtype": "Small Text"
+  },
+  {
+   "collapsible": 1,
+   "fieldname": "printing_settings",
+   "fieldtype": "Section Break",
+   "label": "Printing Settings"
+  },
+  {
+   "allow_on_submit": 1,
+   "fieldname": "select_print_heading",
+   "fieldtype": "Link",
+   "label": "Print Heading",
+   "oldfieldname": "select_print_heading",
+   "oldfieldtype": "Link",
+   "options": "Print Heading"
+  },
+  {
+   "fieldname": "letter_head",
+   "fieldtype": "Link",
+   "label": "Letter Head",
+   "options": "Letter Head"
+  },
+  {
+   "collapsible": 1,
+   "fieldname": "more_info",
+   "fieldtype": "Section Break",
+   "label": "More Information",
+   "oldfieldtype": "Section Break"
+  },
+  {
+   "fieldname": "is_opening",
+   "fieldtype": "Select",
+   "label": "Is Opening",
+   "options": "No\nYes"
+  },
+  {
+   "fieldname": "project",
+   "fieldtype": "Link",
+   "label": "Project",
+   "oldfieldtype": "Link",
+   "options": "Project"
+  },
+  {
+   "fieldname": "remarks",
+   "fieldtype": "Text",
+   "label": "Remarks",
+   "no_copy": 1,
+   "oldfieldname": "remarks",
+   "oldfieldtype": "Text",
+   "print_hide": 1
+  },
+  {
+   "fieldname": "col5",
+   "fieldtype": "Column Break",
+   "print_width": "50%",
+   "width": "50%"
+  },
+  {
+   "fieldname": "per_transferred",
+   "fieldtype": "Percent",
+   "in_list_view": 1,
+   "label": "Per Transferred",
+   "no_copy": 1,
+   "print_hide": 1,
+   "read_only": 1
+  },
+  {
+   "depends_on": "total_amount",
+   "fieldname": "total_amount",
+   "fieldtype": "Currency",
+   "label": "Total Amount",
+   "options": "Company:company:default_currency",
+   "print_hide_if_no_value": 1,
+   "read_only": 1
+  },
+  {
+   "fieldname": "job_card",
+   "fieldtype": "Link",
+   "label": "Job Card",
+   "options": "Job Card",
+   "print_hide": 1,
+   "read_only": 1
+  },
+  {
+   "fieldname": "amended_from",
+   "fieldtype": "Link",
+   "ignore_user_permissions": 1,
+   "label": "Amended From",
+   "no_copy": 1,
+   "oldfieldname": "amended_from",
+   "oldfieldtype": "Link",
+   "options": "Stock Entry",
+   "print_hide": 1,
+   "read_only": 1
+  },
+  {
+   "fieldname": "credit_note",
+   "fieldtype": "Link",
+   "hidden": 1,
+   "label": "Credit Note",
+   "options": "Journal Entry"
+  },
+  {
+   "collapsible": 1,
+   "fieldname": "accounting_dimensions_section",
+   "fieldtype": "Section Break",
+   "label": "Accounting Dimensions"
+  },
+  {
+   "fieldname": "dimension_col_break",
+   "fieldtype": "Column Break"
+  }
+ ],
+ "icon": "fa fa-file-text",
+ "idx": 1,
+ "is_submittable": 1,
+ "modified": "2019-07-14 17:41:39.257508",
+ "modified_by": "Administrator",
+ "module": "Stock",
+ "name": "Stock Entry",
+ "owner": "Administrator",
+ "permissions": [
+  {
+   "amend": 1,
+   "cancel": 1,
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "Stock User",
+   "share": 1,
+   "submit": 1,
+   "write": 1
+  },
+  {
+   "amend": 1,
+   "cancel": 1,
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "Manufacturing User",
+   "share": 1,
+   "submit": 1,
+   "write": 1
+  },
+  {
+   "amend": 1,
+   "cancel": 1,
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "Manufacturing Manager",
+   "share": 1,
+   "submit": 1,
+   "write": 1
+  },
+  {
+   "amend": 1,
+   "cancel": 1,
+   "create": 1,
+   "delete": 1,
+   "email": 1,
+   "export": 1,
+   "import": 1,
+   "print": 1,
+   "read": 1,
+   "report": 1,
+   "role": "Stock Manager",
+   "set_user_permissions": 1,
+   "share": 1,
+   "submit": 1,
+   "write": 1
+  }
+ ],
+ "search_fields": "posting_date, from_warehouse, to_warehouse, purpose, remarks",
+ "show_name_in_global_search": 1,
+ "sort_field": "modified",
+ "sort_order": "DESC",
+ "title_field": "title",
+ "track_changes": 1
+}
\ No newline at end of file
diff --git a/erpnext/templates/pages/projects.py b/erpnext/templates/pages/projects.py
index ddca274..d23fed9 100644
--- a/erpnext/templates/pages/projects.py
+++ b/erpnext/templates/pages/projects.py
@@ -7,22 +7,22 @@
 
 def get_context(context):
 	project_user = frappe.db.get_value("Project User", {"parent": frappe.form_dict.project, "user": frappe.session.user} , ["user", "view_attachments"], as_dict= True)
-	if not project_user or frappe.session.user == 'Guest': 
+	if frappe.session.user != 'Administrator' and (not project_user or frappe.session.user == 'Guest'):
 		raise frappe.PermissionError
-		
+
 	context.no_cache = 1
 	context.show_sidebar = True
 	project = frappe.get_doc('Project', frappe.form_dict.project)
 
 	project.has_permission('read')
-	
+
 	project.tasks = get_tasks(project.name, start=0, item_status='open',
 		search=frappe.form_dict.get("search"))
 
 	project.timesheets = get_timesheets(project.name, start=0,
 		search=frappe.form_dict.get("search"))
 
-	if project_user.view_attachments:
+	if project_user and project_user.view_attachments:
 		project.attachments = get_attachments(project.name)
 
 	context.doc = project
@@ -46,7 +46,7 @@
 			task.todo=task.todo[0]
 			task.todo.user_image = frappe.db.get_value('User', task.todo.owner, 'user_image')
 
-		
+
 		task.comment_count = len(json.loads(task._comments or "[]"))
 
 		task.css_seen = ''
@@ -86,7 +86,7 @@
 			timesheet.info.css_seen = ''
 			if timesheet.info._seen:
 				if frappe.session.user in json.loads(timesheet.info._seen):
-					timesheet.info.css_seen = 'seen'		
+					timesheet.info.css_seen = 'seen'
 	return timesheets
 
 @frappe.whitelist()