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

Вывод текста из TEdit в FastReport без сохранения в базе данных

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

FastReport — это популярный отчетный инструмент для разработчиков, работающих с языком программирования Delphi. Он позволяет создавать сложные отчеты, содержащие таблицы, графики, тексты и другие элементы. Однако, по умолчанию, FastReport получает данные для отчета из базы данных. Но что если вам нужно вывести текст, введенный в TEdit, без сохранения в базе данных? В этой статье мы рассмотрим, как это сделать.

Подтвержденный ответ:

Есть несколько способов вывести текст из TEdit в FastReport без сохранения в базе данных. Рассмотрим два из них.

Метод 1: Добавление текста в отчет в коде

Первый способ заключается в том, чтобы добавить текст в отчет программно, используя компоненты TfrxMemoView и TfrxReportTitle. Вот пример кода, который демонстрирует, как это сделать:

procedure TForm1.btnReportClick(Sender: TObject);
var
  memo: TfrxMemoView;
  band: TfrxReportTitle;
begin
  // Получить банд (полосу) отчета
  band := (rptDemo.Report.FindObject('ReportTitle1') as TfrxReportTitle);
  // Создать memo (мемо) и добавить его в банд
  memo := TfrxMemoView.Create(band);
  memo.CreateUniqueName;
  memo.ParentFont := True;
  memo.Text := edtReport.Text;
  memo.SetBounds(100, 1, 100, 16);
  memo.HAlign := haLeft;
  memo.AutoWidth := False;
  // Использовать существующее memo
  memo := (rptDemo.Report.FindObject('Memo1') as TfrxMemoView);
  memo.Text := edtReport.Text;
  // Показать отчет
  rptDemo.ShowReport(False);
end;

В этом примере мы сначала получаем банд отчета, затем создаем TfrxMemoView и добавляем его в банд. Мы устанавливаем текст memo равным тексту в TEdit, а затем показываем отчет.

Метод 2: Использование события OnGetValue

Второй способ заключается в использовании события OnGetValue компонента TfrxReport. В этом событии вы можете установить значение переменной, которое затем можно использовать в отчете. Вот как это сделать:

procedure TForm1.frxReport1GetValue(const VarName: string; var Value: Variant);
begin
  if(VarName = 'MyVariable') then
  begin
    Value := Edit1.Text;
  end;
end;

В этом примере мы устанавливаем значение переменной MyVariable равным тексту в TEdit. Затем, в отчете, мы можем использовать это значение в любом месте, где хотим вывести текст из TEdit. Например, если у вас есть memo в отчете, вы можете установить его значение на [MyVariable].

Альтернативный ответ:

Еще один способ — использовать памятьную таблицу (memory dataset) в FastReport. Это позволяет вам добавлять данные в отчет программно, не сохраняя их в базе данных. Однако, этот метод может быть несколько сложнее для новичков в FastReport.

Заключение:

Вывод текста из TEdit в FastReport без сохранения в базе данных можно сделать двумя способами: программное добавление текста в отчет или использование события OnGetValue. Оба метода эффективны и могут быть использованы в зависимости от ваших конкретных потребностей.

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

Описание способов вывода текста из TEdit в FastReport без сохранения в базе данных.


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

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




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


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


реклама


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

Время компиляции файла: 2024-12-22 20:14:06
2025-06-15 22:47:16/0.0034840106964111/0