Linkedin

Total de visualizações de página

sábado, 17 de novembro de 2012

Guia completo para integração do Protheus com o iReport



Para quem não conhece o iReport é uma ótima alternativa para criação de relatórios. O Protheus possui uma integração nativa com esta poderosa ferramenta. Porém, pesquisando em alguns fóruns e documentações, percebi que há pouco material explicando o funcionamento desta integração, então foi desenvolvido este tutorial completo a respeito da integração do Protheus com o iReport.

Preparativos iniciais.

Este tutorial foi feito levando em base as seguintes configurações:
  • Protheus 10 (atualizado em abril/2012)
  • Java 6 update 31
  • iReport 4.5.1
  • Windows server 2003
  • Banco de dados MSSQL 2005
  1. Inicialmente é necessário baixar os arquivos atualizados do iReport no site do suporte da TOTVS, como na imagem:
  2. Descompacte e substitua a pasta iReport do diretório base do Protheus pela pasta com o mesmo nome baixado na atualização.
  3. Baixe o driver JDBC relativo ao seu banco de dados, no meu caso o da Microsoft, que pode ser encontrado neste site: http://msdn.microsoft.com/en-us/sqlserver/aa937724
  4. Coloque o driver baixado na pasta JDBC do iReport
  5. ganhar dinheiro
  6. Compile a atualização baixada na atualização (ptm) utilizando a ferramenta TotvsDevStudio
  7. Abra o configurador (SIGACFG) e edite o menu do configurador, adicionando uma nova opção, conforme imagem abaixo. Descrição: iReport Wizard, módulo: configurador, programa: CFGIREPORT, tipo: função protheus.
  8. Baixe e instale o java 6 (http://www.java.com/pt_BR/download/), tanto no servidor quanto na estação de trabalho
  9. Baixe e instale o iReport (http://jasperforge.org/website/ireportwebsite/IR%20Website/ir_download.html?header=project&target=ireport)
  10. É necessário habilitar o webservice do Protheus, caso o seu não esteja habilitado, siga estas instruções:
    1. Execute o Wizard de configuração do .INI no servidor do Protheus
    2. Habilite o protocolo HTTP como na imagem abaixo. Verifique se a porta utilizada não está ocupada por algum outro serviço do sistema operacional.
    3. Agora com o protocolo habilitado, no menu "Módulos web", inclua um módulo,  seguindo as orientações das imagens.
    4. Escolha o módulo WS, um nome para instancia (no caso ws) e habilite a inicialização do processo com o sistema.
    5. Após clicar em avançar, o sistema irá perguntar se deve descompactar os arquivos do portal na pasta. Escolha sim.
    6. Relacione as empresas com o endereço de acesso.
    7. É importante que a porta utilizada pelo módulo seja a mesma configurada para o protocolo http. Neste caso foi utilizada a porta 85 com o ip 192.168.0.18 (ip do servidor)
    8. Escolha um diretório virtual para o serviço, neste caso foi utilizado o /ws
    9. Preencha a quantidade mínima e máxima de usuários
    10. Finalize o processo e reinicie o serviço do sistema.
    11. Teste o webservice no ip, porta e diretório escolhido através do navegador web. Deve ser apresentada uma tela com o descritivo dos serviços web ativos, caso não apareça esta tela, tente configurar novamente o webservice.
  11. Com o web service funcionando, pode-se partir para a criação de um relatório simples no iReport para testes iniciais. Se você ainda não tem muita experiência em desenvolvimento com o iReport, baixe no final deste artigo um exemplo de relatório.
  12. Com o relatório em mãos, acesse o menu criado no configurador (iReport Wizard), e siga os passos das imagens
  13. IMPORTANTE: no passo 16 é necessário colocar o relatório *.jrxml em um drive local, ex. c:\, caso contrário o sistema apresenta um erro.
  14. Adicione o relatório criado em algum menu, lembrando de preencher o nome físico do relatório (sem a extensão) no campo Programa e no tipo com Relatório iReport.
  15. Testar o menu criado, se tudo ocorreu bem, irá aparecer uma tela como esta:
  16. Clique em vídeo
  17. Está pronto.

4 comentários:

  1. Tava querendo muito implantar isso aqui, mais empaquei logo no inicio. No configurador do Ireport como eu sei dados como URL do Web service ? url do banco etc... ?

    ResponderExcluir
  2. Você esta definindo a url e porta, na configuração do webservice.

    ResponderExcluir
  3. e a parte de parâmetros que eu coloquei no ireport, vai funcionar como lá? do mesmo jeito?

    ResponderExcluir
  4. No momento de gerar no Protheus não gera nada e também não dá erro, gerou um pequeno log no arquivo RunReport.log:

    "Jul 01, 2013 2:38:52 PM com.microsiga.iReportRun.run.RunReport main
    INFO: Version: 11.20120612.4.6.0
    Jul 01, 2013 2:38:52 PM com.microsiga.iReportRun.run.RunReport main
    SEVERE: Were informed only 17 parameter"

    Podem me ajudar?

    ResponderExcluir