Merkmale bzw. Variablen speichern Werte. Sie können in den meisten Fällen als Skalar zum Speichern eines einzelnen Wertes und als Liste zum Speichern eine Menge von Werten in Listenindizes angelegt werden.
Es existieren eine Reihe von unterschiedlichen Merkmaltypen:
Typ |
Beschreibung |
Boolean |
Speichert NoValue, True (-1), False (0) |
Long |
Speichert 32-bit vorzeichenbehaftete Ganzzahlen |
Double |
Speichert 64 bit Fließkommazahl |
Date |
Speichert ein Datum bzw. eine Uhrzeit |
Currency |
Speichert eine Währung |
String |
Speichert eine Zeichenkette |
Variant |
Speichert alle Arten von Datentypen, inklusive Objekte |
RTF |
Speichert einen Rich Text Format Txt |
|
Speichert ein PDF-Dokument |
Picture |
Speichert ein zweidimensionales Raster- oder Vektorbild |
Model3D |
Speichert ein dreidimensionales Modell |
TCE Object Pointer |
Speichert einen Verweis auf ein TCE-Objekt |
COM Object Pointer |
Speichert einen Verweis auf ein COM Objekt (IDispatch) |
Reference |
Speichert einen Relativpfad auf ein Objekt oder Merkmal und evalueiert diesen Pfad |
Formular |
Verweist auf ein Formular zur Anzeige von Fenstern oder Teilfenstern |
Control |
Verweist auf einen Steuerelemente-Container von Steuerelementen in Formularen |
Menu |
Verweist auf ein Menü |
Class |
Verweist auf eine Klasse in der Klassenstruktur der Wisensbasis |
Font |
Speichert einen Zeichensatz |
Toolbar |
Verweist auf eine Toolbar |
GraphicObject |
Speichert ein Objekt zur Verwendung im spezialisierten Steuerelement GraphicObject |
GraphicObject3D |
Speichert ein Objekt zur Verwendung im spezialisierten Steuerelement GraphicObject3D |
Connection |
Speichert eine DSN zur Verbindung mit einer Datenbank |
Fuzzy |
Speichert ein Fuzzydiagramm für statistische Regeln |
Jeder Merkmaltyp verfügt über spezifische Eigenschaften. Diese Eigenschaften können teils zur Designzeit definiert werden.
Eigenschaft |
Beschreibung |
Typ |
Der Typ des Merkmals.
|
Überdefinierbar |
Das Merkmal kann in abgeleiteten Klassen überdefiniert und verändert werden.
|
Liste |
Ist der Schalter gesetzt, handelt es sich um eine Merkmalliste.
|
Aktiviert |
Ist der Schalter nicht gesetzt, kann ein Ausdruck hinterlegt werden, der die Aktivierbarkeit in vielen Steuerelementen steuert.
|
Sichtbar |
Ist der Schalter nicht gesetzt, kann ein Ausdruck hinterlegt werden, der die Sichtbarkeit in vielen Steuerelementen steuert.
|
Mehrsprachiges Format |
Ist der Schalter gesetzt, kann anstelle einer einsprachigen Formatierung des Wertes des Merkmals für jede in der Wissensbasis definierten Sprache ein Format vorgegeben werden.
|
Format |
Es kann ein Formatierung des Wertes des Merkmals für alle Sprachen der Wissensbasis vorgegeben werden.
|
Bezeichnung |
Es kann ein Ausdruck hinterlegt werden, welcher die Bezeichnung des Merkmals festlegt. Für mehrsprachige Wissensbasen ist hier eine Textkonstante sinnvoll.
|
Initialisieren mit Standardwert |
Bestimmte Merkmale können einen Standardwert haben, welcher statt NoValue verwendet wird, wenn der Schalter gesetzt ist. Boolean: False Long: 0 Double: 0 String: Leerstring ''
|
Speichern |
Ist der Schalter gesetzt, wird der Wert des Merkmals in serialisierten Objektbäumen mit gespeichert. Serialisierte Objektbäume können z.B. dazu verwendet werden, eine Objektstruktur als Datei abzuspeichern.
|
Bei Objektänderung neu initialisieren |
Wir die Klasse des Objektes, welche dieses Merkmal besitzt, von A nach B geändert, wird versucht, den Wert von Merkmalen die in beiden Klassen A und B definiert sind, beizubehalten. Wenn bei einer solchen Klassenänderung das Merkmal mit den definierten Initialisierungen neu zu initialisieren, muss dieser Schalter gesetzt werden.
|
Regeln |
Wird dieser Schalter gesetzt können mögliche Werte für das Merkmal definiert werden und diese mit Gültigkeitsregeln versehen werden.
|
Regeln bei Änderung prüfen |
Wird dieser Schalter gesetzt, wird durch die Änderung des Merkmalwertes eine neue Regelprüfung ausgelöst. Ansonsten unterbleibt diese und nur eine Client-Aktualisierung erfolgt gegebenenfalls.
|
Gültigen Wert zuweisen |
Ist der Schalter Regeln gesetzt und dieRegelprüfung ermittelt genau einen gültigen Wert, dann wird dieser dem Merkmal zugewiesen
|
Mehrsprachig |
Ist dieser Schalter gesetzt verwaltet das Merkmal für jede in der Wissensbasis definierten Sprache einen Wert.
|
Mit Datenbank initialisieren |
Handelt es sich bei der Klasse um eine ODBC-Klassen definierende Klasse, kann das Merkmal mit einem Wert einer Spalte im SELECT-Statement der ODBC-Selektion initialisiert werden. Die DB-Spalte kann dann angegeben werden, bei Mehrsprachigkeit für jede Sprachen-ID.
|
Attribute |
Es kann eine Semikolon-separierte Liste von Attributwerten für das Merkmal angegeben werden.
|
Währungsfaktoren verwenden |
In den Eigenschaften der Wissensbasis sind die Umrechnungsfaktoren für Währungen hinterlegt. Soll das Merkmal diese Faktoren verwenden, kann dieser Schalter gesetzt werden. Es werden für alle definierten Währungen die Umrechnungsfaktoren vorgeschlagen. Die Ausdrücke können jedoch geändert werden. Ist der Schalter nicht gesetzt, muss anderweitig sichergestellt werden, dass alle Währungscontainer des Merkmals passende Werte erhalten.
|
Events verwenden |
Wird dieser Schalter aktiviert, wird für das zugrunde liegende Objekt (z.B. COM-Objekte) die Event-Schnittstelle aktiviert und die Events können verarbeitet werden.
|
TCE-Klasse |
Für TCE-Objektzeiger ist die Angabe der TCE-Klasse erforderlich, damit eine syntaktische Überprüfung des Zeigers möglich ist.
|
Initialisierungen
Beispiel einer Initialisierung für ein Nicht-Listenmerkmal (skalares Merkmal)
Merkmale werden mit einem gültigen Ausdruck initialisiert. Die Initialisierung muss zum Merkmalstyp passen.
Steuerung
Durch Anklicken des Symbols kann für das Merkmal eine neue Steuerung angelegt werden.
Festlegung gültiger Werte
Wenn der Schalter Regeln gesetzt ist, können Werte über das Kontextmenü als möglicher Wert dem Merkmal hinzugefügt werden.
Aktion |
Beschreibung |
Übernehmen |
Es können verschiedene Operatoren gewählt werden.
= Gleichheit <> Ungleichheit >= Größer gleich > Größer <= Kleiner gleich < Kleiner Like Matchsuche In Vorhandensein in Liste oder Bereich NotIn Nichtvorhandensein in Liste oder Bereich IsA Prüfung auf Klassentyp NotIsA Prüfung auf Klassentyp (negiert) Pickliste Eine Auswahlliste für Auswahl-Steuerelemente
|
Initialwert |
Der Wert wird als Initialwert übernommen |
Neu |
Ein neuer Wert wird im Wertepool angelegt |
Ändern |
Ein vorhandener Wert im Wertepool kann geändert werden |
Löschen |
Ein vorhandener Wert im Wertepool wird gelöscht |
Überdefinieren |
Ein Wert im Wertepool wird überdefiniert |