Árvore de páginas

Objetivo


Permitir que o usuário exporte os dados gerados por um relatório para uma planilha.

Matriz de Evolução

Versão / ReleaseDescrição
12.1.4Liberação da nova funcionalidade de exportação de relatórios para planilha

Índice

Layout suportado


Não existe no produto Datasul uma definição de layout de relatório definido e por este motivo nem todos os relatórios serão exportáveis para planilha. Os relatórios exportáveis para planilha basicamente deverão ter um layout parecido com o mostrado abaixo:


Layout Suportado

Relatórios suportados


Todos os relatórios do produto Datasul, EMS 2 e EMS 5, podem ser exportados para planilha desde que atendam ao layout suportado e sejam configurados para exportação para planilha conforme será mostrado na próxima seção.

Como funciona


Para que a exportação de relatórios para planilha seja habilitada no produto Datasul são necessárias alguma configurações prévias conforme itens a seguir:

Habilitar a exportação de relatórios para planilha


Primeiramente é preciso habilitar a exportação de relatórios para planilha no programa BTB946AA - Parâmetros Gerais Módulo Básico conforme mostrado abaixo:


Habilitar Exportação de Relatórios para Planilha

Configurar Programa x Tipos de relatórios


Depois de habilitar a exportação dos relatórios para planilha no programa BTB946AA - Parâmetros Gerais Módulo Básico é preciso configurar o tipo de relatório suportado no programa BAS_PROG_DTSUL - Manutenção de Programa indicando a opção "Texto e Excel" ou "Texto PDF e Excel" conforme mostrado abaixo. Este procedimento precisará ser repetido para cada programa gerador de relatório que se deseja exportar os dados para planilha e lembrando que o mesmo deve gerar um relatório cujo layout é similar ao layout suportado pela função de exportação de relatórios para planilha.


Configurar Tipo de Relatório

Configurar saída do relatório


O próximo passo é, ao executar o programa de relatório, alterar a saída do relatório selecionando a opção "Excel" conforme mostrado na figura abaixo.


Executar o relatório


Ao clicar no botão "Executar" o relatório será gerado conforme o destino selecionado e então o arquivo gerado será lido e as informações serão coletadas para que a planilha possa ser gerada.

Restrições


A exportação do relatório para planilha somente estará disponível quando o destino do mesmo for igual a "Arquivo" ou "Terminal" e a execução for igual a "On-line".

Ao selecionar a opção de destino "Impressora" ou selecionar a execução "Batch" a opção "Excel" não será mostrada e se a opção "Excel" for selecionada a opção de destino "Impressora" e a opção de execução "Batch" serão desabilitadas.

Nome do arquivo gerado


Quando o formato de saída selecionado for igual a “Excel” então o nome do arquivo gerado será alterado de modo que o mesmo contenha o nome do usuário e um identificador de data e hora conforme o exemplo abaixo:

Exemplo:

  • UTB303AA_SUPER_20150108064898.XLS

O identificador acrescentado seguirá o seguinte padrão:

  • YYYY + MM + DD + HH + MM + SS

Onde:

  • YYYY : Ano atual com quarto dígitos.
  • MM : Mês atual com dois dígitos.
  • DD : Dia atual com dois dígitos.
  • HH : Hora atual com dois dígitos.
  • MM : Minuto atual com dois dígitos.
  • SS : Segundo atual com dois dígitos.

Para os relatórios do EMS2 o nome do arquivo será alterado sempre que a opção de destino do relatório for igual a “Terminal” ou “Arquivo” e o formato de saída do relatório for igual a “Excel”. Esta alteração sempre irá ocorrer quando o programa BTB/BTB901ZS for encerrado e a opção “Excel” for selecionada ou quando o usuário alterar o destino do relatório e a opção “Excel” foi previamente selecionada no programa BTB/BTB901ZS.

Para os relatórios do EMS5 a regra para o nome do arquivo é a mesma, ou seja, o nome do arquivo será alterado sempre que a opção de destino do relatório for igual a “Terminal” ou “Arquivo” e o formato de saída do relatório for igual a “Excel”. Esta alteração sempre irá ocorrer quando o programa PRGTEC/BTB/BTB901ZS for encerrado e a opção “Excel” for selecionada ou quando o usuário disparar a execução do relatório.

Isso se deve a uma limitação tecnológica pois não é possível sobrescrever o evento de “VALUE-CHANGED” do radio-set responsável por determinar o tipo de destino do relatório no EMS5. Então o nome do arquivo não será alterado ao mudar o destino do relatório e sim somente quando a execução do mesmo for iniciada. Somente neste momento é que o nome do arquivo alterado será visualizado em tela.

Local de destino do arquivo


As regras quanto ao local de destino do arquivo continuam inalteradas mudando apenas o nome do arquivo devido ao acréscimo do nome do usuário e do identificador de data e hora ao arquivo assim como as demais regras para os demais destinos de relatório não mencionados neste documento.

Layout do relatório não suportado


Se o layout do relatório não for reconhecido, será mostrada mensagem para o usuário informando que não foi possível exportar os dados para uma planilha conforme imagem abaixo.


