change in the absent student report (#9185)

diff --git a/erpnext/schools/report/absent_student_report/absent_student_report.py b/erpnext/schools/report/absent_student_report/absent_student_report.py
index 0949831..8e6ce51 100644
--- a/erpnext/schools/report/absent_student_report/absent_student_report.py
+++ b/erpnext/schools/report/absent_student_report/absent_student_report.py
@@ -13,9 +13,13 @@
 		msgprint(_("Please select date"), raise_exception=1)
 	
 	columns = get_columns(filters)
+	date = filters.get("date")
 
-	absent_students = get_absent_students(filters.get("date"))
-	leave_applicants = get_leave_applications(filters.get("date"))
+	absent_students = get_absent_students(date)
+	leave_applicants = get_leave_applications(date)
+	if absent_students:
+		student_list = [d["student"] for d in absent_students]
+		transportation_details = get_transportation_details(date, student_list)
 
 	data = []
 	for student in absent_students:
@@ -32,6 +36,8 @@
 				row+=[stud_details.student_mobile_number]
 			else:
 				row+= [""]
+			if transportation_details.get(student.student):
+				row += transportation_details.get(student.student)
 				
 			data.append(row)
 	
@@ -44,6 +50,8 @@
 		_("Student Group") + "::180",
 		_("Student Email Address") + "::180",
 		_("Student Mobile No.") + "::150",
+		_("Mode of Transportation") + "::150",
+		_("Vehicle/Bus Number") + "::150",
 	]
 	return columns
 
@@ -57,4 +65,20 @@
 	for student in frappe.db.sql("""select student from `tabStudent Leave Application` 
 	where docstatus = 1 and from_date <= %s and to_date >= %s""", (date, date)):
 		leave_applicants.append(student[0])
-	return leave_applicants
\ No newline at end of file
+	return leave_applicants
+
+def get_transportation_details(date, student_list):
+	academic_year = frappe.get_all("Academic Year", filters=[["year_start_date", "<=", date],["year_end_date", ">=", date]])
+	if academic_year:
+		academic_year = academic_year[0].name
+	elif frappe.defaults.get_defaults().academic_year:
+		academic_year = frappe.defaults.get_defaults().academic_year
+	else:
+		return {}
+
+	transportation_details = frappe.get_all("Program Enrollment", fields=["student", "mode_of_transportation", "vehicle_no"],
+		filters={"student": ("in", student_list), "academic_year": academic_year, "docstatus": ("not in", ["2"])})
+	transportation_map = {}
+	for d in transportation_details:
+		transportation_map[d.student] = [d.mode_of_transportation, d.vehicle_no]
+	return transportation_map