Geração de relatórios em arquivos Excel
Formatação no excel do arquivo XLS gerado
O arquivo será gerado com o tamanho padrão de células do Excel. Provavelmente muitas células que o tamanho da informação for maior que o tamanho da coluna aparecerão sobrepostas ou cortadas.
- O alinhamento de colunas nos arquivos XLSX é o mais próximo possível do relatório em IMP. O arquivo XLS pode perder o alinhamento de colunas por se basear apenas na posição do elemento do modelo no relatório;
- O formato XLSX busca replicar o que é impresso no relatório visualmente no sistema, respeitando os espaçamentos entre as colunas. Recomendamos utilizar os formatos XLS ou CSV ao exportar o relatório em Excel, ou ajustar as colunas aproximando-as umas das outras para adequar o formato.
Considerações sobre o arquivo XLSX gerado
- Elementos gráficos: Por limitações do Excel, não serão importados elementos gráficos como controles Desenho, Imagens e Gráficos do Gerador de Relatórios.
- Tipos de dados exportados como texto: As máscaras que contem os seguintes símbolos serão exportados como texto:#A#,#-#,#-1# e #-3#.
- Todas tem que ser do tipo Money, Extended, ou Double.
#A#ZZZ.ZZZ.ZZ9,99
#-#ZZZ.ZZZ.ZZ9,99
#-1#ZZZ.ZZZ.ZZ9,99
#-3#ZZZ.ZZZ.ZZ9,99
#-#hh:MM
- Tipos de dados exportados como numérico: Serão exportados como numérico as máscaras que não forem de CPF/CNPJ e as que não contiverem: #A#, #-#, #-1#, e #-3#.
- Para que seja exportado um campo Negativo como numérico, deve conter na máscara o símbolo #-2#, para que o sinal fique à esquerda do número.
- Todas tem que ser do tipo Money, Extended, ou Double.
ZZZ.ZZZ.ZZ9,99
#-2#ZZZ.ZZZ.ZZ9,99
Nota
Os arquivos exportados no formato XLSX e DOCX, não serão abertos de forma nativa em aplicativos com sistema operacional da Apple (Mac, Iphone, iPad).
Para que eles possam ser abertos em aplicativos nos sistemas operacionais destes, é necessário a instalação do respectivo aplicativo para cada tipo de arquivo. Por exemplo, Excel para arquivos XLSX e Word para arquivos DOCX.
O download pode ser realizado na loja de aplicativos da Apple.
O que você pode fazer:
- Na tela de visualização do relatório gerado, clique no botão ;
- Informe o local e um nome para o arquivo a ser salvo;
- No campo Salvar como, selecione a opção Arquivos XLS ou Arquivos XLSX e clique no botão Salvar.
- O gerador salvará o arquivo em formato XLS que poderá ser aberto no EXCEL.
- Na tela de visualização do relatório gerado, clique no botão Enviar e-mail;
- Na lista apresentada, selecione a opção "Arquivo EXCEL (XLS)" ou "Arquivo EXCEL (XLSX)";
- Será apresentada a tela de envio de e-mails com o arquivo XLS anexo;
- Informe os dados de envio e pressione Enviar.
- Edite o modelo;
- Clique na propriedade Formato de Saída do Modelo Gerador chamada.
- Será apresentada a tela: Parametrização de Saída.
- Em Formato de Saída selecione Arquivo.
- Em Formato de Saída do Arquivo selecione a opção "Arquivo para Excel".
- Desmarque o campo Utilizar Parametrização Somente na Execução;
- Pressione OK;
- Após isto basta gerar o relatório e a tela de visualização não aparecerá, mas o arquivo será salvo no diretório que foi configurado no .CFG para a geração de relatórios com o nome do modelo + “.XLS”.
- Por padrão todos os dados de um modelo serão exportados no arquivo .XLS a ser gerado. Entretanto, é possível escolher os controles do modelo que serão exportados para o arquivo.
- Edite o modelo
- Selecione o controle que deseja configurar e clique na propriedade Exportação.
- Será apresentada a tela Parâmetros de Geração.
- Se desejar que o modelo seja exportado para EXCEL, marque a opção Planilha Excel, caso contrário desmarque para que os dados impressos no controle não sejam exportados para o arquivo.
- Se desejar configurar todos os controles de uma seção com a opção acima, basta selecionar a seção e configurar da mesma forma, esta configuração irá valer para todos os controles contidos nesta.
Dependendo das configurações do Excel, ao importar dados de um arquivo .XLSX a seguinte mensagem poderá ser exibida: "Esta fonte de dados não contém tabelas visíveis".
Para resolver este problema:
- Clique em Ok.
- Será apresentada a tela: Assistente de consulta - escolher colunas.
- Clique no botão Opções;
- Na tela de opções, marque a opção Tabelas do sistema e clique em Ok.
- Os dados do arquivo estarão disponíveis para importação.
Situação 1: Na primeira linha há apenas um controle: "Descricao001". Na segunda linha, há 3 controles: "Cadastro001", "/" e "Cadastro002".
Resultado: Cada controle da segunda é exportado em células diferentes.
Causa: Na exportação não é possível determinar que os controles da linha seguinte devem ser exportados na mesma célula para ficarem alinhados com o anterior, nem ajustar o controle da linha anterior para ter o mesmo comprimento dos controles abaixo.
Solução:
Utilizar apenas um controle para a segunda linha (Desricao002) e no evento Na Impressão deste controle, implementar que ele receba os valores desejados ("Cadastro001", "/" e "Cadastro002") conforme abaixo:
Definir Alfa xNivel;
Definir Alfa Cadastro001;
Definir Alfa Cadastro002;
xNivel = Cadastro001 + " / " + Cadastro002;
AlteraControle ("Descricao002", "descrição", xNivel);
Para mais informações, verifique a documentação da função AlteraControle.
Situação 2: Memorandos com a propriedade Linha com valores diferentes.
Resultado: As linhas do componente são geradas com uma linha em branco entre elas.
Solução: Ajustar a propriedade "Linha" dos memorandos para o mesmo valor.
Situação 3: Exportação de texto dos controles tipo memorando.
Resultado: Cada linha do controle será exportado em uma célula diferente, pertencentes à mesma coluna.
Situação 4: Exportação dos demais controles de exibição de texto.
Nota
Para exportações que utilizam o formato XLS, o limite de caracteres para uma célula é 255 caracteres. Esta é uma limitação dos sistemas Senior.
Já para as exportações que utilizam o formato XLSX, o limite de caracteres por célula é de 32.767 caracteres, limitação do próprio Excel.
Resultado: O conteúdo do controle será exportado em uma única célula no Excel.
Situação 5: Exportação de controles sobrepostos no modelo com utilização da função "AlteraControle" para alterar a propriedade "Imprimir" do controle.
Cenário: No modelo há 4 controles: "Descricao001", "Descricao002" e "Descricao003" (estes sobrepostos) e "Descricao004". Durante a execução é utilizada a função "AlteraControle" para alterar a propriedade "Imprimir" dos controles "Descricao002" e "Descricao003", afim de imprimir apenas um destes controles por vez.
Resultado: Ao realizar a exportação para o xls/xlsx, cada um dos controles será exportado para uma coluna do Excel, mesmo que o controle tenha sua propriedade "Imprimir" alterada para "Falso". Isto ocorre pois ao alterar a propriedade "Imprimir" via regra, os controles que possuírem sua propriedade alterada para "Falso" serão exportados vazios, para evitar que o leiaute seja prejudicado.
Acesso via Browser Access utilizando o navegador Safari com versão 4.0 em diante
Ao fazer o download de um arquivo com extensão XLSX utilizando o navegador Safari 4.0 em diante, quando o sistema é acessado via Browser Access, existe um comportamento padrão deste navegador que acrescenta a extensão ZIP ao arquivo e o salva neste formato. Para solucionar esta situação, basta retirar a extensão ZIP do nome do arquivo.
Formatação da célula: a cor do fundo (background) não será exportada. Porém, as formatações de fonte relativas ao tamanho, tipo de fonte, cor, alinhamento, negrito e itálico serão exportadas.
O arquivo será gerado com o tamanho padrão de células do EXCEL. Provavelmente muitas células onde o tamanho da informação foi maior que o tamanho da coluna irá aparecer sobreposta/cortada. Para que todos os dados apareçam do tamanho que foram gerados basta selecionar todas as células (ou aquelas que se deseja formatar) e na guia Início (no Excel), utilize a opção Formatar > AutoAjuste da Largura da Coluna.
Veja também: |