[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
ADDON02B.PAS

 { ---------------------------------------------------------------- }
 {                TDB-ERWEITERTER TDATABASE-PROTOTYP                }
 { ---------------------------------------------------------------- }
 {      (c)  1992  by  Aurora  featuring  M.J. Schwaiger            }
 { ---------------------------------------------------------------- }

 UNIT ADDON02B;

 INTERFACE

   USES
     DbTypes,                              { Globale Typdefinitionen }
     ADatum,                                        { Datumsroutinen }
     Error,                                       { Fehlerbehandlung }
     AStrings,                             { Null-terminated Strings }
 {$IFDEF Windows}
     Strings,                      { Windows-Null-terminated Strings }
 {$ENDIF}
     TDB;                                          { Turbo-Database }


   TYPE

 { ---------------------------------------------------------------- }
 { Definition Record als .quivalent zu Datensatz.                   }
 { ---------------------------------------------------------------- }

     TDataRec       = RECORD
       Deleted      : BOOLEAN;
       KEY          : STRING [70];
       INHALT       : PChar;
       SELECT       : BOOLEAN;
     END;


 { ---------------------------------------------------------------- }
 { Definition neues - erweitertes - Datenbankobjekt.                }
 { ---------------------------------------------------------------- }

     PDataBase      = ^TDataBase;
     TDataBase      = OBJECT (TDB.TDataBase)
       FUNCTION ReadRec (VAR Rec : TDataRec) : BOOLEAN; VIRTUAL;
       FUNCTION ReplaceRec (Rec : TDataRec) : BOOLEAN; VIRTUAL;
       FUNCTION apPendRec (Rec : TDataRec) : BOOLEAN; VIRTUAL;
     END;


 IMPLEMENTATION

 { ---------------------------------------------------------------- }
 { Definition neues - erweitertes - Datenbankobjekt.                }
 { ---------------------------------------------------------------- }

   FUNCTION TDataBase.ReadRec (VAR Rec : TDataRec) : BOOLEAN;

     VAR
       Result       : BOOLEAN;

     BEGIN
       FILLCHAR (Rec,  SIZEOF (Rec),  0);

       Result := True;

       WITH Rec DO
       BEGIN
         Rec.Deleted := TDataBase.Deleted;
         Result := Result AND (GetErr = 0);

         KEY := READ ('KEY');
         Result := Result AND (GetErr = 0);
         INHALT := ReadM ('INHALT');
         Result := Result AND (GetErr = 0);
         SELECT := ReadB ('SELECT');
         Result := Result AND (GetErr = 0);
       END; { WITH Rec DO }

       ReadRec := Result;
     END; { FUNCTION TDataBase.ReadRec }


   FUNCTION TDataBase.ReplaceRec (Rec : TDataRec) : BOOLEAN;

     VAR
       Result       : BOOLEAN;

     BEGIN
       Result := True;

       WITH Rec DO
       BEGIN
         Result := Result AND Replace ('KEY',  KEY);
         Result := Result AND ReplaceM ('INHALT',  INHALT);
         stRDispose (INHALT);
         Result := Result AND ReplaceB ('SELECT',  SELECT);
       END; { WITH Rec DO }

       ReplaceRec := Result;
     END; { FUNCTION TDataBase.ReplaceRec }


   FUNCTION TDataBase.apPendRec (Rec : TDataRec) : BOOLEAN;

     VAR
       Result       : BOOLEAN;

     BEGIN
       Result := APPEND;

       WITH Rec DO
       BEGIN
         Result := Result AND Replace ('KEY',  KEY);
         Result := Result AND ReplaceM ('INHALT',  INHALT);
         stRDispose (INHALT);
         Result := Result AND ReplaceB ('SELECT',  SELECT);
       END; { WITH Rec DO }

       apPendRec := Result;
     END; { FUNCTION TDataBase.AppendRec }


   END. { UNIT ADDON02B }

This page created by ng2html v1.05, the Norton guide to HTML conversion utility. Written by Dave Pearson