AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi DBGrid zur Laufzeit aktualisieren
Thema durchsuchen
Ansicht
Themen-Optionen

DBGrid zur Laufzeit aktualisieren

Ein Thema von jschade · begonnen am 11. Jul 2003 · letzter Beitrag vom 2. Jun 2005
Antwort Antwort
jschade

Registriert seit: 11. Jul 2003
Ort: Hamburg
62 Beiträge
 
#1

DBGrid zur Laufzeit aktualisieren

  Alt 11. Jul 2003, 14:05
hi leute,

bin neu hier. hab nämlich folgendes problem und suche hilfe.
also, ich hab ein formular in zwei teile geteilt.

1. im oberen teil werden daten in verschiedene tabellen eingetragen (mit hilfe von dblookupcombobox(en) habe ich diese "verknüpft". mit hilfe der dbnavigator kann ich diese problemlos einpflegen.

2. im unteren teil werden diese daten (aus datenbank durch adoquery ausgewählt) in einem dbgrid dargestellt. dieses dbgrid möchte ich aktualisiert bekommen, wenn ich änderungen aus dem oberen teil übernehme, oder evtl durch einen zusätzlichen button die aktualisierung ausführen.

wie kann ich dieses dbgrid zur laufzeit aktualisieren?

danke für eure hilfe!

mfg jan
  Mit Zitat antworten Zitat
TimmA

Registriert seit: 22. Mai 2003
Ort: Giessen
111 Beiträge
 
Delphi 7 Professional
 
#2

Re: DBGrid zur Laufzeit aktualisieren

  Alt 11. Jul 2003, 14:26
Hi,

evtl. über den Refresh-Button dees DBNavigator's ?
  Mit Zitat antworten Zitat
jschade

Registriert seit: 11. Jul 2003
Ort: Hamburg
62 Beiträge
 
#3

Re: DBGrid zur Laufzeit aktualisieren

  Alt 11. Jul 2003, 14:55
hab ich schon versucht. als datasource gebe ich meine adoquery an. wenn ich dann zu laufzeit den refresh-button betätige bekomme ich folgende meldung: "Insufficient key column information for updating or refreshing."
  Mit Zitat antworten Zitat
Niko

Registriert seit: 23. Jun 2003
416 Beiträge
 
Delphi 2006 Professional
 
#4

Re: DBGrid zur Laufzeit aktualisieren

  Alt 11. Jul 2003, 15:16
Probier mal die Methode repaint des DBGrids. Ich weiß allerdings nicht ob dadurch auch die Daten neu gelesen werden.
"Electricity is actually made up of extremely tiny particles called electrons, that you cannot see with the naked eye unless you have been drinking." (Dave Barry)
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#5

Re: DBGrid zur Laufzeit aktualisieren

  Alt 11. Jul 2003, 15:27
Zitat von Niko:
Probier mal die Methode repaint des DBGrids. Ich weiß allerdings nicht ob dadurch auch die Daten neu gelesen werden.
Neu eingelesen wird über die Refresh Funktion des Grid.
Aber das Problem liegt wohl tiefer da er ja eine Fehlermeldung bzgl. des Schlüssels bekommt.

Hast Du schon einmal versucht deine Query die das Grid mit Daten versorgt einfach zu schließen und dann wieder zu öffnen?
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Niko

Registriert seit: 23. Jun 2003
416 Beiträge
 
Delphi 2006 Professional
 
#6

Re: DBGrid zur Laufzeit aktualisieren

  Alt 11. Jul 2003, 16:26
Zitat von Sharky:
Neu eingelesen wird über die Refresh Funktion des Grid.
Zumindest bis Delphi 4 ruft TDBGrid.Refresh lediglich TDBGrid.Repaint auf.
Falls diese Methoden nicht funktionieren, führt auf jeden Fall die Refresh-Methode der zugrundeliegenden Datenmenge zum erneuten Abrufen der Daten.
Was die Fehlermeldung anbelangt hast du sicher damit recht, dass dieses Problem wo anders liegt.
"Electricity is actually made up of extremely tiny particles called electrons, that you cannot see with the naked eye unless you have been drinking." (Dave Barry)
  Mit Zitat antworten Zitat
jschade

Registriert seit: 11. Jul 2003
Ort: Hamburg
62 Beiträge
 
#7

Re: DBGrid zur Laufzeit aktualisieren

  Alt 14. Jul 2003, 09:20
vielen dank leute, hab's dank eurer hilfe hinbekommen.
binde die aktualisierung vorübergehend an nen butten. bei klick führt er dann nur folgendes aus:

Code:
procedure TSchulungen.Button1Click(Sender: TObject);
begin
ADOQuery1.Requery();
DBGrid1.Repaint;
end;
und schon funktionierts

tauchen bestimmt noch 'n paar fragen auf, also bis denne...

...und nochmal vielen dank!
  Mit Zitat antworten Zitat
struppelohr

Registriert seit: 11. Mai 2005
9 Beiträge
 
#8

Re: DBGrid zur Laufzeit aktualisieren

  Alt 2. Jun 2005, 11:02
wofür steht das requerey?
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#9

Re: DBGrid zur Laufzeit aktualisieren

  Alt 2. Jun 2005, 11:13
Zitat von jschade:
bei klick führt er dann nur folgendes aus:
Code:
procedure TSchulungen.Button1Click(Sender: TObject);
begin
ADOQuery1.Requery();
DBGrid1.Repaint;
end;
und schon funktionierts
DBGrid1.Repaint ist überflüssig.
Das DBGrid merkt von selbst, dass sich die unterliegene Datenmenge geändert hat.
Andreas
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:54 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz