Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Fortlaufende Zahl in einem Programm merken (https://www.delphipraxis.net/96543-fortlaufende-zahl-einem-programm-merken.html)

DelphiManiac 26. Jul 2007 11:40


Fortlaufende Zahl in einem Programm merken
 
Hallo,

wie in anderen Postings schon erwähnt entwickel ich eine PC-Prüfsoftware in Delphi,
jetzt stehe ich vor dem Problem, dass ich nach jeder Prüfung dem Gerät eine fortlaufende Prüfnummer vergeben muss,
dies jedoch nur nach erfolgreicher Prüfung.

Wie kann ich dass denn am sinnvollsten lösen, das Programm muss ja eine Nummer speichern und diese dann hochzählen.
Sollte man dies am Besten über die Registry, oder eine externe Datei machen? Wäre über Tipps sehr dankbar.

Gruß DelphiManiac

hoika 26. Jul 2007 11:52

Re: Fortlaufende Zahl in einem Programm merken
 
Hallo,

packe die Prüfungen incl. der Nummern in eine Datei (Datenbank).
Dann hole dir die letzte Nummer und erhöhe um 1.
Beim Programmstart könnten ja die "alten" Prüfungen
aus der Datei gelöscht werden.

Von Registry rate ich ab.
Was ist, wenn dein Programm mal "umzieht" ?
Dann fängt die Nummer von vorn an ...


Heiko

Tommy82 26. Jul 2007 11:54

Re: Fortlaufende Zahl in einem Programm merken
 
Hallo,

ich persönlich zeihe da immer eine externe Datei der Registry vor. Da man Windows nicht vertrauen kann(häufige Abstürze, Bluescreen,usw), kann man auch der Registry nicht vertrauen. Der normalen "ini-Datei" aber schon.

Aber ich lasse mich auch eines besseren belehren.

mfg

Tommy82

moonwhaler 26. Jul 2007 13:01

Re: Fortlaufende Zahl in einem Programm merken
 
Da gab es mal bei uns ähnliche Anforderungen. Nur hieß es dort - es muss ein Zähler sein, der zentral für bis zu 200 Arbeitsplätze gilt. Das bedeutet das eine Zahl IMMER eindeutig sein muss und jeder dieser Arbeitsplätze eben diese nur exakt einmal zuordnen darf. Ich hatte das im Verbund mit XML Dateien gelöst (OmniXML), aber bevor es ganz fertig war, wurde das wieder eingestampft. Wie so oft. :?

Sollte da interesse bestehen, kann ich sicher den Quellcode hier posten.

kalmi01 26. Jul 2007 14:16

Re: Fortlaufende Zahl in einem Programm merken
 
Hi moonwahler,

XML ist da doch wohl ein bischen Overkill, oder ?

Ich habe es (bei ähnlicher Anwenderzahl) mit einer einfachen Textdatei gemacht:

- Datei umbennen (Datei.sav), wenn Datei nicht vorhanden = warten bis vorhanden
- Datei.sav lokal kopieren (eigenen PC)
- lokale Datei.sav auslesen, Wert inkrementieren und zurück schreiben
- lokale Datei.sav zum Server kopieren
- Server Datei.sav umbenennen nach Datei

Läuft seit Jahren stabil, die (netzwerk bedingten) Hänger kann man an einer Hand abzählen.

Stefan.Buchholtz 27. Jul 2007 09:49

Re: Fortlaufende Zahl in einem Programm merken
 
Zitat:

Zitat von kalmi01
- Datei umbennen (Datei.sav), wenn Datei nicht vorhanden = warten bis vorhanden
- Datei.sav lokal kopieren (eigenen PC)
- lokale Datei.sav auslesen, Wert inkrementieren und zurück schreiben
- lokale Datei.sav zum Server kopieren
- Server Datei.sav umbenennen nach Datei

Läuft seit Jahren stabil, die (netzwerk bedingten) Hänger kann man an einer Hand abzählen.

Warum so kompliziert?
Es reicht doch , wenn jeder Client die Datei exklusiv öffnet, ändert und wieder schliesst. Wenn exklusiver Zugriff verweigert wird, solange probieren, bis es geht.

Stefan

kalmi01 27. Jul 2007 10:01

Re: Fortlaufende Zahl in einem Programm merken
 
Zitat:

Warum so kompliziert?
weil es sich bewährt hat ? :wink:
Vorher hatte ich gelegentlich mal Probleme mit zerschossenen Dateien.
Seit der Mechanismus so abläuft wie beschrieben, habe ich keine Prob's
mehr.

moonwhaler 2. Aug 2007 13:06

Re: Fortlaufende Zahl in einem Programm merken
 
Zitat:

Zitat von kalmi01
Hi moonwahler,

XML ist da doch wohl ein bischen Overkill, oder ?

Ich habe es (bei ähnlicher Anwenderzahl) mit einer einfachen Textdatei gemacht:

- Datei umbennen (Datei.sav), wenn Datei nicht vorhanden = warten bis vorhanden
- Datei.sav lokal kopieren (eigenen PC)
- lokale Datei.sav auslesen, Wert inkrementieren und zurück schreiben
- lokale Datei.sav zum Server kopieren
- Server Datei.sav umbenennen nach Datei

Läuft seit Jahren stabil, die (netzwerk bedingten) Hänger kann man an einer Hand abzählen.

Es kommt darauf an. Bei uns wird alles in XML Dateien abgelegt, was bei den meisten Daten sehr hilfreich ist - auch in Bezug auf die menschliche Lesbarkeit. Aber in diesem Fall kannst Du natürlich recht haben. Eine einfache Textdatei würde sicher ausreichend sein. Jeder halt so wie er es am besten kann. :)

kalmi01 7. Aug 2007 15:29

Re: Fortlaufende Zahl in einem Programm merken
 
Zitat:

Zitat von moonwhaler
Bei uns wird alles in XML Dateien abgelegt, was bei den meisten Daten sehr hilfreich ist - auch in Bezug auf die menschliche Lesbarkeit.

Huch ?
XML ist lesbarer, als nackiger Text ?

Zitat:

Zitat von moonwhaler
Jeder halt so wie er es am besten kann.

Holla, das iss aber frech.
Gut das gerade Ferien sind, sonst müsst ich mich ja berufsmässig aufregen :-)

Spass bei Seite.
Wieso ist eine einzige Zahl in einer XML-Kapselung lesbarer als die Zahl einfach als Text in eine Datei zu schreiben ?

TheAn00bis 7. Aug 2007 15:37

Re: Fortlaufende Zahl in einem Programm merken
 
Zitat:

Zitat von kalmi01
Wieso ist eine einzige Zahl in einer XML-Kapselung lesbarer als die Zahl einfach als Text in eine Datei zu schreiben ?

Möglicherweise, weil die XML-Kapselung die Zahl beschreibt. Und mal ehrlich, ob man eine Zahl nun in eine XML oder in eine Textdatei legt, ist das nicht völlig egal und sollte das nicht jeder so lösen, wie ihm beliebt? Also für mich wäre das kein Grund, mich aufzuregen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:09 Uhr.
Seite 1 von 2  1 2      

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