![]() |
Datenbank: MSSQL • Version: 2000 • Zugriff über: OLEDBCONNECTION
zwei in einem Dataset verknüpfte Tabellen in einem Dataview?
Hallo,
lange gesucht und nichts gefunden: In einer Dataset habe ich zwei Tabellen über eine Relation miteinander verknüpft und kann mir das ganze auch in einem Datagrid ansehen. Wenn ich eine Zeile meine Master-Tabelle im Grid augewählt habe, so muß ich jedoch die Verknüpfung aufklappen um auch die Details zu sehen. nun meine Frage: gibt es die Möglichkeit über ein Dataview die Relation direkt aufzulösen? Danke Bigeddie |
Re: zwei in einem Dataset verknüpfte Tabellen in einem Datav
Hallo Bigeddie,
habs mit zwei Datagrid´s gemacht. Die Relation hast du ja schon erstellt. erstelle einen Delegaten "DataGridX.CurrentCellChanged" In der zugehörigen Procedure machst du dann einen Refresh
Delphi-Quellcode:
gibt aber vermutlich elegantere Lösungen
procedure TWinForm.TWinForm_Load(sender: System.Object; e: System.EventArgs);
begin include(DataGrid1.CurrentCellChanged,dgCellChange); end; procedure TWinForm.dgCellChange(sender: TObject; e: System.EventArgs); begin RefreshChild; end; procedure TWinForm.RefreshChild; var drM, drN : DataRow; drws : array[] of DataRow; i, curDgRow, curTabRow, akt : integer; mString : string; begin dtR.Clear; curDgRow := DataGrid1.CurrentRowIndex; curTabRow := convert.ToInt32(DataGrid1.Item[curDgRow,0]); mString := DataGrid1.Item[curDgRow,0].ToString; for i:= 0 to myds.Tables['T_MASTER'].Rows.Count-1 do if mString=myds.Tables['T_MASTER'].Rows[i].Item[0].ToString then begin akt:=i; Break; end; drM := myds.Tables['T_MASTER'].Rows[akt]; drws := drM.getChildRows(dRel); for i:=0 to high(drws) do // dtR.ImportRow(drws[i]); begin drN := dtR.NewRow; drN.Item[0] := Convert.ToInt32(drws[i].Item[0]); drN.Item[1] := Convert.ToInt32(drws[i].Item[2].ToString); drN.Item[2] := drws[i].Item[1].ToString; dtR.Rows.add(drN); end; DataGrid2.DataSource:= dtR; end; ciao |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:33 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz