Sitelet https://developer.mescius.com/spreadjs/api/classes/GC.Spread.Sheets.TableSheet.TableSheet
        []
        
(Showing Draft Content)

GC.Spread.Sheets.TableSheet.TableSheet

Class: TableSheet

Sheets.TableSheet.TableSheet

Hierarchy

Table of contents

Constructors

Properties

Methods

Constructors

constructor

• new TableSheet(name?, dataView?, options?)

Represents a table sheet with the specified name, data view and options setting.

example

//This example creates a empty TableSheet.
var tableSheet = spread.addSheetTab(0, "", GC.Spread.Sheets.SheetType.tableSheet);

//This example creates a TableSheet with name.
var tableSheet = spread.addSheetTab(0, "tableSheet1", GC.Spread.Sheets.SheetType.tableSheet);

//This example creates a TableSheet with name and data source.
var dataManager = spread.dataManager();
var myTable = dataManager.addTable("myTable", {
    remote: {
        read: {
            url: 'https://demodata.mescius.io/northwind/api/v1/Orders'
        }
    }
});
myTable.fetch().then(function() {
    var myView = myTable.addView("myView");
    var tableSheet = spread.addSheetTab(0, "tableSheet1", GC.Spread.Sheets.SheetType.tableSheet);
    tableSheet.setDataView(myView);
});

//This example creates a TableSheet with name and options.
var style = new GC.Spread.Sheets.Style();
var tableSheet = spread.addSheetTab(0, "tableSheet1", GC.Spread.Sheets.SheetType.tableSheet);
tableSheet.options = {allowAddNew: false, alternatingRowOptions: { step: [1, 1], style: style}};

Parameters

Name Type Description
name? string The table sheet name.
dataView? View The table sheet data view.
options? ITableSheetOptions The initialization options.

Properties

options

• options: ITableSheetOptions

Represents the options of the table sheet.

property [allowAddNew] - Whether to allow to add new empty row.

property [allowSorts] - Whether to allow to sort multiple columns.

property [sheetTabColor] - A color string used to represent the sheet tab color, such as "red", "#FFFF00", "rgb(255,0,0)", "Accent 5", and so on.

property [alternatingRowOptions] - Defines the alternating row style options.

property [defaultStackRowHeight] - Tablesheet default stack row height, will calculate the average height by default.

property [menuItemVisibility] - Tablesheet default stack row height, will calculate the average height by default.

property [showRowNumber] - Whether to show the row number header.

property [enableDefineColumn] - Whether to enable defining column.

property [defineColumnCommand] - Specify the command for defining column options.

property [submitDefineColumnCommand] - Specify the command for submitting defined column options.

property {GC.Spread.Sheets.TableSheet.IColumnTypeItem[]} [columnTypeItems] - Specify the column types.

property [groupLayout] - Specify the options for group layout.

example

//This example changes a TableSheet's options.
tableSheet.options.allowAddNew = false;
tableSheet.options.alternatingRowOptions = { step: [1, 1], style: new GC.Spread.Sheets.Style("lightyellow")};

Methods

addHierarchyItemAbove

▸ addHierarchyItemAbove(row, rowData): void

Add a new row data as the parent of the specified row.

example

//This example adds a new row data as the parent of the specified row.
tableSheet.addHierarchyItemAbove(8, {id: 8, name: "spreadjs"});

Parameters

Name Type Description
row number The row index.
rowData any The row data.

Returns

void


addHierarchyItemAfter

▸ addHierarchyItemAfter(row, rowData): void

Add a new row data after the specified row.

example

//This example adds a new row data after the specified row.
tableSheet.addHierarchyItemAfter(8, {id: 8, name: "spreadjs"});

Parameters

Name Type Description
row number The row index.
rowData any The row data.

Returns

void


addHierarchyItemBefore

▸ addHierarchyItemBefore(row, rowData): void

Add a new row data before the specified row.

example

//This example adds a new row data before the specified row.
tableSheet.addHierarchyItemBefore(8, {id: 8, name: "spreadjs"});

Parameters

Name Type Description
row number The row index.
rowData any The row data.

Returns

void


addHierarchyItemBelow

▸ addHierarchyItemBelow(row, rowData): void

Add a new row data as the child of the specified row.

