Relatórios - nova versão

Documentação e detalhamento técnico da versão da nova estrutura de relatórios separada do GTK este artigo também apresenta os passos para criar um novo relatório.

📋 Detalhes técnicos

Nessa versão há uma separação de dependência, na qual o WCF / GTK não é mais necessário para armazenar os relatórios, os quais são armazenados na tabela “Relatorio” no banco destes serviço, essa tabela possui a marcação de “Tipo” que define se é um Relatorio (export de dados, visualizações, etc) ou um Documento (documento específico de operação tal como CTe, contrato carreteiro etc).

Views e relatórios (padrão) são armazenados no próprio microserviço o qual os devs terão acesso de dar manutenção e atualização.
Na pasta “Infra/Import” há as pastas “Documentos”, “Relatorios”, “ViewsOracle” e “ViewsSqlServer”.

Toda a vez que o serviço for iniciado será executado um método que vai “reimportar” todos esses arquivos padrão. PORTANTO, não deve ser editado o relatório padrão nos clientes, para isso tem o processo de personalização que será melhor descrito adiante.

A view oracle deve ser mantida nesse repositório com os nomes normais de tabelas, ao subir o serviço, haverá um processo de substituição de nome de tabela/coluna (exemplo: CadCadastroGeral_CadCadastroGeraltipo para CadCadastroGeral_CadCadastr1231).

Para facilitar o desenvolvimento de views oracle foi feito uma API para auxiliar nessa conversão,

Basta desenvolver a query da view no banco destino normalmente e quando estiver finalizada utilizar a API para converter os campos para as tabelas originais:

 

  Instruções

Views Padrão do Forlog

Passo a passo do programador:

  1. Desenvolver a view (lembrar de fazer para Oracle e Sql);

  2. Extrair View do banco utilizado via serviço de relatórios (através do serviço de relatórios na porta 16000), será um arquivo do tipo sql e o nome será o nome da view, não deve ser alterado caso contrário pode gerar algum problema na importação!

    1. Essa extração se deve pelo fato do Oracle poder ter nome de tabelas diferentes do nome das tabelas do SQL, então há um processo de conversão dos nomes das tabelas na Extração/Importação quando Oracle, é possível testar essa Conversão de nomes através do seguinte método no postman:

      1. Observe que a tabela CadCodigoSituacaoTributariaTipoImposto foi alterada para CadCodigoSituacaoTribut_21 que é o nome desta tabela no banco destino.

  3. Inserir a views no serviço conforme o tipo de banco de dados Oracle ou SqlServer;

     

  4. Se for uma View custom de outro cliente, deve ser exportado e importado diretamente via serviço de relatórios (através do serviço de relatórios na porta 16000)

Relatórios / Documentos

Assim como as View o sistema contará com repositório padrão de relatórios.

  1. Desenvolver o relatório, clique em “Novo”;

    1. Observe algumas configurações importantes, nome do relatório e sua descrição são informadas nas propriedades.

  2. Exportado pelo sistema de relatório, o qual será um arquivo json o nome do arquivo é o nome do relatório;

  3. Deve ser inserido no repositório de relatórios do serviço (segundo seu tipo Relatório ou Documento):

  4. Para relatórios totalmente custom, podem ser importados diretamente pelo serviço de relatórios.

Front-End

Exemplo de uso do Campo para relatório, o form com um CampoRelatorio terá o seguinte comportamento:

Os campos de tipos primitivos (number, string, bool) serão utilizados como filtro ao clicar no botão do relatório como filtros já informados, o comportamento do botão depende de como foi configurado abrindo em janela ou em uma modal na tela (podendo alterar o filtro utilizado).

Em Forms dinâmicos, ao cadastrar o form

Largura e altura Modal são dadas em % em relação ao tamanho da tela.

 

Em forms customizados

new CampoRelatorio({label: '', nome: 'nomeDoCampo2', icone: 'fas fa-table', relatorio: 'Teste_custom', tooltip:'Exemplo de uso do campo relatório', larguraModal: 85, alturaModal: 90, alturaTela: 800, formaExibicao: 'aba', //'inline' ou 'modal' labelBotao: 'Filtrar no Relatorio', submit: true, larguraLg:12}),

 

Apontando serviço do Relatórios para um banco

Há um arquivo ServerWCF.exe.config que possui as configurações do banco para rodar em Debug, em ambientes implantados essa configuração é compartilhada com o serviço do WCF.

 

Destaque informações importantes em um painel como este. Para editar a cor ou o estilo desse painel, selecione uma das opções no menu.

 Artigos relacionados