web2py

6 views
Skip to first unread message

Ovidio Marinho

unread,
Oct 12, 2010, 7:57:14 PM10/12/10
to geraldo-pt
fiz o passo a passo e nao funcionou, a pergunta eh como chamar a view:

models:

reports.py

# coding: utf8
from geraldo import Report, landscape, ReportBand, ObjectValue
from reportlab.lib.pagesizes import A5
from reportlab.lib.units import cm

class ReportPurchase(Report):
title = 'Teste de PDF'
author = 'Ovidio Marinho - Casa Civil'
page_size = landscape(A5)
margin_left = 2*cm
margin_top = 0.5*cm
margin_right = 0.5*cm
margin_bottom = 0.5*cm

class band_detail(ReportBand):
height = 0.5*cm
elements=(
ObjectValue(attribute_name='id', left=0.5*cm),
ObjectValue(attribute_name='created_by', left=3*cm,
get_value=lambda instance:
instance.created_by.strftime('%d/%m/%Y')),
)
controllers:

def purchase_report():
from reports import ReportPurchase
from geraldo.generators import PDFGenerator
import gluon.contenttype
import StringIO

resp = StringIO.StringIO()

purchases = db(db.company.id >
0 ).select(orderby=db.cargos.company | db.company.id )
report = ReportPurchase ( queryset = purchases )
report.generate_by ( PDFGenerator , filename = resp )

resp.seek(0)
response.headers['Content-
Type']=gluon.contenttype.contenttype('.pdf' )
filename = "%s _Purchases.pdf" % (request.env.server_name )
response.headers['Content-disposition']="attachment;filename=\"
%s \" " % filename
return resp.read()

e a view????
Reply all
Reply to author
Forward
0 new messages