Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Настройка печатных форм с FastReport VCL 5: замена старого инструмента отчетности

Delphi , Базы данных , Отчеты

FastReport VCL 5 — это мощный инструмент для создания отчетов, который может стать отличной альтернативой старому инструменту отчетности вашего приложения. В данной статье мы рассмотрим, как настроить печатные формы с помощью FastReport VCL 5, чтобы распечатать элементы формы на лазерном принтере.

Одной из основных задач, которые вам придется решать при работе с печатными формами, является размещение элементов формы позади мастер- и детальных полос. В вашем случае это может быть invoice header (мастер-полоса), invoice details (детальная полоса) и totals band (нижняя полоса). Также вам нужно, чтобы invoice header повторялся на каждой странице, если отчет занимает несколько страниц, и чтобы детали отчета оставались в пределах заданного прямоугольника.

Чтобы решить эту задачу, вы можете воспользоваться функцией OverlayBand в FastReport VCL 5. OverlayBand позволяет накладывать один отчет на другой, что дает вам возможность разместить элементы формы позади мастер- и детальных полос.

Вот шаги, которые вы можете предпринять, чтобы настроить печатную форму с помощью FastReport VCL 5:

  1. Переместите все элементы формы, которые вы хотите напечатать позади мастер- и детальных полос, в отдельную полосу (например, OverlayBand).
  2. Добавьте полосу Page Header для печати header-информации (например, company name, invoice number и т.д.).
  3. Добавьте полосу Master Data для печати детальной информации (например, invoice items).
  4. Добавьте полосу Page Footer для предотвращения перекрытия нижней части формы детальной информацией.
  5. Добавьте полосу OverlayBand для печати всех элементов формы, которые вы хотите напечатать позади мастер- и детальных полос.

Пример кода на Object Pascal (Delphi) для настройки печатной формы с помощью FastReport VCL 5: ```pascal unit Unit1;

interface

uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, FRxExpress;

type TForm1 = class(TForm) FRxExpress1: TFRxExpress; procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end;

var Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject); begin // Создание нового отчета var Report: TFRxReport; Report := TFRxReport.Create(nil);

// Добавление полосы Page Header var PageHeader: TFRxPageHeader; PageHeader := TFRxPageHeader.Create(Report); PageHeader.Name := 'PageHeader'; PageHeader.AddObject('CompanyName', 'TLabel', [poLeft, poTop, poWidth, poHeight], [10, 10, 200, 20]); PageHeader.AddObject('InvoiceNumber', 'TLabel', [poLeft, poTop, poWidth, poHeight], [10, 40, 200, 20]);

// Добавление полосы Master Data var MasterData: TFRxMasterData; MasterData := TFRxMasterData.Create(Report); MasterData.Name := 'MasterData'; MasterData.AddObject('ItemName', 'TLabel', [poLeft, poTop, poWidth, poHeight], [10, 10, 200, 20]); MasterData.AddObject('ItemQuantity', 'TLabel', [poLeft, poTop, poWidth, poHeight], [10, 40, 200, 20]);

// Добавление полосы Page Footer var PageFooter: TFRxPageFooter; PageFooter := TFRxPageFooter.Create(Report); PageFooter.Name := 'PageFooter'; PageFooter.AddObject('Total', 'TLabel', [poLeft, poTop, poWidth, poHeight], [10, 10, 200, 20]);

// Добавление полосы OverlayBand var OverlayBand: TFRxOverlayBand; OverlayBand := TFRxOverlayBand.Create(Report); OverlayBand.Name := 'OverlayBand'; OverlayBand.AddObject('Frame', 'TFrame', [poLeft, poTop, poWidth, poHeight], [10, 10, 200, 200]); OverlayBand.AddObject('Logo', 'TPicture', [poLeft, poTop, poWidth, poHeight], [10, 10, 50, 50]);

// Настройка отчета Report.MasterDataName := 'MasterData'; Report.PageHeaderName := 'PageHeader'; Report.PageFooterName

Создано по материалам из источника по ссылке.

Статья описывает настройку печатных форм в FastReport VCL 5 для распечатки элементов формы на лазерном принтере, с использованием функции OverlayBand для размещения элементов позади мастер- и детальных полос.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Отчеты ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-05-01 10:59:18/0.0051681995391846/1