def _pi_report(request, view_slug): """ Generic report engine for the performance indicator reports """ if not request.datespan.is_valid(): messages.error(request, request.datespan.get_validation_reason()) return render_to_response(request, "reports/pi_report.html", {"show_dates": True, "report": None}) clinic_id = request.GET.get("clinic", None) results = _pi_results(view_slug, request.datespan.startdate, request.datespan.enddate, clinic_id) report = PIReport.from_view_results(view_slug, results) main_clinic = Location.objects.get(slug=clinic_id) if clinic_id else None return render_to_response(request, "reports/pi_report.html", {"show_dates": False, "hide_districts": True, "main_clinic": main_clinic, "clinics": clinics_for_view(), "districts": districts_for_view(), "view_slug": view_slug, "report": report})
def export_pis(request, report_slug): clinic_id = request.GET.get("clinic", None) results = _pi_results(report_slug, request.datespan.startdate, request.datespan.enddate, clinic_id) report = PIReport.from_view_results(report_slug, results) return _export_pis(report, report_slug)