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:

    1. Importe oIgxExcelExporterService and/ouIgxPdfExporterService no seu módulo raiz.
    2. Injete o exportador que você precisar e chame o métodoexport dele 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.

    Componentes adicionais que foram usados:

    Additional Resources

    Nossa comunidade é ativa e sempre receptiva a novas ideias. Os links abaixo conectam você a exemplos, respostas da comunidade e a equipe de engenharia.