Assunto

Produto:

Framework

Versões:

12.1.5

Ocorrência:

Totvs Reports

Ambiente:

Biblioteca RM

  

Passo a passo:

Objetivo:



O objetivo dessa página é detalhar a funcionalidade de “Diagnóstico de execução" disponibilizada no Totvs Reports.

Esse recurso possibilita a visualização de todas as informações relacionadas à "memória de execução" dos relatórios durante o processo de geração.

Ele pode ser usado para detectar diversos tipos de falhas ocorridas durante o processo de geração (inconsistência nos dados apresentados, gargalos de performance, estouro de memória, etc).

 

1) - Geração do arquivo de diagnóstico:


Ao executar o relatório através do processo "Assistente de geração de relatórios", basta selecionar a opção "Gerar diagnóstico de execução" conforme figuras abaixo.




Após a geração do relatório, será criado um arquivo com extensão ".ecl" no diretório da máquina "Host" da RM (C:\totvs\CorporeRM\RM.Net\Processos\Logs\Report).


  • Em ambientes 3 camadas, com várias máquinas host, o arquivo será gravado na máquina "host" responsável pela execução do Job em questão.
  • Em caso de geração de relatórios proveniente de outras telas do RM (anexo de visão, menus específicos de produtos, etc) o arquivo de diagnóstico sempre será gerado;

 

2) - Análise do atributos:

A análise das informações geradas pelo diagnóstico deve ser feita usando a tela de "Diagnóstico de execução"localizada na visão de relatórios, conforme figuras abaixo:

 

O usuário deverá selecionar o arquivo gerado pelo processo de execução de relatório disponibilizado no caminho (C:\totvs\CorporeRM\RM.Net\Processos\Logs\Report).




Informações de análise:

Todos as informações utilizadas pelo "motor" de geração de relatórios são geradas e gravadas dinamicamente nesses arquivos de diagnósticos de execução. Portanto, as informações listadas na tela de análise de diagnóstico dependem das características do relatório em questão. Por exemplo, relatório que possuem fórmulas apresentarão todas as informações necessárias para a execução das fórmulas. Relatórios que possuem storedProcedures apresentarão informações relacionadas as storedProcedures (nome, parâmetros das storedProcedures, etc).

 

 

a) - Contexto de execução: informações diversas utilizadas pela engine de geração de relatórios.

      • Diagnóstico de execução: informações diversas de contatores de performance e contadores de memória;

        • Preparação de dados: tempo gasto no processo de deserialização do layout do relatório e preparação das informações de execução;

        • Carga de dados: tempo gasto no processo de recuperação dos dados do relatório do banco de dados;

        • Ajuste no relatório: tempo gasto no processo de ajuste dos objetos da Devex para o correto funcionamento do relatório;

        • Tamanho (MB) da fonte de dados: volume dos dados recuperados do banco (em MB);

        • Tamanho (MB) da serialização do relatório: volume do relatório gerado (em MB);

        • etc;


      • Informações do relatório:informações relacionadas ao cadastro do relatório na base de dados (ex: tipo do relatório, provedor de dados do relatório, etc);

      • Parâmetros do relatório: parâmetros de entrada de dados do relatório;

      • Parâmetros do provider:parâmetros de entrada de dados dos provedores de dados;

      • Filtros de relatório: filtros dos relatório;

      • Filtros de fórmula: filtros utilizados pelos controles de fórmulas;

      • Informações globais:informações gerais utilizadas pelo relatório;

b) - rptReport1 - [Report principal]: informações diversas relacionadas aos componentes disponibilizados no relatório (bandas, controles, subDetalhes, etc).

      • Membro: informações diversas de atributos de dados:
        • Relacionamentos Indiretos: informações de relacionamento entre os membros;
        • Lista de campos de DB: Campos da tabela que estão ligados aos diversos controles (esses campos são utilizados nas sentenças sql);
        • Lista de campos DB fora do membro: tratam-se de campos utilizados nas clausulas "left outerJoin". Esses campos não fazem parte da tabela ligada a banda;
        • Clausula da consulta sql: informações diversas sobre as sentenças sql geradas dinamicamente;
          • Campos da consulta sql: colunas recuperadas pela sentença sql;
          • Cláusula From: tabelas localizadas na clausula From;
          • Cláusula Inner: informações da InnerJoin;
          • Cláusula Left Outer Join: informações da cláusula leftOuterJoin;
          • Cláusula Select: sentença completa a ser executada no banco;
          • Cláusula Where: informações da cláusula Where;
          • Order By: Informações de ordenação (order by);
        • Bandas: informações diversas das bandas (detalhe e subDetalhe) e informações diversas de controles. Nessa sessão, as particularidades de cada controle podem ser analisadas.

 

3) - Análise do erros e avisos:

Informações diversas de avisos e erros encontrados no relatório.

 

Para localizar a origem do erro, basta dar um duplo click sobre a mensagem de erro ou aviso listado na janela de mensagens;

  
  

Observações: