GPO ( Grupo de Profissionais Oracle )
A maior comunidade Oracle do Brasil !

Exportar tabela para Excel no Oracle ADF

Se você tem usuários que gostam de relatórios, eu tenho uma boa notícia para você! Exportar tabela para Excel é muito simples quando se utiliza o Oracle ADF. Você só tem que utilizar a tag exportCollectionActionListener. Dessa maneira você possibilita que um componente de ação (commandButton, commandLink, etc.) exporte dados de um componente de coleção (table, tree, treeTable) em um formato externo de forma declarativa.

Baixe a aplicação de exemplo – http://waslleysouza.com.br/wp-content/uploads/2014/04/ExportTableApp.zip – que exporta as linhas (todas ou selecionadas) da tabela em um relatório Excel. Essa aplicação também apresenta a tabela como uma página para impressão.

Vamos começar!

Crie uma Fusion Web Application (ADF) como na imagem.

Abra o arquivo ViewEmployees.jspx.

Navegue até o painel Data Control, arraste o EmployeesView1 e solte dentro da página como ADF Read-only Table. Marque as opções Multiple Rows, Enable Sorting e Enable Filtering da janela Edit Table Columns, e clique em OK para criar a tabela.

Selecione a tabela e defina a propriedade ID como “tEmployees”.

Agora nós precisamos cercar a tabela com o Panel Collection, um componente que contém certos controles / recursos para trabalhar com componentes de coleção como <table>, <treeTable> e <tree>. Vá até o painel Structure, clique com o botão direito em af:table “tEmployees”, e selecione Surround With. Selecione Panel Collection e clique em OK.

Para criar menu com opções de exportação, vá até o painel Structure, clique com o botão direito no menus facet do af:panelCollection, e selecione Insert inside menus | Menu. Defina a propriedade Text como “File”.

Clique com o botão direito no af:menu “File” e selecione Insert inside af:menu – File | Menu Item. Defina as propriedades Text como “Export to Excel (All Rows)”, “Export to Excel (Selected Rows)” e “Show as Printable Page”.

Vá até Component Palette | Operations, arraste o Export Collection Action Listener e solte dentro do af:commandMenuItem “Export to Excel (All Rows)” do painel Structure.

Na janela Export Collection Action Listener, clique no Edit da propriedade ExportedId, navegue através dos nós para achar af:table “tEmployees” e clique em OK. Defina a propriedade Type como excelHTML. Clique em OK.

Defina as propriedades do af:exportCollectionActionListener.

Repita os passos anteriores para o af:commandMenuItem “Export to Excel (Selected Rows)”, e defina as propriedades do af:exportCollectionActionListener.

Arraste o Show Printable Page Behavior e solte dentro de af:commandMenuItem “Show as Printable Page” do painel Structure.

O painel Structure deve ser semelhante a imagem.

Agora, é hora de testar a aplicação!

Clique com o botão direito na página ViewEmployees.jspx e selecione Run.

Para exportar todas as linhas, vá até o menu e selecione Export to Excel (All Rows).

Para exportar as linhas selecionadas, selecione algumas linhas, vá até o menu e selecione Expot to Excel (Selected Rows).

Para apresentar a tabela como uma página para impressão, vá até o menu e selecione Show as Printable Page. Desse modo, você pode salvar a tabela como imagem ou PDF.

Share

You may also like...

Deixe um comentário

O seu endereço de e-mail não será publicado.