fix: reload procedure doc on completion
diff --git a/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.js b/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.js
index 5f36bdd..87c22cc 100644
--- a/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.js
+++ b/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.js
@@ -80,6 +80,7 @@
 							frappe.call({
 								method: 'complete_procedure',
 								doc: frm.doc,
+								freeze: true,
 								callback: function(r) {
 									if (r.message) {
 										frappe.show_alert({
@@ -87,8 +88,8 @@
 												['<a class="bold" href="#Form/Stock Entry/'+ r.message + '">' + r.message + '</a>']),
 											indicator: 'green'
 										});
-										frm.reload_doc();
 									}
+									frm.reload_doc();
 								}
 							});
 						}
@@ -111,9 +112,10 @@
 											frappe.call({
 												doc: frm.doc,
 												method: 'make_material_receipt',
+												freeze: true,
 												callback: function(r) {
 													if (!r.exc) {
-														cur_frm.reload_doc();
+														frm.reload_doc();
 														let doclist = frappe.model.sync(r.message);
 														frappe.set_route('Form', doclist[0].doctype, doclist[0].name);
 													}
@@ -122,7 +124,7 @@
 										}
 									);
 								} else {
-									cur_frm.reload_doc();
+									frm.reload_doc();
 								}
 							}
 						}
diff --git a/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.py b/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.py
index db3afc8..d6c0893 100644
--- a/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.py
+++ b/erpnext/healthcare/doctype/clinical_procedure/clinical_procedure.py
@@ -87,7 +87,8 @@
 			else:
 				frappe.throw(_('Please set Customer in Patient {0}').format(frappe.bold(self.patient)), title=_('Customer Not Found'))
 
-		frappe.db.set_value('Clinical Procedure', self.name, 'status', 'Completed')
+		self.db_set('status', 'Completed')
+
 		if self.consume_stock and self.items:
 			return stock_entry