refactor: .doc missing and empty row on new doc (#27408)

* refactor: .doc missing and empty row on new doc

* fix: let -> const
diff --git a/erpnext/maintenance/doctype/maintenance_visit/maintenance_visit.js b/erpnext/maintenance/doctype/maintenance_visit/maintenance_visit.js
index 6b3f184..7f98354 100644
--- a/erpnext/maintenance/doctype/maintenance_visit/maintenance_visit.js
+++ b/erpnext/maintenance/doctype/maintenance_visit/maintenance_visit.js
@@ -31,8 +31,8 @@
 	},
 	onload: function (frm, cdt, cdn) {
 		let item = locals[cdt][cdn];
-		if (frm.maintenance_type == 'Scheduled') {
-			let schedule_id = item.purposes[0].prevdoc_detail_docname;
+		if (frm.doc.maintenance_type === "Scheduled") {
+			const schedule_id = item.purposes[0].prevdoc_detail_docname || frm.doc.maintenance_schedule_detail;
 			frappe.call({
 				method: "erpnext.maintenance.doctype.maintenance_schedule.maintenance_schedule.update_serial_nos",
 				args: {
@@ -43,6 +43,9 @@
 				}
 			});
 		}
+		else {
+			frm.clear_table("purposes");
+		}
 
 		if (!frm.doc.status) {
 			frm.set_value({ status: 'Draft' });