Merge pull request #38010 from s-aga-r/FIX-ITEM-READ-ONLY

fix: make item field read-only in batch
diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.json b/erpnext/accounts/doctype/payment_entry/payment_entry.json
index d7b6a19..4d50a35 100644
--- a/erpnext/accounts/doctype/payment_entry/payment_entry.json
+++ b/erpnext/accounts/doctype/payment_entry/payment_entry.json
@@ -595,6 +595,7 @@
    "fieldname": "status",
    "fieldtype": "Select",
    "label": "Status",
+   "no_copy": 1,
    "options": "\nDraft\nSubmitted\nCancelled",
    "read_only": 1
   },
@@ -750,7 +751,7 @@
  "index_web_pages_for_search": 1,
  "is_submittable": 1,
  "links": [],
- "modified": "2023-06-23 18:07:38.023010",
+ "modified": "2023-11-08 21:51:03.482709",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Payment Entry",
diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.py b/erpnext/accounts/doctype/payment_entry/payment_entry.py
index e6403fd..c0e3ab3 100644
--- a/erpnext/accounts/doctype/payment_entry/payment_entry.py
+++ b/erpnext/accounts/doctype/payment_entry/payment_entry.py
@@ -33,6 +33,7 @@
 	get_account_currency,
 	get_balance_on,
 	get_outstanding_invoices,
+	get_party_types_from_account_type,
 )
 from erpnext.controllers.accounts_controller import (
 	AccountsController,
@@ -83,7 +84,6 @@
 		self.apply_taxes()
 		self.set_amounts_after_tax()
 		self.clear_unallocated_reference_document_rows()
-		self.validate_payment_against_negative_invoice()
 		self.validate_transaction_reference()
 		self.set_title()
 		self.set_remarks()
@@ -952,35 +952,6 @@
 			self.name,
 		)
 
-	def validate_payment_against_negative_invoice(self):
-		if (self.payment_type != "Pay" or self.party_type != "Customer") and (
-			self.payment_type != "Receive" or self.party_type != "Supplier"
-		):
-			return
-
-		total_negative_outstanding = sum(
-			abs(flt(d.outstanding_amount)) for d in self.get("references") if flt(d.outstanding_amount) < 0
-		)
-
-		paid_amount = self.paid_amount if self.payment_type == "Receive" else self.received_amount
-		additional_charges = sum(flt(d.amount) for d in self.deductions)
-
-		if not total_negative_outstanding:
-			if self.party_type == "Customer":
-				msg = _("Cannot pay to Customer without any negative outstanding invoice")
-			else:
-				msg = _("Cannot receive from Supplier without any negative outstanding invoice")
-
-			frappe.throw(msg, InvalidPaymentEntry)
-
-		elif paid_amount - additional_charges > total_negative_outstanding:
-			frappe.throw(
-				_("Paid Amount cannot be greater than total negative outstanding amount {0}").format(
-					fmt_money(total_negative_outstanding)
-				),
-				InvalidPaymentEntry,
-			)
-
 	def set_title(self):
 		if frappe.flags.in_import and self.title:
 			# do not set title dynamically if title exists during data import.
@@ -1083,9 +1054,7 @@
 				item=self,
 			)
 
-			dr_or_cr = (
-				"credit" if erpnext.get_party_account_type(self.party_type) == "Receivable" else "debit"
-			)
+			dr_or_cr = "credit" if self.payment_type == "Receive" else "debit"
 
 			for d in self.get("references"):
 				cost_center = self.cost_center
@@ -1103,10 +1072,27 @@
 					against_voucher_type = d.reference_doctype
 					against_voucher = d.reference_name
 
+				reverse_dr_or_cr, standalone_note = 0, 0
+				if d.reference_doctype in ["Sales Invoice", "Purchase Invoice"]:
+					is_return, return_against = frappe.db.get_value(
+						d.reference_doctype, d.reference_name, ["is_return", "return_against"]
+					)
+					payable_party_types = get_party_types_from_account_type("Payable")
+					receivable_party_types = get_party_types_from_account_type("Receivable")
+					if is_return and self.party_type in receivable_party_types and (self.payment_type == "Pay"):
+						reverse_dr_or_cr = 1
+					elif (
+						is_return and self.party_type in payable_party_types and (self.payment_type == "Receive")
+					):
+						reverse_dr_or_cr = 1
+
+					if is_return and not return_against and not reverse_dr_or_cr:
+						dr_or_cr = "debit" if dr_or_cr == "credit" else "credit"
+
 				gle.update(
 					{
-						dr_or_cr: allocated_amount_in_company_currency,
-						dr_or_cr + "_in_account_currency": d.allocated_amount,
+						dr_or_cr: abs(allocated_amount_in_company_currency),
+						dr_or_cr + "_in_account_currency": abs(d.allocated_amount),
 						"against_voucher_type": against_voucher_type,
 						"against_voucher": against_voucher,
 						"cost_center": cost_center,
diff --git a/erpnext/accounts/doctype/payment_entry/test_payment_entry.py b/erpnext/accounts/doctype/payment_entry/test_payment_entry.py
index edfec41..b6b93b6 100644
--- a/erpnext/accounts/doctype/payment_entry/test_payment_entry.py
+++ b/erpnext/accounts/doctype/payment_entry/test_payment_entry.py
@@ -683,17 +683,6 @@
 		self.validate_gl_entries(pe.name, expected_gle)
 
 	def test_payment_against_negative_sales_invoice(self):
-		pe1 = frappe.new_doc("Payment Entry")
-		pe1.payment_type = "Pay"
-		pe1.company = "_Test Company"
-		pe1.party_type = "Customer"
-		pe1.party = "_Test Customer"
-		pe1.paid_from = "_Test Cash - _TC"
-		pe1.paid_amount = 100
-		pe1.received_amount = 100
-
-		self.assertRaises(InvalidPaymentEntry, pe1.validate)
-
 		si1 = create_sales_invoice()
 
 		# create full payment entry against si1
@@ -751,8 +740,6 @@
 
 		# pay more than outstanding against si1
 		pe3 = get_payment_entry("Sales Invoice", si1.name, bank_account="_Test Cash - _TC")
-		pe3.paid_amount = pe3.received_amount = 300
-		self.assertRaises(InvalidPaymentEntry, pe3.validate)
 
 		# pay negative outstanding against si1
 		pe3.paid_to = "Debtors - _TC"
@@ -1262,6 +1249,39 @@
 		so.reload()
 		self.assertEqual(so.advance_paid, so.rounded_total)
 
+	def test_receive_payment_from_payable_party_type(self):
+		pe = create_payment_entry(
+			party_type="Supplier",
+			party="_Test Supplier",
+			payment_type="Receive",
+			paid_from="Creditors - _TC",
+			paid_to="_Test Cash - _TC",
+			save=True,
+			submit=True,
+		)
+		self.voucher_no = pe.name
+		self.expected_gle = [
+			{"account": "_Test Cash - _TC", "debit": 1000.0, "credit": 0.0},
+			{"account": "Creditors - _TC", "debit": 0.0, "credit": 1000.0},
+		]
+		self.check_gl_entries()
+
+	def check_gl_entries(self):
+		gle = frappe.qb.DocType("GL Entry")
+		gl_entries = (
+			frappe.qb.from_(gle)
+			.select(
+				gle.account,
+				gle.debit,
+				gle.credit,
+			)
+			.where((gle.voucher_no == self.voucher_no) & (gle.is_cancelled == 0))
+			.orderby(gle.account)
+		).run(as_dict=True)
+		for row in range(len(self.expected_gle)):
+			for field in ["account", "debit", "credit"]:
+				self.assertEqual(self.expected_gle[row][field], gl_entries[row][field])
+
 
 def create_payment_entry(**args):
 	payment_entry = frappe.new_doc("Payment Entry")
diff --git a/erpnext/accounts/doctype/payment_request/payment_request.py b/erpnext/accounts/doctype/payment_request/payment_request.py
index 5f0b434..c2e01c4 100644
--- a/erpnext/accounts/doctype/payment_request/payment_request.py
+++ b/erpnext/accounts/doctype/payment_request/payment_request.py
@@ -175,13 +175,6 @@
 		if self.payment_url:
 			self.db_set("payment_url", self.payment_url)
 
-		if (
-			self.payment_url
-			or not self.payment_gateway_account
-			or (self.payment_gateway_account and self.payment_channel == "Phone")
-		):
-			self.db_set("status", "Initiated")
-
 	def get_payment_url(self):
 		if self.reference_doctype != "Fees":
 			data = frappe.db.get_value(
diff --git a/erpnext/accounts/doctype/pos_invoice/test_pos_invoice.py b/erpnext/accounts/doctype/pos_invoice/test_pos_invoice.py
index 982bdc1..200b82a 100644
--- a/erpnext/accounts/doctype/pos_invoice/test_pos_invoice.py
+++ b/erpnext/accounts/doctype/pos_invoice/test_pos_invoice.py
@@ -6,7 +6,6 @@
 
 import frappe
 from frappe import _
-from frappe.utils import add_days, nowdate
 
 from erpnext.accounts.doctype.pos_invoice.pos_invoice import make_sales_return
 from erpnext.accounts.doctype.pos_profile.test_pos_profile import make_pos_profile
@@ -126,64 +125,70 @@
 		self.assertEqual(inv.grand_total, 5474.0)
 
 	def test_tax_calculation_with_item_tax_template(self):
-		import json
+		inv = create_pos_invoice(qty=84, rate=4.6, do_not_save=1)
+		item_row = inv.get("items")[0]
 
-		from erpnext.stock.get_item_details import get_item_details
-
-		# set tax template in item
-		item = frappe.get_cached_doc("Item", "_Test Item")
-		item.set(
-			"taxes",
-			[
-				{
-					"item_tax_template": "_Test Account Excise Duty @ 15 - _TC",
-					"valid_from": add_days(nowdate(), -5),
-				}
-			],
-		)
-		item.save()
-
-		# create POS invoice with item
-		pos_inv = create_pos_invoice(qty=84, rate=4.6, do_not_save=True)
-		item_details = get_item_details(
-			doc=pos_inv,
-			args={
-				"item_code": item.item_code,
-				"company": pos_inv.company,
-				"doctype": "POS Invoice",
-				"conversion_rate": 1.0,
-			},
-		)
-		tax_map = json.loads(item_details.item_tax_rate)
-		for tax in tax_map:
-			pos_inv.append(
-				"taxes",
-				{
-					"charge_type": "On Net Total",
-					"account_head": tax,
-					"rate": tax_map[tax],
-					"description": "Test",
-					"cost_center": "_Test Cost Center - _TC",
-				},
-			)
-		pos_inv.submit()
-		pos_inv.load_from_db()
-
-		# check if correct tax values are applied from tax template
-		self.assertEqual(pos_inv.net_total, 386.4)
-
-		expected_taxes = [
-			{
-				"tax_amount": 57.96,
-				"total": 444.36,
-			},
+		add_items = [
+			(54, "_Test Account Excise Duty @ 12 - _TC"),
+			(288, "_Test Account Excise Duty @ 15 - _TC"),
+			(144, "_Test Account Excise Duty @ 20 - _TC"),
+			(430, "_Test Item Tax Template 1 - _TC"),
 		]
+		for qty, item_tax_template in add_items:
+			item_row_copy = copy.deepcopy(item_row)
+			item_row_copy.qty = qty
+			item_row_copy.item_tax_template = item_tax_template
+			inv.append("items", item_row_copy)
 
-		for i in range(len(expected_taxes)):
-			for key in expected_taxes[i]:
-				self.assertEqual(expected_taxes[i][key], pos_inv.get("taxes")[i].get(key))
+		inv.append(
+			"taxes",
+			{
+				"account_head": "_Test Account Excise Duty - _TC",
+				"charge_type": "On Net Total",
+				"cost_center": "_Test Cost Center - _TC",
+				"description": "Excise Duty",
+				"doctype": "Sales Taxes and Charges",
+				"rate": 11,
+			},
+		)
+		inv.append(
+			"taxes",
+			{
+				"account_head": "_Test Account Education Cess - _TC",
+				"charge_type": "On Net Total",
+				"cost_center": "_Test Cost Center - _TC",
+				"description": "Education Cess",
+				"doctype": "Sales Taxes and Charges",
+				"rate": 0,
+			},
+		)
+		inv.append(
+			"taxes",
+			{
+				"account_head": "_Test Account S&H Education Cess - _TC",
+				"charge_type": "On Net Total",
+				"cost_center": "_Test Cost Center - _TC",
+				"description": "S&H Education Cess",
+				"doctype": "Sales Taxes and Charges",
+				"rate": 3,
+			},
+		)
+		inv.insert()
 
-		self.assertEqual(pos_inv.get("base_total_taxes_and_charges"), 57.96)
+		self.assertEqual(inv.net_total, 4600)
+
+		self.assertEqual(inv.get("taxes")[0].tax_amount, 502.41)
+		self.assertEqual(inv.get("taxes")[0].total, 5102.41)
+
+		self.assertEqual(inv.get("taxes")[1].tax_amount, 197.80)
+		self.assertEqual(inv.get("taxes")[1].total, 5300.21)
+
+		self.assertEqual(inv.get("taxes")[2].tax_amount, 375.36)
+		self.assertEqual(inv.get("taxes")[2].total, 5675.57)
+
+		self.assertEqual(inv.grand_total, 5675.57)
+		self.assertEqual(inv.rounding_adjustment, 0.43)
+		self.assertEqual(inv.rounded_total, 5676.0)
 
 	def test_tax_calculation_with_multiple_items_and_discount(self):
 		inv = create_pos_invoice(qty=1, rate=75, do_not_save=True)
diff --git a/erpnext/accounts/doctype/sales_invoice/sales_invoice.js b/erpnext/accounts/doctype/sales_invoice/sales_invoice.js
index d4d9239..b1a7b10 100644
--- a/erpnext/accounts/doctype/sales_invoice/sales_invoice.js
+++ b/erpnext/accounts/doctype/sales_invoice/sales_invoice.js
@@ -187,7 +187,6 @@
 		erpnext.accounts.unreconcile_payments.add_unreconcile_btn(me.frm);
 	}
 
-
 	make_maintenance_schedule() {
 		frappe.model.open_mapped_doc({
 			method: "erpnext.accounts.doctype.sales_invoice.sales_invoice.make_maintenance_schedule",
@@ -563,15 +562,6 @@
 	}
 }
 
-// Income Account in Details Table
-// --------------------------------
-cur_frm.set_query("income_account", "items", function(doc) {
-	return{
-		query: "erpnext.controllers.queries.get_income_account",
-		filters: {'company': doc.company}
-	}
-});
-
 // Cost Center in Details Table
 // -----------------------------
 cur_frm.fields_dict["items"].grid.get_field("cost_center").get_query = function(doc) {
@@ -666,6 +656,16 @@
 			};
 		});
 
+		frm.set_query("income_account", "items", function() {
+			return{
+				query: "erpnext.controllers.queries.get_income_account",
+				filters: {
+					'company': frm.doc.company,
+					"disabled": 0
+				}
+			}
+		});
+
 		frm.custom_make_buttons = {
 			'Delivery Note': 'Delivery',
 			'Sales Invoice': 'Return / Credit Note',
diff --git a/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py b/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py
index 21cc253..5a41336 100644
--- a/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py
+++ b/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py
@@ -516,72 +516,70 @@
 		self.assertEqual(si.grand_total, 5474.0)
 
 	def test_tax_calculation_with_item_tax_template(self):
-		import json
-
-		from erpnext.stock.get_item_details import get_item_details
-
-		# set tax template in item
-		item = frappe.get_cached_doc("Item", "_Test Item")
-		item.set(
-			"taxes",
-			[
-				{
-					"item_tax_template": "_Test Item Tax Template 1 - _TC",
-					"valid_from": add_days(nowdate(), -5),
-				}
-			],
-		)
-		item.save()
-
-		# create sales invoice with item
 		si = create_sales_invoice(qty=84, rate=4.6, do_not_save=True)
-		item_details = get_item_details(
-			doc=si,
-			args={
-				"item_code": item.item_code,
-				"company": si.company,
-				"doctype": "Sales Invoice",
-				"conversion_rate": 1.0,
+		item_row = si.get("items")[0]
+
+		add_items = [
+			(54, "_Test Account Excise Duty @ 12 - _TC"),
+			(288, "_Test Account Excise Duty @ 15 - _TC"),
+			(144, "_Test Account Excise Duty @ 20 - _TC"),
+			(430, "_Test Item Tax Template 1 - _TC"),
+		]
+		for qty, item_tax_template in add_items:
+			item_row_copy = copy.deepcopy(item_row)
+			item_row_copy.qty = qty
+			item_row_copy.item_tax_template = item_tax_template
+			si.append("items", item_row_copy)
+
+		si.append(
+			"taxes",
+			{
+				"account_head": "_Test Account Excise Duty - _TC",
+				"charge_type": "On Net Total",
+				"cost_center": "_Test Cost Center - _TC",
+				"description": "Excise Duty",
+				"doctype": "Sales Taxes and Charges",
+				"rate": 11,
 			},
 		)
-		tax_map = json.loads(item_details.item_tax_rate)
-		for tax in tax_map:
-			si.append(
-				"taxes",
-				{
-					"charge_type": "On Net Total",
-					"account_head": tax,
-					"rate": tax_map[tax],
-					"description": "Test",
-					"cost_center": "_Test Cost Center - _TC",
-				},
-			)
-		si.submit()
-		si.load_from_db()
-
-		# check if correct tax values are applied from tax template
-		self.assertEqual(si.net_total, 386.4)
-
-		expected_taxes = [
+		si.append(
+			"taxes",
 			{
-				"tax_amount": 19.32,
-				"total": 405.72,
+				"account_head": "_Test Account Education Cess - _TC",
+				"charge_type": "On Net Total",
+				"cost_center": "_Test Cost Center - _TC",
+				"description": "Education Cess",
+				"doctype": "Sales Taxes and Charges",
+				"rate": 0,
 			},
+		)
+		si.append(
+			"taxes",
 			{
-				"tax_amount": 38.64,
-				"total": 444.36,
+				"account_head": "_Test Account S&H Education Cess - _TC",
+				"charge_type": "On Net Total",
+				"cost_center": "_Test Cost Center - _TC",
+				"description": "S&H Education Cess",
+				"doctype": "Sales Taxes and Charges",
+				"rate": 3,
 			},
-			{
-				"tax_amount": 57.96,
-				"total": 502.32,
-			},
-		]
+		)
+		si.insert()
 
-		for i in range(len(expected_taxes)):
-			for key in expected_taxes[i]:
-				self.assertEqual(expected_taxes[i][key], si.get("taxes")[i].get(key))
+		self.assertEqual(si.net_total, 4600)
 
-		self.assertEqual(si.get("base_total_taxes_and_charges"), 115.92)
+		self.assertEqual(si.get("taxes")[0].tax_amount, 502.41)
+		self.assertEqual(si.get("taxes")[0].total, 5102.41)
+
+		self.assertEqual(si.get("taxes")[1].tax_amount, 197.80)
+		self.assertEqual(si.get("taxes")[1].total, 5300.21)
+
+		self.assertEqual(si.get("taxes")[2].tax_amount, 375.36)
+		self.assertEqual(si.get("taxes")[2].total, 5675.57)
+
+		self.assertEqual(si.grand_total, 5675.57)
+		self.assertEqual(si.rounding_adjustment, 0.43)
+		self.assertEqual(si.rounded_total, 5676.0)
 
 	def test_tax_calculation_with_multiple_items_and_discount(self):
 		si = create_sales_invoice(qty=1, rate=75, do_not_save=True)
diff --git a/erpnext/accounts/party.py b/erpnext/accounts/party.py
index 16e73ea..371474e 100644
--- a/erpnext/accounts/party.py
+++ b/erpnext/accounts/party.py
@@ -31,7 +31,12 @@
 from erpnext.exceptions import InvalidAccountCurrency, PartyDisabled, PartyFrozen
 from erpnext.utilities.regional import temporary_flag
 
-PURCHASE_TRANSACTION_TYPES = {"Purchase Order", "Purchase Receipt", "Purchase Invoice"}
+PURCHASE_TRANSACTION_TYPES = {
+	"Supplier Quotation",
+	"Purchase Order",
+	"Purchase Receipt",
+	"Purchase Invoice",
+}
 SALES_TRANSACTION_TYPES = {
 	"Quotation",
 	"Sales Order",
diff --git a/erpnext/accounts/report/accounts_payable/accounts_payable.js b/erpnext/accounts/report/accounts_payable/accounts_payable.js
index eff705d..10362db 100644
--- a/erpnext/accounts/report/accounts_payable/accounts_payable.js
+++ b/erpnext/accounts/report/accounts_payable/accounts_payable.js
@@ -145,6 +145,11 @@
 			"fieldtype": "Check",
 		},
 		{
+			"fieldname": "in_party_currency",
+			"label": __("In Party Currency"),
+			"fieldtype": "Check",
+		},
+		{
 			"fieldname": "ignore_accounts",
 			"label": __("Group by Voucher"),
 			"fieldtype": "Check",
diff --git a/erpnext/accounts/report/accounts_payable/test_accounts_payable.py b/erpnext/accounts/report/accounts_payable/test_accounts_payable.py
index 9f03d92..b4cb25f 100644
--- a/erpnext/accounts/report/accounts_payable/test_accounts_payable.py
+++ b/erpnext/accounts/report/accounts_payable/test_accounts_payable.py
@@ -40,6 +40,7 @@
 			"range2": 60,
 			"range3": 90,
 			"range4": 120,
+			"in_party_currency": 1,
 		}
 
 		data = execute(filters)
diff --git a/erpnext/accounts/report/accounts_receivable/accounts_receivable.js b/erpnext/accounts/report/accounts_receivable/accounts_receivable.js
index 786aad6..43ea532 100644
--- a/erpnext/accounts/report/accounts_receivable/accounts_receivable.js
+++ b/erpnext/accounts/report/accounts_receivable/accounts_receivable.js
@@ -114,10 +114,13 @@
 			"reqd": 1
 		},
 		{
-			"fieldname": "customer_group",
+			"fieldname":"customer_group",
 			"label": __("Customer Group"),
-			"fieldtype": "Link",
-			"options": "Customer Group"
+			"fieldtype": "MultiSelectList",
+			"options": "Customer Group",
+			get_data: function(txt) {
+				return frappe.db.get_link_options('Customer Group', txt);
+			}
 		},
 		{
 			"fieldname": "payment_terms_template",
@@ -174,6 +177,11 @@
 			"fieldtype": "Check",
 		},
 		{
+			"fieldname": "in_party_currency",
+			"label": __("In Party Currency"),
+			"fieldtype": "Check",
+    },
+    {
 			"fieldname": "ignore_accounts",
 			"label": __("Group by Voucher"),
 			"fieldtype": "Check",
diff --git a/erpnext/accounts/report/accounts_receivable/accounts_receivable.py b/erpnext/accounts/report/accounts_receivable/accounts_receivable.py
old mode 100755
new mode 100644
index 12e4003..0540374
--- a/erpnext/accounts/report/accounts_receivable/accounts_receivable.py
+++ b/erpnext/accounts/report/accounts_receivable/accounts_receivable.py
@@ -14,7 +14,7 @@
 	get_accounting_dimensions,
 	get_dimension_with_children,
 )
-from erpnext.accounts.utils import get_currency_precision
+from erpnext.accounts.utils import get_currency_precision, get_party_types_from_account_type
 
 #  This report gives a summary of all Outstanding Invoices considering the following
 
@@ -28,8 +28,8 @@
 #  6. Configurable Ageing Groups (0-30, 30-60 etc) can be set via filters
 #  7. For overpayment against an invoice with payment terms, there will be an additional row
 #  8. Invoice details like Sales Persons, Delivery Notes are also fetched comma separated
-#  9. Report amounts are in "Party Currency" if party is selected, or company currency for multi-party
-# 10. This reports is based on all GL Entries that are made against account_type "Receivable" or "Payable"
+#  9. Report amounts are in party currency if in_party_currency is selected, otherwise company currency
+# 10. This report is based on Payment Ledger Entries
 
 
 def execute(filters=None):
@@ -72,9 +72,7 @@
 		self.currency_precision = get_currency_precision() or 2
 		self.dr_or_cr = "debit" if self.filters.account_type == "Receivable" else "credit"
 		self.account_type = self.filters.account_type
-		self.party_type = frappe.db.get_all(
-			"Party Type", {"account_type": self.account_type}, pluck="name"
-		)
+		self.party_type = get_party_types_from_account_type(self.account_type)
 		self.party_details = {}
 		self.invoices = set()
 		self.skip_total_row = 0
@@ -84,6 +82,9 @@
 			self.total_row_map = {}
 			self.skip_total_row = 1
 
+		if self.filters.get("in_party_currency"):
+			self.skip_total_row = 1
+
 	def get_data(self):
 		self.get_ple_entries()
 		self.get_sales_invoices_or_customers_based_on_sales_person()
@@ -145,7 +146,7 @@
 			if self.filters.get("group_by_party"):
 				self.init_subtotal_row(ple.party)
 
-		if self.filters.get("group_by_party"):
+		if self.filters.get("group_by_party") and not self.filters.get("in_party_currency"):
 			self.init_subtotal_row("Total")
 
 	def get_invoices(self, ple):
@@ -224,8 +225,7 @@
 		if not row:
 			return
 
-		# amount in "Party Currency", if its supplied. If not, amount in company currency
-		if self.filters.get("party_type") and self.filters.get("party"):
+		if self.filters.get("in_party_currency"):
 			amount = ple.amount_in_account_currency
 		else:
 			amount = ple.amount
@@ -256,8 +256,10 @@
 	def update_sub_total_row(self, row, party):
 		total_row = self.total_row_map.get(party)
 
-		for field in self.get_currency_fields():
-			total_row[field] += row.get(field, 0.0)
+		if total_row:
+			for field in self.get_currency_fields():
+				total_row[field] += row.get(field, 0.0)
+			total_row["currency"] = row.get("currency", "")
 
 	def append_subtotal_row(self, party):
 		sub_total_row = self.total_row_map.get(party)
@@ -309,7 +311,7 @@
 		if self.filters.get("group_by_party"):
 			self.append_subtotal_row(self.previous_party)
 			if self.data:
-				self.data.append(self.total_row_map.get("Total"))
+				self.data.append(self.total_row_map.get("Total", {}))
 
 	def append_row(self, row):
 		self.allocate_future_payments(row)
@@ -440,7 +442,7 @@
 		party_details = self.get_party_details(row.party) or {}
 		row.update(party_details)
 
-		if self.filters.get("party_type") and self.filters.get("party"):
+		if self.filters.get("in_party_currency"):
 			row.currency = row.account_currency
 		else:
 			row.currency = self.company_currency
@@ -840,7 +842,13 @@
 		self.customer = qb.DocType("Customer")
 
 		if self.filters.get("customer_group"):
-			self.get_hierarchical_filters("Customer Group", "customer_group")
+			groups = get_customer_group_with_children(self.filters.customer_group)
+			customers = (
+				qb.from_(self.customer)
+				.select(self.customer.name)
+				.where(self.customer["customer_group"].isin(groups))
+			)
+			self.qb_selection_filter.append(self.ple.party.isin(customers))
 
 		if self.filters.get("territory"):
 			self.get_hierarchical_filters("Territory", "territory")
@@ -1132,3 +1140,19 @@
 			.run()
 		)
 		self.err_journals = [x[0] for x in results] if results else []
+
+
+def get_customer_group_with_children(customer_groups):
+	if not isinstance(customer_groups, list):
+		customer_groups = [d.strip() for d in customer_groups.strip().split(",") if d]
+
+	all_customer_groups = []
+	for d in customer_groups:
+		if frappe.db.exists("Customer Group", d):
+			lft, rgt = frappe.db.get_value("Customer Group", d, ["lft", "rgt"])
+			children = frappe.get_all("Customer Group", filters={"lft": [">=", lft], "rgt": ["<=", rgt]})
+			all_customer_groups += [c.name for c in children]
+		else:
+			frappe.throw(_("Customer Group: {0} does not exist").format(d))
+
+	return list(set(all_customer_groups))
diff --git a/erpnext/accounts/report/accounts_receivable/test_accounts_receivable.py b/erpnext/accounts/report/accounts_receivable/test_accounts_receivable.py
index cbeb6d3..dd0842d 100644
--- a/erpnext/accounts/report/accounts_receivable/test_accounts_receivable.py
+++ b/erpnext/accounts/report/accounts_receivable/test_accounts_receivable.py
@@ -475,6 +475,30 @@
 		report = execute(filters)[1]
 		self.assertEqual(len(report), 0)
 
+	def test_multi_customer_group_filter(self):
+		si = self.create_sales_invoice()
+		cus_group = frappe.db.get_value("Customer", self.customer, "customer_group")
+		# Create a list of customer groups, e.g., ["Group1", "Group2"]
+		cus_groups_list = [cus_group, "_Test Customer Group 1"]
+
+		filters = {
+			"company": self.company,
+			"report_date": today(),
+			"range1": 30,
+			"range2": 60,
+			"range3": 90,
+			"range4": 120,
+			"customer_group": cus_groups_list,  # Use the list of customer groups
+		}
+		report = execute(filters)[1]
+
+		# Assert that the report contains data for the specified customer groups
+		self.assertTrue(len(report) > 0)
+
+		for row in report:
+			# Assert that the customer group of each row is in the list of customer groups
+			self.assertIn(row.customer_group, cus_groups_list)
+
 	def test_party_account_filter(self):
 		si1 = self.create_sales_invoice()
 		self.customer2 = (
@@ -557,6 +581,7 @@
 			"range2": 60,
 			"range3": 90,
 			"range4": 120,
+			"in_party_currency": 1,
 		}
 
 		si = self.create_sales_invoice(no_payment_schedule=True, do_not_submit=True)
diff --git a/erpnext/accounts/report/accounts_receivable_summary/accounts_receivable_summary.py b/erpnext/accounts/report/accounts_receivable_summary/accounts_receivable_summary.py
index 60274cd..d50cf07 100644
--- a/erpnext/accounts/report/accounts_receivable_summary/accounts_receivable_summary.py
+++ b/erpnext/accounts/report/accounts_receivable_summary/accounts_receivable_summary.py
@@ -8,6 +8,7 @@
 
 from erpnext.accounts.party import get_partywise_advanced_payment_amount
 from erpnext.accounts.report.accounts_receivable.accounts_receivable import ReceivablePayableReport
+from erpnext.accounts.utils import get_party_types_from_account_type
 
 
 def execute(filters=None):
@@ -22,9 +23,7 @@
 class AccountsReceivableSummary(ReceivablePayableReport):
 	def run(self, args):
 		self.account_type = args.get("account_type")
-		self.party_type = frappe.db.get_all(
-			"Party Type", {"account_type": self.account_type}, pluck="name"
-		)
+		self.party_type = get_party_types_from_account_type(self.account_type)
 		self.party_naming_by = frappe.db.get_value(
 			args.get("naming_by")[0], None, args.get("naming_by")[1]
 		)
diff --git a/erpnext/accounts/report/asset_depreciation_ledger/asset_depreciation_ledger.js b/erpnext/accounts/report/asset_depreciation_ledger/asset_depreciation_ledger.js
index 126cd03..12b9434 100644
--- a/erpnext/accounts/report/asset_depreciation_ledger/asset_depreciation_ledger.js
+++ b/erpnext/accounts/report/asset_depreciation_ledger/asset_depreciation_ledger.js
@@ -32,16 +32,28 @@
 			"options": "Asset"
 		},
 		{
+			"fieldname":"asset_category",
+			"label": __("Asset Category"),
+			"fieldtype": "Link",
+			"options": "Asset Category"
+		},
+		{
+			"fieldname":"cost_center",
+			"label": __("Cost Center"),
+			"fieldtype": "Link",
+			"options": "Cost Center"
+		},
+		{
 			"fieldname":"finance_book",
 			"label": __("Finance Book"),
 			"fieldtype": "Link",
 			"options": "Finance Book"
 		},
 		{
-			"fieldname":"asset_category",
-			"label": __("Asset Category"),
-			"fieldtype": "Link",
-			"options": "Asset Category"
-		}
+			"fieldname": "include_default_book_assets",
+			"label": __("Include Default FB Assets"),
+			"fieldtype": "Check",
+			"default": 1
+		},
 	]
 }
