From 2a0d65073585f35657dff3718a6b9e4e4d7ae480 Mon Sep 17 00:00:00 2001 From: Manas Solanki Date: Wed, 7 Jun 2017 11:29:27 +0530 Subject: [PATCH] fix in the report (#9167) --- .../student_and_guardian_contact_details.py | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/erpnext/schools/report/student_and_guardian_contact_details/student_and_guardian_contact_details.py b/erpnext/schools/report/student_and_guardian_contact_details/student_and_guardian_contact_details.py index 2e59d61245..f191022f20 100644 --- a/erpnext/schools/report/student_and_guardian_contact_details/student_and_guardian_contact_details.py +++ b/erpnext/schools/report/student_and_guardian_contact_details/student_and_guardian_contact_details.py @@ -22,13 +22,14 @@ def execute(filters=None): if not student_list: return columns, [] + group_roll_no_map = get_student_roll_no(academic_year, program, student_batch_name) student_map = get_student_details(student_list) guardian_map = get_guardian_map(student_list) for d in program_enrollments: student_details = student_map.get(d.student) - row = [d.student, d.student_name, student_details.get("student_mobile_number"), student_details.get("student_email_id"), - student_details.get("address")] + row = [group_roll_no_map.get(d.student), d.student, d.student_name, student_details.get("student_mobile_number"),\ + student_details.get("student_email_id"), student_details.get("address")] student_guardians = guardian_map.get(d.student) @@ -44,7 +45,8 @@ def execute(filters=None): def get_columns(): - columns = [ + columns = [ + _(" Group Roll No") + "::60", _("Student ID") + ":Link/Student:90", _("Student Name") + "::150", _("Student Mobile No.") + "::110", @@ -93,4 +95,13 @@ def get_guardian_map(student_list): guardian["email_address"] = guardian_email_id.get(guardian.guardian) guardian_map.setdefault(guardian.parent, []).append(guardian) - return guardian_map \ No newline at end of file + return guardian_map + +def get_student_roll_no(academic_year, program, batch): + student_group = frappe.get_all("Student Group", + filters={"academic_year":academic_year, "program":program, "batch":batch}) + if student_group: + roll_no_dict = dict(frappe.db.sql('''select student, group_roll_number from `tabStudent Group Student` where parent=%s''', + (student_group[0].name))) + return roll_no_dict + return {}