feat: Inpatient Medication Order and Entry (#23473)

* feat: Inpatient Medication Order

* feat: Inpatient Medication Entry

* feat: update medication orders on medication entry submission

* feat: added custom fields for medication references in Stock Entry

* feat: make stock entry if update stock is checked in IPMOE

* fix: handle cancel event for Inpatient Medication Entry

* fix(ux): add link and progress bar to dashboard

* refactor(ux): Adding Medication Orders without linking to Patient Encounter

* fix: make medication entry child table read only

* fix: filter stock items during manual medication order creation

* fix: codacy

* chore: tests for Inpatient Medication Order

* chore: tests for Inpatient Medication Entry

* fix: code clean-up

* fix: filter for inpatients in IPMO

* fix: add datetime validations for IPME filters

* fix: do not hardcode stock entry type

Co-authored-by: Nabin Hait <nabinhait@gmail.com>
diff --git a/erpnext/hooks.py b/erpnext/hooks.py
index 9bd3105..dbb6c0d 100644
--- a/erpnext/hooks.py
+++ b/erpnext/hooks.py
@@ -282,7 +282,8 @@
 # to maintain data integrity we exempted payment entry. it will un-link when sales invoice get cancelled.
 # if payment entry not in auto cancel exempted doctypes it will cancel payment entry.
 auto_cancel_exempted_doctypes= [
-	"Payment Entry"
+	"Payment Entry",
+	"Inpatient Medication Entry"
 ]
 
 scheduler_events = {