Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Neue Datensätze markieren? (https://www.delphipraxis.net/104476-neue-datensaetze-markieren.html)

Svenkan 4. Dez 2007 22:59

Datenbank: dBase • Zugriff über: TQuery

Neue Datensätze markieren?
 
Hallo!
Gibt es eine Möglichkeit, bei Aktualisierung der Daten neue bzw. geänderte Datensätze zu markieren?
Ich exportiere die Daten (wie bestimmt mittlerweile bekannt) in HTML-Pläne und möchte gerne die Möglichkeit geben, solche Daten dann speziell zu markieren.

scrat1979 4. Dez 2007 23:24

Re: Neue Datensätze markieren?
 
Hallo!!

Da fallen mir spontan zwei Möglichkeiten ein:

1.) Mit Hilfe eines timestamp das aktuelle Datum/Uhrzeit mit dem Datensatz speichern und
dann beim Export entsprechend dem aktuellen Datum filtern.

2.) Ein "Flag" als Datenbankfeld (z.B. NewRecord) als Boolean. Beim einfügen eines Datensatzes den Flag standardmäßig auf True setzen, nach dem Export alle Flags auf false setzen, u.s.w. ...

SCRaT

Svenkan 5. Dez 2007 11:39

Re: Neue Datensätze markieren?
 
2. interessiert mich!
Kannst du mir ein Beispiel geben bzw. es etwas erklärn?

scrat1979 5. Dez 2007 16:20

Re: Neue Datensätze markieren?
 
Zitat:

Zitat von Svenkan
2. interessiert mich!
Kannst du mir ein Beispiel geben bzw. es etwas erklärn?

Hmmm... ich sehe Du verwendest dbase. Damit kenne ich mich gar nicht aus. Bin auch sonst nicht der DB-Crack. Für das was ich brauche, reicht mir mein Wissen aber.

Okay, hier mal ein SQL-Beispiel:

Tabelle tblTest
Feld ID = Integer (AutoIncrement)
Feld Test = String bzw. Char(xy)
Feld NewFlag = Boolean

1. Einfügen eines Datensatzes (kannst es auch wie bisher machen, hier eben nur auch NewFlag = True setzen!):

SQL-Code:
 INSERT INTO tblTest (Test, NewFlag) ('Das ist ein Test', true)
2. Das Exportieren kannst Du ja (wohl) bereits. Hier vorher ein Filter mit NewFlag = True setzen. Fertig.

3. Zurücksetzen des Flags (Achtung!! Hier ist es egal, aber der UPDATE-Befehl ändert ohne Angabe eines WHERE... ALLE (!) Datensätze)

SQL-Code:
 UPDATE tblTest SET NewFlag = False
  WHERE NewFlag = True
Zumindest als Ansatz dürfte das reichen...

Grüße,
SCRaT

P.S.: Hier noch eines der hunderten SQL-Tutorials. Solltest Dir die wichtigesten Befehle mal anschauen... link

Svenkan 5. Dez 2007 18:22

Re: Neue Datensätze markieren?
 
Ach so! Mit nem Eintrag inna Datenbank.
Mh..das Problem ist, dass ich selbst nicht eintrage, sondern nur auslese.
Die Datenbank gehört einem externen Programm, welches auch nicht von mir selbst programmiert wurde.

DeddyH 5. Dez 2007 18:28

Re: Neue Datensätze markieren?
 
Also möchtest Du darstellen, wenn ein anderes Programm Änderungen in einer Tabelle vorgenommen hat? Das stelle ich mir relativ aufwendig vor (Du müsstest ja wohl den Tabelleninhalt in irgendeiner Form im Speicher halten, dann erneut auslesen, vergleichen und ausgeben).

Svenkan 5. Dez 2007 18:38

Re: Neue Datensätze markieren?
 
Ich habs befürchtet.
Gibt es keine Möglichkeit, dass TQuery diese Ergebnisse autom. vergleicht?

DeddyH 5. Dez 2007 18:40

Re: Neue Datensätze markieren?
 
Womit soll TQuery denn vergleichen? Du kannst einen SQL-String zusammenbauen, der innerhalb der Datenbank Vergleiche anstellt, aber bei Daten "von außen" sehe ich da schwarz. Falls da irgendwer eine Lösung hat, wäre ich auch interessiert.

Svenkan 5. Dez 2007 18:42

Re: Neue Datensätze markieren?
 
Ja, stimmt auch wieder.
Das sind so die Verzweifelungsfragen, bevor man in Trauer über die unmögliche Situation ausbricht.^^
Aber falls doch jemand etwas kennt, wäre ich natürlich ebenfalls nicht abgeneigt, dies zu hören/lesen. :)

Svenkan 5. Dez 2007 21:14

Re: Neue Datensätze markieren?
 
Ich habe gerade mit jemand gesprochen, der für seine Schule ebenfalls so ein Programm erstellt hat und auch diese Änderungen markieren lässt (allerdings verwendet er WinBasic und nicht Delphi!).
Er sagt, er würde die Daten zunächst in einer Datei speichern und bei einer Aktualisierung die neuen Daten mit denen aus der Datei vergleichen.
Würde das jmd helfen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:40 Uhr.
Seite 1 von 2  1 2      

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