AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Arbeiten in einem temporären TJvMemoryData
Thema durchsuchen
Ansicht
Themen-Optionen

Arbeiten in einem temporären TJvMemoryData

Ein Thema von waldforest · begonnen am 7. Mai 2014 · letzter Beitrag vom 8. Mai 2014
 
Dejan Vu
(Gast)

n/a Beiträge
 
#3

AW: Arbeiten in einem temporären TJvMemoryData

  Alt 8. Mai 2014, 06:28
Ich verstehe nicht, wieso
1. eine Spalte eines Memory-Datasets nicht bearbeitbar sein sollte
2. Du keine zusätzlichen Spalten in das Dataset einfügen kannst.

Wenn dann das 'LoadFrom' nicht mehr funktioniert, machst Du das eben per Hand:
Delphi-Quellcode:
Procedure CopyData(aSrc, aDest : TDataSet);
Begin
  aDest.DisableControls;
  Try
     aSrc.First;
     while not aSrc.Eof do begin
        aDest.Append;
        aDest['Field1'] := aSrc['Field1'];
        ...
        aDest.Post;
  Finally
     aDest.EnableControls;
  end
end;
Natürlich musst Du dafür sorgen, das die Zieltabelle leer ist (außer, Du willst sie erweitern). Auf diese Weise bist Du aber von der Quelltabelle vollkommen unabhängig, denn Du kannst so die Query jederzeit ändern und musst dann nur in dieser Routine das Mapping (also die Zuweisungen) anpassen. Die Zieltabelle (dein Memory-Dataset) bleibt davon unberührt.
Umgekehrt kannst Du nun auch die Memorytabelle in ihrer Struktur verändern, ohne die Query anfassen zu müssen. Beispielsweise mit zusätzlichen Feldern.

Zu Punkt 4: Du kannst im AfterPost-Event des Memorydatensatzes weitere Aktionen auslösen, aber das würde ich nicht tun. Stattdessen würde ich den Anwender die Bestellungen (im Memory) bearbeiten lassen und erst nach Bestätigung (OK-Taste, 'Wollen Sie die Bestellungen jetzt auslösen') gehst Du durch die Tabelle und führst für jeden Datensatz die Bestellung aus.

Geändert von Dejan Vu ( 8. Mai 2014 um 06:32 Uhr)
  Mit Zitat antworten Zitat
 


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 14:16 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