/// <summary> /// 其实最后用到的只是汇总后的_dt,如果原dt很大的话,这样可以节省性能 /// </summary> public PFPivotTable GroupDataTable() { _dt = PFDataHelper.DataTableGroupBy(_dt, PFDataHelper.MergeList(new List <string>(_pivotLeft), _pivotTop).ToArray(), new PFKeyValueCollection <SummaryType>(_pivotValue.Select(a => new PFKeyValue <SummaryType> { Key = a, Value = SummaryType.Sum })) ); return(this); }
public void SaveToFileTest(string path) { var fileName = Path.GetFileName(path); //var dt = _dt; var dt = PFDataHelper.DataTableGroupBy(_dt, PFDataHelper.MergeList(_pivotLeft, _pivotTop).ToArray(), new PFKeyValueCollection <SummaryType>(_pivotValue.Select(a => new PFKeyValue <SummaryType> { Key = a, Value = SummaryType.Sum })) ); //var dt = PFDataHelper.DataTableGroupBy(_dt, // _pivotTop.ToArray(), // new PFKeyValueCollection<SummaryType>(_pivotTop.Select(a => new PFKeyValue<SummaryType> { Key = a, Value = SummaryType.Sum })) // ); StoreColumnCollection columns = null; var pagingResult = PFDataHelper.PagingStore(dt, new PagingParameters { }, columns, false, null); var exporter = Exporter.Instance(pagingResult ?? new PagingResult(), new ExporterOption { FileType = "xlsx",//benjamin todo Scheme = Exporter.FinancialScheme , SheetTitle = fileName //, //SheetTitle = GetWordCMonth(cmonthff) + hr + fgsname }).FileName("总表"); //这里的下载名没用到 var export = (exporter.GetExport() as XlsxExport); //var path = Path.Combine(PFDataHelper.BaseDirectory, "output", "excelPo.xlsx"); var directoryName = Path.GetDirectoryName(path); PFDataHelper.DeleteFile(path); PFDataHelper.CreateDirectory(directoryName); export.workbook.Save(path); }