Страница 4 из 4

Re: Формирование сложного отчета

Добавлено: 06 мар 2015, 15:56
HighAley
Здравствуйте.

Для корректной работы необходимо привести все единицы отчёта к одному значению.
При загрузке шаблона методом Load, значение ReportUnit перезаписывается значением из шаблона.
Причём нельзя просто взять и поменять единицы отчёта, так как все значения останутся неизменными и соответственно увеличатся.

Вот примерный код как можно избежать данной проблемы:

Код: Выделить всё

            // Open and render report in Millimeters
            StiReport sourceReport = new StiReport();
            sourceReport.Load(@"d:\Millimeters.mrt");
            sourceReport.Compile();
            sourceReport.Render();

            // Now create report in Centimeters and copy rendered page from the first report
            StiReport report = new StiReport();
            report.NeedsCompiling = false;
            report.IsRendered = true;
            report.ReportUnit = StiReportUnitType.Centimeters;

            Stimulsoft.Report.Units.StiUnit newUnit = Stimulsoft.Report.Units.StiUnit.GetUnitFromReportUnit(report.ReportUnit);
            Stimulsoft.Report.Units.StiUnit oldUnit = Stimulsoft.Report.Units.StiUnit.GetUnitFromReportUnit(sourceReport.ReportUnit);
            bool needConvert = report.ReportUnit != sourceReport.ReportUnit;

            report.RenderedPages.Clear();
            foreach (StiPage page in sourceReport.CompiledReport.RenderedPages)
            {
                page.Report = report;
                page.NewGuid();
                if (needConvert) page.Convert(oldUnit, newUnit);
                report.RenderedPages.Add(page);
            }

            report.Show();
Спасибо.

Re: Формирование сложного отчета

Добавлено: 06 мар 2015, 16:26
kin123456789
Спасибо большое! Помогло!
page.NewGuid(); - что за функция?

Re: Формирование сложного отчета

Добавлено: 06 мар 2015, 17:09
Andrew
Здравствуйте,

Функция генерирует новый Guid Для страницы.

Спасибо.

Re: Формирование сложного отчета

Добавлено: 27 май 2015, 12:09
kin123456789
Добрый день! Подскажите как поступить в следующей ситуации!
Нужно сформировать отчет "Статистика по эл картам".
Данный отчет представляет собой статистику по эл картам за день в указанном периоде.
После информации за день выдается статистика по устройствам, в которой отображается суммарная
информация по устройствам.
Проблема в том как вставить другую таблицу внутрь в другой таблицы, когда закончится первый день периода, потом после второго дня в периоде и т.д.
Вариант отчета в прикрепленном файле.
Спасибо!

Re: Формирование сложного отчета

Добавлено: 27 май 2015, 15:12
Aleksey
Здравствуйте,

Не совсем понятна проблема.
Вы можете использовать мастер-детаил конструкцию для данной задачи.

Спасибо.

Re: Формирование сложного отчета

Добавлено: 27 май 2015, 16:53
kin123456789
Можете скинуть ссылку, где про это посмотреть! Спаисбо!

Re: Формирование сложного отчета

Добавлено: 28 май 2015, 09:10
HighAley
Здравствуйте.

Вы можете почитать в разделе Методики построения отчетов страницу Master-Detail отчет.

Спасибо.