Настройка экспорта в несколько файлов
Добавлено: 01 окт 2010, 09:45
Выгрузку сделал. ВЫгрузить нужно в Rtf. В результате проблемы с кодировкой, выгружается ересь какая-то. У вас также?
Инструмент бизнес-аналитики от компании Stimulsoft. Программное обеспечение для создания дашбордов и отчетов. Инструменты отчетности для любой платформы.
https://forum.stimulsoft.ru/
Код: Выделить всё
StiReport report = this;
Stimulsoft.Report.Export.StiRtfExportSettings es = new Stimulsoft.Report.Export.StiRtfExportSettings();
int index = 0;
while (index < report.RenderedPages.Count)
{
int startPage = index;
while ((index < report.RenderedPages.Count - 1) && (report.RenderedPages[index + 1].ExcelSheetValue == report.RenderedPages[startPage].ExcelSheetValue))
{
index++;
}
int endPage = index;
string pageNumber = string.Format("{0}-{1}", startPage + 1, endPage + 1);
es.PageRange = new StiPagesRange(pageNumber);
report.ExportDocument(StiExportFormat.Rtf, tbName.Text + "Report_Page" + pageNumber + ".rtf", es);
index++;
}
Код: Выделить всё
for (int index = this.RenderedPages.Count - 1; index >= 0; index--)
{
if (this.RenderedPages[index].Components.Count == 0) this.RenderedPages.RemoveAt(index);
}
foreach (StiPage page in RenderedPages)
{
if (page.SegmentPerWidth > 1 || page.SegmentPerHeight > 1)
{
RenderedPages.GetPage(page);
double maxX = 0;
double maxY = 0;
foreach (StiComponent comp in page.Components)
{
if (comp.Right > maxX) maxX = comp.Right;
if (comp.Bottom > maxY) maxY = comp.Bottom;
}
int newSegmentPerWidth = 1;
while ((decimal)((page.PageWidth - page.Margins.Left - page.Margins.Right) * newSegmentPerWidth) < (decimal)maxX) newSegmentPerWidth++;
int newSegmentPerHeight = 1;
while ((decimal)((page.PageHeight - page.Margins.Top - page.Margins.Bottom) * newSegmentPerHeight) < (decimal)maxY) newSegmentPerHeight++;
page.SegmentPerWidth = newSegmentPerWidth;
page.SegmentPerHeight = newSegmentPerHeight;
}
}
Что можно сделать?error CS0136: Невозможно объявить локальную переменную с именем "index" в этой области действия, так как она придаст другое значение "index", который уже используется в области действия "родительский или текущий" для обозначения другого понятия
Код: Выделить всё
report.ExportDocument(StiExportFormat.Rtf, tbName.Text + "Report_Page" + pageNumber + ".rtf", es);
Код: Выделить всё
report.ExportDocument(StiExportFormat.Rtf, tbName.Text + "Report_" + report.RenderedPages[startPage+1].ExcelSheetValue + ".rtf", es);