DBGrid Combobox [gelöst]

Für Themen zu Datenbanken und Zugriff auf diese. Auch für Datenbankkomponenten.

DBGrid Combobox [gelöst]

Beitragvon VB_Lazarus » 25. Feb 2015, 09:18 DBGrid Combobox [gelöst]

Hallo,

ich habe ein DBGrid.
Ich wollte für bestimmte Felder eine Combobox als Auswahl beim Ändern oder Neuanlagen eines Datensatzes verwenden.
Dies funktioniert soweit gut, bis ich die Daten zurückschreiben möchte in die Datenbank.
Er schreibt die Werte auch brav in das DBGrid.
Ich verwende folgendes, damit die Daten von der Combobox in das DBGrid geschrieben werden:

DBGrid.SelectedField.NewValue:=Combobox.Text;

Beim Aktualisieren des Datensatzes, wird nur ein Wert der letzte geänderte Wert aktualisiert.
Alle andere gäenderten Werte werden nicht mit übernommen.
Hat jemand schon mal dieses Versucht?
Muss ich irgendwas machen, bevor ich die Daten per SQLQuery.Post, und ApplyUpdates aktualisiere?

Danke.

Gruß
Zuletzt geändert von VB_Lazarus am 26. Feb 2015, 05:26, insgesamt 1-mal geändert.
VB_Lazarus
 
Beiträge: 68
Registriert: 23. Dez 2010, 19:10
OS, Lazarus, FPC: Windows 10 64bit / Windows 7 32bit, L 1.6.4 32bit, FPC 3.0.2 32bit | 
CPU-Target: 32Bit
Nach oben

Beitragvon mse » 25. Feb 2015, 09:36 Re: DBGrid Combobox

Probiere mal
Code: Alles auswählen
 
 DBGrid.SelectedField.asstring:= Combobox.Text;
oder
 DBGrid.SelectedField.value:= Combobox.Text;
 

TField.NewValue hat AFAIK eine Spezialfunktion.
mse
 
Beiträge: 1990
Registriert: 16. Okt 2008, 09:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0) | 
CPU-Target: x86,x64,ARM
Nach oben

Beitragvon VB_Lazarus » 25. Feb 2015, 11:33 Re: DBGrid Combobox

Danke, für die schnelle Antwort.

2. Variante habe ich schon probiert.
Es erscheint eine Fehlermeldung, dass die Query nicht im Edit-Modus ist.
Habe auch schon versucht den Edit-Modus vor dem Aufruf zu plazieren.
Hat leider nicht funktioniert.
Die 1. Variante müsste ich Heute abend mal ausprobieren.
VB_Lazarus
 
Beiträge: 68
Registriert: 23. Dez 2010, 19:10
OS, Lazarus, FPC: Windows 10 64bit / Windows 7 32bit, L 1.6.4 32bit, FPC 3.0.2 32bit | 
CPU-Target: 32Bit
Nach oben

Beitragvon mse » 25. Feb 2015, 11:48 Re: DBGrid Combobox

VB_Lazarus hat geschrieben:Danke, für die schnelle Antwort.

2. Variante habe ich schon probiert.
Es erscheint eine Fehlermeldung, dass die Query nicht im Edit-Modus ist.
Habe auch schon versucht den Edit-Modus vor dem Aufruf zu plazieren.
Hat leider nicht funktioniert.

Sollte aber.
Die 1. Variante müsste ich Heute abend mal ausprobieren.

Die braucht ebenfalls den edit-Modus.
mse
 
Beiträge: 1990
Registriert: 16. Okt 2008, 09:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0) | 
CPU-Target: x86,x64,ARM
Nach oben

Beitragvon MmVisual » 25. Feb 2015, 12:55 Re: DBGrid Combobox

Code: Alles auswählen
IF DBGrid.Datasource.Dataset.IsEmpty Then
  DBGrid.Datasource.Dataset.Append
Else Not(DBGrid.Datasource.Dataset.State In [dsEdit, dsInsert]) Then
  DBGrid.Datasource.Dataset.Edit;
DBGrid.SelectedField.asstring:= Combobox.Text;
MmVisual
 
Beiträge: 996
Registriert: 10. Okt 2008, 22:54
OS, Lazarus, FPC: Winux (L 1.6 FPC 3) | 
CPU-Target: 32/64Bit
Nach oben

Beitragvon VB_Lazarus » 26. Feb 2015, 05:28 Re: DBGrid Combobox [gelöst]

Danke, für die Lösungsvorschläge.

MmVisual, deine Variante hat die Lösung für mein Problem gebracht.
VB_Lazarus
 
Beiträge: 68
Registriert: 23. Dez 2010, 19:10
OS, Lazarus, FPC: Windows 10 64bit / Windows 7 32bit, L 1.6.4 32bit, FPC 3.0.2 32bit | 
CPU-Target: 32Bit
Nach oben

• Themenende •

Zurück zu Datenbanken



Wer ist online?

Mitglieder in diesem Forum: Google [Bot] und 4 Gäste

porpoises-institution
accuracy-worried