diff --git a/erpnext/accounts/report/asset_depreciation_ledger/asset_depreciation_ledger.json b/erpnext/accounts/report/asset_depreciation_ledger/asset_depreciation_ledger.json
index 0ef9d85..9002e23 100644
--- a/erpnext/accounts/report/asset_depreciation_ledger/asset_depreciation_ledger.json
+++ b/erpnext/accounts/report/asset_depreciation_ledger/asset_depreciation_ledger.json
@@ -1,15 +1,15 @@
 {
- "add_total_row": 1,
+ "add_total_row": 0,
  "columns": [],
  "creation": "2016-04-08 14:49:58.133098",
  "disabled": 0,
  "docstatus": 0,
  "doctype": "Report",
  "filters": [],
- "idx": 2,
+ "idx": 6,
  "is_standard": "Yes",
  "letterhead": null,
- "modified": "2023-07-26 21:05:33.554778",
+ "modified": "2023-11-08 20:17:05.774211",
  "modified_by": "Administrator",
  "module": "Accounts",
  "name": "Asset Depreciation Ledger",
diff --git a/erpnext/accounts/report/asset_depreciation_ledger/asset_depreciation_ledger.py b/erpnext/accounts/report/asset_depreciation_ledger/asset_depreciation_ledger.py
index f21c94b..d285f28 100644
--- a/erpnext/accounts/report/asset_depreciation_ledger/asset_depreciation_ledger.py
+++ b/erpnext/accounts/report/asset_depreciation_ledger/asset_depreciation_ledger.py
@@ -4,7 +4,7 @@
 
 import frappe
 from frappe import _
-from frappe.utils import flt
+from frappe.utils import cstr, flt
 
 
 def execute(filters=None):
@@ -32,7 +32,6 @@
 		filters_data.append(["against_voucher", "=", filters.get("asset")])
 
 	if filters.get("asset_category"):
-
 		assets = frappe.db.sql_list(
 			"""select name from tabAsset
 			where asset_category = %s and docstatus=1""",
@@ -41,12 +40,27 @@
 
 		filters_data.append(["against_voucher", "in", assets])
 
-	if filters.get("finance_book"):
-		filters_data.append(["finance_book", "in", ["", filters.get("finance_book")]])
+	company_fb = frappe.get_cached_value("Company", filters.get("company"), "default_finance_book")
+
+	if filters.get("include_default_book_assets") and company_fb:
+		if filters.get("finance_book") and cstr(filters.get("finance_book")) != cstr(company_fb):
+			frappe.throw(_("To use a different finance book, please uncheck 'Include Default FB Assets'"))
+		else:
+			finance_book = company_fb
+	elif filters.get("finance_book"):
+		finance_book = filters.get("finance_book")
+	else:
+		finance_book = None
+
+	if finance_book:
+		or_filters_data = [["finance_book", "in", ["", finance_book]], ["finance_book", "is", "not set"]]
+	else:
+		or_filters_data = [["finance_book", "in", [""]], ["finance_book", "is", "not set"]]
 
 	gl_entries = frappe.get_all(
 		"GL Entry",
 		filters=filters_data,
+		or_filters=or_filters_data,
 		fields=["against_voucher", "debit_in_account_currency as debit", "voucher_no", "posting_date"],
 		order_by="against_voucher, posting_date",
 	)
@@ -61,7 +75,9 @@
 		asset_data = assets_details.get(d.against_voucher)
 		if asset_data:
 			if not asset_data.get("accumulated_depreciation_amount"):
-				asset_data.accumulated_depreciation_amount = d.debit
+				asset_data.accumulated_depreciation_amount = d.debit + asset_data.get(
+					"opening_accumulated_depreciation"
+				)
 			else:
 				asset_data.accumulated_depreciation_amount += d.debit
 
@@ -70,7 +86,7 @@
 				{
 					"depreciation_amount": d.debit,
 					"depreciation_date": d.posting_date,
-					"amount_after_depreciation": (
+					"value_after_depreciation": (
 						flt(row.gross_purchase_amount) - flt(row.accumulated_depreciation_amount)
 					),
 					"depreciation_entry": d.voucher_no,
@@ -88,10 +104,12 @@
 	fields = [
 		"name as asset",
 		"gross_purchase_amount",
+		"opening_accumulated_depreciation",
 		"asset_category",
 		"status",
 		"depreciation_method",
 		"purchase_date",
+		"cost_center",
 	]
 
 	for d in frappe.get_all("Asset", fields=fields, filters={"name": ("in", assets)}):
@@ -122,6 +140,12 @@
 			"width": 120,
 		},
 		{
+			"label": _("Opening Accumulated Depreciation"),
+			"fieldname": "opening_accumulated_depreciation",
+			"fieldtype": "Currency",
+			"width": 140,
+		},
+		{
 			"label": _("Depreciation Amount"),
 			"fieldname": "depreciation_amount",
 			"fieldtype": "Currency",
@@ -134,8 +158,8 @@
 			"width": 210,
 		},
 		{
-			"label": _("Amount After Depreciation"),
-			"fieldname": "amount_after_depreciation",
+			"label": _("Value After Depreciation"),
+			"fieldname": "value_after_depreciation",
 			"fieldtype": "Currency",
 			"width": 180,
 		},
@@ -153,12 +177,13 @@
 			"options": "Asset Category",
 			"width": 120,
 		},
-		{"label": _("Current Status"), "fieldname": "status", "fieldtype": "Data", "width": 120},
 		{
-			"label": _("Depreciation Method"),
-			"fieldname": "depreciation_method",
-			"fieldtype": "Data",
-			"width": 130,
+			"label": _("Cost Center"),
+			"fieldtype": "Link",
+			"fieldname": "cost_center",
+			"options": "Cost Center",
+			"width": 100,
 		},
+		{"label": _("Current Status"), "fieldname": "status", "fieldtype": "Data", "width": 120},
 		{"label": _("Purchase Date"), "fieldname": "purchase_date", "fieldtype": "Date", "width": 120},
 	]
diff --git a/erpnext/accounts/report/balance_sheet/balance_sheet.js b/erpnext/accounts/report/balance_sheet/balance_sheet.js
index c2b57f7..b05e744 100644
--- a/erpnext/accounts/report/balance_sheet/balance_sheet.js
+++ b/erpnext/accounts/report/balance_sheet/balance_sheet.js
@@ -17,7 +17,7 @@
 
 frappe.query_reports["Balance Sheet"]["filters"].push({
 	fieldname: "include_default_book_entries",
-	label: __("Include Default Book Entries"),
+	label: __("Include Default FB Entries"),
 	fieldtype: "Check",
 	default: 1,
 });
diff --git a/erpnext/accounts/report/cash_flow/cash_flow.js b/erpnext/accounts/report/cash_flow/cash_flow.js
index 6b8ed27..ef17eb1 100644
--- a/erpnext/accounts/report/cash_flow/cash_flow.js
+++ b/erpnext/accounts/report/cash_flow/cash_flow.js
@@ -17,7 +17,7 @@
 frappe.query_reports["Cash Flow"]["filters"].push(
 	{
 		"fieldname": "include_default_book_entries",
-		"label": __("Include Default Book Entries"),
+		"label": __("Include Default FB Entries"),
 		"fieldtype": "Check",
 		"default": 1
 	}
diff --git a/erpnext/accounts/report/consolidated_financial_statement/consolidated_financial_statement.js b/erpnext/accounts/report/consolidated_financial_statement/consolidated_financial_statement.js
index 590408c..0e0c42d 100644
--- a/erpnext/accounts/report/consolidated_financial_statement/consolidated_financial_statement.js
+++ b/erpnext/accounts/report/consolidated_financial_statement/consolidated_financial_statement.js
@@ -104,7 +104,7 @@
 		},
 		{
 			"fieldname": "include_default_book_entries",
-			"label": __("Include Default Book Entries"),
+			"label": __("Include Default FB Entries"),
 			"fieldtype": "Check",
 			"default": 1
 		},
diff --git a/erpnext/accounts/report/financial_statements.py b/erpnext/accounts/report/financial_statements.py
index 693725d..096bb10 100644
--- a/erpnext/accounts/report/financial_statements.py
+++ b/erpnext/accounts/report/financial_statements.py
@@ -561,9 +561,7 @@
 			company_fb = frappe.get_cached_value("Company", filters.company, "default_finance_book")
 
 			if filters.finance_book and company_fb and cstr(filters.finance_book) != cstr(company_fb):
-				frappe.throw(
-					_("To use a different finance book, please uncheck 'Include Default Book Entries'")
-				)
+				frappe.throw(_("To use a different finance book, please uncheck 'Include Default FB Entries'"))
 
 			query = query.where(
 				(gl_entry.finance_book.isin([cstr(filters.finance_book), cstr(company_fb), ""]))
diff --git a/erpnext/accounts/report/general_ledger/general_ledger.js b/erpnext/accounts/report/general_ledger/general_ledger.js
index c0b4f59..4cb443c 100644
--- a/erpnext/accounts/report/general_ledger/general_ledger.js
+++ b/erpnext/accounts/report/general_ledger/general_ledger.js
@@ -175,7 +175,7 @@
 		},
 		{
 			"fieldname": "include_default_book_entries",
-			"label": __("Include Default Book Entries"),
+			"label": __("Include Default FB Entries"),
 			"fieldtype": "Check",
 			"default": 1
 		},
diff --git a/erpnext/accounts/report/general_ledger/general_ledger.py b/erpnext/accounts/report/general_ledger/general_ledger.py
index 5e484cf..94cd293 100644
--- a/erpnext/accounts/report/general_ledger/general_ledger.py
+++ b/erpnext/accounts/report/general_ledger/general_ledger.py
@@ -259,9 +259,7 @@
 			if filters.get("company_fb") and cstr(filters.get("finance_book")) != cstr(
 				filters.get("company_fb")
 			):
-				frappe.throw(
-					_("To use a different finance book, please uncheck 'Include Default Book Entries'")
-				)
+				frappe.throw(_("To use a different finance book, please uncheck 'Include Default FB Entries'"))
 			else:
 				conditions.append("(finance_book in (%(finance_book)s, '') OR finance_book IS NULL)")
 		else:
diff --git a/erpnext/accounts/report/tax_withholding_details/tax_withholding_details.py b/erpnext/accounts/report/tax_withholding_details/tax_withholding_details.py
index e842d2e..06c9e44 100644
--- a/erpnext/accounts/report/tax_withholding_details/tax_withholding_details.py
+++ b/erpnext/accounts/report/tax_withholding_details/tax_withholding_details.py
@@ -316,7 +316,7 @@
 	if not tds_accounts:
 		frappe.throw(
 			_("No {0} Accounts found for this company.").format(frappe.bold("Tax Withholding")),
-			title="Accounts Missing Error",
+			title=_("Accounts Missing Error"),
 		)
 	gle = frappe.qb.DocType("GL Entry")
 	query = (
diff --git a/erpnext/accounts/report/trial_balance/trial_balance.js b/erpnext/accounts/report/trial_balance/trial_balance.js
index edd40b6..2c4c762 100644
--- a/erpnext/accounts/report/trial_balance/trial_balance.js
+++ b/erpnext/accounts/report/trial_balance/trial_balance.js
@@ -95,7 +95,7 @@
 		},
 		{
 			"fieldname": "include_default_book_entries",
-			"label": __("Include Default Book Entries"),
+			"label": __("Include Default FB Entries"),
 			"fieldtype": "Check",
 			"default": 1
 		},
diff --git a/erpnext/accounts/report/trial_balance/trial_balance.py b/erpnext/accounts/report/trial_balance/trial_balance.py
index 2a8aa0c..8b7f0bb 100644
--- a/erpnext/accounts/report/trial_balance/trial_balance.py
+++ b/erpnext/accounts/report/trial_balance/trial_balance.py
@@ -275,9 +275,7 @@
 		company_fb = frappe.get_cached_value("Company", filters.company, "default_finance_book")
 
 		if filters.finance_book and company_fb and cstr(filters.finance_book) != cstr(company_fb):
-			frappe.throw(
-				_("To use a different finance book, please uncheck 'Include Default Book Entries'")
-			)
+			frappe.throw(_("To use a different finance book, please uncheck 'Include Default FB Entries'"))
 
 		opening_balance = opening_balance.where(
 			(closing_balance.finance_book.isin([cstr(filters.finance_book), cstr(company_fb), ""]))
diff --git a/erpnext/accounts/utils.py b/erpnext/accounts/utils.py
index e0adac4..31bc6fd 100644
--- a/erpnext/accounts/utils.py
+++ b/erpnext/accounts/utils.py
@@ -2046,3 +2046,7 @@
 	journal_entry.save()
 	journal_entry.submit()
 	return journal_entry.name
+
+
+def get_party_types_from_account_type(account_type):
+	return frappe.db.get_all("Party Type", {"account_type": account_type}, pluck="name")
diff --git a/erpnext/assets/report/fixed_asset_register/fixed_asset_register.js b/erpnext/assets/report/fixed_asset_register/fixed_asset_register.js
index 48d3331..812b7f7 100644
--- a/erpnext/assets/report/fixed_asset_register/fixed_asset_register.js
+++ b/erpnext/assets/report/fixed_asset_register/fixed_asset_register.js
@@ -52,7 +52,7 @@
 		},
 		{
 			"fieldname": "include_default_book_assets",
-			"label": __("Include Default Book Assets"),
+			"label": __("Include Default FB Assets"),
 			"fieldtype": "Check",
 			"default": 1
 		},
diff --git a/erpnext/assets/report/fixed_asset_register/fixed_asset_register.py b/erpnext/assets/report/fixed_asset_register/fixed_asset_register.py
index 383be97..45811a9 100644
--- a/erpnext/assets/report/fixed_asset_register/fixed_asset_register.py
+++ b/erpnext/assets/report/fixed_asset_register/fixed_asset_register.py
@@ -223,7 +223,7 @@
 		company_fb = frappe.get_cached_value("Company", filters.company, "default_finance_book")
 
 		if filters.finance_book and company_fb and cstr(filters.finance_book) != cstr(company_fb):
-			frappe.throw(_("To use a different finance book, please uncheck 'Include Default Book Assets'"))
+			frappe.throw(_("To use a different finance book, please uncheck 'Include Default FB Assets'"))
 
 		query = query.where(
 			(afb.finance_book.isin([cstr(filters.finance_book), cstr(company_fb), ""]))
diff --git a/erpnext/buying/doctype/request_for_quotation/request_for_quotation.json b/erpnext/buying/doctype/request_for_quotation/request_for_quotation.json
index 06dbd86..fd73f77 100644
--- a/erpnext/buying/doctype/request_for_quotation/request_for_quotation.json
+++ b/erpnext/buying/doctype/request_for_quotation/request_for_quotation.json
@@ -9,6 +9,8 @@
  "field_order": [
   "naming_series",
   "company",
+  "billing_address",
+  "billing_address_display",
   "vendor",
   "column_break1",
   "transaction_date",
@@ -292,13 +294,25 @@
    "fieldtype": "Check",
    "label": "Send Document Print",
    "print_hide": 1
+  },
+  {
+   "fieldname": "billing_address",
+   "fieldtype": "Link",
+   "label": "Company Billing Address",
+   "options": "Address"
+  },
+  {
+   "fieldname": "billing_address_display",
+   "fieldtype": "Small Text",
+   "label": "Billing Address Details",
+   "read_only": 1
   }
  ],
  "icon": "fa fa-shopping-cart",
  "index_web_pages_for_search": 1,
  "is_submittable": 1,
  "links": [],
- "modified": "2023-08-09 12:20:26.850623",
+ "modified": "2023-11-06 12:45:28.898706",
  "modified_by": "Administrator",
  "module": "Buying",
  "name": "Request for Quotation",
diff --git a/erpnext/buying/doctype/supplier_quotation/supplier_quotation.json b/erpnext/buying/doctype/supplier_quotation/supplier_quotation.json
index 7b635b3..ad1aa2b 100644
--- a/erpnext/buying/doctype/supplier_quotation/supplier_quotation.json
+++ b/erpnext/buying/doctype/supplier_quotation/supplier_quotation.json
@@ -79,6 +79,7 @@
   "pricing_rule_details",
   "pricing_rules",
   "address_and_contact_tab",
+  "supplier_address_section",
   "supplier_address",
   "address_display",
   "column_break_72",
@@ -86,6 +87,14 @@
   "contact_display",
   "contact_mobile",
   "contact_email",
+  "shipping_address_section",
+  "shipping_address",
+  "column_break_zjaq",
+  "shipping_address_display",
+  "company_billing_address_section",
+  "billing_address",
+  "column_break_gcth",
+  "billing_address_display",
   "terms_tab",
   "tc_name",
   "terms",
@@ -838,6 +847,55 @@
    "fieldname": "named_place",
    "fieldtype": "Data",
    "label": "Named Place"
+  },
+  {
+   "fieldname": "shipping_address",
+   "fieldtype": "Link",
+   "label": "Shipping Address",
+   "options": "Address",
+   "print_hide": 1
+  },
+  {
+   "fieldname": "column_break_zjaq",
+   "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "shipping_address_display",
+   "fieldtype": "Small Text",
+   "label": "Shipping Address Details",
+   "print_hide": 1,
+   "read_only": 1
+  },
+  {
+   "fieldname": "shipping_address_section",
+   "fieldtype": "Section Break",
+   "label": "Shipping Address"
+  },
+  {
+   "fieldname": "supplier_address_section",
+   "fieldtype": "Section Break",
+   "label": "Supplier Address"
+  },
+  {
+   "fieldname": "company_billing_address_section",
+   "fieldtype": "Section Break",
+   "label": "Company Billing Address"
+  },
+  {
+   "fieldname": "billing_address",
+   "fieldtype": "Link",
+   "label": "Company Billing Address",
+   "options": "Address"
+  },
+  {
+   "fieldname": "column_break_gcth",
+   "fieldtype": "Column Break"
+  },
+  {
+   "fieldname": "billing_address_display",
+   "fieldtype": "Small Text",
+   "label": "Billing Address Details",
+   "read_only": 1
   }
  ],
  "icon": "fa fa-shopping-cart",
