Die Komponente TSOView aus der Unit SOViewUnit ermöglicht es den Inhalt eines Objektes das von der Klasse TStorableObject abgeleitet wurde inhaltlich anzuzeigen. Es werden entsprechend der vorgegeben Datentypen Eingabefelder, Checkboxen, Datum-Auswahlfelder und Auswahllisten automatisch erzeugt. Eventuell benötigte Lookup-Listen für die Auswahllisten bzw. Radiogruppen werden bei Bedarf automatisch geladen. Weiterhin unterstützt SOView das Speichern und Laden der Daten. Über die Events OnBeforeCreateControl und OnAfterCreateControl die vor bzw. nach dem Erzeugen eines Controls aufgerufen werden, ist es möglich die Erstellung bzw. die Positionierung der Controls zu beeinflussen. Es besteht auch die Möglichkeit ein SOView mit einem Dataset zu verbinden, dadurch ist es möglich die angezeigten Daten direkt zu aktualisieren wenn im Dataset Änderungen durch ein First, Last, Next oder Prior auftreten.
Ein SOView kann auf jedem Delphi-Control platziert werden das von der Klasse TCustomControl abgeleitet wurde.
Beispiel für die Bearbeitung eines Objektes vom Typ TCustomer:
// Lade den Datensatz von dem Kunden mit der ID 1 in das Objekt cus cus := TCustomer.Create(StorageProvider, 1); // Auf dem Formular befindet sich eine Komponente vom Typ TSOView mit dem Namen sov sov.LinkToObject(cus); // Erzeuge die benötigten Controls sov.CreateControls; // Nehme die Daten aus cus und lade diese in die erzeugten Controls sov.Load;
Beispiel für die Koppelung mit einem Dataset:
// Verbinde die Datenmenge "Dataset" mit der Klasse TCustomer sov.LinkToDataset(StorageProvider, Dataset, TCustomer); // Erzeuge die benötigten Controls sov.CreateControls;
// Lade die Daten aus dem Dataset und zeige diese an. sov.Load; // Danach werden die Daten automatisch angezeigt wenn das Dataset bewegt wird.