print format for the assessment report (#10227)

* print format for the assessment report

* fix for the comma in assessment plan
This commit is contained in:
Manas Solanki 2017-08-07 13:54:39 +05:30 committed by Nabin Hait
parent 79005e83d7
commit c0fb428075
2 changed files with 46 additions and 2 deletions

View File

@ -0,0 +1,41 @@
{% var letterhead= filters.letter_head || (frappe.get_doc(":Company", filters.company) && frappe.get_doc(":Company", filters.company).default_letter_head) || frappe.defaults.get_default("letter_head"); %}
{% if(letterhead) { %}
<div style="margin-bottom: 7px;" class="text-center">
{%= frappe.boot.letter_heads[letterhead].header %}
</div>
{% } %}
<h4 class="text-center">{%= __("Assessment Report") %}</h4>
<hr>
<h5 class="text-center">{%= __("Course Code: ") %} {%= filters.course %}</h5>
<h5 class="text-center">{%= __("Assessment Group: ") %} {%= filters.assessment_group %}</h5>
<h5 class="text-center">{%= __("Assessment Plan: ") %} {%= data_to_be_printed[0]["assessment_plan"] %} </h5>
<hr>
<table class="table table-bordered">
<thead>
<tr>
{% for(var i=1, l=report.columns.length; i<l; i++) { %}
<th style="text-transform: uppercase; max-width: 100px">{%= report.columns[i].label %}</th>
{% } %}
</tr>
</thead>
<tbody>
{% for(var j=0, k=data.length; j<k; j++) { %}
{%
var row = data[j];
%}
<tr>
{% for(var i=1, l=report.columns.length; i<l; i++) { %}
<td class="text-center">
{% var fieldname = report.columns[i].field; %}
{% if (!is_null(row[fieldname])) { %}
{%= row[fieldname] %}
{% } %}
</td>
{% } %}
</tr>
{% } %}
</tbody>
</table>
<p class="text-right text-muted">Printed On {%= dateutil.str_to_user(dateutil.get_datetime_as_string()) %}</p>

View File

@ -59,7 +59,7 @@ def execute(filters=None):
from `tabAssessment Result` ar, `tabAssessment Result Detail` ard
where ar.assessment_plan in (%s) and ar.name=ard.parent and ar.docstatus=1
order by ard.assessment_criteria''' %', '.join(['%s']*len(assessment_plan_list)),
tuple(assessment_plan_list), as_dict=1, debug=True)
tuple(assessment_plan_list), as_dict=1)
for result in assessment_result:
if "total_score" in result_dict[result.student]:
@ -121,8 +121,11 @@ def execute(filters=None):
columns = get_column(assessment_criteria_list, total_maximum_score)
chart = get_chart()
data_to_be_printed = [{
"assessment_plan": ", ".join(assessment_plan_list)
}]
return columns, data, None, chart
return columns, data, None, chart, data_to_be_printed
def get_column(assessment_criteria, total_maximum_score):
columns = [{