example

//This example adds a new row data as the child of the specified row.
tableSheet.addHierarchyItemBelow(8, {id: 8, name: "spreadjs"});

Parameters

Name Type Description
row number The row index.
rowData any The row data.

Returns

void


addRow

▸ addRow(rowData): Promise<void>

Adds a new row to table sheet.

example

//This example adds a new row with data.
tableSheet.addRow({id: 8, name: "spreadjs"});

Parameters

Name Type Description
rowData any The row data.

Returns

Promise<void>


applyFreeHeaderArea

▸ applyFreeHeaderArea(sheetJson?): any

Applies a Worksheet JSON to a TableSheet column header free layout area.

Parameters

Name Type Description
sheetJson? any a Worksheet JSON, which can be gotten easily by Worksheet's toJSON method.

Returns

any


applyNamedCellTemplate

▸ applyNamedCellTemplate(name, fieldNames): void

Apply a named cell template to columns on this table sheet.

example

// Apply template to a single column by field name
tableSheet.applyNamedCellTemplate("MyTemplate", ["productName"]);
// Apply template to multiple columns by field names
tableSheet.applyNamedCellTemplate("MyTemplate", ["price", "quantity"]);

Parameters

Name Type Description
name string The name of a registered template (must be registered in workbook.namedCellTemplates).
fieldNames string[] The target column(s) specified as an array of field names from the data source.

Returns

void


applyTableTheme

▸ applyTableTheme(tableTheme): void

Applies a table theme to current TableSheet.

Parameters

Name Type Description
tableTheme TableTheme A table theme instance.

Returns

void


cancelChanges

▸ cancelChanges(): void

Cancels the changes of data manager in batch mode.

example

//This example cancel changes manually in batch mode.
tableSheet.cancelChanges();

Returns

void


collapseAllHierarchyLevels

▸ collapseAllHierarchyLevels(): void

Collapse the all hierarchy levels.

example

//This example collapse the all hierarchy levels.
tableSheet.collapseAllHierarchyLevels();

Returns

void


currentTheme

▸ currentTheme(value?): void | Theme

Gets or sets the current theme for the sheet.

example

//This example sets a theme.
sheet.currentTheme("Civic");

Parameters

Name Type Description
value? string | Theme The theme name or the theme.

Returns

void | Theme

If no value is set, returns the current theme; otherwise, returns void.


demoteHierarchyLevel

▸ demoteHierarchyLevel(row, withChildren?): void

Demote the hierarchy data level of the specified row.

example

//This example demote the hierarchy data level by specified index.
tableSheet.demoteHierarchyLevel(8);

Parameters

Name Type Description
row number The row index.
withChildren? boolean Optional, the children will be demoted with the record by default.

Returns

void


detailColumnsVisible

▸ detailColumnsVisible(value?): boolean

Whether to show or hide the detail columns after Table Sheet is grouped.

example

//This sample shows how to hide the detail columns.
tableSheet.detailColumnsVisible(false);

Parameters

Name Type Description
value? boolean A boolean value which indicates the visibility of the detail columns.

Returns

boolean

Returns the visibility of the detail columns.


expandAllHierarchyLevels

▸ expandAllHierarchyLevels(): void

Expand the all hierarchy levels.

example

//This example expand the all hierarchy levels.
tableSheet.expandAllHierarchyLevels();

Returns

void


expandGroup

▸ expandGroup(field, expand): void

Expands or collapses one level grouping by the specified field.

example

//This sample shows how to collapse one level grouping, which is grouped by "LastName".
tableSheet.expandGroup("LastName", false);

Parameters

Name Type Description
field string The field name.
expand boolean A boolean value, true means expanding the grouping, false means collapsing the grouping.

Returns

void


expandGroupItem

▸ expandGroupItem(level, index, expand): void

Expands or collapses one grouping by the specified level and index.

example

//This sample shows how to collapse one grouping, which level is 1 and start index is 10.
tableSheet.expandGroupItem(1, 10, false);

Parameters

Name Type Description
level number The grouping level.
index number The grouping start index.
expand boolean A boolean value, true means expanding the grouping, false means collapsing the grouping.

Returns

void


expandHierarchyLevel

▸ expandHierarchyLevel(level): void

