AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Datensatz bearbeiten --> Felder werden nicht gefüllt
Thema durchsuchen
Ansicht
Themen-Optionen

Datensatz bearbeiten --> Felder werden nicht gefüllt

Ein Thema von Christian18 · begonnen am 31. Jan 2006 · letzter Beitrag vom 31. Jan 2006
Antwort Antwort
Christian18

Registriert seit: 9. Dez 2003
Ort: Hamburg
1.279 Beiträge
 
#1

Datensatz bearbeiten --> Felder werden nicht gefüllt

  Alt 31. Jan 2006, 20:49
Datenbank: Access • Version: 2000 • Zugriff über: ADO
Hallo,

hat jemand eine Idee warum folgendes nicht funktioniert???
Delphi-Quellcode:
Table1.Edit;
Form2.ComboBox1.Text:=Table1.FieldByName('Name').AsString;
Form2.ShowModal;
Diese Code Zeile führe ich aus, wenn ich einen Datensatz bearbeiten will. in der Acces Tabbelle ist auch in dem Feld was drinn geschrieben, aber er schreibt es nicht in das Feld rein. Was kann ich dagegen tun???

Hier die Tabelle:
SQL-Code:
Create Table Kunden
(
  ID Counter,
  Name VarChar(30),
  Vorname VarChar(30),

  Constraint pk Primary Key (Idx)
)
MFG Christian18
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Datensatz bearbeiten --> Felder werden nicht gefüllt

  Alt 31. Jan 2006, 21:12
Mit Table.edit setzt Du Dich nur in den Editzustand. Um die Änderungen in die DB einzuspielen musst Du noch ein Table.Post ausführen.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Datensatz bearbeiten --> Felder werden nicht gefüllt

  Alt 31. Jan 2006, 21:16
Was willst du eigentlich machen? Den ausgewählten wert der ComoBox in die Datenbank schreiben? dann mußt du die Zuweisung umkehren:
Table1.FieldByName('Name').AsString := Form2.ComboBox1.Text; Oder einen/alle werte der Datenbank in die ComboBox schreiben, dann ist dein Code aber auch falsch, dann müßte es so heißen:
Table1.Open;
Delphi-Quellcode:
while not Table1.EOF() do
begin
  Form2.ComboBox1.items.add( Table1.FieldByName('Name').AsString);
  Table1.Next;
end;
Form2.ComboBox.Text := Form2.ComboBox.items[0];
Form2.ShowModal;
Markus Kinzler
  Mit Zitat antworten Zitat
Christian18

Registriert seit: 9. Dez 2003
Ort: Hamburg
1.279 Beiträge
 
#4

Re: Datensatz bearbeiten --> Felder werden nicht gefüllt

  Alt 31. Jan 2006, 21:17
Hallo,

ja ist richtig die Tabelle soll doch auch in den Edit modus. wenn ich auf den button Bearbeiten klicke, dann soll auf Form2 die ComboBox gefüllt werden. Das funktioniert aber nicht.

MFG Christian18
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Datensatz bearbeiten --> Felder werden nicht gefüllt

  Alt 31. Jan 2006, 21:21
Dann muß sie nicht in den Editmodus!!! In den Editmodus mußt du die Tabelle nur versetzen, wenn du sie auch editieren willst, zum Auslesen ist das nicht nötig.
Markus Kinzler
  Mit Zitat antworten Zitat
Christian18

Registriert seit: 9. Dez 2003
Ort: Hamburg
1.279 Beiträge
 
#6

Re: Datensatz bearbeiten --> Felder werden nicht gefüllt

  Alt 31. Jan 2006, 21:31
Hallo,

ich habe das gerade mal probiert, was du mir gesagt hast. funktioniert aber leider nicht. hier:
Delphi-Quellcode:
  if
    Table1.RecordCount > 0
  then
    begin
      Form2.Caption:='Bearbeiten';
      Form2.ComboBox1.Text:=Table1.FieldByName('Name').AsString;
      Form2.ComboBox2.Text:=Table1.FieldByName('Vorname').AsString;

      Form2.ShowModal;
    end
  else
    BitBtn1Click(Sender); // macht fenster für neuen Datensatz auf
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Datensatz bearbeiten --> Felder werden nicht gefüllt

  Alt 31. Jan 2006, 21:36
Ich verstehe immer noch nicht ganz, was du vorhast
Zitat von Christian18:
Delphi-Quellcode:
  if
    Table1.RecordCount > 0
  then
    begin
      Form2.Caption:='Bearbeiten';
      Form2.ComboBox1.Text:=Table1.FieldByName('Name').AsString;
      Form2.ComboBox2.Text:=Table1.FieldByName('Vorname').AsString;

      Form2.ShowModal;
    end
  else
    BitBtn1Click(Sender); // macht fenster für neuen Datensatz auf
Also wenn es Datensätze gibt, setzt du den Text der CombBox ( Anzeige der Auswahl, nicht der Eintrage) zuerst auf den Namen und dann auf den Vornamen und dann zeigtst du das Fenster modal, was ist der Sinn?
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von blawen
blawen

Registriert seit: 30. Nov 2003
Ort: Luterbach (CH)
654 Beiträge
 
Delphi 12 Athens
 
#8

Re: Datensatz bearbeiten --> Felder werden nicht gefüllt

  Alt 31. Jan 2006, 22:17
Zitat von mkinzler:
Ich verstehe immer noch nicht ganz, was du vorhast
Dem kann ich mich irgendwie nur anschliessen.

Die ganze Zuweiserei hat mit Datenbanken nicht sehr viel zu tun.
Wie ich sehe, bist Du ein sehr aktives Mitglied. Vielleicht solltest Du die Probleme nicht in der Ferne suchen, sondern einfach wieder auf das einfache zurück kommen ? (Nicht böse gemeint!)
Roland
  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 11:02 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