Colocar valor dinamico em band_page_header

17 views
Skip to first unread message

Salatiel Júnior

unread,
Jun 2, 2011, 1:45:47 PM6/2/11
to geraldo-pt
Eu to querendo colocar 2 valores que mudam de acordo com a data e com
a opção selecionada no band_page_header.
Porem não da pra usar o ObjectValue e eu não sei como fazer

É o seguinte, no band_page_header eu quero que fique uma frase assim:

Relatorio do mês [mes] do escritorio [escritorio]

se desse pra usar o ObjectValue seria facil, era apenas fazer +/- isso
ObjectValue(attribute_name='escritorio'....
Quanto ao mês eu tenho que o atributo 'entrada', tipo isso
ObjectValue(attribute_name='entrada'...., e com isso
formatar para aparecer apenas o mês.

Alguem pode me ajudar?

Milton Brandão

unread,
Jun 3, 2011, 9:28:23 AM6/3/11
to geral...@googlegroups.com
Olá Salatiel, bom dia

Vejamos se posso te ajudar.

Quando eu preciso de fazer isso eu uso uma variável específica e envio quantas informações eu precisar. Veja abaixo:

Na view.py

# Criar uma tupla
variaveis = {}
variaveis['mes'] = 'Junho/2011'   # aqui você formata do jeito que quiser
variaveis['escritorio'] = 'nome do escritório'   # aqui você formata do jeito que quiser

relatorio.generate_by(PDFGenerator, filename=resp, variables=variaveis)

No reports.py

....def __init__(self, *args, **kwargs):
........super(ReportNomeReport, self).__init__(*args, **kwargs)
........self.band_page_header.child_bands = [
............ReportBand(
................height=1*cm,
................elements=[
....................SystemField(expression='%(var:mes)s', top=0.9*cm, left=6.2*cm, width=2.5*cm, height=0.4*cm, truncate_overflow=True,),
....................SystemField(expression='%(var:escritorio)s', top=0.9*cm, left=6.2*cm, width=2.5*cm, height=0.4*cm, truncate_overflow=True,),
................]
............)
........]

Testa ai .. :)

--
Milton Neiva Brandão
Raminel Web - Sites, Sistemas Web, Cursos, Consultoria, ERP, HelpDesk, Suporte Profissional
www.raminel.com.br
(62)3264-1487
con...@raminel.com.br
Twitter: @raminelweb

MSN: milt...@hotmail.com
GTalk: milt...@gmail.com

Salatiel Júnior

unread,
Jun 3, 2011, 9:31:39 AM6/3/11
to geraldo-pt
Eu tinha pesado nisso, porem eu também tenho de enviar uma consulta
com todos os clientes do mes/ano e do escritorio
Por isso to com dificuldade.

On 3 jun, 10:28, Milton Brandão <milti...@gmail.com> wrote:
> Olá Salatiel, bom dia
>
> Vejamos se posso te ajudar.
>
> Quando eu preciso de fazer isso eu uso uma variável específica e envio
> quantas informações eu precisar. Veja abaixo:
>
> *Na view.py*
>
> # Criar uma tupla
> variaveis = {}
> variaveis['mes'] = 'Junho/2011'   # aqui você formata do jeito que quiser
> variaveis['escritorio'] = 'nome do escritório'   # aqui você formata do
> jeito que quiser
>
> relatorio.generate_by(PDFGenerator, filename=resp, variables=variaveis)
>
> *No reports.py*
>
> ....def __init__(self, *args, **kwargs):
> ........super(ReportNomeReport, self).__init__(*args, **kwargs)
> ........self.band_page_header.child_bands = [
> ............ReportBand(
> ................height=1*cm,
> ................elements=[
> ....................SystemField(expression='%(var:mes)s', top=0.9*cm,
> left=6.2*cm, width=2.5*cm, height=0.4*cm, truncate_overflow=True,),
> ....................SystemField(expression='%(var:escritorio)s', top=0.9*cm,
> left=6.2*cm, width=2.5*cm, height=0.4*cm, truncate_overflow=True,),
> ................]
> ............)
> ........]
>
> Testa ai .. :)
>
> --
> Milton Neiva Brandão
> Raminel Web - Sites, Sistemas Web, Cursos, Consultoria, ERP, HelpDesk,
> Suporte Profissionalwww.raminel.com.br
> (62)3264-1487
> cont...@raminel.com.br
> Twitter: @raminelweb
>
> MSN: milton...@hotmail.com
> GTalk: milti...@gmail.com

Milton Brandão

unread,
Jun 3, 2011, 9:35:19 AM6/3/11
to geral...@googlegroups.com
Não entendi então

2011/6/3 Salatiel Júnior <jr.sa...@gmail.com>



--
Milton Neiva Brandão
Raminel Web - Sites, Sistemas Web, Consultoria, ERP, HelpDesk, Suporte Profissional
www.raminel.com.br
(62)3264-1487
con...@raminel.com.br
Twitter: @raminelweb        @miltinhobrandao

MSN: milt...@hotmail.com
GTalk: milt...@gmail.com

Salatiel Júnior

unread,
Jun 4, 2011, 8:05:17 AM6/4/11
to geral...@googlegroups.com
Eu havia pensado nisso que você falou, porem além de enviar para meu relatório o mes/ano e nomeEscritorio eu preciso mandar
uma consulta, tipo essa:

query = Cliente.objects.filter( escritorio=escr).exclude(entrada__gte=date(ano,mes,ultimoDia)).filter(entrada__gte=date(ano, mes, 1)).order_by('nome')
resp = HttpResponse(mimetype='application/pdf')
rel = RelatorioClienteData(queryset=query)
rel.generate_by(PDFGenerator, filename=resp)

--
Att
Salatiel Araujo de Medeiros Junior
Bacharelando em  Sistemas de Informações
Reply all
Reply to author
Forward
0 new messages