OSZ Handel I
Informatik
Anwalt 2002 - Version 2.0
    

S. Spolwig
J. Penon

[Home | Gymn. Oberstufe | Informatik | Unterrichtsmaterialien | Seitenende]

Laden und Speichern der Objekte aus der Mandantenliste

Es gibt sehr unterschiedliche Verfahren, um Daten auf ein Speichermedium zu schreiben. Wir verwenden eine OOP-gerechte Methode, bei der die Objekte selbst wissen, wie sie sich in einen Filestream schreiben und ihn lesen. Dabei wird unabhängig von der Struktur des Objektes jedes Zeichen einfach nacheinander auf die Festplatte geschrieben oder gelesen.

Um alle Mandantendaten zu bearbeiten, wird die Liste vom 1. bis zum letzten Element abgeklappert und jedes Element (Objekt) schreibt seine Daten in den Filestream. 

Laden (Lesen) funktioniert genauso, nur anders herum.

Den Filestream kann man sich als eine Art Speicherliste vorstellen, in die die Attributwerte der persistenten (d.h. dauerhaften) Objekte Zeichen für Zeichen hinein geschrieben werden oder herausgelesen werden. Der Filestream weiß, wie er seinen Inhalt auf die Festplatte bringt.

W r a n g e l s t r 9 6 1 0 9 9 7 B e r l i n . .

Dazu sind folgende Schritte in dieser Reihenfolge erforderlich:
In TMandant
  1. Ergänzen Sie TMandant um den Import
    uses Classes   // import: TFilestream
    und
  2. die zwei neuen Methoden

    procedure InDateiSchreiben (var Fs : TFilestream); override;
    procedure AusDateiLesen (var Fs : TFilestream);    override;


    Bei der Implementation müssen Sie die entsprechenden Methoden aus TPerson und TAdresse aufrufen und für das Schreiben der Attribute Rechtsschutzversicherung und Vorstrafen sorgen:

    procedure TMandant.InDateiSchreiben (var Fs : TFilestream);
    (* -------------------------------------------------------------------- *)
    begin
      inherited InDateiSchreiben(Fs);
      Adresse.InDateiSchreiben(Fs);
      Fs.Write( Rechtsschutzversicherung, SizeOf(Rechtsschutzversicherung));
      Fs.Write( Vorstrafen, SizeOf(Vorstrafen));
    end;

    Die Methode TMandant.AusDateiLesen wird genauso implementiert, jedoch heißt die Leseanweisung Fs.Read.

    Die  Klassen TPerson und TAdresse verfügen bereits über diese Methoden, die genauso implementiert sind.
In TLISTE
  1. Aktivieren Sie in uSliste die Load- und Store-Methoden.
In UFENSTER
  1. Implementierem Sie die Methoden Mandantenliste.Load('man.dat') und Mandantenliste.Store('man.dat') durch einen Aufruf an entsprechender Stelle.

    Da in der Anforderungsdefinition festgeschrieben wurde, dass Laden und Speichern automatisch laufen soll, gehört Load in die Methode FormCreate und Store in EndeBtnClick.

©   16. November 2005    Siegfried Spolwig

page_top