fix(ux): make valuation field read only when it can't be modified (backport #38450) (#38464)

* fix(ux): make `basic_rate` field read-only based on purpose

(cherry picked from commit abc7d3002467946984be5b41d79024da92047dd3)

* fix(ux): make PR `rate` field read-only having PO ref

(cherry picked from commit ae294ee4702fa8e0367c07c881d632811beb67ae)

* fix(ux): make PI `rate` field read-only having PR ref

(cherry picked from commit 3d4156cc7d90522f37f4c91e4ccf4145412109a9)

---------

Co-authored-by: s-aga-r <sagarsharma.s312@gmail.com>
This commit is contained in:
mergify[bot] 2023-11-30 17:30:35 +05:30 committed by GitHub
parent 03013a8433
commit 2d9ba88870
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 11 additions and 4 deletions

View File

@ -288,6 +288,7 @@
"oldfieldname": "import_rate",
"oldfieldtype": "Currency",
"options": "currency",
"read_only_depends_on": "eval: (!parent.is_return && doc.purchase_receipt && doc.pr_detail)",
"reqd": 1
},
{
@ -918,7 +919,7 @@
"idx": 1,
"istable": 1,
"links": [],
"modified": "2023-11-14 18:33:48.547297",
"modified": "2023-11-30 16:26:05.629780",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Purchase Invoice Item",

View File

@ -359,6 +359,7 @@
"oldfieldtype": "Currency",
"options": "currency",
"print_width": "100px",
"read_only_depends_on": "eval: (!parent.is_return && doc.purchase_order && doc.purchase_order_item)",
"width": "100px"
},
{
@ -1103,7 +1104,7 @@
"idx": 1,
"istable": 1,
"links": [],
"modified": "2023-11-28 13:37:29.245204",
"modified": "2023-11-30 16:12:02.364608",
"modified_by": "Administrator",
"module": "Stock",
"name": "Purchase Receipt Item",

View File

@ -258,7 +258,7 @@ frappe.ui.form.on('Stock Entry', {
}
}
if (frm.doc.docstatus===0) {
if (frm.doc.docstatus === 0) {
frm.add_custom_button(__('Purchase Invoice'), function() {
erpnext.utils.map_current_doc({
method: "erpnext.accounts.doctype.purchase_invoice.purchase_invoice.make_stock_entry",
@ -311,7 +311,8 @@ frappe.ui.form.on('Stock Entry', {
})
}, __("Get Items From"));
}
if (frm.doc.docstatus===0 && frm.doc.purpose == "Material Issue") {
if (frm.doc.docstatus === 0 && frm.doc.purpose == "Material Issue") {
frm.add_custom_button(__('Expired Batches'), function() {
frappe.call({
method: "erpnext.stock.doctype.stock_entry.stock_entry.get_expired_batch_items",
@ -397,6 +398,10 @@ frappe.ui.form.on('Stock Entry', {
frm.remove_custom_button('Bill of Materials', "Get Items From");
frm.events.show_bom_custom_button(frm);
frm.trigger('add_to_transit');
frm.fields_dict.items.grid.update_docfield_property(
'basic_rate', 'read_only', frm.doc.purpose == "Material Receipt" ? 0 : 1
);
},
purpose: function(frm) {