DES:GRWeb

De Wiki Unioeste NTI
Ir para: navegação, pesquisa

VoltarVoltar a Página Inicial - Menu Sistemas


Tabela de conteúdo

Gerador de Relatórios web/iReport

Introdução

Este documento descreve como usar o Gerador de Relatórios web juntamente com o iReport

Gerador de Relatórios Web

  • Os relatórios e sub-relatórios deverão ser carregados individualmente
  • No relatório principal carregar o arquivo com extensão .jrxml, pois algumas informações são extraídas do XML, como a consulta SQL; Já para os sub-relatórios, carregar os arquivos compilados (.jasper)

Acessando o log de erros

Acesse o endereço http://server2.midas.unioeste.br:9990/, vá em Runtime -> Hosts, escolha o host/server e clique em logs -> view

Local de armazenamento dos relatórios

Os relatórios ficam armazenados no servidor 200.201.88.170 no diretório /usr/local/sistemas/relatorios/

Tipos

  • Quando houver o tipo TEXT (Classe Clob) utilizar o seguinte em FieldExpression:
    • $F{CAMPO}.getSubString( 1, 9999) //para truncar em 9999 OU
    • $F{CAMPO}.getSubString( 1, $F{CAMPO}.length().intValue()) //para não truncar OU
    • CAST para varchar/nvarchar na própria SQL //para truncar que o tipo convertido tem

iReport com sub-relatórios

  • Criar um arquivo (.jrxml) para cada relatório
  • No elemento sub-relatório do relatório principal, em Subreport Properties configurar
    • Subreport Expression, ligando o relatório principal e o sub-relatório, tomando o cuidado para não deixar o caminho do diretório fixo, ou seja, usar o parâmetro $P{prmCaminho}. Ex: $P{prmCaminho} + "GR200-sub1.jasper"
    • Connection Type: selecionar a opção use a connection expression
    • Connection Expression: configurar selecionando o parâmetro Report_Connection
    • Parameters: configurar os parâmetros e as respectivas colunas da consulta SQL
  • No sub-relatório deverão ser criados no item Parameters os campos de ligação entre as consultas SQL do relatório principal e do sub-relatório, bem como deverão ser colocados no SQL do sub-relatório
  • O sub-relatório não deverá ter margens, pois serão usadas as definidas no relatório principal

iReport: criação de conexão com BD

  • Clicar em Report DataSources
  • DataSource type: Database JDBC Connection
  • JDBC Driver: MS SQLServer (net.sourceforge.jtds.jdbc.Driver)(o arquivo deve estar em C:\Program Files (x86)\Jaspersoft\iReport-4.1.1\ireport\modules\ext\jtds-1.2.5 e ser adicionado o caminho no CLASSPATH)
  • JDBC URL: jdbc:jtds:sqlserver://200.201.88.206/bdAcademicoProducao


IReport-BD-Configuracao de Conexao.png

Fontes e Styles em campos

  • Usar o Style padrão em vários campos pode reduzir o tempo para aplicar um mesmo estilo a todos os campos do relatório.
  • Para alterar as FONTES/STYLES DINAMICAMENTE de um relatório realizar os seguintes passos:

1° - adicionar um style padrão (aplicar este em todos os campos que deverão ser alterados)
2° - botão direito sobre o style criado e "Adicionar Style Condicional"
3° - definir as propriedades do style condicional, quando a condição definida for satisfeita as propriedades do condicional serão aplicadas sobrescrevendo o style padrão.

- Pode-se definir diversos estilos diferentes que são trocados conforme o valor de um parâmetro enviado, assim podemos ir setando a fonte, cores e outros conforme a necessidade.
- A aplicação de apenas parte das propriedades no style não irá afetar propriedades definidas nos campos, por ex. Desejo alterar a fonte de todos os campos, mas alguns são em negrito e outros em itálicos, então é só definir a fonte dos campos como padrão (Restore valor padrão na fonte) e aplicar o negrito e itálico conforme precisar. **só é sobrescrito o que for definido no style e for padrão no campo.


  • Observação: Caso o estilo criado não for aplicado visualmente quando executado o relatório, os campos que possuem o Style (especificamente as propriedades do campo) devem ser setadas com os valores padrões, para isso: botão direito sobre a propriedade do campo e "Restaurar Valor Padrão". Caso não seja feito isso as propriedades do campo sobrescrevem a propriedade do style.

