5.20241.9

OLAP:エクスポート

PivotGridFlexGridを拡張しているため、通常のFlexGridでエクスポートする場合と同様に、XLSXやPDFにエクスポートできます。

Excel(XLSX)にエクスポート

Excelへのエクスポートはシンプルです。wijmo.grid.xlsxモジュールは、FlexGridXlsxConverter.save()関数からこの機能を実行できます。ただし、このプロセスにはwijmo.xlsxモジュールも必要です。

wijmo.xlsxはjszipに依存します。このスクリプトもプロジェクトにインクルードする必要があります。

// Excel export
import * as wjGridXlsx from '@mescius/wijmo.grid.xlsx';

// PDF Export
import * as wjPdf from '@mescius/wijmo.pdf';
import * as wjGridPdf from '@mescius/wijmo.grid.pdf';

document.getElementById('xlsx').addEventListener('click', function() {

    // 現在のビューを含むブックを作成します
    var book = wjGridXlsx.FlexGridXlsxConverter.save(pivotGrid, {
        includeColumnHeaders: true,
        includeRowHeaders: true
    );
    book.sheets[0].name = 'PivotGrid';

    // ブックを保存します
    book.save('PivotGrid.xlsx');
});

PDFにエクスポート

PDFにエクスポートするには、wijmo.grid.pdfモジュールを使用します。Excelエクスポートと同様に、wijmo.grid.pdfモジュールはwijmo.pdfに依存します。FlexGridPdfConverterクラスには、グリッドインスタンス、ファイル名、およびドキュメント設定を指定するJSONオブジェクトを受け取るexport()関数があります。

次に、この例を示します。

document.getElementById('pdf').addEventListener('click', function() {
    wjGridPdf.FlexGridPdfConverter.export(pivotGrid, 'PivotGrid.pdf', {
        maxPages: 10,
        scaleMode: wjGridPdf.ScaleMode.PageWidth,
        documentOptions: {
            compress: true,
            header: { 
                declarative: { text: '\t&[Page] of &[Pages]' }
            },
            footer: { 
                declarative: { text: '\t&[Page] of &[Pages]' }
            },
            info: { author: 'GrapeCity', title: 'PivotGrid' }
        },
        styles: {
            cellStyle: {
                backgroundColor: '#ffffff',
                borderColor: '#c6c6c6'
            },
            altCellStyle: { backgroundColor: '#f9f9f9' },
            groupCellStyle: { backgroundColor: '#dddddd' },
            headerCellStyle: { backgroundColor: '#eaeaea' }
        }
    });
});

PDFエクスポートへのコンテンツの追加

エクスポートするPDFドキュメントにコンテンツを追加したい場合もあります。それには、wijmo.pdfモジュールを使用します。PdfDocumentを作成し、draw()などの関数を使用してコンテンツを追加します。

例:

document.getElementById('pdfdoc').addEventListener('click', function() {

    // ドキュメントを作成します
    var doc = new wjPdf.PdfDocument({
        compress: true, 
        header: { declarative: { text: '\t&[Page]\\&[Pages]' } },
        ended: function (sender, args) {
            wjPdf.saveBlob(args.blob, 'PivotGridDoc.pdf');
        }
    });

    // コンテンツを追加します
    doc.drawText('This is a PivotGrid control:');

    // グリッドを追加します(400pt幅)
    wjGridPdf.FlexGridPdfConverter.draw(pivotGrid, doc, 400);

    // ドキュメントを完了します
        doc.end();
    });

Excel/PDFエクスポートのデモを参照してください。