Datenmaskenobjekt-Filter

Seit HiCAD 2001 gibt es im R+I die Datenmaskenobjekte (DMOs). Diese sind spezielle Symbole ohne grafische Darstellung. Im Wesentlichen dienen sie als Vorlage, auf die sich andere Symbole beziehen können. Dieser Bezug kann z.B. mithilfe des Textschlüssels %DMO hergestellt werden.

Mit den Datenmaskenobjekt-Filtern (DMO-Filter) gibt es nun einen weitern Mechanismus, mit dem auf die Daten in den DMOs zugegriffen werden kann.

Der Bereich Datenmaskenobjekt-Filter enthält die folgenden Kapitel:

DMO-Filter bestehen aus Dialogtypen, die als Suchmuster interpretiert werden. Ein DMO-Filter verweist in der Regel auf ein reguläres DMO. Ein solches DMO, auf das ein DMO-Filter verweist, nennen wir Vorlagen-DMO. Beides ist hier zu sehen:

DMO Filter

Wird nun ein Symbol einem R+I-Blatt hinzugefügt, so werden alle im Projekt vorhandenen DMO-Filter mit diesem Symbol abgeglichen. Findet sich ein DMO-Filter, dessen Suchmuster mit den Dialogtypen des einzubauenden Symboles übereinstimmen, so werden die Einträge dieses Symboles aus dem Vorlagen-DMO ergänzt. Für obiges Filter/Vorlagen-Paar bedeutet dies, dass bei jedem Abzweig, der einem R+I-Blatt hinzugefügt wird, der Dialogtyp Ort auf ISD gesetzt wird. Die folgende Abbildung veranschaulicht den Vorgang:

DMO Filter

In einem DMO-Filter werden drei Dialogtypen verwendet, um auf ein Vorlagen-DMO zu verweisen. Das wichtigste ist dabei Vorlagen-DMO-ID. Dieser Dialogtyp enthält die DMO-ID des Vorlagen-DMOs. Jedes DMO bekommt beim Einfügen in das Projekt eine solche eindeutige Kennung.

Da DMO-Filter genau wie DMOs in Bibliotheken verwaltet werden können, in denen DMO-IDs nicht existieren, gibt es zwei weitere Dialogtypen, die ein Vorlagen-DMO anhand seines Namens und seiner Bibliothek identifizieren, nämlich Vorlagen-DMO-Bibliothek und Vorlagen-DMO. Diese beiden Dialogtypen werden beim Einbau eines DMO-Filters aus einer Bibliothek dazu verwendet, zusätzlich das passende Vorlagen-DMO automatisch ins Projekt einzufügen.

Zusammen mit den beiden Kommentar-Dialogtypen und den beiden DMO-Dialogtypen gibt es insgesamt sieben Dialogtypen, die ein DMO-Filter immer aufweist und die nicht für Suchmuster zur Verfügung stehen:

Die übrigen Dialogtypen können die üblichen Suchmuster aufnehmen, wie sie z.B. aus dem Symbol-Editor des 3D-Anlangenbaus oder auch dem Windows-Explorer bekannt sind. Es werden die Platzhalter * und ? unterstützt, wobei * für eine beliebige (auch leere) Zeichenkette steht, während ? exakt ein beliebiges Zeichen repräsentiert.

.

Beispielsweise würden sowohl 91?0001 als auch 91* gleichzeitig auf die Bauteilartkennungen von Behältern (9100001) und Pumpen (9110001) passen.


R+I-Symbol > Symbol > PullDown-Menü DMO > DMO-FilterIcon

DMO-Filter bearbeiten

Aktiviert man die Funktion DMO-Filter, erscheint ein Dialog, mit dem man die Liste der im Projekt vorhandenen DMO-Filter verwalten kann:

DMo Filter

Die DMO-Filter-Verwaltung zeigt eine Liste der im Projekt vorhandenen DMO-Filter. Im konkreten Beispiel finden sich zwei Filter im Projekt. Der Filter F1 wurde direkt im Projekt definiert und verweist auf das Vorlagen-DMO mit der DMO-ID D1. Der Filter F2 wurde aus einer Bibliothek eingebunden und verweist auf kein Vorlagen-DMO.

Es stehen die folgen Operationen zur Verfügung:

 

DMO-Filter testen

Der Test eines DMO-Filters prüft für alle Symbole in allen im Projekt vorhandenen Bibliotheken, ob der DMO-Filter auf diese zutrifft. Im Anschluss wird eine Liste der Treffer angezeigt. Für den Filter F1, dessen Suchmuster für die Bauteilerkennung 3* (= alle Abzweige) ist, sähe das Ergebnis bswp. so aus:

DMO Filter

Es stehen im Projekt also zwei Abzweige zur Auswahl. Wählt man nun einen Eintrag aus dieser Trefferliste aus, so werden die Änderungen angezeigt, die der Filter beim Einbau dieses Symboles vornehmen würde, z.B.

DMO Filter

Es würde also für den Dialogtyp Ort der Eintrag ISD vorgenommen. Die Dialogtyp-Texte haben hier die folgende Form:

Bei Überschreibungen wird zusätzlich gewarnt. Falls das Vorlagen DMO z.B. Einträge für die Anschluss-Kennungen enthielte, gäbe es die folgende Meldung:

DMO Filter

Ähnliche Warnungen gibt es, falls das Vorlagen-DMO nicht gesetzt wurde oder nicht mehr im Projekt vorhanden wäre.


Verhalten beim Einbau eines Symboles