Trace no relatório

  • Abrir o SQL Profiler
  • Aba General > Use the template: TSQL
  • Aba Events Selection > Column Filters > filtro LoginName: domínio\usuário (ex: unioestenet\liege.ciupak)


Validação de Documentos

A rotina para validar documentos foi criada com a finalidade de emitir documentos para a comunidade da UNIOESTE através dos sistemas WEB. A emissão de documentos que podem ter sua validade comprovada através da internet é útil para a emissão de declarações de matrículas, certificados e outros.

Os documentos são emitidos como um relatório normal do iReport, chamando a rotina de geração e devolvendo o relatório, porém parâmetros adicionais devem ser enviados na requisição para que o sistema entenda que esta solicitação deve ser gravada na tabela de documentos emitidos para que posteriormente seja efetuada uma consulta à validade do documento e/ou o documento seja recuperado na íntegra.

UTILIZAÇÃO

  • Os documentos emitidos podem ser manipulados através da classe DctEmtWebUtil, essa classe possui alguns métodos para criação e manipulação dos documentos.
  • Quando for solicitada a geração de um relatório que deve ser salvo, o parâmetro "salvarParaValidar" deve ser informado com 'T' (true), ou enviado através das opções (mesma opção com parâmetro 0 - salvarParaValidar)
  • Caso o documento já exista e o resultado do relatório deva ser gravado nele, o parâmetro "dctEmtWebSequencia" deve ser enviado juntamente com o parâmetro para salvar. Estes parâmetros só precisam ser enviados manualmente quando o relatório é emitido sem o auxílio da classe DctEmtWebUtil.java, pois está já faz os devidos tratamentos em seus métodos.
  • A banda PageFooter do iReport deve estar disponível, pois serão gravados nela os elementos da validação.

Existe uma rotina que realiza periodicamente a limpeza da tabela de documentos, removendo assim os arquivos PDF da tabela para que não utilizem espaço de armazenamento após tornar-se inválido, vencido ou substituído.

DctEmtWeb

  • A validade é armazenada com base no que está cadastrado na tabela RLT_Relatorio e no dia atual. Caso não gerar faixa de validação, também não guardará a validade.
  • O campo sistema geralmente estará como "Relatum", a menos que for gerado por um sistema no java (Ex: certificados em lote, declaração de matrícula que salva outra tabela, etc)

Bandas automáticas nos Relatórios

Cabeçalho Padrão

  • Ocupa altura de 45px na banda PAGEHEADER (logo da unioeste; título do relatório; data/hora; página; filtros; ordenações;)
  • Ocupa altura de 10px na banda PAGEFOOTER (nome e código do sistema; login e código do usuário que imprimiu o relatório; código do relatório;)

Cabeçalho com Timbre

  • Ocupa altura de 120px na banda PAGEHEADER (logo da unioeste; escudo do paraná; endereço da unidade selecionada;)
  • Margens:
    • superior 1,5cm 42px;
    • esquerda 3cm 85px;
    • direita 2cm 57px;
    • inferior 2cm 57px;
  • O endereço padrão no Timbre é da Reitoria. Para especificar, utilize o parâmetro prmStrCodigo com o setor da unidade desejada (campus,hu,etc)

Banda de Validação

  • Ocupa altura de 27px na banda PAGEFOOTER (data/hora emissão; identificador; validade; site para validação;)
  • Se houver cabeçalho padrão, vai juntar com o rodapé do cabeçalho padrão, com altura de 48px
  • Para usar validação, use o parâmetro salvarParaValidar
    • Se cadastrar parâmetro como filtro, deverá passar o valor T para ativar a validação e F para não usar validação;
    • Se cadastrar parâmetro como opção, deverá passar o valor 0 para ativar a validação, e 1 para não usar validação;
  • Também pode-se usar o parâmetro salvarParaValidarInv, com os valores invertidos. Foi criado para usar nas opções, sendo opção padrão não ter a faixa de validação.
Ferramentas pessoais
Espaços nominais
Variantes
Ações
Navegação
Ferramentas