Expand the hierarchy data by specified level.

example

//This example expand the hierarchy data by specified level.
tableSheet.expandHierarchyLevel(8);

Parameters

Name Type Description
level number The level to expand.

Returns

void


filter

▸ filter(filterInfos?): ITableSheetFilterInfo[]

Gets or sets the active filters of the table sheet.

example

//This example uses the filter method.
tableSheet.filter([{field: 'state', values: [{value: 'New York'}]}]);
let filterInfos = tableSheet.filter();

Parameters

Name Type Description
filterInfos? ITableSheetFilterInfo[] The filter definitions.

Returns

ITableSheetFilterInfo[]

Returns the active filter definitions.


getChanges

▸ getChanges(): IDataViewChanges[]

Gets the changes of data manager in autoSync or batch mode.

example

//This example get changes manually in autoSync or batch mode, including updated rows, inserted rows, deleted rows, add column, update column, remove column.
tableSheet.getChanges();

Returns

IDataViewChanges[]

Returns a object array, each object could contain "type", "dataItem", "oldDataItem", "column", "originalColumn", and "index". The "type" is the change type, could be one of "insert", "update", "delete", "addColumn", "updateColumn", "removeColumn". the "dataItem" is the current row data. The "oldDataItem" is the original row data, only used for "update". The "column" is the current column. The "data" is the default value of the current added column. The "originalColumn" is the original column, only used for "update column". The "index" is the view index of table sheet.


getDataView

▸ getDataView(): View

Gets the data view of table sheet.

example

//This example gets the data source.
tableSheet.getDataView();

Returns

View

Returns the data view.


getTableTheme

▸ getTableTheme(): TableTheme

get the current table theme of the TableSheet.

Returns

TableTheme


groupBy

▸ groupBy(options?): IGroupByOptions[]

group the table sheet by options

example

//This example sets group options and group the table sheet.
tablesheet.groupBy([
     {
         caption: 'Category',
         field: 'category',
         summaryFields:[
             {
                 caption: 'SUM(Quantity)', width: 120, style: { formatter: "$ #,##0.00" }
                 formula: '=SUM([Quantity])',
                 slice: 'Office'
             }
         ]
     }
 ])

Parameters

Name Type Description
options? IGroupByOptions[] The options of the groupBy

Returns

IGroupByOptions[]


groupOutlinePosition

▸ groupOutlinePosition(value?): boolean

Whether to show or hide the grouping outline in viewport area and column header area, or row header area after Table Sheet is grouped.

example

//This sample shows how to hide the grouping outline.
tableSheet.groupOutlinePosition(GC.Spread.Sheets.TableSheet.GroupOutlinePosition.none);

Parameters

Name Type Description
value? GroupOutlinePosition A value which indicates the position of the grouping outline.

Returns

boolean

Returns the position of the grouping outline.


hasRowState

▸ hasRowState(type, row): boolean

Judges the row with the specified state.

example

//This example judges the row with the specified state.
tableSheet.hasRowState(GC.Data.RowColumnStates.selected, 0);

Parameters

Name Type Description
type RowColumnStates The type of row states.
row number The row index.

Returns

boolean


moveDown

▸ moveDown(row): void

Move the hierarchy data by the specified row down.

example

//This example move the hierarchy data by specified index down.
tableSheet.moveDown(8);

Parameters

Name Type Description
row number The row index.

Returns

void


moveUp

▸ moveUp(row): void

Move the hierarchy data by the specified row up.

example

//This example move the hierarchy data by specified index up.
tableSheet.moveUp(8);

Parameters

Name Type Description
row number The row index.

Returns

void


printInfo

▸ printInfo(value?): any

Gets or sets the print information for the table sheet.

example

//This example sets print info.
var printInfo = tableSheet.printInfo();
printInfo.bestFitRows(true);
printInfo.bestFitColumns(true);
tableSheet.printInfo(printInfo);

Parameters

Name Type Description
value? PrintInfo The print information for the table sheet.

Returns

any

If no value is set, returns the print information for the table sheet; otherwise, returns the table sheet.


promoteHierarchyLevel

▸ promoteHierarchyLevel(row): void

Promote the hierarchy data level of the specified row.

example

//This example promote the hierarchy data level by specified index.
tableSheet.promoteHierarchyLevel(8);