Wird einem R+I-Blatt ein neues Symbol hinzugefügt, so werden alle DMO-Filter gesucht, deren Suchmuster auf das neue Symbol passen. Die Vorlagen-DMOs dieser DMO-Filter bestimmen nun, welche Werte in das neue Symbol eingetragen werden.

Der Vorgang ähnelt dem, was beim oben beschriebenen Testen vor sich geht, mit folgenden Abweichungen:

Treten mehrere Konflikte auf, so werden diese gemeinsam in einer Warnung angezeigt. Die folgende Meldung weist z.B. auf einen Konflikt beim Dialogtyp Ort sowie auf potenzielle Überschreibungen bei den Anschluss-Dialogtypen hin:

DMO Filter


DMO-Filter auf Symbole anwenden

Es gibt zwei Attribut-Typen, die es erleichtern, Datenmaskenobjekt-Filter auf spezifische Symbole anzuwenden.

Werden Datenmaskenobjekt-Filter verwendet, so wird beim Einbau eines Symboles in ein R+I-Schema geprüft, ob die Suchmuster auf den Attributen des Filters zu den Attributen des eingebauten Symboles passen. Wenn dies der Fall ist, so werden die Attributwerte der Vorlage, die zum Filter gehört, auf das Symbol kopiert.

Im Filter wird also spezifiziert, auf welche Symbole die Attribute einer Vorlage kopiert werden. Die neuen Attribut-Typen Ziel-Symbol-Name und Ziel-Symbol-Typ erleichtern das Einschränken eines Filters auf einen bestimmten Kreis von Symbolen.

In Ziel-Symbol-Name kann direkt der Name eines Symboles oder ein passendes Suchmuster eingetragen werden. Beispielsweise gilt ein Filter, der als Wert für Attribut Ziel-Symbol-Name das Suchmuster ?EMSR? enthält für die EMSR-Symbole aus der mitgelieferten Bibliothek ISDDINSYM1_GER.sza.

Das Attribut Ziel-Symbol-Name erfährt zudem eine Sonderbehandlung. Da der Name ein sehr spezifisches Attribut eines Symboles ist, wird davon ausgegangen, dass die Vorlagen-Attribute Vorrang vor anderen Vorlagen-Attributen haben und diese überschreiben können, ohne dass dies zu Konflikten führt.

In Ziel-Symbol-Typ kann ein Symboltyp festgelegt werden, auf den ein Datenmaskenobjekt-Filter wirken soll, also beispielsweise nur auf Rohrleitungsteil-Symbole. Die verfügbaren Symboltypen könne aus einer Combo-Box ausgewählt werden:


DMO-Filter einer DMO-Bibliothek hinzufügen

In der Bibliothek ISDREFSYM, in der allgemeine Symbolvorlagen zu finden sind, gibt es eine Vorlage für DMO-Filter:

DMO Filter

Beim Anlegen einer DMO-Bibliothek, die DMO-Filter enthalten soll, kann dieses Symbol als Vorlage verwendet werden. Die DMO-Filter-Vorlage enthält die folgenden Dialogtypen:

DMO Filter

Es können natürlich beliebige weitere Dialogtypen hinzugefügt werden, die dann wie die beiden grün umrandeten Beispiel-Dialogtypen gehandhabt werden.


Kontextmenü für Datenmaskenobjekt-Filter in Symbolbibliotheken

Wenn Sie Datenmaskenobjekt-Filter in Symbolbibliotheken mit der rechten Maustaste aktivieren, erscheint das folgende Kontextmenü:

Vorlagen DMO

Für Datenmaskenobjekt-Filter enthält das Kontextmenü zwei weitere Einträge im neuen Abschnitt Vorlagen-DMO, nämlich Vorlage setzen und Vorlage zeigen.

Diese erleichtern die Belegung der Attribute Vorlagen-DMO und Vorlagen-DMO-Bibliothek:

DMO

Die beiden Attribute werden beim Hinzufügen eines Datenmasken-Filters zu einem R+I-Schema verwendet, um automatisch das passende Vorlagen-Datenmaskenobjekt zu finden, dieses ebenfalls hinzuzufügen und mit dem Datenmasken-Filter über einen Verweis auf die DMO-ID zu verknüpfen.

Die Funktion Vorlage setzen erwartet die Auswahl eines Datenmaskenobjekt-Symboles. Dessen Name wird dann in das Attribut Vorlagen-DMO eingetragen. In das Attribut Vorlagen-DMO-Bibliothek wird die aktuell bearbeitete Bibliothek eingetragen. Falls versehentlich kein Datenmaskenobjekt gewählt wurde, erscheint die Meldung: Bitte wählen Sie ein Datenmaskenobjekt.

Die Funktion Vorlage zeigen wertet die Attribute Vorlagen-DMO und Vorlagen-DMO-Bibliothek aus, sucht das dazu passende Datenmaskenobjekt und hebt dieses sowohl in der Szene als auch im ICN hervor. Falls der Filter via Vorlagen-DMO-Bibliothek auf eine andere Bibliothek verweist, erscheint die folgende Meldung: DMO-Filter verweist auf eine Vorlage aus einer anderen Bibliothek.

Falls das eingetragene Datenmaskenobjekt nicht gefunden werden konnte, erscheint die folgende Meldung: DMO-Filter verweist auf keine Vorlage.

Bibliothekssymbole verwalten und bearbeiten (R+I)Neues Bibliothekssymbol (R+I)Verwaltung von konfigurierbaren allgemeinen Datenmasken in Datenmaskenobjekten DMO (R+I)