@@ -845,7 +903,7 @@
  "index_web_pages_for_search": 1,
  "is_submittable": 1,
  "links": [],
- "modified": "2023-06-03 16:20:15.880114",
+ "modified": "2023-11-03 13:21:40.172508",
  "modified_by": "Administrator",
  "module": "Buying",
  "name": "Supplier Quotation",
diff --git a/erpnext/controllers/queries.py b/erpnext/controllers/queries.py
index 5ec2474..199732b 100644
--- a/erpnext/controllers/queries.py
+++ b/erpnext/controllers/queries.py
@@ -611,6 +611,8 @@
 	if filters.get("company"):
 		condition += "and tabAccount.company = %(company)s"
 
+	condition += f"and tabAccount.disabled = {filters.get('disabled', 0)}"
+
 	return frappe.db.sql(
 		"""select tabAccount.name from `tabAccount`
 			where (tabAccount.report_type = "Profit and Loss"
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index d394db6..0aeadce 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -338,6 +338,7 @@
 erpnext.patches.v14_0.migrate_deferred_accounts_to_item_defaults
 erpnext.patches.v14_0.update_invoicing_period_in_subscription
 execute:frappe.delete_doc("Page", "welcome-to-erpnext")
+erpnext.patches.v15_0.migrate_payment_request_status
 erpnext.patches.v15_0.delete_payment_gateway_doctypes
 erpnext.patches.v14_0.create_accounting_dimensions_in_sales_order_item
 erpnext.patches.v15_0.update_sre_from_voucher_details
diff --git a/erpnext/patches/v15_0/migrate_payment_request_status.py b/erpnext/patches/v15_0/migrate_payment_request_status.py
new file mode 100644
index 0000000..746a67b
--- /dev/null
+++ b/erpnext/patches/v15_0/migrate_payment_request_status.py
@@ -0,0 +1,15 @@
+import frappe
+
+
+def execute():
+	"""
+	Description:
+	Change Inward Payment Requests from statut 'Initiated' to correct status 'Requested'.
+	Status 'Initiated' is reserved for Outward Payment Requests and was a semantic error in previour versions.
+	"""
+
+	if frappe.reload_doc("accounts", "doctype", "Payment Request"):
+		so = frappe.qb.DocType("Payment Request")
+		frappe.qb.update(so).set(so.status, "Requested").where(
+			so.payment_request_type == "Inward"
+		).where(so.status == "Initiated").run()
diff --git a/erpnext/public/js/utils/party.js b/erpnext/public/js/utils/party.js
index 5c41aa0..cba615c 100644
--- a/erpnext/public/js/utils/party.js
+++ b/erpnext/public/js/utils/party.js
@@ -4,7 +4,7 @@
 frappe.provide("erpnext.utils");
 
 const SALES_DOCTYPES = ['Quotation', 'Sales Order', 'Delivery Note', 'Sales Invoice'];
-const PURCHASE_DOCTYPES = ['Purchase Order', 'Purchase Receipt', 'Purchase Invoice'];
+const PURCHASE_DOCTYPES = ['Supplier Quotation','Purchase Order', 'Purchase Receipt', 'Purchase Invoice'];
 
 erpnext.utils.get_party_details = function(frm, method, args, callback) {
 	if (!method) {
diff --git a/erpnext/selling/report/territory_wise_sales/territory_wise_sales.py b/erpnext/selling/report/territory_wise_sales/territory_wise_sales.py
index 5dfc1db..ecb63d8 100644
--- a/erpnext/selling/report/territory_wise_sales/territory_wise_sales.py
+++ b/erpnext/selling/report/territory_wise_sales/territory_wise_sales.py
@@ -80,7 +80,7 @@
 
 		territory_orders = []
 		if t_quotation_names and sales_orders:
-			list(filter(lambda x: x.quotation in t_quotation_names, sales_orders))
+			territory_orders = list(filter(lambda x: x.quotation in t_quotation_names, sales_orders))
 		t_order_names = []
 		if territory_orders:
 			t_order_names = [t.name for t in territory_orders]
diff --git a/erpnext/stock/doctype/item/test_item.py b/erpnext/stock/doctype/item/test_item.py
index 09d3dd1..a942f58 100644
--- a/erpnext/stock/doctype/item/test_item.py
+++ b/erpnext/stock/doctype/item/test_item.py
@@ -163,7 +163,7 @@
 			{
 				"item_code": "_Test Item With Item Tax Template",
 				"tax_category": "_Test Tax Category 2",
-				"item_tax_template": "",
+				"item_tax_template": None,
 			},
 			{
 				"item_code": "_Test Item Inherit Group Item Tax Template 1",
@@ -178,7 +178,7 @@
 			{
 				"item_code": "_Test Item Inherit Group Item Tax Template 1",
 				"tax_category": "_Test Tax Category 2",
-				"item_tax_template": "",
+				"item_tax_template": None,
 			},
 			{
 				"item_code": "_Test Item Inherit Group Item Tax Template 2",
@@ -193,7 +193,7 @@
 			{
 				"item_code": "_Test Item Inherit Group Item Tax Template 2",
 				"tax_category": "_Test Tax Category 2",
-				"item_tax_template": "",
+				"item_tax_template": None,
 			},
 			{
 				"item_code": "_Test Item Override Group Item Tax Template",
@@ -208,12 +208,12 @@
 			{
 				"item_code": "_Test Item Override Group Item Tax Template",
 				"tax_category": "_Test Tax Category 2",
-				"item_tax_template": "",
+				"item_tax_template": None,
 			},
 		]
 
 		expected_item_tax_map = {
-			"": {},
+			None: {},
 			"_Test Account Excise Duty @ 10 - _TC": {"_Test Account Excise Duty - _TC": 10},
 			"_Test Account Excise Duty @ 12 - _TC": {"_Test Account Excise Duty - _TC": 12},
 			"_Test Account Excise Duty @ 15 - _TC": {"_Test Account Excise Duty - _TC": 15},
diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
index cbc1693..d905fe5 100644
--- a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
+++ b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
@@ -7,7 +7,7 @@
 from frappe.desk.notifications import clear_doctype_notifications
 from frappe.model.mapper import get_mapped_doc
 from frappe.query_builder.functions import CombineDatetime
-from frappe.utils import cint, flt, getdate, nowdate
+from frappe.utils import cint, flt, get_datetime, getdate, nowdate
 from pypika import functions as fn
 
 import erpnext
@@ -760,8 +760,12 @@
 			update_billing_percentage(pr_doc, update_modified=update_modified)
 
 	def reserve_stock_for_sales_order(self):
-		if self.is_return or not cint(
-			frappe.db.get_single_value("Stock Settings", "auto_reserve_stock_for_sales_order_on_purchase")
+		if (
+			self.is_return
+			or not frappe.db.get_single_value("Stock Settings", "enable_stock_reservation")
+			or not frappe.db.get_single_value(
+				"Stock Settings", "auto_reserve_stock_for_sales_order_on_purchase"
+			)
 		):
 			return
 
@@ -782,6 +786,11 @@
 				so_items_details_map.setdefault(item.sales_order, []).append(item_details)
 
 		if so_items_details_map:
+			if get_datetime("{} {}".format(self.posting_date, self.posting_time)) > get_datetime():
+				return frappe.msgprint(
+					_("Cannot create Stock Reservation Entries for future dated Purchase Receipts.")
+				)
+
 			for so, items_details in so_items_details_map.items():
 				so_doc = frappe.get_doc("Sales Order", so)
 				so_doc.create_stock_reservation_entries(
diff --git a/erpnext/stock/doctype/stock_ledger_entry/stock_ledger_entry.json b/erpnext/stock/doctype/stock_ledger_entry/stock_ledger_entry.json
index 569f58a..dcbd9b2 100644
--- a/erpnext/stock/doctype/stock_ledger_entry/stock_ledger_entry.json
+++ b/erpnext/stock/doctype/stock_ledger_entry/stock_ledger_entry.json
@@ -11,6 +11,7 @@
   "warehouse",
   "posting_date",
   "posting_time",
+  "is_adjustment_entry",
   "column_break_6",
   "voucher_type",
   "voucher_no",
@@ -333,6 +334,12 @@
    "fieldname": "has_serial_no",
    "fieldtype": "Check",
    "label": "Has Serial No"
+  },
+  {
+   "default": "0",
+   "fieldname": "is_adjustment_entry",
+   "fieldtype": "Check",
+   "label": "Is Adjustment Entry"
   }
  ],
  "hide_toolbar": 1,
@@ -341,7 +348,7 @@
  "in_create": 1,
  "index_web_pages_for_search": 1,
  "links": [],
- "modified": "2023-04-03 16:33:16.270722",
+ "modified": "2023-10-23 18:07:42.063615",
  "modified_by": "Administrator",
  "module": "Stock",
  "name": "Stock Ledger Entry",
diff --git a/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py b/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py
index 323ad4f..1bf143b 100644
--- a/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py
+++ b/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py
@@ -442,6 +442,11 @@
 
 		sl_entries = []
 		for row in self.items:
+
+			if not row.qty and not row.valuation_rate and not row.current_qty:
+				self.make_adjustment_entry(row, sl_entries)
+				continue
+
 			item = frappe.get_cached_value(
 				"Item", row.item_code, ["has_serial_no", "has_batch_no"], as_dict=1
 			)
@@ -492,6 +497,21 @@
 			)
 			self.make_sl_entries(sl_entries, allow_negative_stock=allow_negative_stock)
 
+	def make_adjustment_entry(self, row, sl_entries):
+		from erpnext.stock.stock_ledger import get_stock_value_difference
+
+		difference_amount = get_stock_value_difference(
+			row.item_code, row.warehouse, self.posting_date, self.posting_time
+		)
+
+		if not difference_amount:
+			return
+
+		args = self.get_sle_for_items(row)
+		args.update({"stock_value_difference": -1 * difference_amount, "is_adjustment_entry": 1})
+
+		sl_entries.append(args)
+
 	def get_sle_for_serialized_items(self, row, sl_entries):
 		if row.current_serial_and_batch_bundle:
 			args = self.get_sle_for_items(row)
diff --git a/erpnext/stock/get_item_details.py b/erpnext/stock/get_item_details.py
index e29fc88..c766cab 100644
--- a/erpnext/stock/get_item_details.py
+++ b/erpnext/stock/get_item_details.py
@@ -610,7 +610,6 @@
 
 	# all templates have validity and no template is valid
 	if not taxes_with_validity and (not taxes_with_no_validity):
-		out["item_tax_template"] = ""
 		return None
 
 	# do not change if already a valid template
diff --git a/erpnext/stock/stock_ledger.py b/erpnext/stock/stock_ledger.py
index e9381d4..6390894 100644
--- a/erpnext/stock/stock_ledger.py
+++ b/erpnext/stock/stock_ledger.py
@@ -759,9 +759,11 @@
 		sle.valuation_rate = self.wh_data.valuation_rate
 		sle.stock_value = self.wh_data.stock_value
 		sle.stock_queue = json.dumps(self.wh_data.stock_queue)
-		sle.stock_value_difference = stock_value_difference
-		sle.doctype = "Stock Ledger Entry"
 
+		if not sle.is_adjustment_entry or not self.args.get("sle_id"):
+			sle.stock_value_difference = stock_value_difference
+
+		sle.doctype = "Stock Ledger Entry"
 		frappe.get_doc(sle).db_update()
 
 		if not self.args.get("sle_id"):
@@ -1939,3 +1941,27 @@
 
 	if data.is_internal_supplier and data.represents_company == data.company:
 		return True
+
+
+def get_stock_value_difference(item_code, warehouse, posting_date, posting_time, voucher_no=None):
+	table = frappe.qb.DocType("Stock Ledger Entry")
+
+	query = (
+		frappe.qb.from_(table)
+		.select(Sum(table.stock_value_difference).as_("value"))
+		.where(
+			(table.is_cancelled == 0)
+			& (table.item_code == item_code)
+			& (table.warehouse == warehouse)
+			& (
+				(table.posting_date < posting_date)
+				| ((table.posting_date == posting_date) & (table.posting_time <= posting_time))
+			)
+		)
+	)
+
+	if voucher_no:
+		query = query.where(table.voucher_no != voucher_no)
+
+	difference_amount = query.run()
+	return flt(difference_amount[0][0]) if difference_amount else 0
diff --git a/erpnext/translations/af.csv b/erpnext/translations/af.csv
index f457314..ee77d98 100644
--- a/erpnext/translations/af.csv
+++ b/erpnext/translations/af.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",In die geval van &#39;n multi-vlak program sal kliënte outomaties toegewys word aan die betrokke vlak volgens hul besteding,
 Inactive,onaktiewe,
 Incentives,aansporings,
-Include Default Book Entries,Sluit standaardboekinskrywings in,
+Include Default FB Entries,Sluit standaardboekinskrywings in,
 Include Exploded Items,Sluit ontplofte items in,
 Include POS Transactions,Sluit POS-transaksies in,
 Include UOM,Sluit UOM in,
diff --git a/erpnext/translations/am.csv b/erpnext/translations/am.csv
index 0453d5d..a5f09a7 100644
--- a/erpnext/translations/am.csv
+++ b/erpnext/translations/am.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","በባለብዙ ደረጃ መርሃግብር ሁኔታ, ደንበኞች በተጠቀሱት ወጪ መሰረት ለተሰጣቸው ደረጃ ደረጃ በራስ መተላለፍ ይኖራቸዋል",
 Inactive,ገባሪ አይደለም,
 Incentives,ማበረታቻዎች,
-Include Default Book Entries,ነባሪ የመጽሐፍ ግቤቶችን አካትት።,
+Include Default FB Entries,ነባሪ የመጽሐፍ ግቤቶችን አካትት።,
 Include Exploded Items,የተበተኑ ንጥሎችን አካት,
 Include POS Transactions,የ POS ሽግግሮችን አክል,
 Include UOM,UOM አካት,
diff --git a/erpnext/translations/ar.csv b/erpnext/translations/ar.csv
index 67b409e..195b9c7 100644
--- a/erpnext/translations/ar.csv
+++ b/erpnext/translations/ar.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",في حالة البرنامج متعدد المستويات ، سيتم تعيين العملاء تلقائيًا إلى الطبقة المعنية وفقًا للإنفاق,
 Inactive,غير نشط,
 Incentives,الحوافز,
-Include Default Book Entries,تضمين إدخالات دفتر افتراضي,
+Include Default FB Entries,تضمين إدخالات دفتر افتراضي,
 Include Exploded Items,تشمل البنود المستبعدة,
 Include POS Transactions,تشمل معاملات نقطه البيع,
 Include UOM,تضمين UOM,
diff --git a/erpnext/translations/bg.csv b/erpnext/translations/bg.csv
index 787f81e..c2bacf4 100644
--- a/erpnext/translations/bg.csv
+++ b/erpnext/translations/bg.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","В случай на многостепенна програма, клиентите ще бъдат автоматично зададени на съответния подреждан по тяхна сметка",
 Inactive,неактивен,
 Incentives,Стимули,
-Include Default Book Entries,Включете записи по подразбиране на книги,
+Include Default FB Entries,Включете записи по подразбиране на книги,
 Include Exploded Items,Включете експлодираните елементи,
 Include POS Transactions,Включете POS транзакции,
 Include UOM,Включете UOM,
diff --git a/erpnext/translations/bn.csv b/erpnext/translations/bn.csv
index 69fd08c..d7366e1 100644
--- a/erpnext/translations/bn.csv
+++ b/erpnext/translations/bn.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","মাল্টি-টিয়ার প্রোগ্রামের ক্ষেত্রে, গ্রাহকরা তাদের ব্যয় অনুযায়ী সংশ্লিষ্ট টায়ারে স্বয়ংক্রিয়ভাবে নিয়োগ পাবেন",
 Inactive,নিষ্ক্রিয়,
 Incentives,ইনসেনটিভ,
-Include Default Book Entries,ডিফল্ট বুক এন্ট্রি অন্তর্ভুক্ত করুন,
+Include Default FB Entries,ডিফল্ট বুক এন্ট্রি অন্তর্ভুক্ত করুন,
 Include Exploded Items,বিস্ফোরিত আইটেম অন্তর্ভুক্ত করুন,
 Include POS Transactions,পিওএস লেনদেন অন্তর্ভুক্ত করুন,
 Include UOM,UOM অন্তর্ভুক্ত করুন,
diff --git a/erpnext/translations/bs.csv b/erpnext/translations/bs.csv
index ef680a3..df4083e 100644
--- a/erpnext/translations/bs.csv
+++ b/erpnext/translations/bs.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","U slučaju višeslojnog programa, Korisnici će automatski biti dodeljeni za dotičnu grupu po njihovom trošenju",
 Inactive,Neaktivan,
 Incentives,Poticaji,
-Include Default Book Entries,Uključite zadane unose knjiga,
+Include Default FB Entries,Uključite zadane unose knjiga,
 Include Exploded Items,Uključite eksplodirane predmete,
 Include POS Transactions,Uključite POS transakcije,
 Include UOM,Uključite UOM,
diff --git a/erpnext/translations/ca.csv b/erpnext/translations/ca.csv
index fa545a4..b3cf2c5 100644
--- a/erpnext/translations/ca.csv
+++ b/erpnext/translations/ca.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","En el cas del programa de diversos nivells, els clients seran assignats automàticament al nivell corresponent segons el seu gastat",
 Inactive,Inactiu,
 Incentives,Incentius,
-Include Default Book Entries,Inclou les entrades de llibres predeterminats,
+Include Default FB Entries,Inclou les entrades de llibres predeterminats,
 Include Exploded Items,Inclou articles explotats,
 Include POS Transactions,Inclou transaccions de POS,
 Include UOM,Inclou UOM,
diff --git a/erpnext/translations/cs.csv b/erpnext/translations/cs.csv
index 7fb1679..b6deaa4 100644
--- a/erpnext/translations/cs.csv
+++ b/erpnext/translations/cs.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",V případě víceúrovňového programu budou zákazníci automaticky přiděleni danému vrstvě podle svých vynaložených nákladů,
 Inactive,Neaktivní,
 Incentives,Pobídky,
-Include Default Book Entries,Zahrnout výchozí položky knihy,
+Include Default FB Entries,Zahrnout výchozí položky knihy,
 Include Exploded Items,Zahrnout výbušné položky,
 Include POS Transactions,Zahrnout POS transakce,
 Include UOM,Zahrnout UOM,
diff --git a/erpnext/translations/da.csv b/erpnext/translations/da.csv
index 4eb3960..4bcc307 100644
--- a/erpnext/translations/da.csv
+++ b/erpnext/translations/da.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","I tilfælde af multi-tier program, vil kunder automatisk blive tildelt den pågældende tier som per deres brugt",
 Inactive,inaktive,
 Incentives,Incitamenter,
-Include Default Book Entries,Inkluder standardbogsindlæg,
+Include Default FB Entries,Inkluder standardbogsindlæg,
 Include Exploded Items,Inkluder eksploderede elementer,
 Include POS Transactions,Inkluder POS-transaktioner,
 Include UOM,Inkluder UOM,
diff --git a/erpnext/translations/de.csv b/erpnext/translations/de.csv
index c856fef..73755be 100644
--- a/erpnext/translations/de.csv
+++ b/erpnext/translations/de.csv
@@ -1161,7 +1161,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",Im Falle eines mehrstufigen Programms werden Kunden automatisch der betroffenen Ebene entsprechend ihrer Ausgaben zugewiesen,
 Inactive,Inaktiv,
 Incentives,Anreize,
-Include Default Book Entries,Standardbucheinträge einschließen,
+Include Default FB Entries,Standardbucheinträge einschließen,
 Include Exploded Items,Unterartikel einbeziehen,
 Include POS Transactions,POS-Transaktionen einschließen,
 Include UOM,Fügen Sie UOM hinzu,
@@ -5074,7 +5074,7 @@
 PUR-ORD-.YYYY.-,PUR-ORD-.YYYY.-,
 Get Items from Open Material Requests,Hole Artikel von offenen Material  Anfragen,
 Fetch items based on Default Supplier.,Abrufen von Elementen basierend auf dem Standardlieferanten.,
-Required By,Benötigt von,
+Required By,Benötigt bis,
 Order Confirmation No,Auftragsbestätigung Nr,
 Order Confirmation Date,Auftragsbestätigungsdatum,
 Customer Mobile No,Mobilnummer des Kunden,
diff --git a/erpnext/translations/el.csv b/erpnext/translations/el.csv
index 21fb435..e67eaff 100644
--- a/erpnext/translations/el.csv
+++ b/erpnext/translations/el.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Στην περίπτωση προγράμματος πολλαπλών βαθμίδων, οι Πελάτες θα αντιστοιχούν αυτόματα στη σχετική βαθμίδα σύμφωνα με το ποσό που δαπανώνται",
 Inactive,Αδρανής,
 Incentives,Κίνητρα,
-Include Default Book Entries,Συμπεριλάβετε τις προεπιλεγμένες καταχωρίσεις βιβλίων,
+Include Default FB Entries,Συμπεριλάβετε τις προεπιλεγμένες καταχωρίσεις βιβλίων,
 Include Exploded Items,Συμπεριλάβετε εκραγμένα στοιχεία,
 Include POS Transactions,Συμπεριλάβετε τις συναλλαγές POS,
 Include UOM,Συμπεριλάβετε UOM,
diff --git a/erpnext/translations/es.csv b/erpnext/translations/es.csv
index 2abe418..0c90694 100644
--- a/erpnext/translations/es.csv
+++ b/erpnext/translations/es.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","En el caso del programa de varios niveles, los Clientes se asignarán automáticamente al nivel correspondiente según su gasto",
 Inactive,Inactivo,
 Incentives,Incentivos,
-Include Default Book Entries,Incluir entradas de libro predeterminadas,
+Include Default FB Entries,Incluir entradas de libro predeterminadas,
 Include Exploded Items,Incluir Elementos Estallados,
 Include POS Transactions,Incluir transacciones POS,
 Include UOM,Incluir UOM,
diff --git a/erpnext/translations/et.csv b/erpnext/translations/et.csv
index a4a8736..69a89d9 100644
--- a/erpnext/translations/et.csv
+++ b/erpnext/translations/et.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",Mitmekordsete programmide korral määratakse Kliendid automaatselt asjaomasele tasemele vastavalt nende kasutatud kuludele,
 Inactive,Mitteaktiivne,
 Incentives,Soodustused,
-Include Default Book Entries,Lisage vaikeraamatu kanded,
+Include Default FB Entries,Lisage vaikeraamatu kanded,
 Include Exploded Items,Kaasa lõhutud esemed,
 Include POS Transactions,Kaasa POS-tehingud,
 Include UOM,Lisa UOM,
diff --git a/erpnext/translations/fa.csv b/erpnext/translations/fa.csv
index bd40c8b..cddabfb 100644
--- a/erpnext/translations/fa.csv
+++ b/erpnext/translations/fa.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",در مورد برنامه چند لایه، مشتریان به صورت خودکار به سطر مربوطه اختصاص داده می شوند، همانطور که در هزینه های خود هستند,
 Inactive,غیر فعال,
 Incentives,انگیزه,
-Include Default Book Entries,شامل ورودی های پیش فرض کتاب,
+Include Default FB Entries,شامل ورودی های پیش فرض کتاب,
 Include Exploded Items,شامل موارد انفجار,
 Include POS Transactions,شامل معاملات POS,
 Include UOM,شامل UOM,
diff --git a/erpnext/translations/fi.csv b/erpnext/translations/fi.csv
index 33cf157..eae6053 100644
--- a/erpnext/translations/fi.csv
+++ b/erpnext/translations/fi.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",Monitasoisen ohjelman tapauksessa asiakkaat määräytyvät automaattisesti kyseiselle tasolle niiden kulutuksen mukaan,
 Inactive,Epäaktiivinen,
 Incentives,kannustimet/bonukset,
-Include Default Book Entries,Sisällytä oletustiedot,
+Include Default FB Entries,Sisällytä oletustiedot,
 Include Exploded Items,Sisällytä räjähtämättömiä kohteita,
 Include POS Transactions,Sisällytä POS-tapahtumia,
 Include UOM,Sisällytä UOM,
diff --git a/erpnext/translations/fr.csv b/erpnext/translations/fr.csv
index d15af74..5c34759 100644
--- a/erpnext/translations/fr.csv
+++ b/erpnext/translations/fr.csv
@@ -1058,7 +1058,7 @@
 In Value,En valeur,
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Dans le cas d'un programme à plusieurs échelons, les clients seront automatiquement affectés au niveau approprié en fonction de leurs dépenses",
 Incentives,Incitations,
-Include Default Book Entries,Inclure les entrées de livre par défaut,
+Include Default FB Entries,Inclure les entrées de livre par défaut,
 Include Exploded Items,Inclure les articles éclatés,
 Include POS Transactions,Inclure les transactions du point de vente,
 Include UOM,Inclure UdM,
diff --git a/erpnext/translations/gu.csv b/erpnext/translations/gu.csv
index 06a3cc6..604ec41 100644
--- a/erpnext/translations/gu.csv
+++ b/erpnext/translations/gu.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","મલ્ટિ-ટાયર પ્રોગ્રામના કિસ્સામાં, ગ્રાહક તેમના ખર્ચ મુજબ સંબંધિત ટાયરમાં ઓટો હશે",
 Inactive,નિષ્ક્રિય,
 Incentives,ઇનસેન્ટીવ્સ,
-Include Default Book Entries,ડિફaultલ્ટ બુક એન્ટ્રીઓ શામેલ કરો,
+Include Default FB Entries,ડિફaultલ્ટ બુક એન્ટ્રીઓ શામેલ કરો,
 Include Exploded Items,વિસ્ફોટ થયેલ આઇટમ્સ શામેલ કરો,
 Include POS Transactions,POS વ્યવહારો શામેલ કરો,
 Include UOM,યુએમએમ શામેલ કરો,
diff --git a/erpnext/translations/he.csv b/erpnext/translations/he.csv
index d5fcab6..5407578 100644
--- a/erpnext/translations/he.csv
+++ b/erpnext/translations/he.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","במקרה של תוכנית רב-שכבתית, הלקוחות יוקצו אוטומטית לשכבה הנוגעת בדבר שהוצאו",
 Inactive,לֹא פָּעִיל,
 Incentives,תמריצים,
-Include Default Book Entries,כלול רשומות ברירת מחדל לספרים,
+Include Default FB Entries,כלול רשומות ברירת מחדל לספרים,
 Include Exploded Items,כלול פריטים מפוצצים,
 Include POS Transactions,כלול עסקאות קופה,
 Include UOM,כלול UOM,
diff --git a/erpnext/translations/hi.csv b/erpnext/translations/hi.csv
index a5caa66..00532df 100644
--- a/erpnext/translations/hi.csv
+++ b/erpnext/translations/hi.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","मल्टी-स्तरीय कार्यक्रम के मामले में, ग्राहक अपने खर्च के अनुसार संबंधित स्तर को स्वचालित रूप से सौंपा जाएगा",
 Inactive,निष्क्रिय,
 Incentives,प्रोत्साहन,
-Include Default Book Entries,डिफ़ॉल्ट बुक प्रविष्टियाँ शामिल करें,
+Include Default FB Entries,डिफ़ॉल्ट बुक प्रविष्टियाँ शामिल करें,
 Include Exploded Items,विस्फोट किए गए आइटम शामिल करें,
 Include POS Transactions,पीओएस लेनदेन शामिल करें,
 Include UOM,यूओएम शामिल करें,
diff --git a/erpnext/translations/hr.csv b/erpnext/translations/hr.csv
index 2834602..3cc9ef3 100644
--- a/erpnext/translations/hr.csv
+++ b/erpnext/translations/hr.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","U slučaju višerazinskog programa, Kupci će biti automatski dodijeljeni odgovarajućem stupcu po njihovu potrošenom",
 Inactive,neaktivan,
 Incentives,poticaji,
-Include Default Book Entries,Uključite zadane unose u knjige,
+Include Default FB Entries,Uključite zadane unose u knjige,
 Include Exploded Items,Uključi eksplodirane predmete,
 Include POS Transactions,Uključi POS transakcije,
 Include UOM,Uključi UOM,
diff --git a/erpnext/translations/hu.csv b/erpnext/translations/hu.csv
index a262c8a..42175bb 100644
--- a/erpnext/translations/hu.csv
+++ b/erpnext/translations/hu.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Többszintű program esetében az ügyfeleket automatikusan az adott kategóriába sorolják, az általuk elköltöttek szerint",
 Inactive,Inaktív,
 Incentives,Ösztönzők,
-Include Default Book Entries,Tartalmazza az alapértelmezett könyvbejegyzéseket,
+Include Default FB Entries,Tartalmazza az alapértelmezett könyvbejegyzéseket,
 Include Exploded Items,Tartalmazza a robbantott elemeket,
 Include POS Transactions,Tartalmazza a POS kassza tranzakciókat,
 Include UOM,Ide tartozik az ANYJ,
diff --git a/erpnext/translations/id.csv b/erpnext/translations/id.csv
index c4e50fd..d69eef3 100644
--- a/erpnext/translations/id.csv
+++ b/erpnext/translations/id.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Dalam kasus program multi-tier, Pelanggan akan ditugaskan secara otomatis ke tingkat yang bersangkutan sesuai yang mereka habiskan",
 Inactive,Tidak aktif,
 Incentives,Insentif,
-Include Default Book Entries,Sertakan Entri Buku Default,
+Include Default FB Entries,Sertakan Entri Buku Default,
 Include Exploded Items,Sertakan barang yang meledak,
 Include POS Transactions,Sertakan Transaksi POS,
 Include UOM,Termasuk UOM,
diff --git a/erpnext/translations/is.csv b/erpnext/translations/is.csv
index 50c06ec..1acefbb 100644
--- a/erpnext/translations/is.csv
+++ b/erpnext/translations/is.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Þegar um er að ræða fjölþættaráætlun, verða viðskiptavinir sjálfkrafa tengdir viðkomandi flokka eftir því sem þeir eru í",
 Inactive,Óvirkt,
 Incentives,Incentives,
-Include Default Book Entries,Hafa sjálfgefnar bókarfærslur með,
+Include Default FB Entries,Hafa sjálfgefnar bókarfærslur með,
 Include Exploded Items,Inniheldur sprauta hluti,
 Include POS Transactions,Innifalið POS-viðskipti,
 Include UOM,Innifalið UOM,
diff --git a/erpnext/translations/it.csv b/erpnext/translations/it.csv
index 3760895..e6e6425 100644
--- a/erpnext/translations/it.csv
+++ b/erpnext/translations/it.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Nel caso di un programma multilivello, i clienti verranno assegnati automaticamente al livello interessato come da loro speso",
 Inactive,Inattivo,
 Incentives,Incentivi,
-Include Default Book Entries,Includi voci di libro predefinite,
+Include Default FB Entries,Includi voci di libro predefinite,
 Include Exploded Items,Includi elementi esplosi,
 Include POS Transactions,Includi transazioni POS,
 Include UOM,Includi UOM,
diff --git a/erpnext/translations/ja.csv b/erpnext/translations/ja.csv
index 888ec80..dd5820a 100644
--- a/erpnext/translations/ja.csv
+++ b/erpnext/translations/ja.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",マルチティアプログラムの場合、顧客は、消費されるごとに自動的に関係する層に割り当てられます,
 Inactive,非アクティブ,
 Incentives,インセンティブ,
-Include Default Book Entries,デフォルトのブックエントリを含める,
+Include Default FB Entries,デフォルトのブックエントリを含める,
 Include Exploded Items,分解された項目を含める,
 Include POS Transactions,POSトランザクションを含める,
 Include UOM,UOMを含める,
diff --git a/erpnext/translations/km.csv b/erpnext/translations/km.csv
index d2003c0..2740d7f 100644
--- a/erpnext/translations/km.csv
+++ b/erpnext/translations/km.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",ក្នុងករណីមានកម្មវិធីពហុលំដាប់អតិថិជននឹងត្រូវបានចាត់តាំងដោយខ្លួនឯងទៅថ្នាក់ដែលពាក់ព័ន្ធដោយចំណាយរបស់ពួកគេ,
 Inactive,អសកម្ម,
 Incentives,ការលើកទឹកចិត្ត,
-Include Default Book Entries,រួមបញ្ចូលធាតុសៀវភៅលំនាំដើម។,
+Include Default FB Entries,រួមបញ្ចូលធាតុសៀវភៅលំនាំដើម។,
 Include Exploded Items,រួមបញ្ចូលធាតុផ្ទុះ,
 Include POS Transactions,បញ្ចូលប្រតិបត្តិការ POS,
 Include UOM,រួមបញ្ចូល UOM,
diff --git a/erpnext/translations/kn.csv b/erpnext/translations/kn.csv
index 7206671..8b27168 100644
--- a/erpnext/translations/kn.csv
+++ b/erpnext/translations/kn.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","ಮಲ್ಟಿ-ಟೈರ್ ಪ್ರೋಗ್ರಾಂನ ಸಂದರ್ಭದಲ್ಲಿ, ಗ್ರಾಹಕರು ತಮ್ಮ ಖರ್ಚುಗೆ ಅನುಗುಣವಾಗಿ ಆಯಾ ಶ್ರೇಣಿಗೆ ಸ್ವಯಂ ನಿಯೋಜಿಸಲಾಗುವುದು",
 Inactive,ನಿಷ್ಕ್ರಿಯವಾಗಿದೆ,
 Incentives,ಪ್ರೋತ್ಸಾಹ,
-Include Default Book Entries,ಡೀಫಾಲ್ಟ್ ಪುಸ್ತಕ ನಮೂದುಗಳನ್ನು ಸೇರಿಸಿ,
+Include Default FB Entries,ಡೀಫಾಲ್ಟ್ ಪುಸ್ತಕ ನಮೂದುಗಳನ್ನು ಸೇರಿಸಿ,
 Include Exploded Items,ಸ್ಫೋಟಗೊಂಡ ವಸ್ತುಗಳನ್ನು ಸೇರಿಸಿ,
 Include POS Transactions,ಪಿಒಎಸ್ ಟ್ರಾನ್ಸಾಕ್ಷನ್ಸ್ ಸೇರಿಸಿ,
 Include UOM,UOM ಸೇರಿಸಿ,
diff --git a/erpnext/translations/ko.csv b/erpnext/translations/ko.csv
index 9911925..edd3f27 100644
--- a/erpnext/translations/ko.csv
+++ b/erpnext/translations/ko.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",다중 계층 프로그램의 경우 고객은 지출 한대로 해당 계층에 자동으로 할당됩니다.,
 Inactive,비활성,
 Incentives,장려책,
-Include Default Book Entries,기본 도서 항목 포함,
+Include Default FB Entries,기본 도서 항목 포함,
 Include Exploded Items,분해 된 항목 포함,
 Include POS Transactions,POS 트랜잭션 포함,
 Include UOM,UOM 포함,
diff --git a/erpnext/translations/ku.csv b/erpnext/translations/ku.csv
index 8fec059..e18ce45 100644
--- a/erpnext/translations/ku.csv
+++ b/erpnext/translations/ku.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Di rewşê de bernameya pir-tier, Ewrûpa dê ji hêla xercê xwe ve girêdayî xerîb be",
 Inactive,Bêkar,
 Incentives,aborîve,
-Include Default Book Entries,Navnîşanên Pirtûka Pêvek Bawer bikin,
+Include Default FB Entries,Navnîşanên Pirtûka Pêvek Bawer bikin,
 Include Exploded Items,Included Dead Items,
 Include POS Transactions,Têkiliyên POSê de,
 Include UOM,UOM,
diff --git a/erpnext/translations/lo.csv b/erpnext/translations/lo.csv
index 0831788..46acd22 100644
--- a/erpnext/translations/lo.csv
+++ b/erpnext/translations/lo.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","ໃນກໍລະນີຂອງໂຄງການຫຼາຍຂັ້ນ, ລູກຄ້າຈະໄດ້ຮັບການມອບຫມາຍໂດຍອັດຕະໂນມັດໃຫ້ກັບຂັ້ນຕອນທີ່ກ່ຽວຂ້ອງຕາມການໃຊ້ຈ່າຍຂອງເຂົາເຈົ້າ",
 Inactive,Inactive,
 Incentives,ສິ່ງຈູງໃຈ,
-Include Default Book Entries,ລວມທັງການອອກສຽງປື້ມແບບເລີ່ມຕົ້ນ,
+Include Default FB Entries,ລວມທັງການອອກສຽງປື້ມແບບເລີ່ມຕົ້ນ,
 Include Exploded Items,ລວມເອົາສິ່ງທີ່ເກີດຂື້ນ,
 Include POS Transactions,ລວມທຸລະກໍາ POS,
 Include UOM,ລວມ UOM,
diff --git a/erpnext/translations/lt.csv b/erpnext/translations/lt.csv
index 8215275..292c9d8 100644
--- a/erpnext/translations/lt.csv
+++ b/erpnext/translations/lt.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Kalbant apie daugiapakopę programą, klientai bus automatiškai priskirti atitinkamam lygmeniui, atsižvelgiant į jų išleidimą",
 Inactive,Neaktyvus,
 Incentives,Paskatos,
-Include Default Book Entries,Įtraukite numatytuosius knygų įrašus,
+Include Default FB Entries,Įtraukite numatytuosius knygų įrašus,
 Include Exploded Items,Įtraukti sprogus elementus,
 Include POS Transactions,Įtraukti POS operacijas,
 Include UOM,Įtraukti UOM,
diff --git a/erpnext/translations/lv.csv b/erpnext/translations/lv.csv
index 8c4526c..52641b2 100644
--- a/erpnext/translations/lv.csv
+++ b/erpnext/translations/lv.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Daudzpakāpju programmas gadījumā Klienti tiks automātiski piešķirti attiecīgajam līmenim, salīdzinot ar viņu iztērēto",
 Inactive,Neaktīvs,
 Incentives,Stimuli,
-Include Default Book Entries,Iekļaujiet noklusējuma grāmatas ierakstus,
+Include Default FB Entries,Iekļaujiet noklusējuma grāmatas ierakstus,
 Include Exploded Items,Iekļaut izpūstas preces,
 Include POS Transactions,Iekļaut POS darījumus,
 Include UOM,Iekļaut UOM,
diff --git a/erpnext/translations/mk.csv b/erpnext/translations/mk.csv
index a622524..0a29019 100644
--- a/erpnext/translations/mk.csv
+++ b/erpnext/translations/mk.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Во случај на повеќеслојна програма, корисниците ќе бидат автоматски доделени на засегнатите нивоа, како на нивните потрошени",
 Inactive,Неактивен,
 Incentives,Стимулации,
-Include Default Book Entries,Вклучете стандардни записи за книги,
+Include Default FB Entries,Вклучете стандардни записи за книги,
 Include Exploded Items,Вклучи експлодирани елементи,
 Include POS Transactions,Вклучете POS-трансакции,
 Include UOM,Вклучете UOM,
diff --git a/erpnext/translations/ml.csv b/erpnext/translations/ml.csv
index 777d5c6..04af8ab 100644
--- a/erpnext/translations/ml.csv
+++ b/erpnext/translations/ml.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","മൾട്ടി-ടയർ പരിപാടിയുടെ കാര്യത്തിൽ, കസ്റ്റമർമാർ ചെലവഴിച്ച തുക പ്രകാരം ബന്ധപ്പെട്ട ടീമിൽ ഓട്ടോ നിർണ്ണയിക്കും",
 Inactive,നിഷ്ക്രിയം,
 Incentives,ഇൻസെന്റീവ്സ്,
-Include Default Book Entries,സ്ഥിരസ്ഥിതി പുസ്തക എൻ‌ട്രികൾ‌ ഉൾ‌പ്പെടുത്തുക,
+Include Default FB Entries,സ്ഥിരസ്ഥിതി പുസ്തക എൻ‌ട്രികൾ‌ ഉൾ‌പ്പെടുത്തുക,
 Include Exploded Items,എക്സ്പ്ലോഡഡ് ഇനങ്ങൾ ഉൾപ്പെടുത്തുക,
 Include POS Transactions,POS ഇടപാടുകൾ ഉൾപ്പെടുത്തുക,
 Include UOM,UOM ഉൾപ്പെടുത്തുക,
diff --git a/erpnext/translations/mr.csv b/erpnext/translations/mr.csv
index 624f1ab..785ab65 100644
--- a/erpnext/translations/mr.csv
+++ b/erpnext/translations/mr.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",बहु-स्तरीय कार्यक्रमाच्या बाबतीत ग्राहक त्यांच्या खर्चानुसार संबंधित टायरला स्वयंचलितरित्या नियुक्त केले जातील,
 Inactive,निष्क्रिय,
 Incentives,प्रोत्साहन,
-Include Default Book Entries,डीफॉल्ट पुस्तक नोंदी समाविष्ट करा,
+Include Default FB Entries,डीफॉल्ट पुस्तक नोंदी समाविष्ट करा,
 Include Exploded Items,विस्फोट केलेल्या वस्तू समाविष्ट करा,
 Include POS Transactions,पीओएस व्यवहार समाविष्ट करा,
 Include UOM,यूओएम समाविष्ट करा,
diff --git a/erpnext/translations/ms.csv b/erpnext/translations/ms.csv
index 75e150a..db20d3c 100644
--- a/erpnext/translations/ms.csv
+++ b/erpnext/translations/ms.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Dalam hal program multi-tier, Pelanggan akan ditugaskan secara automatik ke peringkat yang bersangkutan seperti yang dibelanjakannya",
 Inactive,Tidak aktif,
 Incentives,Insentif,
-Include Default Book Entries,Sertakan Penyertaan Buku Lalai,
+Include Default FB Entries,Sertakan Penyertaan Buku Lalai,
 Include Exploded Items,Termasuk Item Meletup,
 Include POS Transactions,Termasuk Transaksi POS,
 Include UOM,Termasuk UOM,
diff --git a/erpnext/translations/my.csv b/erpnext/translations/my.csv
index 36cd874..f4b8676 100644
--- a/erpnext/translations/my.csv
+++ b/erpnext/translations/my.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Multi-tier အစီအစဉ်၏အမှု၌, Customer များအလိုအလျောက်သူတို့ရဲ့သုံးစွဲနှုန်းအတိုင်းစိုးရိမ်ပူပန်ဆင့်မှတာဝန်ပေးအပ်ပါလိမ့်မည်",
 Inactive,မလှုပ်ရှားတတ်သော,
 Incentives,မက်လုံးတွေပေးပြီး,
-Include Default Book Entries,ပုံမှန်စာအုပ် Entries Include,
+Include Default FB Entries,ပုံမှန်စာအုပ် Entries Include,
 Include Exploded Items,ပေါက်ကွဲပစ္စည်းများ Include,
 Include POS Transactions,POS အရောင်းအဝယ် Include,
 Include UOM,UOM Include,
diff --git a/erpnext/translations/nl.csv b/erpnext/translations/nl.csv
index 5859833..1778c80 100644
--- a/erpnext/translations/nl.csv
+++ b/erpnext/translations/nl.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",In het geval van een meerlagig programma worden klanten automatisch toegewezen aan de betreffende laag op basis van hun bestede tijd,
 Inactive,Inactief,
 Incentives,Incentives,
-Include Default Book Entries,Standaard boekvermeldingen opnemen,
+Include Default FB Entries,Standaard boekvermeldingen opnemen,
 Include Exploded Items,Exploded Items opnemen,
 Include POS Transactions,POS-transacties opnemen,
 Include UOM,Inclusief UOM,
diff --git a/erpnext/translations/no.csv b/erpnext/translations/no.csv
index a3236ac..542217a 100644
--- a/erpnext/translations/no.csv
+++ b/erpnext/translations/no.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Når det gjelder flerlagsprogram, vil kundene automatisk bli tilordnet den aktuelle delen som brukt",
 Inactive,inaktiv,
 Incentives,Motivasjon,
-Include Default Book Entries,Inkluder standardbokoppføringer,
+Include Default FB Entries,Inkluder standardbokoppføringer,
 Include Exploded Items,Inkluder eksploderte elementer,
 Include POS Transactions,Inkluder POS-transaksjoner,
 Include UOM,Inkluder UOM,
diff --git a/erpnext/translations/pl.csv b/erpnext/translations/pl.csv
index df41e39..247d0ba 100644
--- a/erpnext/translations/pl.csv
+++ b/erpnext/translations/pl.csv
@@ -1151,7 +1151,7 @@
 In Value,w polu Wartość,
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","W przypadku programu wielowarstwowego Klienci zostaną automatycznie przypisani do danego poziomu, zgodnie z wydatkami",
 Inactive,Nieaktywny,
-Include Default Book Entries,Dołącz domyślne wpisy książki,
+Include Default FB Entries,Dołącz domyślne wpisy książki,
 Include Exploded Items,Dołącz rozstrzelone przedmioty,
 Include POS Transactions,Uwzględnij transakcje POS,
 Include UOM,Dołącz UOM,
diff --git a/erpnext/translations/ps.csv b/erpnext/translations/ps.csv
index 5a0b2a5..09d4df3 100644
--- a/erpnext/translations/ps.csv
+++ b/erpnext/translations/ps.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",د څو اړخیز پروګرام په صورت کې، پیرودونکي به د خپل مصرف په اساس اړوند ټیټ ته ګمارل کیږي,
 Inactive,غیر فعال,
 Incentives,هڅوونکي,
-Include Default Book Entries,د ډیفالټ کتاب ننوتل شامل کړئ,
+Include Default FB Entries,د ډیفالټ کتاب ننوتل شامل کړئ,
 Include Exploded Items,چاودیدونکي توکي شامل کړئ,
 Include POS Transactions,د POS تعاملات شامل کړئ,
 Include UOM,UOM شامل کړئ,
diff --git a/erpnext/translations/pt-BR.csv b/erpnext/translations/pt-BR.csv
index bc5b616..92845b0 100644
--- a/erpnext/translations/pt-BR.csv
+++ b/erpnext/translations/pt-BR.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","No caso do programa multicamadas, os Clientes serão atribuídos automaticamente ao nível em questão de acordo com o gasto",
 Inactive,Inativo,
 Incentives,Incentivos,
-Include Default Book Entries,Incluir Entradas de Livro Padrão,
+Include Default FB Entries,Incluir Entradas de Livro Padrão,
 Include Exploded Items,Incluir Itens Explodidos,
 Include POS Transactions,Incluir Transações PDV,
 Include UOM,Incluir UDM,
diff --git a/erpnext/translations/pt.csv b/erpnext/translations/pt.csv
index e6846c6..58cf6c8 100644
--- a/erpnext/translations/pt.csv
+++ b/erpnext/translations/pt.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","No caso do programa multicamadas, os Clientes serão atribuídos automaticamente ao nível em questão de acordo com o gasto",
 Inactive,Inativo,
 Incentives,Incentivos,
-Include Default Book Entries,Incluir entradas de livro padrão,
+Include Default FB Entries,Incluir entradas de livro padrão,
 Include Exploded Items,Incluir itens explodidos,
 Include POS Transactions,Incluir transações POS,
 Include UOM,Incluir UOM,
diff --git a/erpnext/translations/ro.csv b/erpnext/translations/ro.csv
index ac7e598..935b1e6 100644
--- a/erpnext/translations/ro.csv
+++ b/erpnext/translations/ro.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","În cazul unui program cu mai multe niveluri, Clienții vor fi automat alocați nivelului respectiv în funcție de cheltuielile efectuate",
 Inactive,Inactiv,
 Incentives,stimulente,
-Include Default Book Entries,Includeți intrări implicite în cărți,
+Include Default FB Entries,Includeți intrări implicite în cărți,
 Include Exploded Items,Includeți articole explodate,
 Include POS Transactions,Includeți tranzacțiile POS,
 Include UOM,Includeți UOM,
diff --git a/erpnext/translations/ru.csv b/erpnext/translations/ru.csv
index 52c2998..2f6f361 100644
--- a/erpnext/translations/ru.csv
+++ b/erpnext/translations/ru.csv
@@ -1151,7 +1151,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",В случае многоуровневой программы Клиенты будут автоматически назначены соответствующему уровню в соответствии с затраченными,
 Inactive,Неактивный,
 Incentives,Стимулирование,
-Include Default Book Entries,Включить записи в книгу по умолчанию,
+Include Default FB Entries,Включить записи в книгу по умолчанию,
 Include Exploded Items,Включить раздробленные элементы,
 Include POS Transactions,Включить POS-транзакции,
 Include UOM,Включить UOM,
diff --git a/erpnext/translations/rw.csv b/erpnext/translations/rw.csv
index f035d57..59362a1 100644
--- a/erpnext/translations/rw.csv
+++ b/erpnext/translations/rw.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Kubijyanye na gahunda yo mu byiciro byinshi, Abakiriya bazahabwa imodoka bashinzwe urwego bireba nkuko bakoresheje",
 Inactive,Kudakora,
 Incentives,Inkunga,
-Include Default Book Entries,Shyiramo Ibisanzwe Byanditswe,
+Include Default FB Entries,Shyiramo Ibisanzwe Byanditswe,
 Include Exploded Items,Shyiramo Ibintu Biturika,
 Include POS Transactions,Shyiramo ibikorwa bya POS,
 Include UOM,Shyiramo UOM,
diff --git a/erpnext/translations/si.csv b/erpnext/translations/si.csv
index 4047263..dd2acc4 100644
--- a/erpnext/translations/si.csv
+++ b/erpnext/translations/si.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","බහු ස්ථරයේ වැඩසටහනක දී, පාරිභෝගිකයින් විසින් වැය කරනු ලබන පරිදි පාරිභෝගිකයින්ට අදාල ස්ථානයට ස්වයංක්රීයව පවරනු ලැබේ",
 Inactive,අක්රියයි,
 Incentives,සහන,
-Include Default Book Entries,පෙරනිමි පොත් ඇතුළත් කිරීම් ඇතුළත් කරන්න,
+Include Default FB Entries,පෙරනිමි පොත් ඇතුළත් කිරීම් ඇතුළත් කරන්න,
 Include Exploded Items,පුපුරණ ද්රව්ය අඩංගු කරන්න,
 Include POS Transactions,POS ගනුදෙනු,
 Include UOM,UOM ඇතුළත් කරන්න,
diff --git a/erpnext/translations/sk.csv b/erpnext/translations/sk.csv
index 98e1663..025c8b7 100644
--- a/erpnext/translations/sk.csv
+++ b/erpnext/translations/sk.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",V prípade viacvrstvového programu budú zákazníci automaticky priradení príslušnému vrstvu podľa ich vynaložených prostriedkov,
 Inactive,neaktívne,
 Incentives,Pobídky,
-Include Default Book Entries,Zahrnúť predvolené položky knihy,
+Include Default FB Entries,Zahrnúť predvolené položky knihy,
 Include Exploded Items,Zahrňte explodované položky,
 Include POS Transactions,Zahrňte POS transakcie,
 Include UOM,Zahrňte UOM,
diff --git a/erpnext/translations/sl.csv b/erpnext/translations/sl.csv
index 5380714..86b5e58 100644
--- a/erpnext/translations/sl.csv
+++ b/erpnext/translations/sl.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",V primeru večstopenjskega programa bodo stranke samodejno dodeljene zadevni stopnji glede na porabljene,
 Inactive,Neaktivno,
 Incentives,Spodbude,
-Include Default Book Entries,Vključi privzete vnose v knjige,
+Include Default FB Entries,Vključi privzete vnose v knjige,
 Include Exploded Items,Vključi eksplodirane elemente,
 Include POS Transactions,Vključite POS transakcije,
 Include UOM,Vključi UOM,
diff --git a/erpnext/translations/sq.csv b/erpnext/translations/sq.csv
index 2a893d2..3cfa429 100644
--- a/erpnext/translations/sq.csv
+++ b/erpnext/translations/sq.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Në rastin e programit multi-shtresor, Konsumatorët do të caktohen automatikisht në nivelin përkatës sipas shpenzimeve të tyre",
 Inactive,joaktiv,
 Incentives,Nxitjet,
-Include Default Book Entries,Përfshini hyrje të librave të paracaktuar,
+Include Default FB Entries,Përfshini hyrje të librave të paracaktuar,
 Include Exploded Items,Përfshirja e artikujve të eksploduar,
 Include POS Transactions,Përfshi transaksione POS,
 Include UOM,Përfshi UOM,
diff --git a/erpnext/translations/sr.csv b/erpnext/translations/sr.csv
index c1e5eb0..621772f 100644
--- a/erpnext/translations/sr.csv
+++ b/erpnext/translations/sr.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","У случају мулти-тиер програма, Корисници ће аутоматски бити додијељени за одређени ниво према њиховом потрошеном",
 Inactive,Неактиван,
 Incentives,Подстицаји,
-Include Default Book Entries,Укључивање заданих уноса у књиге,
+Include Default FB Entries,Укључивање заданих уноса у књиге,
 Include Exploded Items,Укључите експлодиране ставке,
 Include POS Transactions,Укључите ПОС трансакције,
 Include UOM,Укључите УОМ,
diff --git a/erpnext/translations/sv.csv b/erpnext/translations/sv.csv
index 8b4ab06..4fef88b 100644
--- a/erpnext/translations/sv.csv
+++ b/erpnext/translations/sv.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",När det gäller program med flera nivåer kommer kunderna automatiskt att tilldelas den aktuella tiern enligt deras tillbringade,
 Inactive,Inaktiv,
 Incentives,Sporen,
-Include Default Book Entries,Inkludera standardbokposter,
+Include Default FB Entries,Inkludera standardbokposter,
 Include Exploded Items,Inkludera explosiva artiklar,
 Include POS Transactions,Inkludera POS-transaktioner,
 Include UOM,Inkludera UOM,
diff --git a/erpnext/translations/sw.csv b/erpnext/translations/sw.csv
index fa2287c..3b4d8ae 100644
--- a/erpnext/translations/sw.csv
+++ b/erpnext/translations/sw.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Katika kesi ya mpango wa mipango mbalimbali, Wateja watapatiwa auto kwa tier husika kama kwa matumizi yao",
 Inactive,Haikufanya kazi,
 Incentives,Vidokezo,
-Include Default Book Entries,Jumuisha Ingizo Mbadala za Kitabu,
+Include Default FB Entries,Jumuisha Ingizo Mbadala za Kitabu,
 Include Exploded Items,Jumuisha Vipengee Vipengee,
 Include POS Transactions,Jumuisha Shughuli za POS,
 Include UOM,Jumuisha UOM,
diff --git a/erpnext/translations/ta.csv b/erpnext/translations/ta.csv
index 6eaae34..f40e512 100644
--- a/erpnext/translations/ta.csv
+++ b/erpnext/translations/ta.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","பல அடுக்கு திட்டத்தின் விஷயத்தில், வாடிக்கையாளர்கள் தங்கள் செலவினங்களின்படி சம்பந்தப்பட்ட அடுக்குக்கு கார் ஒதுக்கப்படுவார்கள்",
 Inactive,செயல்படா,
 Incentives,செயல் தூண்டுதல்,
-Include Default Book Entries,இயல்புநிலை புத்தக உள்ளீடுகளைச் சேர்க்கவும்,
+Include Default FB Entries,இயல்புநிலை புத்தக உள்ளீடுகளைச் சேர்க்கவும்,
 Include Exploded Items,வெடித்துள்ள பொருட்கள் அடங்கும்,
 Include POS Transactions,POS பரிமாற்றங்களைச் சேர்க்கவும்,
 Include UOM,UOM ஐ சேர்க்கவும்,
diff --git a/erpnext/translations/te.csv b/erpnext/translations/te.csv
index d3f739a..22fd7d7 100644
--- a/erpnext/translations/te.csv
+++ b/erpnext/translations/te.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","మల్టీ-టైర్ ప్రోగ్రామ్ విషయంలో, కస్టమర్లు వారి గడువు ప్రకారం, సంబంధిత స్థాయికి కేటాయించబడతారు",
 Inactive,క్రియారహిత,
 Incentives,ఇన్సెంటివ్స్,
-Include Default Book Entries,డిఫాల్ట్ బుక్ ఎంట్రీలను చేర్చండి,
+Include Default FB Entries,డిఫాల్ట్ బుక్ ఎంట్రీలను చేర్చండి,
 Include Exploded Items,ఎక్స్ప్లోడ్ ఐటెమ్లను చేర్చండి,
 Include POS Transactions,POS లావాదేవీలను చేర్చండి,
 Include UOM,UOM ని చేర్చండి,
diff --git a/erpnext/translations/th.csv b/erpnext/translations/th.csv
index a065595..5dfb93c 100644
--- a/erpnext/translations/th.csv
+++ b/erpnext/translations/th.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",ในกรณีของโปรแกรมแบบหลายชั้นลูกค้าจะได้รับการกำหนดให้โดยอัตโนมัติตามระดับที่เกี่ยวข้องตามการใช้จ่าย,
 Inactive,เฉื่อยชา,
 Incentives,แรงจูงใจ,
-Include Default Book Entries,รวมรายการหนังสือเริ่มต้น,
+Include Default FB Entries,รวมรายการหนังสือเริ่มต้น,
 Include Exploded Items,รวมรายการที่ระเบิดแล้ว,
 Include POS Transactions,รวมธุรกรรม POS,
 Include UOM,รวม UOM,
diff --git a/erpnext/translations/tr.csv b/erpnext/translations/tr.csv
index 9e916f0..82d2824 100644
--- a/erpnext/translations/tr.csv
+++ b/erpnext/translations/tr.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Çok katmanlı program söz konusu olduğunda, Müşteriler harcanan esasa göre ilgili kademeye otomatik olarak atanacaktır.",
 Inactive,etkisiz,
 Incentives,Teşvikler,
-Include Default Book Entries,Varsayılan Defter Girişlerini Dahil et,
+Include Default FB Entries,Varsayılan Defter Girişlerini Dahil et,
 Include Exploded Items,Patlatılmış Öğeleri Dahil et,
 Include POS Transactions,POS İşlemlerini Dahil et,
 Include UOM,Birimi Dahil et,
diff --git a/erpnext/translations/uk.csv b/erpnext/translations/uk.csv
index 8d1fb04..f77c6da 100644
--- a/erpnext/translations/uk.csv
+++ b/erpnext/translations/uk.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","У випадку багаторівневої програми, Клієнти будуть автоматично призначені для відповідного рівня відповідно до витрачених ними витрат",
 Inactive,Неактивний,
 Incentives,Стимули,
-Include Default Book Entries,Включити записи за замовчуванням,
+Include Default FB Entries,Включити записи за замовчуванням,
 Include Exploded Items,Включити вибухнуті елементи,
 Include POS Transactions,Включити POS-транзакції,
 Include UOM,Включити UOM,
diff --git a/erpnext/translations/ur.csv b/erpnext/translations/ur.csv
index 649c1c7..4dc872b 100644
--- a/erpnext/translations/ur.csv
+++ b/erpnext/translations/ur.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",کثیر درجے کے پروگرام کے معاملے میں، صارفین اپنے اخراجات کے مطابق متعلقہ درجے کو خود کار طریقے سے تفویض کریں گے,
 Inactive,غیر فعال,
 Incentives,ترغیبات,
-Include Default Book Entries,ڈیفالٹ کتاب اندراجات شامل کریں۔,
+Include Default FB Entries,ڈیفالٹ کتاب اندراجات شامل کریں۔,
 Include Exploded Items,دھماکہ خیز اشیاء شامل کریں,
 Include POS Transactions,پی او ایس کے لین دین میں شامل کریں,
 Include UOM,UOM شامل کریں,
diff --git a/erpnext/translations/uz.csv b/erpnext/translations/uz.csv
index 5ca51cc..c09aa89 100644
--- a/erpnext/translations/uz.csv
+++ b/erpnext/translations/uz.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",Ko&#39;p qatlamli dasturda mijozlar o&#39;zlari sarflagan xarajatlariga muvofiq tegishli darajaga avtomatik tarzda topshiriladi,
 Inactive,Faol emas,
 Incentives,Rag&#39;batlantirish,
-Include Default Book Entries,Odatiy kitob yozuvlarini qo&#39;shing,
+Include Default FB Entries,Odatiy kitob yozuvlarini qo&#39;shing,
 Include Exploded Items,Portlatilgan narsalarni qo&#39;shish,
 Include POS Transactions,Qalin operatsiyalarni qo&#39;shish,
 Include UOM,UOM ni qo&#39;shing,
diff --git a/erpnext/translations/vi.csv b/erpnext/translations/vi.csv
index 7a005fa..eb251a5 100644
--- a/erpnext/translations/vi.csv
+++ b/erpnext/translations/vi.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","Trong trường hợp chương trình nhiều tầng, Khách hàng sẽ được tự động chỉ định cho cấp có liên quan theo mức chi tiêu của họ",
 Inactive,Không hoạt động,
 Incentives,Ưu đãi,
-Include Default Book Entries,Bao gồm các mục sách mặc định,
+Include Default FB Entries,Bao gồm các mục sách mặc định,
 Include Exploded Items,Bao gồm các mục đã Phát hiện,
 Include POS Transactions,Bao gồm giao dịch POS,
 Include UOM,Bao gồm UOM,
diff --git a/erpnext/translations/zh.csv b/erpnext/translations/zh.csv
index cf89dc6..08f8d33 100644
--- a/erpnext/translations/zh.csv
+++ b/erpnext/translations/zh.csv
@@ -1153,7 +1153,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",在多层程序的情况下,客户将根据其花费自动分配到相关层,
 Inactive,非活动的,
 Incentives,激励政策,
-Include Default Book Entries,包括默认工作簿条目,
+Include Default FB Entries,包括默认工作簿条目,
 Include Exploded Items,包含爆炸物料,
 Include POS Transactions,包括POS交易,
 Include UOM,包括基本计量单位,
diff --git a/erpnext/translations/zh_tw.csv b/erpnext/translations/zh_tw.csv
index 8ecbaaa..dd683c5 100644
--- a/erpnext/translations/zh_tw.csv
+++ b/erpnext/translations/zh_tw.csv
@@ -1166,7 +1166,7 @@
 "In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent",在多層程序的情況下,客戶將根據其花費自動分配到相關層,
 Inactive,待用,
 Incentives,獎勵,
-Include Default Book Entries,包括默認工作簿條目,
+Include Default FB Entries,包括默認工作簿條目,
 Include Exploded Items,包含爆炸物品,
 Include UOM,包括UOM,
 Included in Gross Profit,包含在毛利潤中,