Відноситься до
Вираз, що прораховується перед виводом об'єкта. За допомогою нього в залежності від деяких умов можна розраховувати глобальні змінні звіту, а також динамічно змінювати наступні характеристики поточного об'єкта безпосередньо перед його виводом:
LEFT - відступ об'єкта зліва в пікселах (ціле число)
TOP - відступ об'єкта зверху в пікселах (ціле число)
WIDTH - ширина об'єкта в пікселах (ціле число)
HEIGHT - висота об'єкта в пікселах (ціле число)
VISIBLE - визначає, чи показувати об'єкт під час друку (значення булевського типу)
Правила створення виразів для дії перед друком визначаються загальними правилами побудови виразів; результат виразу повинен бути присвоєним атрибуту зі списку вище або глобальній змінній звіту. Виразів може бути кілька (розділених крапкою з комою). Загалом, кожен вираз повинен бути написаним в наступному форматі: OBJECT_ATTRIBUTE := EXPRESSION;
Приклад типового коду для Перед Друком:
LEFT := LEFT + ( WIDTH + 1 ) * ( GROUPRECORDNUMBER - 1 ); //Зміна відступу зліва для поточного об'єкта
WIDTH := 150; //Зміна ширини для поточного об'єкта
VARIABLES.VAR2 := VARIABLES.VAR2 + 1; //Зміна глобальної змінної звіту
Наступний приклад показує, як розмістити об'єкти секції Дані в кожній групі не вертикально, а горизонтально (тобто транспонувати таблицю):
1. Для об'єктів у групі (в даному випадку RDBText1) необхідно задати дію перед друком:
LEFT := LEFT + ( WIDTH + 1 ) * ( GROUPRECORDNUMBER - 1 );
2. Висоту секції Дані встановити в 0.
3. Якщо після секції Дані є інша секція, то її слід розтягнути, а об'єкти в ній змістити нижче так, щоб об'єкт RDBText1 не перекривався ними.