Показать сообщение отдельно
  #1  
Старый 27.01.2022, 02:39
bastibubu bastibubu вне форума
Прохожий
 
Регистрация: 29.11.2017
Сообщения: 1
Версия Delphi: delphi 10.2
Репутация: 10
По умолчанию Как печатать несколько строк датасета (Fast Report)

Delphi 10.4.2, Fast Report 6.
компоненты TFDQuery, TDbGrid.
TDbGrid options: RawSelected,MultiSelected, AlwaysShowSelection=true
RangeBegin and RangeEnd of FrxDbDataset=rbCurrent.

Если выбираю несколько строк (left ctrl+mouse) печатает только одну строку(последную по id в гриде).
Как напечатать несколько выбранных строк датасета? Возможно обойти без memotable, clientdataset ?

Код:
 query1.sql.text:='select * from datailtable where mastertable_id=:id';
 query1.open;

// dbgrid1.SelectedRows.CurrentRowSelected:=true;  //лишний?

 for i := 0 to DBGrid1.SelectedRows.Count-1 Do Begin
    DBGrid1.DataSource.DataSet.GotoBookmark(DBGrid1.SelectedRows.Items[i]);
 end;

 frxReport1.LoadFromFile(ExtractFilePath(ParamStr(0))+'Doc_id.fr3');
 frxReport1.PrepareReport;
 frxReport1.ShowPreparedReport;
Ответить с цитированием