Der Unterschied zwischen einem normalen Businessobjekt und einem virtuellen Businessobjekt ist, dass die Daten eines virtuellen BOs auf eine View basieren.
Voraussetzung für die Anlage eines virtuellen BOs ist also eine View. Zur Anlage einer View siehe Datenbankobjekte
Die View, die für das virtuelle BO verwendet werden soll, muss dabei mindestens folgende Spalten enthalten (exakte Bezeichnung einhalten !):
intid, -- Datensatzidentifizierer strcreated, -- Ersteller als String datcreated, -- Erstellungsdatum strchanged, -- Änderer als String datchanged, -- Änderungsdatum intversion -- Datensatzversion |
Sofern auf die Daten des virtuellen BOs referenziert werden soll, muss die Spalte "intid" ein eindeutiger Wert sein.
Bei Werten, die als Referenz auf einen anderen Datensatz eingerichtet werden sollen, muss der Spaltenname mit "intid_str" beginnen.
Die Datentypen werden von Nuclos automatisch ermittelt. Sollte es da zu komischen Werten kommen, hilft ein expliziter cast. Beispiel: Ein durch eine DB-Funktion berechnetes Attribut liefert eigentlich "numeric(12,2)" zurück, aber Nuclos macht daraus "numeric(131089, 0)".
Dann hilft ein cast des Ergebnisses "db_funktion(intid)::numeric(9,2)" direkt in der View.
Die Bezeichnung der Attribute in der Datenquelle und im Businessobject sind case sensitiv und müssen gleich sein. Um Fehler zu vermeiden, sollten die Spaltennamen alle klein geschrieben sein und dürfen keine Sonderzeichen enthalten, es sollten also keine Hochkommata erforderlich sein
Die Spaltennamen dürfen außerdem nicht mehr als 30 Zeichen haben. |
Im Businessobjekt ein neues BO anlegen.
Im Schritt 2 (Allgemeine Eigenschaften) wird der Button Erweiterte Eigenschaften einblenden betätigt und es klappt der Bereich für die Konfiguration des virutellen BOs hoch.
Im nächsten Schritt des BO-Wizard sind nun automatisch alle Attribute aufgelistet, die in der View als Datenspalten angegeben wurden. Nun können nachräglich der Anzeigename bzw. die Beschreibung verändert werden.
Bei Referenzfeldern muss noch die Information zum referenzierenden BO eingetragen werden.
Soll ein virtuelles BO geändert weden, so muss zunächst die View in Datenbankobjekte angepasst und gespeichert werden. Anschließend muss der Businessobjekt für dieses Objekt neu durchlaufen und ebenfalls angepasst werden.