Der Nutzer muss auch was davon haben
Die Logik unser Anwendung ist soweit fertig, allerdings hat der Endanwender davon noch keinen sichtbaren Nutzen. Er kann die Daten weder lesen, noch ändern, noch neue hinzufügen. Also machen wir uns an die Oberfläche.
Als wir die Anwendung zu Beginn des Tutorials angelegt haben, war auch gleich ein Formular mit dabei, dieses werden wir jetzt mal etwas bestücken

Es wird wahrlich nicht schön aussehen, aber uns erst einmal zeigen, wie es geht. Das Design überlasse ich Euch
Wir benötigen
- Drei TLabel (Standard): Kontakte allgemein, Firmen, Personen
- Drei TBoldNavigator (Bold Controls): eine für jede Datenklasse
- Drei TBoldGrid (Bold Controls): eine für jede Datenklasse
- Drei TBoldListHandle (Bold Handles): eine für jede Datenklasse
Damit wir jetzt die Verbindung der Bold-Komponenten vom Form zu unserem Modell herstellen können, müssen wir die Datenmodulunit in die
uses-Klausel unseres Formulars aufnehmen! Anschließend können wir die benötigten Eigenschaften im Objekt Inspektor einstellen. Dieser Vorgang ist für alle drei Bereiche (Contact, Company und Person) identisch, daher werde ich es nur für den ersten beschreiben.
Die Verbindung des visuellen zur Geschäftslogik
Als erstes wird die Eigenschaft
RootHandle der
TBoldListHandle-Komponente auf das TBoldSystemHandle (Wert:
dtmBoldContainer.bldSystemHandle) unseres Datenmodules gesetzt. (Für alle drei Bereiche identisch!) Jetzt wird die Eigenschaft
Expression definiert. Hier wird die Sprache
OCL genutzt, welche ich später mal separat erörtern werde. Ein Guide zu OCL wird bei der Installation von Bold mitgeliefert. Der Wert für
Expression wird auf "
Contact.allInstances" festgelegt. Wenn Ihr wollt, könnt ihr an dieser Stelle auch mal einen Blick in den Expression-Editor wagen
Anschließend wird für den Navigator und das Grid die Eigenschaft
BoldHandle auf das entsprechende TBoldListHandle gesetzt. Nun müssen wir noch für das Grid die darzustellenden Spalten definieren. Dazu einfach mit der rechten Maustaste auf das Grid klicken und den Eintrag
Create Default Columns anklicken. Fertig!
Am Ende sieht das Formular wie folgt aus (Design-Modus).
...

...