Parameters

Name Type Description
row number The row index.

Returns

void


removeFilter

▸ removeFilter(): void

Remove the active filters of the table sheet.

example

//This example uses the removeFilter method.
tableSheet.removeFilter();

Returns

void


removeGroupBy

▸ removeGroupBy(): void

remove group status of the table sheet

example

//This example shows removing the group status of the table sheet.
tablesheet.removeGroupBy()

Returns

void


removeRow

▸ removeRow(row): Promise<void>

Removes the specified row from table sheet.

example

//This example removes a row by specified index.
//The changes will be synchronized when the autoSync be true.
tableSheet.removeRow(8);

Parameters

Name Type Description
row number The row index.

Returns

Promise<void>


removeSort

▸ removeSort(): void

Remove the active sorts of the table sheet.

example

//This example uses the removeSort method.
tableSheet.removeSort();

Returns

void


resetRow

▸ resetRow(row): void

Resets the changes of the specified row of table sheet.

example

//This example resets a row by specified index.
tableSheet.resetRow(8);

Parameters

Name Type Description
row number The row index.

Returns

void


rowActionOptions

▸ rowActionOptions(options?): IRowActionOptions[]

Gets or sets the options of the row action.

example

//This example set the options of the row action.
let options = tableSheet.rowActionOptions();
options.push({
     icons: ["./comment.png"],
     iconSelector: (item) => {
         return item.comment && item.comment.length > 0;
     }
 });
tableSheet.rowActionOptions(options);

Parameters

Name Type Description
options? IRowActionOptions[] The options of the row action.

Returns

IRowActionOptions[]


saveRow

▸ saveRow(row): Promise<void>

Saves the changes of the specified row of table sheet to data manager, including updated row or and inserted row.

example

//This example saves a row by specified index.
//The changes will be synchronized when the autoSync be true.
tableSheet.saveRow(8);

Parameters

Name Type Description
row number The row index.

Returns

Promise<void>


setDataView

▸ setDataView(dataView): void

Sets the data view of table sheet.

example

//This example sets the data source.
var dataManager = spread.dataManager();
var myTable = dataManager.addTable("myTable", {
    remote: {
        read: {
            url: 'https://demodata.mescius.io/northwind/api/v1/Orders'
        }
    }
});
myTable.fetch().then(function() {
    var myView = myTable.addView("myView");
    tableSheet.setDataView(myView);
});

Parameters

Name Type Description
dataView View The data view to bind.

Returns

void


setDefaultRowHeight

▸ setDefaultRowHeight(value, sheetArea?): void

Sets the default height in pixels for the all rows in the viewport area.

example

//This example sets the default row height in pixels.
tableSheet.setDefaultRowHeight(50);

Parameters

Name Type Description
value number The height in pixels.
sheetArea? SheetArea The sheet area.

Returns

void


sort

▸ sort(sortInfos?): ITableSheetSortInfo[]

Gets or sets the active sorts of the table sheet.

example

//This example uses the sort method.
tableSheet.sort([{field: 'state', ascending: true}]);
let sortInfos = tableSheet.sort();

Parameters

Name Type Description
sortInfos? ITableSheetSortInfo[] The sort definitions.

Returns

ITableSheetSortInfo[]

Returns the active sort definitions.


submitChanges

▸ submitChanges(): Promise<void>

Submits the changes of data manager to server in batch mode, including updated rows, inserted rows and deleted rows.

example

//This example submit changes manually in batch mode.
tableSheet.submitChanges();

Returns

Promise<void>


togglePinnedColumns

▸ togglePinnedColumns(indexes): number

Pin or unpin columns with specified column index array.

example

//This example pin several columns.
tableSheet.togglePinnedColumns([1,2,4]);

Parameters

Name Type Description
indexes number[] The array of column indexes to do pin or unpin.

Returns

number

Returns the count of the pinned columns.


togglePinnedRows

▸ togglePinnedRows(indexes): void

Pin or unpin rows with specified row index array.

example

//This example pin several rows.
tableSheet.togglePinnedRows([1,2,4]);

Parameters

Name Type Description
indexes number[] The array of row indexes to do pin or unpin.

Returns

void

Returns the count of the pinned rows.