def malnut(request, object_id=None, per_page="0", rformat="pdf"): '''List @Risk Malnutrition Cases per clinic ''' pdfrpt = PDFReport() fourteen_days = timedelta(days=30) today = datetime.now() duration_start = day_start(today - fourteen_days) duration_end = today pdfrpt.setTitle(_("%(app_name)s: @Risk Malnutrition Cases from"\ " %(start_date)s to %(end_date)s"\ % {'start_date': duration_start.date(), 'end_date': duration_end.date(), 'app_name': Cfg.get("app_name")})) #pdfrpt.setRowsPerPage(66) pdfrpt.setNumOfColumns(2) pdfrpt.setLandscape(True) if object_id is None and not request.POST: clinics = Location.objects.filter(type__name="Clinic") for clinic in clinics: queryset, fields = \ ReportAllPatients.malnutrition_at_risk(duration_start, \ duration_end, clinic) c = clinic subtitle = _("%(clinic)s: @Risk Malnutrition Cases from "\ "%(start_date)s to %(end_date)s" % \ {'clinic': c.name, 'start_date': duration_start.date(), \ 'end_date': duration_end.date()}) pdfrpt.setTableData(queryset, fields, subtitle, \ [0.2 * inch, 0.4 * inch, 1 * inch, 0.3 * inch, \ .3 * inch, .8 * inch, .5 * inch, .2 * inch, \ 0.5 * inch, 0.8 * inch, 1 * inch]) if (int(per_page) == 1) is True: pdfrpt.setPageBreak() pdfrpt.setFilename("/tmp/malnutrition_at_risk") else: if request.POST['clinic']: object_id = request.POST['clinic'] object_id = Location.objects.get(id=object_id) queryset, fields = \ ReportAllPatients.malnutrition_at_risk(duration_start, \ duration_end, object_id) subtitle = _("%(clinic)s: @Risk Malnutrition Cases from "\ "%(start_date)s to %(end_date)s" % \ {'clinic': object_id.name, \ 'start_date': duration_start.date(), \ 'end_date': duration_end.date()}) pdfrpt.setTableData(queryset, fields, subtitle, \ [0.2 * inch, 0.4 * inch, 1 * inch, 0.3 * inch, \ .3 * inch, .8 * inch, .5 * inch, .2 * inch, \ 0.5 * inch, 0.8 * inch, 1 * inch]) pdfrpt.setFilename("/tmp/malnutrition_at_risk") return pdfrpt.render()