![]() |
Datenbank: Mysql • Version: 4 • Zugriff über: ODBC
Einen Extra Feld in DBGRIB beschreiben?
Hallo. Habe mier Query einen Feld in dBgrib eingebunden, 2es Feld habe ich manuel ertellt. Nun möchte ich in diesen 2 Feld (pro Datensatz) irgendwas schreiben.
wiht Query While not Eof do begin dbg_status.Columns[1].Field.AsString := 'irgendwas'; //Das ist sicherlich Falsch! Next; end; funktioniert bei mir leider nicht, woran liegt das? :?: |
Re: Einen Extra Feld in DBGRIB beschreiben?
Hallo.
Delphi-Quellcode:
Wenn das nicht funktioniert, dann ist deine Query nicht update-fähig - oder ich habe mich vertippt. Schau nach, ob du Query.RequestLive auf TRUE gesetzt hast.
begin
with Query do begin First; while not Eof do begin Edit; Fields[1].AsString := 'irgendwas'; Next; end; Post; end; end; Grüße vom marabu |
Re: Einen Extra Feld in DBGRIB beschreiben?
Hallo. Ich will nicht in eine Tabelle schreiben, sonder in DBGRIB (Zeile Temp) was reinschreiben, diese Weerte werde nicht gespeichert. Außerdem kann ich mit TQUERY nicht editieren, das ist eine Anzeige komponente :(
|
Re: Einen Extra Feld in DBGRIB beschreiben?
Dann musst du in deiner Query ein berechnetes Feld anlegen und im OnCalcFields Ereignis der TQuery füllen.
|
Re: Einen Extra Feld in DBGRIB beschreiben?
Zitat:
Ansonsten OnCalcFields benutzen. Cu, Frank |
Re: Einen Extra Feld in DBGRIB beschreiben?
Hallo Probiere ich später aus ich habe das erstmal mit SringGrib gelöst. Danke für ihre hilfe
|
Re: Einen Extra Feld in DBGRIB beschreiben?
Zitat:
SQL-Code:
und dann OnGetText der Felder dynamisch überschreiben:
SELECT a.*, 'teststring mit richtiger länge' as irgendwas FROM mytable a
Delphi-Quellcode:
type
TForm3 = class(TForm) AdsConnection1: TAdsConnection; AdsQuery1: TAdsQuery; DataSource1: TDataSource; DBGrid1: TDBGrid; procedure AdsQuery1AfterOpen(DataSet: TDataSet); private { Private declarations } procedure irgendwasGetText(Sender: TField; var Text: string; DisplayText: Boolean); public { Public declarations } end; var Form3: TForm3; implementation {$R *.dfm} procedure TForm3.AdsQuery1AfterOpen(DataSet: TDataSet); begin TBlobField(AdsQuery1.FieldByName('irgendwas')).OnGetText:=irgendwasGetText; end; procedure TForm3.irgendwasGetText(Sender: TField; var Text: string; DisplayText: Boolean); begin if SameText(Sender.FieldName,'irgendwas') then begin Text:='hallo Welt'; end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:20 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-2025 by Thomas Breitkreuz