В новой версии FastReport VCL 2022.2 мы добавили новый функционал в дизайнер отчетов, который поможет обнаружить наиболее распространенные ошибки при разработке шаблонов отчетов и исправить их.
FastReport VCL - генератор отчетов со свободным расположением объектов. Это значит, что объекты могу располагаться в произвольном порядке, в том числе, перекрывая другие объекты. Такие объекты корректно преобразуются в форматы экспортов со свободным расположением объектов, но могут вызывать проблемы в документах с жесткой структурой. Примером такого формата может быть таблица в формате XLSX. Пересекаемые объекты не могут экспортироваться из-за строгой табличной структуры формата. Подробнее о правильном дизайне отчета можно узнать из руководства пользователя.
В этой статье мы рассмотрим, как выявить такие проблемы в готовом отчете, и какие инструменты можно использовать для быстрого их исправления.
Прежде всего, нужно открыть отчет в дизайнере отчетов. В примере используется модифицированный отчет из главного демоприложения.
На первый взгляд проблем нет. Посмотрим, как выглядит построенный отчет в предпросмотре.
Проблемы могу стать очевидны при табличном экспорте, к примеру в XLSX.
Мы видим, что при экспорте появились лишние столбцы у таблицы и обрезалось содержимое объекта. Такие ошибки сложно выявить даже в отчете, который работал долгое время.
Вернемся в дизайнер отчетов. Начиная с версии FastReport VCL 2022.2 на стандартном тулбаре в дизайнере отчетов появилась кнопка, которая позволяет включить новую функцию – «Подсветка пересечения».
Нажмем на кнопку, чтобы активировать функцию подсветки пересечения объектов.
Теперь мы можем видеть какие объекты перекрываются и места их пересечения.
Исправить ошибки в демонстративном отчете довольно просто, ведь места пересечения хорошо заметны, а объектов отчета не так много. Просто передвинем проблемные объекты.
Тут на помощь разработчику отчета может приди еще одна функция из релиза FastReport VCL 2022.2 – «Автонаправляющие». В этом режиме выносные линии создаются автоматически по всем четырем точкам каждого объекта в отчете. Что немаловажно, данный режим не замещает выносные линии на странице отчета, добавленные пользователем, а дополняет их.
Режим переключается кнопкой на верхней линейке рабочего пространства дизайнера отчета.
Всего есть 4 режима:
Автоматические выносные линии отключены – используются выносные линии, добавленные пользователем. Иконка кнопки в этом режиме имеет вид .
Автоматические выносные линии включены – выносные линии создаются автоматически для каждого объекта. Иконка кнопки в этом режиме имеет вид .
Автоматические выносные линии включены только горизонтальные - выносные линии создаются автоматически для каждого объекта только в горизонтальной плоскости. Иконка кнопки в этом режиме имеет вид .
Автоматические выносные линии включены только вертикальные - выносные линии создаются автоматически для каждого объекта только в вертикальной плоскости. Иконка кнопки в этом режиме имеет вид .
Нажмем на кнопку и включим режим автоматических выносных линий с полным отображением . Теперь можно передвинуть выносные линии с проблемными объектами.
В этом режиме хорошо видны проблемные места, которые могут всплыть при использовании табличных фильтров экспорта.
Но это не все возможности режима «автонаправляющих». Разработчик отчета, находясь в этом режиме, может добавлять любую из «автонаправляющих» в пользовательские направляющие страницы. Достаточно навести указатель выносной линии на линейке и нажать знак плюс.
Это дает возможность создать пользовательские направляющие, которые будут использоваться для выравнивания при добавлении новых объектов в отчет.
И, конечно, «автонаправляющие» можно удалять из пользовательских направляющих таким же способом, как и при добавлении. Вновь наводим указатель выносной линии на линейке и нажимаем знак минус.
Этот функционал дает разработчику отчетов богатый арсенал в разработке не только красивых, но и интеллектуальных отчетов, которые будут правильно экспортироваться в любой формат данных.