zu 1. Ja
zu 2. Ja (QueryBuilder), jedoch sowie ich es gemacht habe nicht!
Ich habe dir mal ein kleines Projekt gebastelt. Da ich aber die Unidac Komponente nicht habe, dachte ich mir, es geht auch mit der VirtualTable Komponente.
hier ein kleiner Code Ausschnitt (Ausschnitt ist gut, das ist alles ...
)
Delphi-Quellcode:
procedure TfrmReporting.btnGruppeClick(Sender: TObject);
begin
dsGlobal.DataSet := tblGruppe; // mit fester Datenverbindung (tblGruppe)
frxReport1.PrepareReport(True); // leere den Report
frxReport1.DesignReport; // damit öffnest du den Designer / im Report werden die Felder von tblGruppe angezeigt
end;
procedure TfrmReporting.btnMitarbeiterClick(Sender: TObject);
begin
dsGlobal.DataSet := tblMitarbeiter; // mit fester Datenverbindung (tblMitarbeiter)
frxReport1.PrepareReport(True); // leere den Report
frxReport1.DesignReport; // damit öffnest du den Designer / im Report werden die Felder von tblMitarbeiter angezeigt
end;
noch mal zu 2. im Report wird natürlich die Verbindung gespeichert, aber hier tausche ich ja das Dataset aus, was der Report ja nicht speichert. Dadurch musst du zu jedem Report die angezapfte Tabelle oder Abfrage irgendwo zusätzlich speichern.
Meine Verknüpfung ist ja :
Dataset > Datasource > frxDBDataset > frxReport
Gespeichert wird im Report nur die Verbindung
frxDBDataset > frxReport
Gruß
Matze