Merge pull request #33281 from tundebabzy/29976
fix: maintain same rate throughout sales cycle doesn't work with quotation
This commit is contained in:
commit
5c0f8ee44f
@ -30,6 +30,24 @@ class TestQuotation(FrappeTestCase):
|
|||||||
|
|
||||||
self.assertTrue(sales_order.get("payment_schedule"))
|
self.assertTrue(sales_order.get("payment_schedule"))
|
||||||
|
|
||||||
|
def test_maintain_rate_in_sales_cycle_is_enforced(self):
|
||||||
|
from erpnext.selling.doctype.quotation.quotation import make_sales_order
|
||||||
|
|
||||||
|
maintain_rate = frappe.db.get_single_value("Selling Settings", "maintain_same_sales_rate")
|
||||||
|
frappe.db.set_single_value("Selling Settings", "maintain_same_sales_rate", 1)
|
||||||
|
|
||||||
|
quotation = frappe.copy_doc(test_records[0])
|
||||||
|
quotation.transaction_date = nowdate()
|
||||||
|
quotation.valid_till = add_months(quotation.transaction_date, 1)
|
||||||
|
quotation.insert()
|
||||||
|
quotation.submit()
|
||||||
|
|
||||||
|
sales_order = make_sales_order(quotation.name)
|
||||||
|
sales_order.items[0].rate = 1
|
||||||
|
self.assertRaises(frappe.ValidationError, sales_order.save)
|
||||||
|
|
||||||
|
frappe.db.set_single_value("Selling Settings", "maintain_same_sales_rate", maintain_rate)
|
||||||
|
|
||||||
def test_make_sales_order_with_different_currency(self):
|
def test_make_sales_order_with_different_currency(self):
|
||||||
from erpnext.selling.doctype.quotation.quotation import make_sales_order
|
from erpnext.selling.doctype.quotation.quotation import make_sales_order
|
||||||
|
|
||||||
|
|||||||
@ -194,7 +194,7 @@ class SalesOrder(SellingController):
|
|||||||
)
|
)
|
||||||
|
|
||||||
if cint(frappe.db.get_single_value("Selling Settings", "maintain_same_sales_rate")):
|
if cint(frappe.db.get_single_value("Selling Settings", "maintain_same_sales_rate")):
|
||||||
self.validate_rate_with_reference_doc([["Quotation", "prev_docname", "quotation_item"]])
|
self.validate_rate_with_reference_doc([["Quotation", "prevdoc_docname", "quotation_item"]])
|
||||||
|
|
||||||
def update_enquiry_status(self, prevdoc, flag):
|
def update_enquiry_status(self, prevdoc, flag):
|
||||||
enq = frappe.db.sql(
|
enq = frappe.db.sql(
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user