[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
{ H.ngt einen (leeren) Satz an die Datenbank an und positioniert }
{ auf ihn. Dieser kann dann nach Lust und Laune beschrieben }
{ werden. }
{ ---------------------------------------------------------------- }
{ Sollte auf dem Datentr.ger zu wenig Platz sein, so wird Fehler }
{ 12 gesetzt. }
{ ---------------------------------------------------------------- }
PROCEDURE DbAppend (F : Pdbf);
{ ---------------------------------------------------------------- }
{ Ersetzt das Feld des aktuellen Satzes mit dem angegebenen Namen }
{ durch den angegebenen Text. }
{ ---------------------------------------------------------------- }
{ Es wird eine oberfl.chliche Konsistenzpr.fung der Daten vorge- }
{ nommen, sollte diese einen Fehler ergeben, so wird Fehler Nummer }
{ 13 gesetzt, aber trotzdem versucht, einen "m.glichst richtigen" }
{ Inhalt zu schreiben. }
{ Sollte das Feld mit dem angegebenen Namen nicht vorhanden sein, }
{ so wird Fehler 14 gesetzt. }
{ ---------------------------------------------------------------- }
{ Um Fehler und Inkonsistenzen zu vermeiden, wird empfohlen, beim }
{ Schreiben immer die Umwandlungsroutinen zu verwenden. }
{ ---------------------------------------------------------------- }
PROCEDURE DbReplace (F : Pdbf; FName : TFeldStr; Inhalt : STRING);
{ ---------------------------------------------------------------- }
{ L.scht den aktuellen Satz, indem einfach das L.sch-Flag gesetzt }
{ wird. Eine "Restaurierung" ist mit dbRecover jederzeit wieder }
{ m.glich. Wenn der Satz bereits gel.scht war, so hat die Funktion }
{ keinen Effekt, es wird jedoch auch keine Fehlermeldung aus- }
{ gegeben. }
{ ---------------------------------------------------------------- }
PROCEDURE DbDelete (F : Pdbf);
{ ---------------------------------------------------------------- }
{ Stellt einen durch dbDelete gel.schten Satz wieder her. Wenn der }
{ Satz gar nicht gel.scht war, so hat die Funktion keinen Effekt, }
{ es wird jedoch auch keine Fehlermeldung ausgegeben. }
{ ---------------------------------------------------------------- }
PROCEDURE DbRecover (F : Pdbf);
{ ---------------------------------------------------------------- }
{ Gibt True zur.ck, wenn der aktuelle Satz gel.scht ist, sonst }
{ False. }
{ ---------------------------------------------------------------- }
FUNCTION DbDeleted (F : Pdbf) : BOOLEAN;
{ ---------------------------------------------------------------- }
{ Gibt die Anzahl der Datens.tze zur.ck. }
{ ---------------------------------------------------------------- }
FUNCTION DbCount (F : Pdbf) : LONGINT;
{ ---------------------------------------------------------------- }
{ Gibt die momentane Position des Satzzeigers zur.ck (sprich die }
{ Nummer des aktuellen Datensatzes). }
{ ---------------------------------------------------------------- }
FUNCTION DbRecNo (F : Pdbf) : LONGINT;
{ ---------------------------------------------------------------- }
{ Gibt die Anzahl der Datens.tze zur.ck. }
{ ---------------------------------------------------------------- }
FUNCTION DbLastRec (F : Pdbf) : LONGINT;
{ ---------------------------------------------------------------- }
{ Liest den kompletten Datensatz mit der .bergebenen Nummer in die }
{ .bergebene untypisierte Variable ein - die dazu gen.gend Platz }
{ bieten mu. !!! Es werden keinerlei Bereichs.berpr.fungen vorge- }
{ nommen ! Der R.ckgabewert ist True, wenn der Datensatz existiert }
{ und nicht gel.scht ist, sonst False. }
{ Es werden - abgesehen vom R.ckgabewert - keinerlei Flags (EOF, }
{ BOF etc.) gesetzt ! }
{ ---------------------------------------------------------------- }
{ Meine Empfehlung: Vergessen, da. es diese Routine gibt ... }
{ ---------------------------------------------------------------- }
FUNCTION DbGetRec (F : Pdbf; DS : LONGINT; VAR Rec) : BOOLEAN;
{ ---------------------------------------------------------------- }
{ Schreibt den kompletten Datensatz mit der .bergebenen Nummer aus }
{ der .bergebene untypisierte Variable auf Diskette - der Record }
{ sollte dazu auch die richtigen Informationen enthalten .... }
{ Es werden keinerlei Bereichs.berpr.fungen vorgenommen ! }
{ Es werden keinerlei Flags (EOF, BOF etc.) gesetzt ! }
{ ---------------------------------------------------------------- }
{ Meine Empfehlung: Vergessen, da. es diese Routine gibt ... }
{ ---------------------------------------------------------------- }
PROCEDURE DbAppendRec (F : Pdbf; VAR Rec);
{ ---------------------------------------------------------------- }
{ U M W A N D L U N G S R O U T I N E N }
{ ---------------------------------------------------------------- }
{ ---------------------------------------------------------------- }
{ Bei allen Umwandlungsroutinen wird eine (beschr.nkte) Kon- }
{ sistenzpr.fung durchgef.hrt und bei eventuellen Unstimmigkeiten }
{ der Fehler Nummer 13 gesetzt. }
{ ---------------------------------------------------------------- }
{ ---------------------------------------------------------------- }
{ Umwandlung der dBase-Strings in Turbo-konforme Datentypen. }
{ ---------------------------------------------------------------- }
FUNCTION Db2Long (STR : STRING) : LONGINT;
FUNCTION Db2Real (STR : STRING) : REAL;
FUNCTION Db2Datum (STR : STRING) : STRING;
FUNCTION Db2Bool (STR : STRING) : BOOLEAN;
{ ---------------------------------------------------------------- }
{ Und zur.ck von Turbo nach dBase - mit versch.rfter .berpr.fung. }
{ ---------------------------------------------------------------- }
FUNCTION Long2Db (Long : LONGINT) : STRING;
FUNCTION Real2Db (Num : REAL; Ges, NK : BYTE) : STRING;
FUNCTION Datum2Db (Datum : STRING) : STRING;
FUNCTION Bool2Db (Bool : BOOLEAN) : STRING;
{ ---------------------------------------------------------------- }
{ D I V . H I L F S R O U T I N E N }
{ ---------------------------------------------------------------- }
{ ---------------------------------------------------------------- }
{ Initialisiert eine neue Datenbank-Variable: Reservieren des }
{ ben.tigten Heaps, Inhalt l.schen, "Opened"-Flag auf False setzen.}
{ ---------------------------------------------------------------- }
{ Diese Funktion sollte sicherheitshalber immer zum vor Verwendung }
{ einer Datenbankvariable (sprich: vor dem .ffnen !) angewendet }
{ werden. }
{ ---------------------------------------------------------------- }
FUNCTION NewDb : Pdbf;
{ ---------------------------------------------------------------- }
{ Interne Funktion: Sucht nach einem Feld mit dem angegebenen }
{ Namen. Sollte dieser nicht gefunden werden, so wird False zu- }
{ r.ckgegeben, sonst True. }
{ ---------------------------------------------------------------- }
FUNCTION FeldNummer (F : Pdbf; FName : TFeldStr) : BOOLEAN;
{ ---------------------------------------------------------------- }
{ Interne Funktion: Gibt den Namen des angegebenen Feldes zur.ck. }
{ ---------------------------------------------------------------- }
{ Sollte ein Feld mit der angegebenen Nummer nicht existieren, so }
{ wird Fehler Nummer 25 gesetzt. }
{ ---------------------------------------------------------------- }
FUNCTION FeldName (F : Pdbf; Nr : BYTE) : TFeldStr;
{ ---------------------------------------------------------------- }
{ Interne Funktion: Gibt die Anzahl der Felder zur.ck. }
{ ---------------------------------------------------------------- }
FUNCTION AnzahlFelder (F : Pdbf) : WORD
This page created by ng2html v1.05, the Norton guide to HTML conversion utility.
Written by Dave Pearson