Некорректное отображение отчёта при экспорте в PDF

Aleksey
Сообщения: 2420
Зарегистрирован: 22 апр 2010, 02:57

Re: Некорректное отображение отчёта при экспорте в PDF

Сообщение Aleksey »

Здравствуйте,

Необходимо некоторое время для подготовки примера.

Спасибо.
Ivan
Сообщения: 636
Зарегистрирован: 10 авг 2006, 01:40

Re: Некорректное отображение отчёта при экспорте в PDF

Сообщение Ivan »

Здравствуйте.
Помогите ещё в одном деле... Ниже предоставляю скриншот предосмотра отчёта в котором на стыке 2-х страниц есть объединение. В результате в конце первой страницы всё в порядке, а в начале второй страницы не дублируется объединённое значение "РЕЗЕРВ"...
Есть такой нюанс, при использовании этого режима новая страница не перезапускает обработку дубликатов. Но во многих случаях это и не нужно.
Для решения надо добавить ещё несколько скриптов.

Если надо принудительно перезапустить обработку дубликатов (например, при использовании группировок), можно использовать следующую команду в скрипте:

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

Engine.ResetProcessingDuplicates("componentName");
При использовании этого метода в событии BeforePrint страницы проявляется баг: если последний компонент на странице не влазит, он переносится на следующую страницу и становится там первым; перезапуск срабатывает таким образом только для следующего компонента (или вообще не срабатывает). Как вариант решения проблемы, можно добавить следующий код в событие BeforePrint датабэнда (величину defaultBandHeight надо подобрать экспериментально и с запасом):

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

if (Engine.FreeSpace < defaultBandHeight) Engine.NewPage();
Таким образом, мы добавили скрипт в событие BeforePrint страницы и BeforePrint датабэнда.
В большинстве случаев всё будет работать корректно. Хотя в некоторых случаях, в зависимости от данных, дублирование может и не повторяться.
К сожалению, пока нет простого решения, которое будет срабатывать всегда.
Модифицированный пример отчёта прилагаем.

Спасибо.
Вложения
new_my_report2.mrt
(53.02 КБ) 55 скачиваний
skipet
Сообщения: 15
Зарегистрирован: 02 мар 2021, 11:30

Re: Некорректное отображение отчёта при экспорте в PDF

Сообщение skipet »

Спасибо за чёткий и полновесный ответ, Aleksey и Ivan. Я бы хотел узнать о том где можно почитать про эти нюансы, ну то есть об Engine.ResetProcessingDuplicates("componentName"), defaultBandHeight, Engine.NewPage(). А то Вы находите ответ на мои вопросы а я сам как то никак, аж неудобно...
Aleksey
Сообщения: 2420
Зарегистрирован: 22 апр 2010, 02:57

Re: Некорректное отображение отчёта при экспорте в PDF

Сообщение Aleksey »

Здравствуйте,

Только поиск по форуму. К сожалению, по данным методам документации нет, так как это уже использование внутренних методов в событиях. Применяется не часто и в определенных ситуациях.

Спасибо.
Ответить