Child pages
  • Características GotoExcel

Geração de planilhas em Excel Office/Calc LibreOffice através do gatilho "ctrl+alt+E"


Objetivo:

 O Gotoexcel é um programa genérico para exportações de relatórios, com o resultado sendo uma planilha com extensão .xlsx. Compatível com Office Excel, a partir da versão 2013 e LibreOffice Calc a partir da versão 5.0. O gotoexcel pode apresentar comportamentos não previstos com outras versões do Office e Libreoffice e devido ao fato de algumas dessas versões não receberem mais suporte por suas desenvolvedoras e/ou serem desenvolvidos de modo colaborativo, pode haver impasses em uma solução.


Se tratando de um programa genérico para exportação, o gotoexcel deve manter compatibilidade com a grande parte dos programas. Nossa orientação é que sejam gerados relatórios padrões para os programas em que o relatório gerado pelo gotoexcel não venha a atender as necessidades

Fluxo de exportação:

Execução do GotoExcel:
  • Através do gatilho "ctrl+alt+E" em telas que possuam ou não grid/browser;
  • Programa se encontra dentro do foundation, pasta btb\btb944za.r.
Características Gerais:
  • Este programa gera planilhas com extensão .xlsx a partir de uma tela que possua grid/browser com formatação de cabeçalho/conteúdo/rodapé ou caso não possuir grid/browser gerará uma planilha com os devidos dados, porem, sem formatação estética, apenas formatação dos dados. O GotoExcel não efetua exportações de telas que possuam o componente treeview, ex.: MEN704AA;
  • Atualmente para exportar os dados de um grid/browser é necessário que o foco esteja no grid/browser efetuando um click no grid/browser antes da execução do gatilho;
  • Caso o programa que venha ser utilizado para exportação, possua varias folders/paginas com grids/browsers será exportado a pagina visível, no caso a pagina que esta visível/selecionada em tela terá seu grid exportado para a planilha;
  • Todos os dados exportados passam por validações de formatação. Não temos como garantir todas as formatações, mas dentro do possível, formatamos conforme o tipo/formato do dado. Dados que são do tipo alfanumérico são transformados para character, independente do formato de origem;

  • O gotoexcel possui uma serie de logicas para tentar validar a formatação de origemmas, talvez não atenda todos os casos. Um exemplo é o programa demonstrativo contábil (mgl204aa), onde a formatação do grid/browser é character e se tratando de um programa contábil mostra os valores negativos com parênteses "(40.256,99)" e o fato do dado em sua origem ser character e ainda possuir um caractere especial, no caso o parêntese "()" acaba sendo formatado como character na planilha final, o que resulta em alguns impeditivos para que utiliza formulas na planilhas. Nestes casos, a situação deve ser tratada pelo time responsável do programa de negócio em questão; 
  • Formatações efetuadas atualmente:
    • character: @ 
    • decimal: #.##,##
    • integer: ####
    • data: DD/MM/AA - DD/MM/AAAA - DD/MM/AAAA HRS
    • time: HH:MM - HH:MM:SS;
  • No geral a planilha gerada devera ser visualmente idêntica aos dados de origem, divergindo apenas em alguns casos o alinhamento das informações;
  • Em telas que possuírem mais de um grid/browser na mesma folder, sera exportado uma planilha por folder no visualizador do relatório (Office - Excel \ LibreOffice - Calc);
  • Durante a exportação do gotoexcel, são utilizados arquivos base para efetuar algumas previas formatações, caso estiver utilizando o Excel, será gerado um arquivo .txt no diretório temporário da sessão, se estiver utilizando o Calc é gerado um arquivo .csv;
  • Todos os dados que forem formatados como character receberam uma tag para fim de garantir a formatação e visualização do dado. A tag incluída será sempre sinal de igual mais aspas duplas (="dado"). Esta tag garante que um dado alfanumérico não sofra nenhuma formatação ou interpretação errônea da ferramenta de visualização (Office/Libreoffice) como exponenciação no dado ou outra formatação na qual o dado possa ser mal interpretado pelas ferramentas de visualização do relatório;
  • Em caso de divergências com casas de dezena/centena/milhar e outras questões quanto a formatação dos decimais, validar se as configurações regionais estão de acordo tanto no client Windows quanto no visualizador do relatório (Excel ou Calc). Um ex onde podem ocorrer problemas.: Formato de milhar e centena americano no windows e formato brasileiro no Office/LibreOffice;
  • Muitas das alterações solicitadas, como retirar o sinal de igual e aspas duplas, resultam em uma serie de impactos, tanto para os programas que já estão corretos, quanto para os clientes que já estão adequados com formulas e filtros para esta situação. Também há algumas inconsistências quanto a interpretação por parte dos programas utilizados para gerar/visualizar os relatórios (Office/libreoffice); 
  • Caso utilize o LibreOffice Calc e eventualmente se fizer necessário, há um log da dll utilizada para integração do produto com o Libreoffice, que se encontra na pasta temporária do usuário ("c:\users\usuário\temp") denominada dll.log, caso venha ocorrer alguma exceção a mesma estará registrada neste arquivo;

ALERTA:

Caso o gotoexcel venha a apresentar inconsistências quanto as cores que diferenciam o cabeçalho do corpo da planilha é devido a um problema por conta de um suplemento de COM que está ativo no office. Outro sintoma apresentado é que ao abrir uma planilha já existente, é aberta também uma planilha em branco (Plan1). Para resolver esta situação basta remover o suplemento "MYsql for excel" .

Desabilitando o suplemento:

Acessar o Excel, no ficheiro "Arquivo", acessar "Opções", dentro de opções selecionar "Suplementos", na aba suplementos, na parte inferior da tela no objeto list-box selecionar "Suplementos de COM" após isto clicar em "Ir", na tela seguinte desmarque a opção "MYsql for excel" e em seguida clicar em "ok", feito isto é só fechar o Excel e abri-lo novamente.