Angular Pivot Grid Export to Excel and PDF Service
The Ignite UI Excel and PDF Exporter services treat the IgxPivotGrid exactly like your users see it on screen—complete with hierarchical layouts and summaries. Inject the IgxExcelExporterService or IgxPdfExporterService, call the appropriate export/export method, and let the service generate the final document.
As seções abaixo explicam configuração, padrões de uso e dicas para personalizar cada exportação para que seus usuários recebam dados prontos para consumo, independentemente do tipo de arquivo que prefiram.
Angular Excel Exporter Example
This live example demonstrates the standard Excel and PDF export workflow for the Pivot Grid—bound data, two export buttons (Excel and PDF), and the resulting .xlsx and .pdf files with preserved filtering and sorting state. Share it with stakeholders who want to preview the experience before wiring it into their application.
Exporting Pivot Grid's Data
Colocar os exportadores no seu projeto leva apenas algumas linhas de código. Siga estes passos e você terá serviços reutilizáveis que podem criar saídas em Excel ou PDF sob demanda:
- Importe o
IgxExcelExporterServiceand/ouIgxPdfExporterServiceno seu módulo raiz. - Injete o exportador que você precisar e chame o método
exportdele quando o usuário solicitar um arquivo.
// component.ts
import { IgxExcelExporterService, IgxPdfExporterService } from 'igniteui-angular/grids/core';
// import { IgxExcelExporterService, IgxPdfExporterService } from '@infragistics/igniteui-angular/grids/core'; for licensed package
...
private excelExportService = inject(IgxExcelExporterService);
private pdfExportService = inject(IgxPdfExporterService);
Note
Na v12.2.1 e posteriores,IgxExcelExporterService é fornecido na raiz e não precisa ser registrado noproviders array. O exportador PDF foi introduzido em versões posteriores e está disponível como um serviço injetável sem nenhuma configuração adicional.
Para iniciar um processo de exportação, você pode usar o manipulador de um botão no modelo do seu componente.
<igx-pivot-grid #pivotGrid [data]="localData" [pivotConfiguration]="pivotConfig"></igx-pivot-grid>
<button (click)="exportButtonHandler()">Export IgxPivotGrid to Excel</button>
<button (click)="exportPdfButtonHandler()">Export IgxPivotGrid to PDF</button>
Você pode acessar qualquer um dos serviços exportadores definindo-o como uma dependência de construtor e permitindo que Angular forneça uma instância. Chamar o método compartilhadoexport inicia o download respeitando automaticamente o estado do componente, as linhas selecionadas e as regras de formatação.
Aqui está o código que executará ambos os processos de exportação no arquivo typescript do componente:
// component.ts
import { IgxExcelExporterService, IgxExcelExporterOptions, IgxPdfExporterService, IgxPdfExporterOptions } from 'igniteui-angular/grids/core';
import { IgxPivotGridComponent } from 'igniteui-angular/grids/pivot-grid';
@ViewChild('pivotGrid') public pivotGrid: IgxPivotGridComponent;
private excelExportService = inject(IgxExcelExporterService);
private pdfExportService = inject(IgxPdfExporterService);
public exportButtonHandler() {
this.excelExportService.export(this.pivotGrid, new IgxExcelExporterOptions('ExportedDataFile'));
}
public exportPdfButtonHandler() {
this.pdfExportService.export(this.pivotGrid, new IgxPdfExporterOptions('ExportedDataFile'));
}
Once wired up, pressing the respective buttons downloads files named ExportedDataFile.xlsx or ExportedDataFile.pdf populated with the current Pivot Grid view. You can swap in customer-friendly file names, append timestamps, or surface a success toast so users know their export has completed.
Note
Os indicadores de expansão/recolhimento no Excel são mostrados com base na hierarquia da última dimensão da Grade Dinâmica.
Note
A Grade Dinâmica exportada não será formatada como uma tabela, pois as tabelas do Excel não oferecem suporte a vários cabeçalhos de linha.
Exportações de PDF incluem automaticamente a linha de cabeçalho da coluna no topo do documento, para que os leitores mantenham o mesmo contexto ao abrir ou imprimir o arquivo.
Customizing the Exported Content
A maioria das equipes personaliza as exportações antes de compartilhá-las: escondendo colunas de uso interno, renomeando cabeçalhos ou pulando linhas que se aplicam apenas aos administradores. Ambos os serviços exportadores expõem eventos que permitem interceptar cada linha ou coluna e decidir como ela deve aparecer no arquivo. AssinecolumnExporting erowExporting faça ajustes de última hora — configurecancel = true para omitir um item ou ajustar os argumentos do evento para atualizar valores em tempo real.
O exemplo a seguir excluirá todas as colunas da exportação se o cabeçalho for "Valor da venda":
// component.ts
this.excelExportService.columnExporting.subscribe((args: IColumnExportingEventArgs) => {
if (args.header == 'Amount of Sale') {
args.cancel = true;
}
});
this.excelExportService.export(this.pivotGrid, new IgxExcelExporterOptions('ExportedDataFile'));
When you are exporting data from the Pivot Grid component, the services automatically respect sorting, filtering, summaries, and hidden columns so the file reflects what the user currently sees. Need the full dataset instead? Toggle the relevant flags on IgxExcelExporterOptions or IgxPdfExporterOptions to include filtered rows, hidden columns, or custom metadata.
Known Limitations
Antes de enviar exportações para usuários de produção, revise as seguintes restrições da plataforma para definir expectativas e fornecer orientações úteis dentro do seu app.
| Limitação | Descrição |
|---|---|
| Tamanho máximo da planilha | O tamanho máximo da folha de cálculo suportado pelo Excel é de 1.048.576 linhas por 16.384 colunas. Considere dividir exportações extremamente grandes por intervalo de datas ou segmento para se manter dentro desses limites. |
| Estilo de célula | O serviço exportador do Excel não suporta exportar um estilo personalizado aplicado diretamente a um componente de célula. Nesses cenários, recomendamos usar a Biblioteca Excel mais rica para formatação detalhada. |
| Layouts PDF amplos | Very wide exports can force PDF columns to shrink to fit the page. Apply column widths or hide low-priority fields before exporting to keep the document legible. |
API References
Os serviços Excel e PDF Exporter têm algumas APIs adicionais para explorar, listadas abaixo.
- IgxExcelExporterService API
- IgxExcelExporterOptions API
- IgxPdfExporterService API
- IgxPdfExporterOptions API
Componentes adicionais que foram usados: