public static IEnumerable <Dimension> Enumerate(XlsxPivotReader w) { var multiTable = w.MultiTableWorkbook; var sheet = w.GetWorksheetIfExists(SheetNaming.PivotHorizontal); if (sheet != null) { var r = 0; foreach (var d in sheet.Entities <Dimension>()) { d.Rank = r++; d.Orientation = Dimension.Orientations.Horizontal; yield return(d); } } sheet = w.GetWorksheetIfExists(SheetNaming.PivotVertical); if (sheet != null) { var r = 0; foreach (var d in sheet.Entities <Dimension>()) { d.Rank = r++; d.Orientation = Dimension.Orientations.Vertical; yield return(d); } } }
public static IEnumerable <string> AllTableSheetNames(XlsxPivotReader book) { var pivotWorkSheetNames = from n in book.WorksheetNames let name = n.ToLowerInvariant() where name.StartsWith(Prefix) && !PivotSheets.Equals(name) && !name.StartsWith(PivotData) select n; var pivotSheetNames = from sheetName in pivotWorkSheetNames select book[sheetName].Entities <SheetNaming>(); var pivotTableNames = from sheetNames in pivotSheetNames from sheetName in sheetNames select sheetName.Name; var allNames = (from n in pivotTableNames.Union(MetaDataTable.PivotTableSheets(book.MetaDataTables)) where !string.IsNullOrEmpty(n) select n).Distinct(System.StringComparer.OrdinalIgnoreCase).ToList(); if (allNames.Count > 0) { return(allNames); } return(from n in book.WorksheetNames where !n.ToLowerInvariant().StartsWith(SheetNaming.Prefix) select n); }
public static IEnumerable <Dimension> Enumerate(XlsxPivotReader w, string tableName) { var multiTable = w.MultiTableWorkbook; var sheet = w.GetWorksheetIfExists(SheetNaming.PivotHorizontal); if (sheet != null) { var r = 0; foreach (var d in sheet.Entities <Dimension>()) { if (multiTable) { if (!tableName.Equals(d.Sheet, System.StringComparison.OrdinalIgnoreCase)) { continue; } } d.Rank = r++; d.Orientation = Dimension.Orientations.Horizontal; yield return(d); } } sheet = w.GetWorksheetIfExists(SheetNaming.PivotVertical); if (sheet != null) { var r = 0; foreach (var d in sheet.Entities <Dimension>()) { if (multiTable) { if (!tableName.Equals(d.Sheet, System.StringComparison.OrdinalIgnoreCase)) { continue; } } d.Rank = r++; d.Orientation = Dimension.Orientations.Vertical; yield return(d); } } }
internal PivotTable(XlsxPivotReader pr, string tableName) { _xlsx = pr; DataSheet = _xlsx.GetWorksheet(tableName, false); _tableName = tableName; }
public static TableSelector GetTableSelector(XlsxPivotReader xlsx) { return(new TableSelector(xlsx)); }
private TableSelector(XlsxPivotReader xlsx) { _xlsx = xlsx; }