diff --git a/erpnext/accounts/doctype/pos_setting/pos_setting.py b/erpnext/accounts/doctype/pos_setting/pos_setting.py index 65761c93a5..f7fdd319fe 100755 --- a/erpnext/accounts/doctype/pos_setting/pos_setting.py +++ b/erpnext/accounts/doctype/pos_setting/pos_setting.py @@ -8,7 +8,7 @@ from frappe.utils import cint from frappe.model.document import Document -class PosSetting(Document): +class POSSetting(Document): def get_series(self): frappe.get_meta("Sales Invoice").get_field("naming_series").options or "" diff --git a/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py b/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py index 109d0e505f..75a9ab53e6 100644 --- a/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py +++ b/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py @@ -4,7 +4,6 @@ import frappe import unittest, json from frappe.utils import flt -from frappe.model.doc import DocstatusTransitionError, TimestampMismatchError from erpnext.accounts.utils import get_stock_and_account_difference from erpnext.stock.doctype.purchase_receipt.test_purchase_receipt import set_perpetual_inventory @@ -25,7 +24,7 @@ class TestSalesInvoice(unittest.TestCase): w.submit() w = frappe.get_doc(w2) - self.assertRaises(DocstatusTransitionError, w.submit) + self.assertRaises(frappe.DocstatusTransitionError, w.submit) def test_timestamp_change(self): w = frappe.copy_doc(test_records[0]) @@ -40,7 +39,7 @@ class TestSalesInvoice(unittest.TestCase): import time time.sleep(1) - self.assertRaises(TimestampMismatchError, w2.save) + self.assertRaises(frappe.TimestampMismatchError, w2.save) def test_sales_invoice_calculation_base_currency(self): si = frappe.copy_doc(test_records[2]) diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.py b/erpnext/buying/doctype/purchase_order/purchase_order.py index e7bb7c9895..25bdfa97a5 100644 --- a/erpnext/buying/doctype/purchase_order/purchase_order.py +++ b/erpnext/buying/doctype/purchase_order/purchase_order.py @@ -35,7 +35,7 @@ class PurchaseOrder(BuyingController): validate_status(self.status, ["Draft", "Submitted", "Stopped", "Cancelled"]) - pc_obj = frappe.get_doc(dt='Purchase Common') + pc_obj = frappe.get_doc('Purchase Common') pc_obj.validate_for_items(self) self.check_for_stopped_status(pc_obj) diff --git a/erpnext/buying/doctype/supplier/supplier.py b/erpnext/buying/doctype/supplier/supplier.py index 9179bc2c70..e48c0bfc3d 100644 --- a/erpnext/buying/doctype/supplier/supplier.py +++ b/erpnext/buying/doctype/supplier/supplier.py @@ -16,7 +16,6 @@ class Supplier(TransactionBase): def autoname(self): supp_master_name = frappe.defaults.get_global_default('supp_master_name') - if supp_master_name == 'Supplier Name': if frappe.db.exists("Customer", self.supplier_name): frappe.msgprint(_("A Customer exists with same name"), raise_exception=1) diff --git a/erpnext/controllers/accounts_controller.py b/erpnext/controllers/accounts_controller.py index 0b1c001c0e..24af1e35fa 100644 --- a/erpnext/controllers/accounts_controller.py +++ b/erpnext/controllers/accounts_controller.py @@ -210,7 +210,7 @@ class AccountsController(TransactionBase): "row_range": row_range }) - if cint(tax.included_in_print_rate): + if cint(getattr(tax, "included_in_print_rate", None)): if tax.charge_type == "Actual": # inclusive tax cannot be of type Actual throw((_("Row") @@ -259,7 +259,7 @@ class AccountsController(TransactionBase): tax.tax_amount_after_discount_amount += current_tax_amount - if tax.category: + if getattr(tax, "category", None): # if just for valuation, do not add the tax amount in total # hence, setting it as 0 for further steps current_tax_amount = 0.0 if (tax.category == "Valuation") \ diff --git a/erpnext/controllers/buying_controller.py b/erpnext/controllers/buying_controller.py index 6e03d47f02..3bde28b379 100644 --- a/erpnext/controllers/buying_controller.py +++ b/erpnext/controllers/buying_controller.py @@ -50,7 +50,7 @@ class BuyingController(StockController): from erpnext.stock.utils import validate_warehouse_company warehouses = list(set([d.warehouse for d in - self.get(self.fname) if d.warehouse])) + self.get(self.fname) if getattr(d, "warehouse", None)])) for w in warehouses: validate_warehouse_company(w, self.company) diff --git a/erpnext/manufacturing/doctype/bom/bom.py b/erpnext/manufacturing/doctype/bom/bom.py index 7dcc96eac9..aa96b7c399 100644 --- a/erpnext/manufacturing/doctype/bom/bom.py +++ b/erpnext/manufacturing/doctype/bom/bom.py @@ -38,7 +38,7 @@ class BOM(Document): def on_update(self): self.check_recursion() self.update_exploded_items() - self.save() + self.db_update() def on_submit(self): self.manage_default_bom() diff --git a/erpnext/setup/install.py b/erpnext/setup/install.py index 6f4669eeae..68bc6cddfe 100644 --- a/erpnext/setup/install.py +++ b/erpnext/setup/install.py @@ -137,7 +137,8 @@ def feature_setup(): doc.save() def set_single_defaults(): - for dt in frappe.db.sql_list("""select name from `tabDocType` where issingle=1"""): + for dt in frappe.db.sql_list("""select name from `tabDocType` + where issingle=1 and paent != 'Control Panel'"""): default_values = frappe.db.sql("""select fieldname, `default` from `tabDocField` where parent=%s""", dt) if default_values: diff --git a/erpnext/stock/doctype/material_request/material_request.py b/erpnext/stock/doctype/material_request/material_request.py index 5a5bb031ef..756f540db3 100644 --- a/erpnext/stock/doctype/material_request/material_request.py +++ b/erpnext/stock/doctype/material_request/material_request.py @@ -124,7 +124,7 @@ class MaterialRequest(BuyingController): def on_cancel(self): # Step 1:=> Get Purchase Common Obj - pc_obj = frappe.get_doc(dt='Purchase Common') + pc_obj = frappe.get_doc('Purchase Common') # Step 2:=> Check for stopped status pc_obj.check_for_stopped_status(self.doctype, self.name) diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py index 1ac5826873..9a137a1bfd 100644 --- a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py +++ b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py @@ -53,7 +53,7 @@ class PurchaseReceipt(BuyingController): self.validate_uom_is_integer("stock_uom", "stock_qty") self.validate_challan_no() - pc_obj = frappe.get_doc(dt='Purchase Common') + pc_obj = frappe.get_doc('Purchase Common') pc_obj.validate_for_items(self) self.check_for_stopped_status(pc_obj) diff --git a/erpnext/stock/doctype/stock_entry/stock_entry.py b/erpnext/stock/doctype/stock_entry/stock_entry.py index 56ba780e96..cdfff04430 100644 --- a/erpnext/stock/doctype/stock_entry/stock_entry.py +++ b/erpnext/stock/doctype/stock_entry/stock_entry.py @@ -721,7 +721,7 @@ def get_return_doc_and_details(args): ref = frappe._dict() # get ref_doc - if args["purpose"] in return_map: + if args.get("purpose") in return_map: for fieldname, val in return_map[args["purpose"]].items(): if args.get(fieldname): ref.fieldname = fieldname