Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

FastReport4.0. DialogPage при пакетной печати, как показать один раз?

8.9K
16 октября 2009 года
Abadonne
26 / / 26.01.2006
Есть отчёт с Dialog Page на котором лежит пара Edit'ов. Разумеется они должны быть заполнены пользователем.
Но возникла ситуация, когда этот отчёт должен быть напечатан пакетно (т.е. один и тот же отчёт вызывается несколько раз (PrepareReport несколько раз в самом конце ShowReport) с параметрами PrintOnPreviousPage = True и ClearLastRepot = false). Соответственно сколько раз его вызываешь - столько раз он и показывает DialogPage.
Необходимо же, что бы юзер ввел данные только в первом случае, а потом уже использовалось то, что он навводил в первом случае.

Код примерно такой (Delphi 7):
Код:
type
    TmPrint = class
  private
    FR: TfrxReport;
.....
  public
.....
    procedure LoadReportPackage(ReportFileName: string; DataSet: TDataSet);
    procedure LoadReportPackageShow;
  end;

......

{ ------------------------------------------------------------------- }
procedure TmPrint.LoadReportPackage(ReportFileName:string; DataSet:TDataSet);
begin
    FDataSet := DataSet;
    ReportFile:= ReportFileName;
    FR.LoadFromFile(ReportFile);
    FR.PrepareReport(False);
end;

{ ------------------------------------------------------------------- }
procedure TmPrint.LoadReportPackageShow();
begin
   FR.ShowPreparedReport;
end;

т.е. в цикле сначала вызывается LoadReportPackage с меняющимся данными датасета, а потом вызывается LoadReportPackageShow

Конструктор и деструктор в целом стандартны...
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог