Новый трабл при склейке отчётов (пакетная печать)
Добавлено: 29 июл 2009, 10:11
Простой пример кода:
При запуске приложения почему-то страницы накладываются друг на друга.
Причём, если в каждом из двух отчётов только под одной странице, то всё нормально.
Если в одном из отчётов больше одной страницы (в частности в счёте-фактуре получилось 2 страницы), а
в накладной одна.
Накладная при этом выводится нормально, счёт при этом выводится не полностью (см. вложение Пакетная печать.tif).
Два шаблона файлов отчёта в приложении.
Дополнения к посту.
Конкретно, в счёте (в данном случае он приклеивается к накладной) не печатается band с именем ЗаголовокСтраницы1.
Если у этого же счёта у band'а ЗаголовокДанных1 ставим свойство Print on в Only First Page, то он (заголовок данных) не печатается на второй (и последующих) странице (ах), а если Print on == All Pages, то печатается.
Иными словами, создаётся впечатление, что свойство Print on работает как-то неправильно, если отчёт не один, т.е. когда один отчёт добавляем к другому (в данном случае счёт добавляем к накладной), генератор отчётов думает, что это один отчёт и накладывается один на другой без учёта свойства Print on.
:surr:
Код: Выделить всё
private StiReport GetReport(string name)
{
StiReport report = new StiReport();
report.Load(name);
return report;
}
private void Form1_Shown(object sender, EventArgs e)
{
StiReport report1 = GetReport("Накладная торг 12.mrt");
StiReport report2 = GetReport("Счёт-фактура.mrt");
stiReport1.SubReports.Add(report1, true, false);
stiReport1.SubReports.Add(report2, true, false);
stiReport1.Render(false);
}
При запуске приложения почему-то страницы накладываются друг на друга.
Причём, если в каждом из двух отчётов только под одной странице, то всё нормально.
Если в одном из отчётов больше одной страницы (в частности в счёте-фактуре получилось 2 страницы), а
в накладной одна.
Накладная при этом выводится нормально, счёт при этом выводится не полностью (см. вложение Пакетная печать.tif).
Два шаблона файлов отчёта в приложении.
Дополнения к посту.
Конкретно, в счёте (в данном случае он приклеивается к накладной) не печатается band с именем ЗаголовокСтраницы1.
Если у этого же счёта у band'а ЗаголовокДанных1 ставим свойство Print on в Only First Page, то он (заголовок данных) не печатается на второй (и последующих) странице (ах), а если Print on == All Pages, то печатается.
Иными словами, создаётся впечатление, что свойство Print on работает как-то неправильно, если отчёт не один, т.е. когда один отчёт добавляем к другому (в данном случае счёт добавляем к накладной), генератор отчётов думает, что это один отчёт и накладывается один на другой без учёта свойства Print on.
:surr: