def vitamines(request, object_id=None, per_page="0", rformat="pdf"): '''List of Cases/Children Eligible for vitamines not yet vaccinated''' has_data=0 pdfrpt = PDFReport() pdfrpt.setLandscape(False) #pdfrpt.setTitle("RapidResponse MVP Kenya: Cases Reports by CHW") pdfrpt.setTitle(_("Vitamines A Campaign")) if object_id is None: if request.POST and request.POST['site']: id_loc=request.POST['site'] loc=Location.objects.get(id=id_loc) #reporters = Case.objects.filter(location=loc).\ # values('reporter', 'location').distinct() reporters = Reporter.objects.filter(location=loc) per_page = "1" else: reporters = Reporter.objects.all() for reporter in reporters: queryset, fields = ReportAllPatients.vitamines_by_provider(reporter) if queryset: title = reporter.location.name + ": " + \ reporter.full_name() + \ " (sms format: `VITA +PID +PID +PID`)" pdfrpt.setTableData(queryset, fields, title) if (int(per_page) == 1) is True: pdfrpt.setPageBreak() pdfrpt.setFilename("/tmp/report_per_page") else: if request.POST and request.POST['provider']: object_id = request.POST['provider'] reporter = Reporter.objects.get(id=object_id) queryset, fields = ReportAllPatients.vitamines_by_provider(reporter) if queryset: title = reporter.full_name() + \ " (sms format: `VITA +PID +PID +PID`)" if rformat == "csv" or (request.POST \ and request.POST["format"].lower() == "csv"): file_name = reporter.full_name() + ".csv" file_name =file_name.replace(" ", "_").replace("'", "") return handle_csv(request, queryset, fields, file_name) pdfrpt.setTableData(queryset, fields, title) if (int(per_page) == 1) is True: pdfrpt.setPageBreak() pdfrpt.setFilename("/tmp/report_per_page") return pdfrpt.render()