Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi DataSet nicht im Edit Modus??? (https://www.delphipraxis.net/72397-dataset-nicht-im-edit-modus.html)

kluckweb 29. Jun 2006 23:22

Datenbank: MySQL • Zugriff über: MySQL Dataset

DataSet nicht im Edit Modus???
 
Hallo,

bei folgendem Code kriege ich immer die Meldung: Dataset weder im Einfüge- oder im Editiermodus!

Leider kann ich nicht nachvollziehen wieso

Delphi-Quellcode:
 dataDaten.Kategorien.First;
 dataDaten.Kategorien.Edit;
 dataServer.Kategorien.Edit;
  with dataDaten.Kategorien do
    while not eof do begin
      dataServer.Kategorien.Append;
      dataDaten.Kategorien.FieldByName('kategorie').asString := dataServer.Kategorien.FieldbyName('kategorie').asString;
      dataDaten.Kategorien.FieldByName('kurzbeschreibung').AsString := dataServer.Kategorien.FieldbyName('kurzbeschreibung').AsString;
      dataDaten.Kategorien.next;
    end;
Wird jemand daraus schlau, dass diese Fehlermeldung beim kopieren der Werte kommt?

rwachtel 30. Jun 2006 00:28

Re: DataSet nicht im Edit Modus???
 
Ähm, von wo nach wo willst Du eigentlich kopieren? Du hast ein wenig viele .Edit eingebaut, ein unnützes with-Statement, kein Post der kopierten Daten und die Zuweisungen verdreht.

Ich gehe jetzt mal davon aus, dass Du dataDaten.Kategorien nach dataServer.Katgegorien kopieren willst:

Delphi-Quellcode:
dataDaten.Kategorien.First;
while not dataDaten.Kategorien.eof do begin
  dataServer.Kategorien.Append;
  dataServer.Kategorien.FieldByName('kategorie').asString := dataDaten.Kategorien.FieldbyName('kategorie').asString;
  dataServer.Kategorien.FieldByName('kurzbeschreibung').AsString := dataDaten.Kategorien.FieldbyName('kurzbeschreibung').AsString;
  dataServer.Katgeorien.Post;
  dataDaten.Kategorien.next;
end;

Michael Habbe 30. Jun 2006 01:05

Re: DataSet nicht im Edit Modus???
 
Nun, eigentlich ist es ganz einfach: wenn Du nach "dataServer.Kategorien" einfügen willst, darfst Du nicht nach "dataDaten.Kategorien" die Daten reinschreiben (zumindest beim zweiten Durchlauf wird die Fehlermeldung kommen):

Zitat:

Zitat von kluckweb
Delphi-Quellcode:
dataDaten.Kategorien.First;
dataDaten.Kategorien.Edit;
dataServer.Kategorien.Edit;
with dataDaten.Kategorien do
  while not eof do
  begin
    dataServer.Kategorien.Append;
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ hier wird ein Datensatz (an)eingefügt
    dataDaten.Kategorien.FieldByName('kategorie').asString := blablabla;
    ^^^^^^^^^^^^^^^^^^^^ in diese Datenmenge, die schreibgeschützt ist,
                         werden Daten reingebrutzelt, das geht nicht
    dataDaten.Kategorien.FieldByName('kurzbeschreibung').AsString := blablabla;
    dataDaten.Kategorien.next;
    ^^^^^^^^^^^^^^^^^^^^^^^^^ zieht ein Post nach sich -->> (spätestens) BÄNG
  end;


kluckweb 3. Jul 2006 11:45

Re: DataSet nicht im Edit Modus???
 
Hi,

danke für die Hilfe. Manchmal sieht man halt den Wald vor lauter Bäumen nicht.

DANKE

RavenIV 3. Jul 2006 12:57

Re: DataSet nicht im Edit Modus???
 
noch ein Zusatz:
wenn Du alle bezeichner ausschreibst, kannst Du Dir das with... schenken.
Das macht den Code nur unnötig unübersichtlich.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:49 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