Mensagem de erro de layout de relatório não suportado


Ao ler o relatório gerado é feita uma tentativa de reconhecer o layout do relatório e caso o mesmo não seja reconhecido como um layout suportado pelo Goto Excel então será mostrada uma mensagem ao usuário informado que não foi possível exportar os dados e nenhuma outra ação será executada.

Não serão suportados neste primeiro momento relatórios que contenham dados fora da tabela, ou seja, campos identificados como Campos Iniciais ou Campos Finais. Também não serão suportados relatórios que contenham quebra de dados como por exemplo o relatório RPT_BANCO – Relatório Bancos que lista os bancos cadastrados e também as agências relacionados aos bancos.

Configurador do exportador de relatórios para planilha


Após a geração do relatório, o arquivo do mesmo é lido e então o configurador de exportação do relatório para planilha é executado.

Configurar exportação da primeira e última página do relatório


Abaixo temos um exemplo de como a primeira tela do configurador de exportação de relatórios se parece.



Na primeira tela do configurador serão mostradas a primeira e a última página do relatório e é onde também será possível indicar se as mesmas serão ou não exportadas bastando para isso marcar a opção "Ignorar" da primeira e/ou última página.

Configurar a identificação das linhas do relatório


O próximo passo do configurador é a tela onde aparecem as linhas da primeira página do relatório e nesta tela é possível modificar o tipo da linha selecionando uma das opções disponíveis no campo Tipo.


Configurar quais campos serão exportados


Depois de configurar o tipo das linhas do relatório é possível indicar quais os campos do relatório que serão exportados para a planilha conforme mostrado abaixo.


Configurar os campos do relatório


E finalmente, no último passo do configurador é possível unir campos adjacentes ou dividir campos que foram previamente unidos assim como remover um campo para que o mesmo não seja exportado para a planilha.

Ainda nesta tela também é possível ajustar a posição inicial e final dos campos que serão exportados para a planilha mostrando o resultado de como irá ficar logo abaixo na seção Registros.Na seção Registros temos uma escala numérica e uma escala gráfica para facilitar a visualização do registro selecionado no browse acima.


Planilha gerada

Finalmente, depois de tudo configurado o relatório é exportado para planilha e a mesma é executada conforme mostrado abaixo.



A exportação do relatório para planilha pode ser realizada em qualquer momento não sendo necessário prosseguir até o final do configurador para que a planilha seja gerada.

Armazenamento das configurações

Ao confirmar a exportação da planilha as configuração realizadas pelo usuário serão armazenadas no diretório temporário do usuário para ser utilizados em execuções futuras do mesmo relatório. As seguintes configurações serão armazenadas:

  • Ignorar primeira e / ou última página do relatório.
  • Campos que serão ou não visualizados.
  • Campos mesclados com outros campos.
  • Posição inicial e final de cada campo.

As configurações serão gravadas em arquivos no formato JSON que estarão localizados no diretório temporário da sessão do usuário e serão carregadas no momento de executar a exportação dos dados para planilha. Os arquivos de configuração seguirão o seguinte padrão de nome conforme abaixo:

  • <código_do_programa>_<código_do_usuário>_ttField.json
  • <código_do_programa>_<código_do_usuário>_ttFPage1Config.json
  • <código_do_programa>_<código_do_usuário>_ttPosition.json

Arquivos de configurações

No arquivo ttLine.json estarão as informações de quais os tipos de linha foram alteradas no relatório, conforme exemplo abaixo:

{"ttLine": [

{
"iPageNumber": 1,
"iLineNumber": 18,
"cLineType": "Campos Ini",
"logIgnored": false
},
{
"iPageNumber": 1,
"iLineNumber": 19,
"cLineType": "Campos Fim",
"logIgnored": false}]}

No arquivo ttField.json estarão as informações sobre os campos do relatório conforme exemplo abaixo:

{"ttField": [{

    "iSequency": 1,

    "cOriginalSequency": "",

    "cField": "Descrição                                ",

    "logShow": true,

    "logRepeat": false,

    "logEnabled": true},{

    "iSequency": 2,

    "cOriginalSequency": "",

    "cField": "Impressora   ",

    "logShow": true,

    "logRepeat": false,

    "logEnabled": true}]}


No arquivo ttFPage1Config.json estarão informadas se a primeira e / ou a última página do relatório serão ignoradas conforme exemplo abaixo:

{"ttFPage1Config": [{

    "logIgnoreFirstPage": false,

    "logIgnoreLastPage": false }]}


No arquivo ttPosition.json estarão as informações sobre as posições dos campos do relatório conforme exemplo abaixo:

{"ttPosition": [ {

    "iSequency": 1,

    "cFieldName": "Descrição                                ",

    "iInitialPosition": 1,

    "iFinalPosition": 41,

    "logEnabled": true }, {

    "iSequency": 2,

    "cFieldName": "Impressora   ",

    "iInitialPosition": 42,

    "iFinalPosition": 54,

    "logEnabled": true  }]}