Objektreferenzen

 

Objektreferenzen werden eingesetzt, um Beziehungen zwischen Objekten herzustellen.

Wenn Sie ein Objekt anlegen, und unterhalb dieses Objektes ein weiteres Objekt, so wie in diesem Beispiel

Produkt (z.B. Sigma) und Material (z.B. Anschlusskabel)

Dann können Sie ausgehend vom Startobjekt das Anschlusskabel über die Punktnotation

   Produkt:"Sigma".Anschlusskabel

 

erreichen.

Möchten Sie z.B. den Preis des Anschlusskabels ermitteln, können Sie folgenden bereits toleranten Code einsetzen:

   If Produkt IsA "Sigma" Then

      MsgBox(Produkt:"Sigma".Anschlusskabel.Preis)

   End If

 

Doch wie ist der Weg, wenn ausgehend vom Anschlusskabel ein Element aus dem Produkt, z.B. die Länderausführung abgefragt werden soll? Da hilft die Objektreferenz, die ausgehend vom Objekt, in der sie definiert ist, das nächste übergeordnete, oder auf gleicher Ebene nachfolgende oder auf gleicher Ebene davor liegende Objekt eines bestimmten Klassentyps findet.

Definieren Sie in der Klasse Material

Dann liefert der Zugriff auf Produkt ein Objekt vom Klassentyp Produkt, wenn es ein Objekt diesen Typs gibt oder NoValue, wenn es keines gibt. Dabei ist es belanglos, in welcher übergeordneten Ebene dieses Objekt existiert. Beim ersten Objekt, welches diese Bedingung erfüllt, wird dieses Objekt zurückgegeben.

So könnte mit dieser Objektreferenz in einem bestimmten Material folgende Steuerung geschrieben werden:

Die Steuerung wird nur ausgeführt, wenn das übergeordnete Objekt vom Klassentyp Sigma ist und die Länderausführung von Produkt bestimmte Kriterien erfüllt.