fix: recalculate rate of items based on "Recalculate Rate" checkbox
diff --git a/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.py b/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.py
index 0c4ec6f..51007c5 100644
--- a/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.py
+++ b/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.py
@@ -125,7 +125,7 @@
 				item.rm_cost_per_qty = item.rm_supp_cost / item.qty
 				rm_supp_cost.pop(item.name)
 
-			if self.is_new() and item.rm_supp_cost > 0:
+			if item.recalculate_rate:
 				item.rate = (
 					item.rm_cost_per_qty + (item.service_cost_per_qty or 0) + item.additional_cost_per_qty
 				)
diff --git a/erpnext/subcontracting/doctype/subcontracting_receipt_item/subcontracting_receipt_item.json b/erpnext/subcontracting/doctype/subcontracting_receipt_item/subcontracting_receipt_item.json
index 437fc41..dcde635 100644
--- a/erpnext/subcontracting/doctype/subcontracting_receipt_item/subcontracting_receipt_item.json
+++ b/erpnext/subcontracting/doctype/subcontracting_receipt_item/subcontracting_receipt_item.json
@@ -29,6 +29,7 @@
         "rate_and_amount",
         "rate",
         "amount",
+        "recalculate_rate",
         "column_break_19",
         "rm_cost_per_qty",
         "service_cost_per_qty",
@@ -460,12 +461,18 @@
             "fieldname": "accounting_details_section",
             "fieldtype": "Section Break",
             "label": "Accounting Details"
+        },
+        {
+            "default": "1",
+            "fieldname": "recalculate_rate",
+            "fieldtype": "Check",
+            "label": "Recalculate Rate"
         }
     ],
     "idx": 1,
     "istable": 1,
     "links": [],
-    "modified": "2022-08-15 14:51:10.613347",
+    "modified": "2022-08-18 19:42:24.313449",
     "modified_by": "Administrator",
     "module": "Subcontracting",
     "name": "Subcontracting Receipt Item",