本帖最后由 Winny 于 2021-5-24 18:10 编辑
Excel透视表中提供了在右键显示详细信息的功能,用户在浏览透视表时,可以选中值区域的某一单元格,之后右键点击查看详细信息,会在当前表单前方插入一张新的表单,显示与当前点击单元格相关的数据列表,有助于用户快速、高效的分析数据。SpreadJS V14 Update1也实现了该功能,接下来会讲解该功能的详细实现方式。
1. 使用在线表格编辑器
在生成的透视表中,选中数据区域某一单元格,点击右键,选中显示详细信息,如下所示:
点击显示详细信息,可以看到与该数据相关的数据列表显示在前边新生成的一个表单中,如下所示。
2. 使用API获取透视表单元格数据详情
SpreadJS V14 Update1提供了getPivotDetails()方法来获取透视表数据的详细信息,具体形式如下: - getPivotDetails(pivotItemInfo: GC.Spread.Pivot.IPivotItemInfo[])
- /**
- * pivotItemInfo: 数组类型,每一项为一个obj
- * pivotItemInfo.fieldName: 字段名称,string类型
- * pivotItemInfo.fieldItem: 数据项名称,string类型
- **/
复制代码
具体调用示例如下:- var spread = new GC.Spread.Sheets.workbook(document.getElementById("ss"),{sheetCount:3});
- var sourceSheet = spread.getSheet(0);
- var sheet = spread.getSheet(1);
- var sourceData = [["Date","Buyer","Type","Amount"],
- ["01-Jan","Mom","Fuel",74],
- ["15-Jan","Mom","Food",235],
- ["17-Jan","Dad","Sports",20],
- ["21-Jan","Kelly","Books",125]];
- sourceSheet.setArray(0, 0, sourceData );
- sourceSheet.tables.add('sourceData', 0, 0, 5, 4);
- var layout = GC.Spread.Pivot.PivotTableLayoutType.compact;
- var theme = GC.Spread.Pivot.PivotTableThemes.medium2;
- var pivotTable = sheet.pivotTables.add("pivotTable_1", 'sourceData', 1, 1, layout, theme, options);
- pivotTable.add("Buyer","Buyer",GC.Spread.Pivot.PivotTableFieldType.rowField);
- pivotTable.add("Type","Type",GC.Spread.Pivot.PivotTableFieldType.columnField);
- pivotTable.add("Amount","Sum of Amount",GC.Spread.Pivot.PivotTableFieldType.valueField, GC.Pivot.SubtotalType.sum);
复制代码
|
|