[]
        
(Showing Draft Content)

GC.Spread.Report.TemplateSheet

クラス: TemplateSheet

Spread.Report.TemplateSheet

階層

Table of contents

コンストラクタ

メソッド

コンストラクタ

constructor

new TemplateSheet(name)

テンプレートシートを表します。

実例

const spread = new GC.Spread.Sheets.Workbook('spread-host', { sheetCount: 0 });
const reportSheet = spread.addSheetTab(0, 'orders-report', GC.Spread.Sheets.SheetType.reportSheet);
const templateSheet = reportSheet.getTemplate();
templateSheet.setValue(0, 0, 'test');

パラメータ

名前 説明
name string テンプレートシートの名前。

オーバーライド

Worksheet.constructor

メソッド

getDataEntrySetting

getDataEntrySetting(): DataEntrySetting

データ操作の設定を取得します。

実例

// データ操作の設定を取得します。
const dataEntrySetting = templateSheet.getDataEntrySetting();

戻り値

DataEntrySetting

データ操作の設定を返します。


getLayoutSetting

getLayoutSetting(): LayoutSetting

レイアウト設定を取得します。

実例

// レイアウト設定を取得します。
const layoutSetting = templateSheet.getLayoutSetting();

戻り値

LayoutSetting

レイアウト設定を返します。


getPaginationSetting

getPaginationSetting(): IPaginationSetting

改ページの設定を取得します。

実例

// 改ページの設定を取得します。
const paginationSetting = templateSheet.getPaginationSetting();

戻り値

IPaginationSetting

改ページの設定を返します。


getTemplateCell

getTemplateCell(row, col): TemplateCell

テンプレートセルを取得します。

実例

// A2 テンプレートセルの設定を取得します。
const templateCell = templateSheet.getTemplateCell(1, 0);

パラメータ

名前 説明
row number 行インデックス。
col number 列インデックス。

戻り値

TemplateCell

テンプレートセルを返します。


setDataEntrySetting

setDataEntrySetting(dataEntrySetting): void

データ操作を設定します。

実例

// 顧客のテーブルを追加します。
const customersTable = spread.dataManager().addTable('Customers', {
    remote: {
        read: { url: 'https://demodata.mescius.io/northwind/api/v1/customers' },
        batch: (data) => {
            // 変更をサーバーに同期します。
            console.log('changes: ', data);
            return Promise.resolve(data.map((item) => ({ succeed: true })));
        },
    },
    batch: true,
});

// テンプレートのバインディングを設定します
const columns = ['customerId', 'companyName', 'contactName', 'contactTitle', 'address', 'region', 'country', 'city', 'postalCode', 'phone', 'fax'];
columns.forEach((columnName, i) => {
    templateSheet.setValue(0, i, `${columnName[0].toUpperCase()}${columnName.substring(1)}`);
    templateSheet.setTemplateCell(1, i, {
        type: 'List',
        binding: `Customers[${columnName}]`,
    });
});

// データ操作の設定を構成します。
const customerRule = {
    name: 'customers',
    tableName: 'Customers',
    fields: [
        { formula: 'A2', dbColumnName: 'customerId', isPrimary: true },
        { formula: 'B2', dbColumnName: 'companyName' },
        { formula: 'C2', dbColumnName: 'contactName' },
        { formula: 'D2', dbColumnName: 'contactTitle' },
        { formula: 'E2', dbColumnName: 'address' },
        { formula: 'F2', dbColumnName: 'region' },
        { formula: 'G2', dbColumnName: 'country' },
        { formula: 'H2', dbColumnName: 'city' },
        { formula: 'I2', dbColumnName: 'postalCode' },
        { formula: 'J2', dbColumnName: 'phone' },
        { formula: 'K2', dbColumnName: 'fax' },
    ],
};
templateSheet.setDataEntrySetting([customerRule]);

パラメータ

名前 説明
dataEntrySetting DataEntrySetting データ操作の設定。

戻り値

void


setLayoutSetting

setLayoutSetting(setting): void

レイアウト設定を構成します。

実例

const dataManager = spread.dataManager();
dataManager.addTable("orders",
     {
          remote: {
              read: {
                  url: "https://demodata.mescius.io/northwind/api/v1/orders"
              }
          }
     }
);
templateSheet.setTemplateCell(1, 0, { type: 'List', binding: 'orders[orderId]' });
const setting = {
     dataRange: "A2",
     type: "RowLayout",
     rowCount: 10
}
templateSheet.setLayoutSetting(setting);

パラメータ

名前 説明
setting LayoutSetting レイアウト設定。

戻り値

void


setPaginationSetting

setPaginationSetting(setting): void

改ページの設定を構成します。

実例

// 用紙サイズの改ページを設定します。
const printInfo = templateSheet.printInfo();
printInfo.paperSize().kind(GC.Spread.Sheets.Print.PaperKind.a4);
templateSheet.setPaginationSetting({
    paperSizePagination: true,
    titleRow: {
        start: 0,
        end: 0,
    },
    titleCol: {
        start: 0,
        end: 0,
    },
    paginationOrder: 'OverThenDown',
});

// 行ごとの改ページを設定します。行ごとの改ページはリストセルに対してのみ機能します。
templateSheet.setTemplateCell(1, 0, { type: 'List', binding: 'orders[orderId]' });
templateSheet.setPaginationSetting({
    rowPagination: {
        paginationDataCell: 'A2',
        rowCountPerPage: 20,
    },
    titleRow: {
        start: 0,
        end: 0,
    },
});

パラメータ

名前 説明
setting IPaginationSetting 改ページの設定。

戻り値

void


setTemplateCell

setTemplateCell(row, col, templateCell): void

テンプレートセルを設定します。

実例

const dataManager = spread.dataManager();
dataManager.addTable("orders",
     {
          remote: {
              read: {
                  url: "https://demodata.mescius.io/northwind/api/v1/orders"
              }
          }
     }
);
// A2 セルのテンプレート セルの設定を構成します。
templateSheet.setTemplateCell(1, 0, { type: 'List', binding: 'orders[shipCity]' });

パラメータ

名前 説明
row number 行インデックス。
col number 列インデックス。
templateCell TemplateCell テンプレートセル。

戻り値

void