Was ist eine Query?
Die vielleicht größte Herausforderung bei der Arbeit an einem komplexen Elektronikdesign ist die Verwaltung einer großen Anzahl von Designobjekten. Von den Komponenten, Netzbezeichnungen und Textzeichenfolgen auf den Schaltplanblättern bis hin zu den Hunderten von Komponenten und Leiterbahnen, aus denen das Routing auf der Leiterplatte besteht, müssen Sie auf diese Objekte zugreifen, sie prüfen und bearbeiten können. Wie in den meisten Windows-Anwendungen können Sie auf ein Objekt doppelklicken und seine Eigenschaften bearbeiten. Das ist für ein einzelnes Objekt in Ordnung, aber nicht praktikabel, wenn Sie 300+ Komponentenbezeichner-Zeichenfolgen bearbeiten oder alle Vias auf der Leiterplatte ändern müssen. Für solche Aktualisierungen müssen Sie auf mehrere Objekte gleichzeitig zugreifen.
Den Schaltplan- und PCB-Editoren von Altium Designer liegt eine leistungsstarke Query-Engine zugrunde. Durch die Eingabe von Queries in diese Engine können Sie gezielt genau die Objekte herausfiltern, die Sie benötigen, um sie zu finden und zu bearbeiten.
Das leistungsstarke System zur Datenfilterung und -bearbeitung in Altium Designer ermöglicht es Ihnen, die Software anzuweisen, eine bestimmte Menge von Objekten zurückzugeben. Diese Anweisung wird in Form einer Query eingegeben. Eine Query ist eine Zeichenfolge, die Sie mit bestimmten Schlüsselwörtern und einer bestimmten Syntax eingeben und die die gewünschten Objekte zurückliefert. Was Sie mit diesen Objekten tun, bleibt Ihnen überlassen. Vielleicht möchten Sie sie hervorheben und alle anderen Objekte abdunkeln, oder vielleicht möchten Sie ihre Eigenschaften durchsuchen oder sortieren und bestimmte gemeinsame Attribute ändern.
Es gibt mehrere Stellen, an denen Sie eine Query anwenden können, aber die zentrale Anlaufstelle sind die Filter in den folgenden Bildern gezeigten Panels. Drücken Sie F12, um das Filter Panel ein- bzw. auszublenden.
Die PCB Filter- und SCH Filter-Panels mit Queries

Die PCBLIB Filter- und SCHLIB Filter-Panels mit Queries
Die Steuerelemente im Panel werden verwendet, um festzulegen, auf welche Objekte die Query angewendet wird und wie mit den Objekten verfahren werden soll, die die Query erfüllen, ebenso wie mit denen, die sie nicht erfüllen.
SCH Filter Panel

Objekte mit logischen Queries im SCH FilterPanel schnell finden und hervorheben.
Zusammenfassung
Das SCH FilterPanel ermöglicht es Ihnen, durch das Erstellen logischer Queries Filter zu konstruieren. Ein definierter Filter kann dann auf das aktive Schaltplandokument oder auf alle geöffneten Schaltplandokumente angewendet werden, sodass Sie mehrere Objekte mit höherer Genauigkeit und Effizienz auswählen und bearbeiten können.
Panel-Zugriff
Auf das Panel kann auf folgende Arten zugegriffen werden:
-
Klicken Sie auf die Schaltfläche Panels unten rechts im Editor, wenn der SCH-Editor aktiv ist, und wählen Sie dann SCH Filter aus dem Popup-Menü.
-
Klicken Sie auf View » Panels » SCH Filter.
-
Drücken Sie die Tastenkombination F12.
Panels können so konfiguriert werden, dass sie im Editorbereich schwebend oder an den Bildschirmseiten angedockt angezeigt werden. Wenn sich das SCH Filter Panel derzeit in einer Panelgruppe befindet, verwenden Sie die Registerkarte SCH Filter unten an den Panels, um es in den Vordergrund zu bringen.
Filterbereich definieren
Der erste Bereich des Panels enthält Steuerelemente zum Definieren des Filterbereichs:
Der Bereich Limit search to bietet Steuerelemente, um den Filterbereich weiter zu verfeinern:
-
All Objects - den Filter auf alle Designobjekte anwenden.
-
Selected Objects - den Filter nur auf die Designobjekte anwenden, die derzeit ausgewählt sind.
-
Non Selected Objects - den Filter nur auf die Designobjekte anwenden, die derzeit nicht ausgewählt sind.
Das Dropdown-Feld Consider objects in ermöglicht es Ihnen zu steuern, wo der Filter angewendet wird. Wählen Sie aus den folgenden Optionen:
-
Current Document - die Filterung nur auf das aktive Schaltplandokument anwenden (Standard).
-
Open Documents - die Filterung auf alle geöffneten Schaltplandokumente anwenden.
-
Project Documents - die Filterung auf alle geöffneten Schaltplandokumente anwenden, die Quelldokumente desselben übergeordneten Projekts sind.
Beachten Sie, dass die Filterung nicht auf Schaltplandokumente angewendet wird, die zwar geöffnet, aber ausgeblendet sind.
Filter-Queries definieren
Der mittlere Bereich des Panels ermöglicht es Ihnen, durch Eingabe logischer Queries Filter zu erstellen. Sie können eine Query direkt in das Feld eingeben. Während der Eingabe wird zur Unterstützung eine Vorschlagsliste möglicher Schlüsselwörter angezeigt.
Der Query Helper steht zur Verfügung, um bei der Erstellung von Queries zu helfen. Diese Funktion kann sehr nützlich sein, wenn Sie sich bei der Syntax einer Query oder bei den möglichen Schlüsselwörtern, die Sie verwenden möchten, unsicher sind. Um den Query Helper zu verwenden, klicken Sie auf die Schaltfläche Helper, um den Dialog Query Helper zu öffnen. Die zugrunde liegende Query Engine analysiert das Dokument und listet alle verfügbaren Objekte sowie generische Schlüsselwörter zur Verwendung in Queries auf.
Verwenden Sie den oberen Bereich des Dialogs, um mit den verfügbaren SCH Functions und System Functions einen Query-Ausdruck zu erstellen. Der mittlere Bereich des Dialogs stellt eine Reihe von Operatoren zur Verfügung, die beim Erstellen eines Ausdrucks verwendet werden können. Verwenden Sie die Schaltfläche Check Syntax, um zu überprüfen, ob ein Ausdruck syntaktisch korrekt ist.
Wenn der Ausdruck für die Query wie gewünscht definiert wurde, lädt ein Klick auf OK die Query in den mittleren Bereich des SCH FilterPanels, sodass der Filter angewendet werden kann.
Filterhervorhebung definieren
Vor dem Anwenden der Query ist es am besten, festzulegen, wie das Ergebnis der Filterung visuell im Design-Arbeitsbereich erscheinen soll. Die Bereiche Objects passing/not passing the filter des Panels bieten verschiedene Optionen, die zusammen die Hervorhebungssteuerung für permanente Filterung bilden.
Die im Bereich Objects passing the filter verfügbaren Optionen ermöglichen es Ihnen, die visuelle Darstellung im Arbeitsbereich aller Objekte zu steuern, die in den Bereich fallen und dem spezifischen Query-Ausdruck des Filters entsprechen:
-
Select - wenn aktiviert (Standard), werden die gefilterten Objekte im Arbeitsbereich ausgewählt.
-
Zoom - wenn aktiviert (Standard), werden die gefilterten Objekte im Fenster des Design-Editors gezoomt und zentriert angezeigt (wo möglich).
Die im Bereich Objects not passing the filter verfügbaren Optionen ermöglichen es Ihnen, die visuelle Darstellung im Arbeitsbereich aller Objekte zu steuern, die nicht in den Bereich fallen und/oder nicht dem spezifischen Query-Ausdruck des Filters entsprechen:
-
Deselect - wenn aktiviert (Standard), werden alle Objekte, die nicht in den Bereich des Filters fallen, im Arbeitsbereich abgewählt.
-
Mask out - wenn aktiviert (Standard), werden die gefilterten Objekte im Fenster des Design-Editors vollständig sichtbar angezeigt, während alle anderen Objekte abgeblendet werden. Wenn Maskierung angewendet wird, sind alle Objekte außerhalb des Filterbereichs nicht zur Auswahl/Bearbeitung verfügbar.
Jede Kombination dieser Optionen kann aktiviert werden. Beispielsweise möchten Sie vielleicht, dass alle gefilterten Objekte, die in den Bereich Ihrer Query fallen, im Fenster des Design-Editors gezoomt, zentriert und ausgewählt werden, während gleichzeitig eine Maskierung angewendet wird, um die Unübersichtlichkeit anderer Designobjekte zu reduzieren.
Filter anwenden und löschen
Sobald Sie Ihre Query definiert und die Optionen im Panel wie erforderlich eingerichtet haben, kann der Filter angewendet werden – entweder durch Klicken auf die Schaltfläche Apply oder durch Drücken von Enter.
Um den aktuell angewendeten Filter innerhalb des Panels zu löschen, löschen Sie den Eintrag für den Query-Ausdruck im Panel und klicken dann entweder auf die Schaltfläche Apply oder drücken Enter. Alle Objekte im Design-Arbeitsbereich werden vollständig sichtbar und für Auswahl/Bearbeitung verfügbar.
Rechtsklick-Menüs
Ein Rechtsklick innerhalb des SCH FilterPanels bietet über ein Popup-Menü Zugriff auf zusätzliche Optionen und Befehle.
Das Menü bietet die folgenden Befehle:
-
Add to Favorites - den aktuell im Panel angezeigten Query-Ausdruck zur Liste der Favoriten-Queries hinzufügen. Die Query erscheint als neuer Eintrag auf der Registerkarte Favorites des Dialogs Expression Manager. Wenn eine Query zur Liste der Favoriten-Queries hinzugefügt wird, wird sie oben im Rechtsklick-Menü angezeigt. Die zehn zuletzt zur Favoritenliste hinzugefügten Queries werden im Menü angezeigt (die neueste oben), sodass Sie schnell auf Ihre bevorzugten Query-Ausdrücke zugreifen und sie wiederverwenden können.
Beachten Sie, dass der Inhalt der Liste
Favorites sowohl für das
SCH Filter als auch für das
SCHLIB Filter panel gemeinsam ist (und von beiden aus gefüllt werden kann). Einige Query-Ausdrücke liefern möglicherweise keine Ergebnisse, wenn sie im Schaltplaneditor verwendet werden, insbesondere wenn sie erstellt wurden, um Objekte anzusprechen, die nur im Editor für Schaltplanbibliotheken verfügbar sind.
-
Organize Favorites - verwenden Sie diesen Befehl, um auf die Registerkarte Favorites des Dialogs Expression Manager zuzugreifen, in der Sie Einträge in der Liste der Favoriten-Queries nach Bedarf organisieren (umbenennen, löschen) können.
-
Examples - klicken Sie , um auf ein Untermenü mit vordefinierten Beispielfiltern zuzugreifen. Wenn Sie einen Beispielfilter auswählen, wird der zugehörige zugrunde liegende Query-Ausdruck in den mittleren Bereich des Panels geladen.
-
History - klicken Sie , um auf ein Untermenü zuzugreifen, das die neun zuletzt verwendeten Query-Ausdrücke aus der Query-Verlaufsliste des Panels enthält. Klicken Sie auf den Eintrag More, um auf die Registerkarte History des Dialogs Expression Manager zuzugreifen, in der Sie die vollständige Liste der bisherigen Queries durchsuchen und eine Query daraus anwenden sowie die Verlaufsliste bei Bedarf löschen können.
-
Show Scope Options - verwenden Sie diesen Befehl, um die Anzeige des Filterbereichs des Panels ein- oder auszuschalten.
-
Show Masking Options - verwenden Sie diesen Befehl, um die Anzeige des Bereichs für die Filterhervorhebung des Panels ein- oder auszuschalten.
Beachten Sie, dass der Inhalt der Verlaufsliste sowohl für das SCH Filter als auch für das SCHLIB Filter panel gemeinsam ist (und von beiden aus gefüllt werden kann). Einige Abfrageausdrücke liefern bei Verwendung im Schaltplaneditor möglicherweise keine Ergebnisse, insbesondere wenn sie für Objekte erstellt wurden, die nur im Editor für Schaltplanbibliotheken verfügbar sind.
Hinweise
Allgemein
-
Durch Drücken der Taste F12 wird die Sichtbarkeit des Panels im Arbeitsbereich umgeschaltet.
-
Wenn Sie den Dialog Query Helper zum Erstellen einer Abfrage verwenden, wird durch Klicken in ein eingegebenes Schlüsselwort oder auf ein Schlüsselwort in einer der verfügbaren Listen und anschließendes Drücken von F1 die Hilfe für dieses spezielle Schlüsselwort geöffnet. Ein ähnlicher Zugriff auf die Hilfe auf Schlüsselwortebene ist verfügbar, wenn Sie innerhalb eines Schlüsselworts im mittleren Bereich des SCH Filter Panels klicken und dann F1 drücken.
-
Je nach Form und Größe des Panels wird der Inhalt dynamisch horizontal oder vertikal angeordnet.
Beim Erstellen von Abfrageausdrücken
-
Es wird dringend empfohlen, Klammern zu verwenden, sobald auch nur die geringste Möglichkeit besteht, dass die Abfrage nicht korrekt interpretiert werden könnte.
-
Klammern haben die höchste Priorität innerhalb einer definierten Rangfolge für die verschiedenen bereitgestellten Operatoren, die bestimmt, wie Abfragen von der Software interpretiert werden (wenn Sie keine Klammern angegeben haben). Die Reihenfolge dieser Priorität ist wie folgt:
Brackets
Not
^, *, /, Div, Mod, And
+, -, Or, Xor
=, <>, <, >, <=, >=
&&, ||
Diese Prioritätsreihenfolge ist ähnlich wie in Pascal-ähnlichen Sprachen; die großzügige Verwendung von Klammern beseitigt Unklarheiten und macht die resultierenden Abfragen für andere leichter lesbar.
-
Mehrdeutigkeiten werden durch Abarbeitung von links nach rechts aufgelöst.
-
Klammerausdrücke werden von innen nach außen ausgewertet, und gleichrangige Ebenen werden von links nach rechts abgearbeitet.
-
Da die Anzeigeoptionen für Objekte, die den angewendeten Filter bestehen bzw. nicht bestehen, getrennt sind, können Sie effektiv neue Filterabfragen anwenden, um auf den Ergebnissen vorheriger Filterungen aufzubauen.
-
Die Filterung, die bei Verwendung von Abfragen aus dem SCH Filter Panel angewendet wird, ist dauerhaft. Wenn Designobjekte, die den Filter nicht bestehen, ausgeblendet werden, wird das Ausmaß der Ausblendung über den Schieberegler am unteren Rand des Panels gesteuert.
-
Ein dauerhafter Filter muss durch Anwenden einer leeren Abfrage aus dem SCH Filter Panel gelöscht werden.
SCHLIB Filter Panel
Lokalisieren und markieren Sie Objekte der Schaltplanbibliothek schnell mithilfe logischer Abfragen im SCHLIB Filter Panel.
Zusammenfassung
Das SCHLIB Filter Panel ermöglicht Ihnen das Erstellen von Filtern durch die Erstellung logischer Abfragen. Ein definierter Filter kann dann auf die aktive Schaltplanbibliothekskomponente oder auf alle Komponenten in der aktiven Schaltplanbibliothek angewendet werden, wodurch Sie mehrere Objekte mit höherer Genauigkeit und Effizienz auswählen und bearbeiten können. Die visuelle Darstellung von Objekten kann anhand derjenigen festgelegt werden, die den Suchkriterien des Filters entsprechen, und derjenigen, die ihnen nicht entsprechen.
Panel-Zugriff
Auf das Panel kann auf folgende Weise zugegriffen werden:
-
Klicken Sie auf die Schaltfläche Panels unten rechts im Arbeitsbereich und wählen Sie dann SCHLIB Filter aus.
-
Klicken Sie in den Hauptmenüs auf View » Panels » SCHLIB Filter .
-
Verwenden Sie die Tastenkombination F12.
Panels können so konfiguriert werden, dass sie im Editorbereich schwebend oder an den Bildschirmseiten angedockt sind. Wenn sich das SCHLIB Filter Panel derzeit in der Gruppe der angedockten Workspace Panels auf der linken Seite befindet, verwenden Sie die Registerkarte SCHLIB Filter unten an den Panels, um es in den Vordergrund zu bringen.
Definieren des Filterbereichs
Der linke Bereich des SCHLIB Filter Panels enthält Steuerelemente zum Definieren (Begrenzen) des Filterbereichs.
Die Bereichsoptionen sind:
-
All Objects - den Filter auf alle Designobjekte anwenden.
-
Selected Objects - den Filter nur auf die aktuell ausgewählten Designobjekte anwenden.
-
Non Selected Objects - den Filter nur auf die aktuell nicht ausgewählten Designobjekte anwenden.
-
Whole Library - steuert, ob die Filterung nur auf die aktive Komponente angewendet wird (Option deaktiviert) oder auf alle Komponenten im aktiven Schaltplanbibliotheksdokument (Option aktiviert).
Definieren von Filterabfragen
Der mittlere Bereich des SCHLIB Filter Panels ermöglicht Ihnen das Erstellen von Filtern durch die Eingabe logischer Abfragen.
Sie können eine Abfrage direkt in das Feld eingeben; während der Eingabe erscheint zur Unterstützung eine Vorschlagsliste möglicher Schlüsselwörter.
Query Helper
Zusammen mit der Vorschlagsliste bietet das Panel auch die Funktion Query Helper als Unterstützung beim Erstellen von Abfragen. Diese Funktion kann sehr nützlich sein, wenn Sie sich bei der Syntax einer Abfrage oder bei möglichen Schlüsselwörtern, die Sie verwenden möchten, unsicher sind. Um den Query Helper zu verwenden, klicken Sie auf die Schaltfläche Helper, um den Dialog Query Helper zu öffnen. Die zugrunde liegende Query Engine analysiert das Dokument und listet alle verfügbaren Objekte zusammen mit allgemeinen Schlüsselwörtern zur Verwendung in Abfragen auf.
Verwenden Sie den oberen Abschnitt des Dialogs, um einen Abfrageausdruck unter Verwendung der verfügbaren SCH Functions und System Functions zusammenzustellen. Der mittlere Bereich des Dialogs stellt eine Reihe von Operatoren zur Verfügung, die beim Erstellen eines Ausdrucks verwendet werden können. Verwenden Sie die Schaltfläche Check Syntax, um zu überprüfen, ob ein Ausdruck syntaktisch korrekt ist.
Wenn der Ausdruck für die Abfrage wie gewünscht definiert wurde, klicken Sie auf OK, um die Abfrage in den mittleren Bereich des SCHLIB Filter Panels zu laden. Wenden Sie den Filter mit der Schaltfläche Apply an.
Wenn der Filter auf die gesamte Bibliothek angewendet wird, werden Pins, die den Filter erfüllen, auch für alle anderen Komponenten hervorgehoben.
Weitere Informationen zum Anwenden von Filtern finden Sie im Abschnitt Applying and Clearing a Filter unten.
Definieren der Filterhervorhebung
Bevor die Abfrage im SCHLIB Filter Panel angewendet wird, sollten Sie am besten festlegen, wie das Ergebnis der Filterung im Arbeitsbereich des Designeditors visuell dargestellt werden soll. Der rechte Bereich des Panels bietet verschiedene Optionen, die zusammen die Hervorhebungssteuerungen für die dauerhafte Filterung bilden.
Mit den Objects passing the filter Optionen können Sie steuern, wie alle Objekte, die in den Bereich fallen und dem spezifischen Abfrageausdruck des Filters entsprechen, im Arbeitsbereich visuell dargestellt werden.
-
Select - wenn aktiviert (Standard), werden die gefilterten Objekte im Arbeitsbereich ausgewählt.
-
Zoom - wenn aktiviert (Standard), werden die gefilterten Objekte im Fenster des Bibliothekseditors gezoomt und zentriert (soweit möglich). Die Zoom-Aktion kann durch die Zoom Library Components Optionen bestimmt werden, die auf der Seite Schematic - Library AutoZoom des Dialogs Preferences festgelegt sind.
Umgekehrt können Sie mit den Objects not passing the filter Optionen steuern, wie alle Objekte, die do not nicht in den Bereich fallen und/oder nicht dem spezifischen Abfrageausdruck des Filters entsprechen, im Arbeitsbereich visuell dargestellt werden.
-
Deselect - wenn aktiviert (Standard), werden alle Objekte, die nicht in den Bereich des Filters fallen, im Arbeitsbereich abgewählt.
-
Mask out - wenn aktiviert (Standard), werden alle Objekte, die nicht in den Bereich des Filters fallen, im Fenster des Bibliothekseditors maskiert. Verwenden Sie den Schieberegler, um den Maskierungsgrad festzulegen.
Anwenden und Löschen eines Filters
Nachdem Sie eine Abfrage definiert und die Optionen im Panel wie erforderlich eingerichtet haben, kann der Filter durch Klicken auf die Schaltfläche Apply des Panels oder durch Drücken von Enter angewendet werden.
Um den aktuell angewendeten Filter innerhalb des Panels zu löschen, löschen Sie den Abfrageausdruck im mittleren Bereich des Panels (markieren und entfernen) und klicken dann entweder auf die Schaltfläche Apply oder drücken Enter. Alle Objekte im Designarbeitsbereich werden wieder vollständig sichtbar und stehen zur Auswahl/Bearbeitung zur Verfügung.
Um die Filterung im Arbeitsbereich zu löschen und den Abfrageausdruck im mittleren Bereich des Panels geladen zu lassen, verwenden Sie die Schaltfläche Clear Current Filter (
) in der Symbolleiste Sch Lib Standard (Tastenkombination Shift+C).
Rechtsklickmenü
Ein Rechtsklick innerhalb des SCHLIB Filter Panels bietet über ein Popup-Menü Zugriff auf zusätzliche Optionen und Befehle.
Das Menü bietet die folgenden Befehle:
-
Add to Favorites - verwenden Sie dies, um den aktuell im mittleren Bereich des Panels angezeigten Abfrageausdruck zur Liste der Favoritenabfragen hinzuzufügen. Die Abfrage erscheint als neuer Eintrag auf der Registerkarte Favorites des Dialogs Expression Manager. Wenn eine Abfrage zur Liste der Favoritenabfragen hinzugefügt wird, wird sie oben im Rechtsklickmenü angezeigt. Die zehn zuletzt zur Favoritenliste hinzugefügten Abfragen werden im Menü angezeigt (die neueste oben), sodass Sie schnell auf Ihre bevorzugten Abfrageausdrücke zugreifen und sie wiederverwenden können.
-
Organize Favorites - verwenden Sie dies, um auf die Registerkarte Favorites des Dialogs Expression Manager zuzugreifen, in der Sie Einträge in der Liste der Favoritenabfragen organisieren (umbenennen, löschen) können.
-
Examples - klicken Sie hier, um auf ein Untermenü mit vordefinierten Beispielfiltern zuzugreifen. Durch Auswahl eines Beispielfilters wird der zugehörige zugrunde liegende Abfrageausdruck in den mittleren Bereich des Panels geladen.
-
History - klicken Sie hier, um auf ein Untermenü zuzugreifen, das die neun zuletzt verwendeten Abfrageausdrücke aus der Abfrageverlaufsliste des Panels enthält. Klicken Sie auf den Eintrag More, um auf die Registerkarte History des Dialogs Expression Manager zuzugreifen, in der Sie die vollständige Liste historischer Abfragen durchsuchen und eine Abfrage daraus anwenden sowie die Verlaufsliste bei Bedarf löschen können.
-
Show Scope Options - verwenden Sie dies, um die Anzeige des Bereichs für den Filterumfang des Panels umzuschalten.
-
Show Masking Options - verwenden Sie dies, um die Anzeige des Bereichs für die Filterhervorhebung des Panels umzuschalten.
Die obersten Einträge im Rechtsklickmenü bieten eine Auswahl der aktuellen Favoriten. Klicken Sie auf einen Eintrag, um ihn in das Panel zu laden.
Beachten Sie, dass der Inhalt sowohl der Listen Favorites als auch History für beide gemeinsam ist (und aus dem SCHLIB Filter und dem SCH Filter panel befüllt werden kann). Einige Abfrageausdrücke liefern bei Verwendung im Schaltplaneditor möglicherweise keine Ergebnisse, insbesondere wenn sie für Objekte erstellt wurden, die nur im Schematic Library editor verfügbar sind.
Hinweise
Allgemein
-
Durch Drücken der Taste F12 wird die Sichtbarkeit des Panels im Arbeitsbereich umgeschaltet.
-
Filter, die bei der Verwendung von Abfragen aus dem SCHLIB Filter Panel angewendet werden, sind für die Sitzung dauerhaft. Ein dauerhafter Filter muss durch eine entsprechende Aktion Clear gelöscht werden (durch Anwenden einer leeren Abfrage aus dem SCHLIB Filter Panel).
-
Abhängig von Form und Größe des SCHLIB Filter Panels selbst wird der Inhalt dynamisch horizontal oder vertikal angeordnet.
Erstellen von Abfrageausdrücken
-
Es wird dringend empfohlen, Klammern zu verwenden, sobald die Möglichkeit besteht, dass die Abfrage nicht korrekt interpretiert werden könnte.
-
Klammern haben die höchste Priorität innerhalb einer definierten Rangfolge für die verschiedenen bereitgestellten Operatoren, die bestimmt, wie Abfragen von der Software interpretiert werden (wenn der Benutzer keine Klammern angegeben hat). Die Reihenfolge dieser Priorität ist wie folgt:
Brackets
Not
^, *, /, Div, Mod, And
+, -, Or, Xor
=, <>, <, >, <=, >=
&&, ||
Diese Prioritätsreihenfolge ist ähnlich der in Pascal-ähnlichen Sprachen. Eine großzügige Verwendung von Klammern beseitigt jedoch Unklarheiten und macht die resultierenden Abfragen für andere leichter lesbar.
-
Mehrdeutigkeiten werden durch Abarbeitung von links nach rechts aufgelöst.
-
Klammerausdrücke werden von innen nach außen ausgewertet, und gleiche Ebenen werden von links nach rechts abgearbeitet.
PCB Filter Panel

Das PCB Filter Panel
Zusammenfassung
Das PCB Filter Panel stellt Steuerelemente zum Erstellen von Filtern durch das Anlegen logischer Abfragen bereit. Ein definierter Filter kann dann auf die aktive PCB angewendet werden, sodass Sie mehrere Objekte mit hoher Genauigkeit und Effizienz auswählen und bearbeiten können.
Panel-Zugriff
Auf das Panel kann im PCB-Editor auf folgende Weise zugegriffen werden:
-
Klicken Sie auf die Schaltfläche Panels unten rechts im Arbeitsbereich und wählen Sie dann PCB Filter.
-
Klicken Sie in den Hauptmenüs auf View » Panels » PCB Filter.
-
Verwenden Sie die Tastenkombination F12 .
Panels können so konfiguriert werden, dass sie im Editorbereich schwebend oder an den Bildschirmrändern angedockt sind. Wenn sich das PCB Filter Panel derzeit in einer Panelgruppe befindet, verwenden Sie die Registerkarte PCB Filter unten an den Panels, um es in den Vordergrund zu bringen.
Panel-Bereiche
Das PCB Filter Panel besteht aus drei Bereichen. Die ersten beiden sind auswählbare Listenbereiche, die zusammen den Umfang der Filterung definieren: Object und Layer.
Der dritte Bereich, Filter, zeigt die erstellte Abfrage basierend auf den aktuell ausgewählten Objekten und Lagen an.
Erstellen einfacher Filterausdrücke
Der Hauptbereich des Panels stellt Steuerelemente bereit, um schnell einfache Filterausdrücke zu erstellen, die auf beliebige Kombinationen von Objekten abzielen. Objekttypen sind in einer „Objektmatrix“ angeordnet und entsprechend ihrer Zugehörigkeit zu Netzobjekten (Net), Komponentenobjekten (Comp) oder freien Objekten (Free) kategorisiert. Die folgende Kernobjektliste wird über diese drei Gruppen hinweg wiederholt:
-
Track
-
Arc
-
Via
-
Pad
-
Fill
-
Region
Das Objekt Text ist als Teil der Gruppierungen Comp und Free verfügbar. Da dieser Objekttyp jedoch nicht netzbezogen ist, ist er nicht Teil der Gruppierung Net . Zusätzlich umfasst die Gruppierung Free auch: Component, Component Body, Room und Polygon.
Wenn diese beispielsweise auf „Component“ und „Top Layer“ gesetzt sind, hebt die Platinenansicht Komponenten auf der Top Layer hervor. Die Auswahlen in beiden Panel-Bereichen stellen die kumulative Wirkung mehrerer Filterstufen dar, die verwendet werden kann, um schnell jeden Typ von Designobjekt hervorzuheben.
Die Reihenfolge der Spalten ist anpassbar. Klicken Sie auf die Kopfzeile einer Spalte und ziehen Sie sie horizontal an die gewünschte neue Position. Gültige Positionen werden durch grüne Positionspfeile hervorgehoben.
Um ein Objekt beim Erstellen eines Filterausdrucks zu verwenden, d. h. nach diesem Objekt zu filtern, aktivieren Sie das zugehörige Kontrollkästchen dieses Objekts innerhalb der Objektmatrix. Über Befehle im Rechtsklickmenü für den Bereich können Sie schnell alle Einträge in der Matrix aktivieren oder deaktivieren oder den Status aller Kontrollkästchen in der Matrix umschalten.
Wenn Sie auf den Namenseintrag eines Objekts klicken, werden alle ihm in der Matrix zugeordneten Kontrollkästchen aktiviert. Ein weiterer Klick deaktiviert alle wieder. Alternativ können Sie die Maus entweder in der Spalte mit den Objektnamen oder in einer bestimmten Gruppenspalte klicken und ziehen, um mehrere Einträge gleichzeitig zu aktivieren/deaktivieren. Beachten Sie, dass, wenn eine auf diese Weise getroffene Auswahl mindestens ein nicht aktiviertes Kontrollkästchen enthält, diese nicht aktivierten Kontrollkästchen aktiviert werden und die bereits aktivierten Kontrollkästchen aktiviert bleiben. Wenn jedoch bereits all Kontrollkästchen aktiviert waren, werden als Ergebnis alle an der Auswahl beteiligten Kontrollkästchen deaktiviert.
Verwenden Sie den Bereich Layer des Panels, um den Filter auf eine bestimmte Lage oder mehrere Lagen bzw. auf eine bestimmte Klasse von Lagen zu beschränken. Die aufgeführten Einträge entsprechen:
-
Den für die Platine definierten Lagenklassen, deren Standardwerte sind:
-
<All Layers>
-
<Component Layers>
-
<Electrical Layers>
-
<Signal Layers>
-
Den im Lagenaufbau definierten Lagen (wie im Layer Stack Editor dargestellt).
-
Den oberen und unteren Pastenmaskenlagen.
Mehrere Lagen können zur Aufnahme in den Filter ausgewählt werden, indem das zugehörige Kontrollkästchen für jede gewünschte Lage entsprechend umgeschaltet wird.
Der Bereich
Layer wird automatisch aktualisiert, wenn zusätzliche Lagenklassen definiert wurden oder benutzerdefinierte Namen von Lagenklassen über den Dialog
Object Class Explorer geändert wurden. Er wird auch aktualisiert, um Änderungen an den Lagen im Lagenaufbau widerzuspiegeln.
Während Sie Ihre Filterauswahl treffen, wird der resultierende Abfrageausdruck dynamisch erstellt und im Bereich Filter des Panels angezeigt. Sobald der Filterabfrageausdruck wie gewünscht definiert wurde, müssen Sie ihn in einem separaten Schritt anwenden. Klicken Sie dazu unten im Panel auf die Schaltfläche Apply to All . Wenn die Anwendung alternativ nur auf die aktuell im Arbeitsbereich ausgewählten Objekte erfolgen soll, klicken Sie auf die Schaltfläche Apply to Selected.
Die Anzahl der Objekte, die den Filter passieren (d. h. die Anzahl, die im Arbeitsbereich weiterhin angezeigt werden), wird unten links im Panel angegeben. Wenn derzeit kein Filter angewendet wird, wird dies durch den Eintrag Not filtered angezeigt.
Filtern nach Objekt
Die Auswahl in der Liste Object des Panels filtert die Platinenansicht so, dass primitive Designobjekte angezeigt werden. Alle Objekte werden hervorgehoben, sofern dies nicht durch die Einstellungen in den Filterlisten Object und/oder Layer geändert wird.

Die gezeigte Platine mit Component Body und Pad (In Any Component) , ausgewählt unter Object. Layer ist auf <All> gesetzt.

Die gezeigte Platine mit Object , gesetzt auf Tracks (In Any Net) und Pads (In Any Net). Layer ist auf <All> gesetzt.
Filtern nach Lage
Die Auswahl in der Liste Layer des Panels filtert die Platinenansicht so, dass Objekte auf der angegebenen physischen Designlage angezeigt werden (Signal-, Masken- und Siebdrucklagen). Alle gültigen Lagenobjekte werden hervorgehoben, sofern dies nicht durch die Einstellungen in den Filterlisten Layer und/oder Objects geändert wird.

Die gezeigte Platine mit Object , gesetzt auf Components und Pads (In Any Component). Layers ist auf Top Layer gesetzt.

Die gezeigte Platine mit Object , gesetzt auf Tracks (In Any Net). Layer ist auf Bottom Layer gesetzt.
Um nur Objekte auf der aktuellen Lage zu filtern, wählen Sie den Eintrag <Active Layers>.
Auswahl gefilterter Objekte
Die vom Panel bereitgestellte kombinierte Filterwirkung unterstützt sowohl das Anzeigen als auch das Auswählen interessanter Platinen-Designobjekte.
Nur hervorgehobene (gefilterte) Objekte sind auswählbar, wodurch es einfach ist, das Objekt zu lokalisieren, zu bearbeiten und Informationen darüber zu finden.
Filter löschen
Löschen Sie den aktuell angewendeten Filter, indem Sie auf die Schaltfläche Clear klicken.
Beachten Sie, dass ein auf den Arbeitsbereich angewendeter Filter persistent ist und ausdrücklich zurückgesetzt oder durch einen anderen Auswahlmechanismus überschrieben werden muss, beispielsweise durch den des PCB Panels.
Einstellen der visuellen Filterung
Das visuelle Ergebnis der auf das Dokument im Arbeitsbereich angewendeten Filterung wird durch eine Reihe von Hervorhebungsoptionen bestimmt. Der im Editorfenster angewendete Effekt kann auf Normal, Mask oder Dim gesetzt werden, wobei in der Praxis Mask den deutlichsten Hervorhebungseffekt hat.
Die Dropdown-Liste Normal / Mask / Dim bietet Optionen, um gefilterte und ungefilterte Objekte im Arbeitsbereich visuell voneinander abzuheben.

Wählen Sie den Typ der angewendeten visuellen Filterung über die Dropdown-Liste für den Maskierungsmodus aus.
Der visuelle Hervorhebungseffekt für jeden Maskierungsmodus:
-
Normal - gefilterte Objekte sind im Arbeitsbereich sichtbar und das Erscheinungsbild ungefilterter Objekte bleibt unverändert.
-
Mask - gefilterte Objekte werden im Arbeitsbereich hervorgehoben, während alle anderen Objekte monochrom dargestellt werden.
-
Dim - gefilterte Objekte werden im Arbeitsbereich hervorgehoben, während alle anderen Objekte ihre Farben behalten, jedoch abgeschattet werden.
Definieren von Filterabfragen
Der zentrale Bereich des Panels stellt Steuerelemente zum Erstellen von Filtern durch die Eingabe logischer Abfragen bereit.
Sie können eine Abfrage direkt in das Feld eingeben. Während der Eingabe wird zur Unterstützung eine Liste möglicher Schlüsselwörter angezeigt.
Es stehen zwei Funktionen zur Verfügung, die beim Erstellen von Abfragen helfen – der Query Helper und der Query Builder. Diese Funktionen können sehr nützlich sein, wenn Sie sich bei der Syntax einer Abfrage oder bei den möglichen Schlüsselwörtern, die Sie verwenden möchten, nicht sicher sind.
Query Helper
Um den Query Helper zu verwenden, klicken Sie auf die Schaltfläche Helper, um den Dialog Query Helper zu öffnen. Die zugrunde liegende Query Engine analysiert das Dokument und listet alle verfügbaren Objekte sowie allgemeine Schlüsselwörter zur Verwendung in Abfragen auf.
Verwenden Sie den oberen Bereich des Dialogs, um einen Abfrageausdruck mit den verfügbaren PCB Functions, PCB Object Lists und System Functions zu erstellen. Der mittlere Bereich des Dialogs stellt eine Reihe von Operatoren für die Konstruktion eines Ausdrucks bereit. Verwenden Sie die Schaltfläche Check Syntax, um zu prüfen, ob ein Ausdruck syntaktisch korrekt ist.
Wenn der Ausdruck für die Abfrage wie gewünscht definiert wurde, klicken Sie auf OK, um die Abfrage in den mittleren Bereich des Panels zu laden, sodass der Filter angewendet werden kann.
Query Builder
Um den Query Builder zu verwenden, klicken Sie auf die Schaltfläche Builder des Panels, um den Dialog Building Query from Board dialog zu öffnen. In diesem Dialog können Sie eine Abfrage erstellen, um bestimmte Objekte im Designdokument gezielt anzusprechen, indem Sie eine Zeichenfolge aus mit AND und/oder OR verknüpften Bedingungen aufbauen. Die linke Seite des Dialogs wird verwendet, um die Bedingung(en) anzugeben, die erforderlich sind, um die gewünschte Objektmenge anzusprechen. Anfangs lautet der Eintrag in der Spalte Condition Type/Operator Add first condition. Wenn Sie einmal auf diesen Eintrag klicken, wird eine Dropdown-Liste mit Bedingungstypen angezeigt.
Die aufgelisteten Bedingungstypen spiegeln nur diejenigen wider, die für ein Leiterplattendesign relevant sind.
Wählen Sie die gewünschte Bedingung aus und klicken Sie dann in die Spalte Condition Value, um auf eine Dropdown-Liste möglicher Werte für diesen Bedingungstyp zuzugreifen. Während Sie auf der linken Seite des Dialogs eine Bedingung definieren, wird auf der rechten Seite eine Vorschau der aktuell erstellten Abfrage angezeigt.
Fügen Sie nach Bedarf weitere Bedingungen hinzu, um die Zielmenge der Designobjekte weiter einzugrenzen. Bedingungen können mit AND oder OR verknüpft werden. Der standardmäßige logische Operator ist AND, der automatisch eingefügt wird, wenn Sie eine weitere Bedingung hinzufügen.
Um den logischen Operator zwischen Bedingungen zu ändern, klicken Sie in der Spalte Condition Type/Operator auf den Eintrag AND oder OR und wählen dann den gewünschten Operator aus. Die Vorschau der Abfrage wird entsprechend aktualisiert.
Priorität festlegen
Mit den Schaltflächen
und
oben im Dialog Building Query from Board können Sie Klammern um die aktuell ausgewählte Bedingung hinzufügen oder entfernen (Einzug vergrößern bzw. verkleinern). Dadurch können Sie für bestimmte logisch mit AND oder OR verknüpfte Bedingungen eine Priorität festlegen.
Betrachten Sie beispielsweise die folgende erstellte Abfrage:
InNet('5V') AND (OnLayer('TopLayer')
Die erste Bedingung wurde auf den Bedingungstyp Belongs to Net mit dem Wert 16M_IN gesetzt. Anschließend wurde eine weitere Bedingung hinzugefügt, wobei der Bedingungstyp Exists on Layer mit dem Wert TopLayer verwendet wurde.
Beachten Sie, dass das äußerste Klammerpaar vom Builder automatisch hinzugefügt wird und beim Erstellen des Abfrageausdrucks nicht angezeigt wird.
In diesem Stadium wurde bei ausgewählter zweiter Bedingung im Dialog auf die Schaltfläche mit dem Pfeil nach rechts geklickt. Um die zweite Bedingung wurden automatisch Klammern hinzugefügt, und nun besteht die Möglichkeit, innerhalb dieses Klammerpaars eine Bedingung hinzuzufügen.
Die dritte Bedingung mit dem Bedingungstyp Object Kind is und dem Wert Track wird dann innerhalb der Klammern hinzugefügt.
Verwenden Sie das Dropdown-Menü Show Level oben links im Dialog, um die visuelle Anzeige der Ebenen in Ihrer strukturierten Zeichenfolge von Bedingungen zu steuern. Dadurch wird im Wesentlichen die Anzeige von Klammern erweitert/reduziert. Das Hinzufügen von Klammern erzeugt effektiv eine neue Ebene. Sie können die Ebenen 1–5 anzeigen; für weitere hinzugefügte Ebenen verwenden Sie jedoch die Option Show All Levels.
Alternativ können Sie auf die Symbole zum Erweitern oder Reduzieren (die einer geklammerten Bedingung zugeordnet sind) klicken, um die nächste(n) Ebene(n) anzuzeigen oder die aktuelle Ebene (und alle darunterliegenden Ebenen) auszublenden. Die Schaltflächen
und
oben im Dialog können ebenfalls verwendet werden, um die aktuell ausgewählte Bedingung zu erweitern oder zu reduzieren.
Verwenden Sie die Schaltflächen
und
oben im Dialog, um eine ausgewählte Bedingung in der Abfragezeichenfolge zu verschieben. Bei einer Bedingung mit Unterebenen (d. h. einer geklammerten Bedingung) kann jede Bedingung in der Ebenenstruktur verschoben werden. Wenn Ebenen erweitert sind, kann eine Bedingung durch die Ebenen nach unten oder oben verschoben werden. Wenn Ebenen reduziert sind, wird eine Bedingung über die Ebenenstruktur hinweg verschoben.
Um eine Bedingung zu löschen, wählen Sie sie aus und klicken entweder auf die Schaltfläche
oben im Dialog oder verwenden Sie die Taste Delete.
Wenn der Ausdruck für die Abfrage wie gewünscht definiert wurde, klicken Sie auf OK, um die Abfrage in den mittleren Bereich des Panels PCB Filter zu laden, sodass der Filter angewendet werden kann.
Design Rules erstellen
Das Panel PCB Filter bietet auch die Möglichkeit, eine Design Rule zu erstellen, deren Geltungsbereich den aktuell im mittleren Bereich des Panels definierten Abfrageausdruck verwendet.
Um eine neue Design Rule hinzuzufügen, klicken Sie im Panel PCB Filter auf die Schaltfläche Create Rule. Der Dialog Choose Design Rule Type wird geöffnet.
Dieser Dialog listet alle Regelkategorien und Regeltypen auf, die im PCB-Dokument verfügbar sind. Wählen Sie den Regeltyp aus, den Sie erstellen möchten, und klicken Sie dann auf OK (oder doppelklicken Sie direkt auf den Eintrag). Der Dialog PCB Rules and Constraints Editor wird geöffnet.
Der Name der neu erstellten Regel ist im Navigationsbaum auf der linken Seite ausgewählt zu sehen. Der Regel-Abfrageausdruck befindet sich im oberen rechten Bereich des Dialogs.
Es wird eine Regel des gewählten Typs erstellt, und das Hauptbearbeitungsfenster für die Regel wird angezeigt, damit Sie spezifische Einschränkungen für die Regel definieren können. Der Abfrageausdruck aus dem Panel PCB Filter wird in den Bereich Full Query des Dialogs eingetragen. Verfeinern Sie die Konfigurationseinstellungen der Regel nach Bedarf und übernehmen Sie die neue Regel.
Filter anwenden und löschen
Nachdem Sie eine Abfrage definiert und die Optionen im Panel wie gewünscht eingerichtet haben, kann der Filter entweder durch Klicken auf eine der Schaltflächen Apply des Panels oder durch Klicken auf Enter angewendet werden.
Um den aktuell angewendeten Filter innerhalb des Panels zu löschen, löschen Sie den Abfrageausdruck im mittleren Bereich des Panels (markieren und entfernen) und klicken dann entweder auf eine der Schaltflächen Apply oder drücken Sie Enter. Alle Objekte im Design-Arbeitsbereich werden wieder vollständig sichtbar und stehen zur Auswahl/Bearbeitung zur Verfügung.
Rechtsklick-Menüs
Ein Rechtsklick innerhalb des Panels PCB Filter bietet über Popup-Menüs Zugriff auf zusätzliche Optionen und Befehle.
Ein Rechtsklick im Bereich Object oder Layer des Panels öffnet die folgenden Kontextmenüoptionen:
-
Toggle Check - aktivieren, um Optionen umzuschalten. Aktuell ausgewählte Optionen werden abgewählt, während nicht ausgewählte Optionen ausgewählt werden.
-
Check All - aktivieren, um alle verfügbaren Optionen auszuwählen.
-
Uncheck All - aktivieren, um alle verfügbaren Optionen abzuwählen.
Hinweise
Allgemein
-
Durch Drücken der Taste F12 wird die Sichtbarkeit des Panels im Arbeitsbereich umgeschaltet.
-
Der Query Builder (Dialog Building Query from Board) bietet eine einfache Methode zum Erstellen einer Abfrage, wobei kontextsensitive Bedingungstypen und Werte verwendet werden, mit denen Sie nur aus relevanten „Bausteinen“ erstellen können. Für die erweiterte Erstellung von Abfragen mit vollständiger Schlüsselwortspezifikation und Operatorsyntax verwenden Sie den Dialog Query Helper.
-
Da die Anzeigeoptionen für Objekte, die den angewendeten Filter bestehen bzw. nicht bestehen, getrennt sind, können Sie effektiv neue Filterabfragen anwenden, um auf den Ergebnissen vorheriger Filterungen aufzubauen.
Beim Erstellen von Abfrageausdrücken
-
Es wird dringend empfohlen, Klammern zu verwenden, wann immer die Möglichkeit besteht, dass die Abfrage nicht korrekt interpretiert wird.
-
Klammern haben die höchste Priorität innerhalb einer definierten Rangfolge für die verschiedenen bereitgestellten Operatoren, die bestimmt, wie Abfragen von der Software interpretiert werden (wenn der Benutzer keine Klammern angegeben hat). Die Reihenfolge dieser Priorität ist wie folgt:
Brackets
Not
^, *, /, Div, Mod, And
+, -, Or, Xor
=, <>, <, >, <=, >=
&&, ||
Diese Prioritätsreihenfolge ähnelt der in Pascal-ähnlichen Sprachen verwendeten. Eine großzügige Verwendung von Klammern beseitigt jedoch Zweifel und macht die resultierenden Abfragen für andere leichter lesbar.
-
Mehrdeutigkeiten werden durch Auswertung von links nach rechts aufgelöst.
-
Klammern werden von innen nach außen ausgewertet, und gleichrangige Ebenen werden von links nach rechts verarbeitet.
PCBLIB Filter Panel
Zusammenfassung
Das Panel PCBLIB Filter bietet Steuerelemente zum Erstellen von Filtern durch das Anlegen logischer Abfragen. Ein definierter Filter kann dann auf den aktiven PCB-Komponenten-Footprint oder auf alle Komponenten-Footprints in der aktiven PCB-Bibliothek angewendet werden, sodass Sie mehrere Objekte mit hoher Genauigkeit und Effizienz auswählen und bearbeiten können.
Verwenden Sie die Option Filter The Whole Library , um zu steuern, ob die Filterung nur auf die aktive Komponente (deaktiviert) oder auf alle Komponenten im aktiven PCB-Bibliotheksdokument (aktiviert) angewendet wird.
Panel-Zugriff
Auf das Panel wird im PCB Library Editor auf folgende Weise zugegriffen:
-
Klicken Sie unten rechts im Arbeitsbereich auf die Schaltfläche Panels und wählen Sie dann den Eintrag PCBLIB Filter aus.
-
Klicken Sie in den Hauptmenüs auf View » Panels » PCBLIB Filter.
- Verwenden Sie die Tastenkombination F12.
Panels können so konfiguriert werden, dass sie im Editorbereich frei schwebend oder an den Bildschirmrändern angedockt sind. Wenn sich das PCBLIB Filter-Panel derzeit in einer Panelgruppe befindet, verwenden Sie die Registerkarte PCBLIB Filter unten an den Panels, um es in den Vordergrund zu holen.
Panelbereiche
Das PCBLIB Filter-Panel besteht aus drei Bereichen. Die ersten beiden sind auswählbare Listenbereiche, die zusammen den Umfang der Filterung festlegen: Object und Layer. Der dritte Bereich, Filter, zeigt die Abfrage an, die auf Grundlage der aktuell ausgewählten Objekte und Layer erstellt wurde.
Einfache Filterausdrücke erstellen
Der Hauptbereich des Panels stellt Steuerelemente bereit, mit denen sich einfache Filterausdrücke für beliebige Objektkombinationen schnell erstellen lassen. Objekttypen sind in einer „Objektmatrix“ angeordnet und danach kategorisiert, ob es sich um Netzobjekte (Net), Komponentenobjekte (Comp) oder freie Objekte (Free) handelt. Die folgende Kernobjektliste wird in diesen drei Gruppen wiederholt:
-
Leiterbahn
-
Bogen
-
Via
-
Pad
-
Füllung
-
Region
Das Text -Objekt ist als Teil der Gruppierungen Comp und Free verfügbar. Da dieser Objekttyp jedoch nicht netzbezogen ist, gehört er nicht zur Gruppierung Net . Darüber hinaus umfasst die Gruppierung Free auch Component, ComponentBody, Room und Polygon.
Wenn diese beispielsweise auf „Komponenten“ und „Top Layer“ gesetzt sind, hebt die Platinenansicht Komponenten auf dem Top Layer hervor. Die Auswahlen in beiden Panelbereichen stellen die kumulative Wirkung mehrerer Filterstufen dar, mit denen sich jeder Typ von Designobjekt schnell hervorheben lässt.
Die Reihenfolge der Spalten ist anpassbar. Klicken Sie auf die Kopfzeile einer Spalte und ziehen Sie sie horizontal an die gewünschte neue Position. Gültige Positionen werden durch grüne Positionspfeile hervorgehoben.
Um ein Objekt beim Erstellen eines Filterausdrucks zu verwenden, d. h. nach diesem Objekt zu filtern, aktivieren Sie das entsprechende Kontrollkästchen für dieses Objekt innerhalb der Objektmatrix. Über Befehle im Kontextmenü per Rechtsklick für diesen Bereich können Sie schnell alle Einträge in der Matrix aktivieren oder deaktivieren bzw. den Status aller Kontrollkästchen in der Matrix umschalten.
Wenn Sie auf den Namenseintrag eines Objekts klicken, werden alle zugehörigen Kontrollkästchen in der Matrix aktiviert. Ein weiterer Klick deaktiviert sie wieder alle. Alternativ können Sie entweder in der Spalte mit den Objektnamen oder in einer bestimmten Gruppenspalte klicken und ziehen, um mehrere Einträge gleichzeitig zu aktivieren/deaktivieren. Beachten Sie, dass bei dieser Auswahlmethode, wenn mindestens ein nicht aktiviertes Kontrollkästchen enthalten ist, die nicht aktivierten Kontrollkästchen aktiviert werden und die bereits aktivierten aktiviert bleiben. Wenn jedoch bereits all Kästchen aktiviert waren, werden alle an der Auswahl beteiligten Kästchen deaktiviert.
Verwenden Sie den Bereich Layer, um den Filter auf einen bestimmten Layer, mehrere Layer oder eine bestimmte Layerklasse zu beschränken. Die aufgeführten Einträge entsprechen:
-
den definierten Layerklassen für die Platine, deren Standardwerte sind:
-
<All Layers>
-
<Component Layers>
-
<Electrical Layers>
-
<Signal Layers>
-
den definierten Layern im Layer-Stack (wie im Layer Stack dargestellt).
-
den oberen und unteren Pastenmasken-Layern.
Mehrere Layer können durch Umschalten des zugehörigen Kontrollkästchens für jeden gewünschten Layer in den Filter aufgenommen werden.
Der Bereich
Layer wird automatisch aktualisiert, wenn zusätzliche Layerklassen definiert wurden oder benutzerdefinierte Namen von Layerklassen über den Dialog
Object Class Explorer geändert wurden. Er wird auch aktualisiert, um Änderungen an den Layern im Layer-Stack widerzuspiegeln.
Layerklassen werden im Bereich Layer nicht angezeigt.
Während Sie Ihre Filterauswahl treffen, wird der resultierende Abfrageausdruck dynamisch erstellt und im Bereich Filter des Panels angezeigt. Sobald der Filterabfrageausdruck wie gewünscht definiert wurde, müssen Sie ihn in einem separaten Schritt anwenden. Klicken Sie dazu unten im Panel auf die Schaltfläche Apply to All . Wenn die Anwendung alternativ nur auf die aktuell im Arbeitsbereich ausgewählten Objekte erfolgen soll, verwenden Sie die Schaltfläche Apply to Selected.
Die Anzahl der Objekte, die den Filter passieren, d. h. die Anzahl der Objekte, die im Arbeitsbereich weiterhin angezeigt werden, wird unten links im Panel angegeben. Wenn derzeit keine Filterung angewendet wird, wird dies durch den Eintrag Not filtered angezeigt.
Filterung anwenden
PCB-Bibliothekskomponenten bestehen aus primitiven Objekttypen (Bögen, Pads, Leiterbahnen usw.), die auf verschiedenen Platinen-Layern angeordnet sind. Die Objekte sind entweder von Natur aus „frei“ oder gehören zu einem Gruppenobjekt. Beachten Sie, dass die Auswahl von Free im Bereich Object nur diejenigen Objekte hervorhebt, die nicht Teil eines Gruppenobjekts sind.
Die Filterung gilt für alle Komponenten in der aktiven PCB-Bibliothek.
Nach Objekt filtern
Die Auswahl in der Liste Object des Panels filtert die Platinenansicht so, dass primitive Designobjekte angezeigt werden. Alle Objekte werden hervorgehoben, sofern dies nicht durch die Einstellungen in der Filterliste Layer geändert wird.

Die Beispielplatine wird mit Track und Arc ausgewählt unter Object angezeigt. Layer ist auf Top Overlay gesetzt.
Nach Layer filtern
Die Auswahl in der Liste Layers des Panels filtert die Platinenansicht so, dass Objekte auf dem angegebenen physischen Design-Layer angezeigt werden (Signal-, Masken- und Siebdruck-Layer). Alle gültigen Layerobjekte werden hervorgehoben, sofern dies nicht durch die Einstellungen in der Filterliste Object geändert wird.

Die Beispielplatine wird mit Object auf Pad. Layer gesetzt angezeigt, Top Layer.
Zum Filtern von Objekten nur auf dem aktuellen Layer wählen Sie den Eintrag <Active Layer>.
Gefilterte Objekte auswählen
Die vom Panel PCBLIB Filter bereitgestellte kombinierte Filteraktion unterstützt sowohl das Anzeigen als auch das Auswählen interessanter Platinen-Designobjekte.
Nur hervorgehobene (gefilterte) Objekte sind auswählbar, wodurch sich das Objekt leicht finden, bearbeiten und Informationen dazu abrufen lassen.
Filter löschen
Löschen Sie den aktuell angewendeten Filter mit der Schaltfläche Clear des Panels.
Beachten Sie, dass ein auf den Arbeitsbereich angewendeter Filter persistent ist und ausdrücklich zurückgesetzt oder durch einen anderen Auswahlmechanismus überschrieben werden muss, beispielsweise durch den des
PCB panel.
Visuelle Filterung festlegen
Das visuelle Ergebnis der auf das Dokument im Arbeitsbereich angewendeten Filterung wird durch eine Reihe von Hervorhebungsoptionen bestimmt. Der im Editorfenster angewendete Effekt kann auf Normal, Mask oder Dim gesetzt werden, wobei Mask in der Praxis den deutlichsten Hervorhebungseffekt hat.
Die Dropdown-Liste Normal / Mask / Dim bietet Optionen, um gefilterte und ungefilterte Objekte im Arbeitsbereich visuell voneinander abzuheben.

Wählen Sie den Typ der angewendeten visuellen Filterung über die Dropdown-Liste für den Maskierungsmodus aus.
Der visuelle Hervorhebungseffekt für jeden Maskierungsmodus:
-
Normal - gefilterte Objekte sind im Arbeitsbereich sichtbar und das Erscheinungsbild ungefilterter Objekte bleibt unverändert.
-
Mask - gefilterte Objekte werden im Arbeitsbereich hervorgehoben, während alle anderen Objekte monochrom dargestellt werden.
-
Dim - gefilterte Objekte werden im Arbeitsbereich hervorgehoben, während alle anderen Objekte ihre Farben behalten, aber abgeschattet werden.
Filterabfragen definieren
Im zentralen Bereich des Panels können Sie durch Eingabe logischer Abfragen Filter erstellen.
Sie können eine Abfrage direkt in das Feld eingeben; während der Eingabe erscheint zur Unterstützung eine Vorschlagsliste möglicher Schlüsselwörter.
Zur Unterstützung bei der Erstellung von Abfragen stehen zwei Funktionen zur Verfügung – der Query Helper und der Query Builder. Diese Hilfsmittel können sehr nützlich sein, wenn Sie sich bei der Syntax einer Abfrage oder bei möglichen Schlüsselwörtern, die Sie verwenden möchten, nicht sicher sind.
Query Helper
Um den Query Helper zu verwenden, klicken Sie auf die Schaltfläche Helper, um den Dialog Query Helper zu öffnen. Die zugrunde liegende Query Engine analysiert das Dokument und listet alle verfügbaren Objekte zusammen mit allgemeinen Schlüsselwörtern zur Verwendung in Abfragen auf.
Verwenden Sie den oberen Bereich des Dialogs, um einen Abfrageausdruck mithilfe der verfügbaren PCB Functions, PCB Object Lists und System Functions zusammenzustellen. Der mittlere Bereich des Dialogs stellt eine Reihe von Operatoren bereit, die beim Erstellen eines Ausdrucks verwendet werden können. Verwenden Sie die Schaltfläche Check Syntax, um zu prüfen, ob ein Ausdruck syntaktisch korrekt ist.
Wenn der Ausdruck für die Abfrage wie gewünscht definiert wurde, klicken Sie auf OK, um den zentralen Bereich des Panels PCBLIB Filter mit der Abfrage zu füllen, sodass der Filter angewendet werden kann.
Query Builder
Um den Query Builder zu verwenden, klicken Sie im Panel PCBLIB Filter auf die Schaltfläche Builder, um den Dialog Building Query from Board zu öffnen.
Mit diesem Dialog können Sie eine Abfrage erstellen, um bestimmte Objekte im Designdokument gezielt anzusprechen, indem Sie einfach eine Zeichenfolge aus mit AND und/oder OR verknüpften Bedingungen aufbauen.
Auf der linken Seite des Dialogs geben Sie die Bedingung(en) an, die erforderlich sind, um die gewünschte Objektmenge anzusprechen. Anfangs lautet der Eintrag in der Spalte Condition Type/Operator Add first condition. Klicken Sie einmal auf diesen Eintrag, um eine Dropdown-Liste mit Bedingungstypen zu öffnen.
Die aufgeführten Bedingungstypen spiegeln nur diejenigen wider, die für ein Platinen-Design relevant sind.
Wählen Sie die Bedingung aus und klicken Sie dann in die Spalte Condition Value, um auf eine Dropdown-Liste möglicher Werte für diesen Bedingungstyp zuzugreifen. Während Sie auf der linken Seite des Dialogs eine Bedingung definieren, wird auf der rechten Seite eine Vorschau der aktuell erstellten Abfrage angezeigt.
Fügen Sie nach Bedarf weitere Bedingungen hinzu, um die Zielmenge der Designobjekte weiter einzugrenzen. Bedingungen können mit AND oder OR verknüpft werden. Der standardmäßige logische Operator ist AND und wird automatisch eingefügt, wenn Sie eine weitere Bedingung hinzufügen.
Um den logischen Operator zwischen Bedingungen zu ändern, klicken Sie in der Spalte Condition Type/Operator auf den Eintrag AND oder OR und wählen dann den gewünschten Operator aus. Die Vorschau der Abfrage wird entsprechend aktualisiert.
Festlegen der Priorität
Mit den Schaltflächen
und
oben im Dialog Building Query from Board können Sie Klammern um die aktuell ausgewählte Bedingung hinzufügen oder entfernen (Einrückung vergrößern bzw. verkleinern). Dadurch können Sie eine Priorität für bestimmte logisch mit AND oder logisch mit OR verknüpfte Bedingungen festlegen.
Die erste Bedingung wurde auf den Bedingungstyp Exists on Layer mit dem Wert Top Layer gesetzt. Anschließend wurde eine weitere Bedingung mit dem Bedingungstyp Object Kind is und dem Wert Arc hinzugefügt.
Beachten Sie, dass das äußerste Klammerpaar automatisch durch Builder hinzugefügt wird und beim Erstellen des Abfrageausdrucks nicht angezeigt wird.
In diesem Stadium wurde bei ausgewählter zweiter Bedingung im Dialog auf die Schaltfläche mit dem Rechtspfeil geklickt. Um die zweite Bedingung wurden automatisch Klammern gesetzt, und nun besteht die Möglichkeit, innerhalb dieses Klammerpaares eine Bedingung hinzuzufügen.
Die dritte Bedingung mit dem Bedingungstyp In Any Polygon wird dann innerhalb der Klammern hinzugefügt.
Verwenden Sie die Dropdown-Liste Show All Levels oben links im Dialog, um die visuelle Darstellung der Ebenen in Ihrer strukturierten Zeichenfolge von Bedingungen zu steuern. Dadurch wird im Wesentlichen die Anzeige von Klammern ein- bzw. ausgeblendet. Das Hinzufügen von Klammern erzeugt effektiv eine neue Ebene. Sie können die Ebenen 1–5 anzeigen; für weitere hinzugefügte Ebenen verwenden Sie die Option Show All Levels.
Alternativ klicken Sie auf die Symbole zum Erweitern bzw. Reduzieren, die einer geklammerten Bedingung zugeordnet sind, um die nächste(n) Ebene(n) anzuzeigen oder die aktuelle Ebene (und alle darunterliegenden Ebenen) auszublenden. Die Schaltflächen
und
oben im Dialog können ebenfalls verwendet werden, um die aktuell ausgewählte Bedingung zu erweitern oder zu reduzieren.
Verwenden Sie die Schaltflächen
und
oben im Dialog, um eine ausgewählte Bedingung in der gerade erstellten Abfragezeichenfolge zu verschieben. Bei einer Bedingung mit Unterebenen (d. h. einer geklammerten Bedingung) kann jede Bedingung in der Ebenenstruktur verschoben werden. Wenn Ebenen erweitert sind, kann eine Bedingung durch die Ebenen nach unten oder oben verschoben werden. Wenn Ebenen reduziert sind, wird eine Bedingung über die Ebenenstruktur hinweg verschoben.
Um eine Bedingung zu löschen, wählen Sie sie aus und klicken entweder auf die Schaltfläche
oben im Dialog oder verwenden die Taste Delete.
Wenn der Ausdruck für die Abfrage wie gewünscht definiert wurde, klicken Sie auf OK, um den mittleren Bereich des Fensters PCBLIB Filter mit der Abfrage zu laden, sodass der Filter angewendet werden kann.
Erstellen von Design Rules
Das Fenster PCBLIB Filter bietet auch die Möglichkeit, eine Design Rule zu erstellen. Ihr Geltungsbereich verwendet den aktuell im mittleren Bereich des Fensters definierten Abfrageausdruck.
Um eine neue Design Rule hinzuzufügen, klicken Sie im Fenster PCBLIB Filter auf die Schaltfläche Create Rule. Der Dialog Choose Design Rule Type wird geöffnet.
Dieser Dialog listet alle Regelkategorien und Regeltypen auf, die im PCB-Dokument verfügbar sind. Wählen Sie den Regeltyp aus, den Sie erstellen möchten, und klicken Sie dann auf OK (oder doppelklicken Sie direkt auf den Eintrag). Der Dialog PCB Rules and Constraints Editor wird geöffnet.
Der Name der neu erstellten Regel ist im Navigationsbaum auf der linken Seite ausgewählt zu sehen. Der Regel-Abfrageausdruck befindet sich im oberen rechten Bereich des Dialogs.
Eine Regel des gewählten Typs wird erstellt und das Hauptbearbeitungsfenster für die Regel wird angezeigt, sodass Sie spezifische Einschränkungen für die Regel definieren können. Der Abfrageausdruck aus dem Fenster PCBLIB Filter wird in den Bereich Full Query des Dialogs eingetragen. Verfeinern Sie die Konfigurationseinstellungen der Regel nach Bedarf und übernehmen Sie die neue Regel.
Anwenden und Löschen des Filters
Nachdem Sie die Abfrage definiert und die Optionen im Fenster wie gewünscht eingerichtet haben, kann der Filter angewendet werden – entweder durch Klicken auf die Schaltfläche Apply im Fenster oder durch Drücken von Enter.
Um den aktuell angewendeten Filter innerhalb des Fensters zu löschen, löschen Sie den Abfrageausdruck im mittleren Bereich des Fensters (markieren und entfernen) und klicken dann entweder auf die Schaltfläche Apply oder drücken Enter. Alle Objekte im Design-Arbeitsbereich werden wieder vollständig sichtbar und stehen zur Auswahl/Bearbeitung zur Verfügung.
Rechtsklick-Menüs
Klicken Sie mit der rechten Maustaste innerhalb des Fensters PCBLIB Filter, um über Kontextmenüs auf zusätzliche Optionen und Befehle zuzugreifen.
Ein Rechtsklick im Bereich Object oder Layer des Fensters öffnet die folgenden Kontextmenüoptionen:
-
Toggle Check - aktivieren, um Optionen umzuschalten. Aktuell ausgewählte Optionen werden abgewählt, während nicht ausgewählte Optionen ausgewählt werden.
-
Check All - aktivieren, um alle verfügbaren Optionen auszuwählen.
-
Uncheck All - aktivieren, um die Auswahl aller verfügbaren Optionen aufzuheben.
Hinweise
Allgemein
-
Durch Drücken der Taste F12 wird die Sichtbarkeit des Fensters im Arbeitsbereich umgeschaltet.
-
Der Query Builder (Dialog Building Query from Board) bietet eine einfache Methode zum Erstellen einer Abfrage unter Verwendung kontextsensitiver Bedingungstypen und Werte, sodass Sie nur mit relevanten „Bausteinen“ arbeiten können. Für die erweiterte Erstellung von Abfragen mit vollständiger Schlüsselwortspezifikation und Operatorsyntax verwenden Sie den Dialog Query Helper.
-
Da die Anzeigeoptionen für Objekte, die den angewendeten Filter bestehen bzw. nicht bestehen, getrennt sind, können Sie effektiv neue Filterabfragen anwenden, um auf den Ergebnissen vorheriger Filterungen aufzubauen.
Beim Erstellen von Abfrageausdrücken
-
Es wird dringend empfohlen, Klammern zu verwenden, sobald auch nur die Möglichkeit besteht, dass die Abfrage nicht korrekt interpretiert werden könnte.
-
Klammern haben die höchste Priorität innerhalb einer festgelegten Rangfolge für die verschiedenen bereitgestellten Operatoren, die bestimmt, wie Abfragen von der Software interpretiert werden (wenn der Benutzer keine Klammern angegeben hat). Die Reihenfolge dieser Priorität ist wie folgt:
Brackets
Not
^, *, /, Div, Mod, And
+, -, Or, Xor
=, <>, <, >, <=, >=
&&, ||
Diese Prioritätsreihenfolge ähnelt der in Pascal-ähnlichen Sprachen verwendeten. Eine großzügige Verwendung von Klammern beseitigt jedoch Zweifel und macht die resultierenden Abfragen für andere leichter lesbar.
-
Mehrdeutigkeiten werden durch Auswertung von links nach rechts aufgelöst.
-
Klammern werden von innen nach außen ausgewertet, und gleichrangige Ebenen werden von links nach rechts abgearbeitet.
Die Abfragesprache wird auch im Dialog PCB Rules and Constraints Editor verwendet, um Geltungsbereiche von Design Rules zu definieren (weitere Informationen finden Sie auf der Seite Defining, Scoping & Managing PCB Design Rules). Beachten Sie, dass die Menge der von einer Design Rule erfassten Objekte nicht nur von der Abfrage, sondern auch vom Regeltyp abhängt (zum Beispiel erfasst eine Width-Regel nur Leiterbahnen, eine Routing Via Style-Regel nur Vias usw.), sodass die Ergebnisse beim Hervorheben/Zuordnen von Objekten bei Verwendung desselben Abfrageausdrucks im Fenster Filter und im Regel-Geltungsbereich unterschiedlich sein können.
Wo sind die Abfrageergebnisse?
Nachdem Sie nun eine Abfrage im Fenster Filter geschrieben haben, wie greifen Sie auf die von Ihrer Abfrage zurückgegebenen Objekte zu? Es gibt zwei Möglichkeiten, wie auf Objekte in der Altium Designer-Umgebung zugegriffen und sie bearbeitet werden können.
-
Grafisch – nach dem Anwenden eines Filters besteht das Standardverhalten darin, alle Objekte, die die Abfrage nicht bestanden haben, zu maskieren (auszublenden bzw. zu verblassen und nicht bearbeitbar zu machen), sodass nur diejenigen übrig bleiben, die bestanden haben. Dieser Modus eignet sich hervorragend zum Auffinden und Überprüfen von Objekten im Arbeitsbereich. Da die maskierten Objekte nicht bearbeitbar sind, gelten Befehle wie Ctrl+A (alles auswählen) nur für die von der Abfrage zurückgegebenen Objekte.
-
List Fenster - das Fenster List (Shift+F12) ist eine tabellenähnliche Ansicht Ihrer Designdaten. Standardmäßig werden alle Designobjekte angezeigt; sobald jedoch ein Filter angewendet wurde, werden nur noch die von der Abfrage zurückgegebenen Objekte angezeigt. Das Fenster List verfügt über standardmäßige tabellenähnliche Funktionen zum Sortieren und Auswählen, sodass Sie einzelne oder mehrere Zellen direkt bearbeiten können.
Das Fenster PCB List und das Fenster SCH List zeigen die Ergebnisse der PSB/SCH-Abfragen aus dem vorherigen Abschnitt an.
Hervorhebungsoptionen
Immer wenn eine Abfrage angewendet wird (oder die Datenfilterfunktion anderweitig verwendet wird), wird jedes Objekt im Zieldokument Mitglied der Ergebnisse dieser Filteraktion. Wie die Objekte in den Ergebnissen und die Objekte, die nicht in den Ergebnissen enthalten sind, anschließend angezeigt werden, hängt jedoch von den im Fenster Filter ausgewählten Hervorhebungsoptionen ab. Es stehen drei verschiedene Hervorhebungsoptionen zur Verfügung, und diese Optionen sind vollständig unabhängig voneinander, sodass Sie eine, zwei oder alle auswählen können.
Zoom
Wenn die Option Zoom beim Anwenden der Abfrage aktiviert ist, wird die Ansicht des Zieldokuments aktualisiert, um den Bereich anzuzeigen, der von allen Objekten eingenommen wird, die in den Ergebnissen enthalten sind. Ob jedes verbleibende Objekt in der aktualisierten Ansicht angezeigt wird oder nicht, hängt von seiner Position relativ zu diesem Bereich ab; daher kann jedes dieser Objekte vollständig angezeigt, teilweise angezeigt oder überhaupt nicht angezeigt werden.
Diese Option wird häufig zusammen mit einer oder beiden der anderen Optionen ausgewählt. Wenn die Mask Option nicht aktiviert wurde, werden Objekte, die nicht in den Ergebnissen enthalten sind, in der grafischen Ansicht dennoch angezeigt, wenn sie sich innerhalb der aktualisierten Grenzen befinden. Auf den ersten Blick mag es sinnlos erscheinen, diese Option allein auszuwählen, aber es kann Situationen geben, in denen Sie die grafische Ansicht so aktualisieren möchten, dass sie bestimmte Objekte umfasst, ohne dabei den Auswahlstatus oder den Maskierungsstatus irgendeines Objekts im Dokument zu ändern.
Auswählen
Wenn die Select Option aktiviert ist, befinden sich alle Objekte, die in den Ergebnissen enthalten sind, im ausgewählten Zustand, während alle übrigen Objekte nicht ausgewählt sind. Ausgewählte Objekte werden deutlicher dargestellt als nicht ausgewählte Objekte.
Wenn die Option Auswählen ausgewählt ist, wenn die aktuelle Abfrage angewendet wird, erhalten anschließend alle Objekte, die Mitglieder der Ergebnismenge sind, den Status „ausgewählt“, während alle übrigen Objekte (die keine Mitglieder der Ergebnismenge sind) stattdessen den Status „nicht ausgewählt“ erhalten. Diese Option wird typischerweise unmittelbar vor globalen Bearbeitungsvorgängen ausgewählt, da zu diesem Zeitpunkt nur die Eigenschaften der aktuell ausgewählten Objekte aktualisiert werden. Es gibt jedoch auch andere Situationen, in denen die Option Auswählen nützlich sein kann, etwa wenn bestimmte Objekte verschoben, kopiert oder gelöscht werden sollen.
Maskieren
Die Mask Hervorhebungsoption bestimmt die aktualisierte Maskierungseigenschaft von Objekten im Zieldokument. Wenn sie ausgewählt ist, werden alle Objekte, die in den Ergebnissen enthalten sind, maskiert, während alle übrigen Objekte nicht maskiert werden. Der wichtigste Aspekt maskierter Objekte ist, dass sie und ihre Eigenschaften nicht bearbeitet werden können. (Maskierte Objekte werden in der Listenansicht abgeblendet dargestellt, werden dort jedoch nicht angezeigt, sofern die all objects Option im List Bereich derzeit nicht ausgewählt ist.) Der wichtigste Aspekt maskierter Objekte ist, dass das Objekt und seine Eigenschaften nicht bearbeitet werden können.
Der Query Builder
Der PCB-Editor enthält einen eigenen Query BuilderDialog. Dieser Dialog ermöglicht es Ihnen, komplexe Abfragen zu erstellen, indem Sie Testbedingungen aus Dropdown-Listen auswählen. Ein Vorteil des Query Builder besteht darin, dass Sie damit eine Abfrage erstellen können, die auf verschiedene Arten von Objekten abzielt.
Der Dialog „Building Query“ (Teil der Funktion „Query Builder“) unterstützt Anwender mit weniger Erfahrung beim Definieren von Abfragen; es wird automatisch eine Abfrage erzeugt, deren Inhalt den vom Designer angegebenen Bedingungen entspricht.
Der linke Bereich dieses Dialogs enthält Steuerelemente, deren Zweck darin besteht, den Designer bei der Aufgabe zu unterstützen, festzulegen, welche Eigenschaften für jedes Objekt des Dokuments erforderlich sind, damit es von der durch diesen Dialog erzeugten Abfrage zurückgegeben wird. Jedes Mal, wenn eine dieser Bedingungen festgelegt oder bearbeitet wird, wird der Inhalt der entsprechenden Abfrage aktualisiert und im rechten Bereich des Dialogs angezeigt. Wenn dieser Dialog dann durch Klicken auf die Schaltfläche OK (oder Apply) geschlossen wird, wird entweder die zugehörige Abfrage angewendet oder ihr Inhalt wird zurück in den Filter-Bereich kopiert (je nachdem, wie dieser Dialog ursprünglich aufgerufen wurde).
Der Query BuilderDialog kann an den folgenden Stellen geöffnet werden (wie im Bild unten gezeigt):
-
Vom PCB FilterBereich aus klicken Sie auf die Schaltfläche Query Builder , um eine Abfrage zu erstellen und die Zeichenfolge in den Bereich zu laden.
-
Im Dialog PCB Rules and Constraints Editor klicken Sie auf die Schaltfläche Builder , um eine Abfrage zu erstellen, die definiert, auf welche Objekte diese Regel angewendet wird.
Wenn der Query Builder Dialog aus dem PCB Rules and Constraints Editor Dialog aufgerufen wird, werden nur Optionen angezeigt, die für diese Regelart geeignet sind.
Das Bild unten zeigt den Query BuilderDialog bei der Erstellung einer Abfrage, die sowohl Pads als auch Vias im 5V-Netz anspricht.

Der Query BuilderDialog
Options and Controls of the Query Builder Dialog
-
Show All Levels - verwenden Sie das Dropdown-Menü, um die visuelle Darstellung der Ebenen in der strukturierten Zeichenfolge von Bedingungen zu steuern. Dadurch wird im Wesentlichen die Anzeige von Klammern erweitert/reduziert. Das Hinzufügen von Klammern erzeugt eine neue Ebene, und Sie können die Ebenen 1–5 anzeigen. Alternativ klicken Sie auf die Symbole zum Erweitern (
) oder Reduzieren (
), um die nächste(n) Ebene(n) anzuzeigen bzw. die aktuelle Ebene (und alle darunterliegenden Ebenen) auszublenden.
-
- verwenden Sie dies, um Klammern um die aktuell ausgewählte Bedingung zu entfernen (Einzug verringern). Dadurch können Sie eine Priorität für bestimmte logisch mit AND oder logisch mit OR verknüpfte Bedingungen festlegen.
-
- verwenden Sie dies, um Klammern um die aktuell ausgewählte Bedingung hinzuzufügen (Einzug vergrößern). Dadurch können Sie eine Priorität für bestimmte logisch mit AND oder logisch mit OR verknüpfte Bedingungen festlegen.
-
- zum Verschieben einer ausgewählten Bedingung nach oben in der gerade erstellten Abfragezeichenfolge. Bei einer Bedingung mit Unterebenen (d. h. einer geklammerten Bedingung) kann jede Bedingung in der Ebenenstruktur verschoben werden. Wenn Ebenen erweitert sind, kann eine Bedingung durch die Ebenen nach oben verschoben werden. Wenn Ebenen reduziert sind, wird eine Bedingung über die Ebenenstruktur hinweg verschoben.
-
- zum Verschieben einer ausgewählten Bedingung nach unten in der gerade erstellten Abfragezeichenfolge. Bei einer Bedingung mit Unterebenen (d. h. einer geklammerten Bedingung) kann jede Bedingung in der Ebenenstruktur verschoben werden. Wenn Ebenen erweitert sind, kann eine Bedingung durch die Ebenen nach unten verschoben werden. Wenn Ebenen reduziert sind, wird eine Bedingung über die Ebenenstruktur hinweg verschoben.
-
- verwenden Sie dies, um Symbole zu erweitern und die nächste(n) Ebene(n) anzuzeigen.
-
- verwenden Sie dies, um Symbole zu reduzieren und die aktuelle Ebene (und alle darunterliegenden Ebenen) auszublenden.
-
- verwenden Sie dies, um die ausgewählte Bedingung zu löschen.
-
Condition Type/Operator - verwenden Sie diesen Bereich, um die Bedingung(en) festzulegen, die erforderlich sind, um die benötigte Menge an Zielobjekten zu bestimmen. Anfangs lautet der Eintrag in der Condition Type/Operator Spalte Add first condition. Klicken Sie einmal auf diesen Eintrag, um eine Dropdown-Liste mit Bedingungstypen zu öffnen. Die Liste ist davon abhängig, von wo aus der Dialog geöffnet wurde. Wenn Sie eine Abfrage für eine bestimmte Designregel im PCB Rules And Constraints Editor Dialog erstellen, enthält die Bedingungsliste nur Bedingungstypen, die für genau diesen Regeltyp möglich sind.
-
Condition Value - wählen Sie die erste Bedingung und klicken Sie dann in die Condition Value Spalte, um auf eine Dropdown-Liste möglicher Werte für diesen Bedingungstyp zuzugreifen. Während Sie eine Bedingung definieren, wird im Bereich Query Preview eine Vorschau der aktuell erstellten Abfrage angezeigt.
-
Fügen Sie nach Bedarf weitere Bedingungen hinzu, um Ihre Zielmenge an Designobjekten weiter einzugrenzen. Bedingungen können mit AND oder OR verknüpft werden. Der standardmäßige logische Operator ist AND.
-
Um den logischen Operator zwischen Bedingungen zu ändern, klicken Sie auf den Eintrag AND oder OR in der Condition Type/Operator Spalte und wählen dann den gewünschten Operator aus. Die Vorschau der Abfrage wird entsprechend aktualisiert.
-
Der Query Builder Dialog (Building Query from Board ) ist eine einfachere Methode zum Erstellen einer Abfrage unter Verwendung kontextsensitiver Bedingungstypen und Werte, mit denen Sie nur aus relevanten „Bausteinen“ aufbauen können. Für die erweiterte Erstellung von Abfragen mit vollständiger Schlüsselwortspezifikation und Operatorsyntax verwenden Sie den Dialog Query Helper.
-
Sie können jede Bedingung in Ihrer Abfragezeichenfolge jederzeit anpassen, indem Sie auf den Eintrag für diese Bedingung in der Condition Type/Operator Spalte klicken und dann die gewünschte neue Bedingung aus den verfügbaren Einträgen in der Dropdown-Liste auswählen. Die Vorschau der Abfrage wird entsprechend aktualisiert.
-
Verwenden Sie die Tastenkombinationen Ctrl+Up Arrow und Ctrl+Down Arrow , um den ausgewählten Bedingungseintrag in der Struktur nach oben oder unten zu verschieben.
-
Verwenden Sie die Tastenkombinationen Ctrl+Right Arrow und Ctrl+Left Arrow , um den Einzug an der ausgewählten Position in der Struktur zu vergrößern oder zu verkleinern (Klammern hinzufügen/entfernen).
Der Query Helper
Der nächste Schritt beim Ausbau Ihrer Fähigkeiten zum Schreiben von Abfragen ist die Verwendung des Query Helper Dialogs. Der Query Helper Dialog enthält ein Query Feld, in das Sie die gewünschte Abfrage eingeben können. Zusätzlich können Sie die Syntax-Schaltflächen unter dem Query Feld (z. B. And, Or, <, Not, Like usw.) sowie eine vollständige Liste aller Abfrage-Schlüsselwörter im Categories Feld verwenden.
Der Dialog „Query Helper“ unterstützt Designer, die ihre eigenen Abfragen definieren möchten. Für jedes aufgeführte Schlüsselwort wird eine kurze Beschreibung bereitgestellt. Die Online-Hilfe kann jedoch durch Drücken der Taste F1 aufgerufen werden, während ein Schlüsselwort markiert ist. Dadurch wird der Dialog der Altium Designer Documentation Library geöffnet, der Details dazu liefert, welche Objekte innerhalb eines Dokuments durch das markierte Schlüsselwort zurückgegeben werden, wie dieses Schlüsselwort verwendet wird und ein oder mehrere Beispiele für seine Verwendung.
Der Dialog kann auf folgende Weise aufgerufen werden:
-
Klicken Sie auf die Schaltfläche Helper im Filter Bereich.
PCB Filter Bereichszugriff
SCH Filter Bereichszugriff
-
Im Dialog File-based Libraries Search (aufgerufen durch Klicken auf
in der oberen rechten Ecke des Components-Bereichs und anschließendes Auswählen von File-based Libraries Search aus dem Dropdown-Menü) klicken Sie auf die Schaltfläche Helper .
Die Schaltfläche Helper ist verfügbar, nachdem Sie im Dialog File-based Libraries Search auf Advanced geklickt haben.
File-based Libraries SearchDialogzugriff
Verwenden Sie den Abschnitt Query oben im Dialog, um mithilfe der verfügbaren Funktionen einen Suchausdruck zu erstellen. Im Textfeld können Sie den Suchausdruck überprüfen und/oder weiter bearbeiten. Geben Sie zum Bearbeiten des Suchausdrucks direkt in das Textfeld ein. Um nach bestimmten Schlüsselwörtern zu suchen, die hinzugefügt werden sollen, beginnen Sie mit der Eingabe. Während der Eingabe bietet der Dialog ein Dropdown-Menü mit verfügbaren Schlüsselwörtern an, die dem bisher eingegebenen Text entsprechen. Klicken Sie auf ein Schlüsselwort, um Ihre Auswahl automatisch zu vervollständigen. Wenn das gewünschte Schlüsselwort markiert ist, vervollständigt auch das Drücken von Enter Ihre Auswahl automatisch.
Durchsuchen Sie die Categories der verfügbaren Schlüsselwörter nach dem gewünschten Eintrag. Verwenden Sie das Feld Mask, wenn Sie sich über das genaue Schlüsselwort nicht sicher sind. Wenn Sie beispielsweise im Query Helper des Schaltplaneditors im Feld Mask den Begriff *har eingeben, werden Schlüsselwörter gefunden, die speziell für Kabelbäume gelten, wie im Bild unten gezeigt. Beachten Sie, dass das Feld Mask sowohl auf das Feld Name für Schlüsselwörter als auch auf das Feld Description wirkt und daher der schnellste Weg sein kann, mögliche Schlüsselwörter zu finden.
Wenn Sie F1 drücken, während ein Schlüsselwort markiert ist oder sich der Cursor innerhalb eines von Ihnen eingegebenen Schlüsselworts befindet, wird die Dokumentation für dieses Schlüsselwort geöffnet. Dies ist die wertvollste Ressource, um das grundlegende Verhalten jedes Abfrage-Schlüsselworts kennenzulernen.
Doppelklicken Sie auf ein Schlüsselwort im Raster, um es an der aktuellen Cursorposition zur Abfrage hinzuzufügen.
Der mittlere Bereich des Dialogs enthält Syntaxschaltflächen, die eine Reihe von Operatoren für die Erstellung eines Ausdrucks bereitstellen. Weitere Informationen zur jeweiligen Funktion jeder Syntaxschaltfläche finden Sie im Abschnitt Logical Query Expression Operators weiter unten. Verwenden Sie die Schaltfläche Check Syntax (unten links im Dialog), um zu überprüfen, ob ein Ausdruck syntaktisch korrekt ist.
Frühere Abfragen
Wenn Sie in einem Filterfenster (SCH Filter / SCHLIB Filter, PCB Filter / PCBLIB Filter) eine neue Abfrage eingeben und anwenden, wird sie einer Abfrageverlaufsliste hinzugefügt. Klicken Sie auf die Schaltfläche History im Fenster, um auf diese Liste zuzugreifen. Der Dialog Expression Manager wird mit aktivierter Registerkarte History geöffnet.
Die Registerkarte History des Dialogs Expression Manager enthält eine Liste von Abfrageausdrücken, die in der Vergangenheit verwendet wurden. Hier wird ein Beispiel früherer Abfragen für den Schaltplan gezeigt. Bewegen Sie den Mauszeiger über das Bild, um eine ähnliche Beispielliste für die PCB zu sehen.
Um eine frühere Abfrage aus der Liste zu verwenden, wählen Sie entweder den entsprechenden Eintrag aus und klicken auf die Schaltfläche Apply Expression, oder doppelklicken Sie direkt auf den Eintrag. Der Dialog wird geschlossen und der Ausdruck für die Abfrage wird in den mittleren Bereich des entsprechenden Filterfensters geladen.
Eine frühere Abfrage kann der Liste der bevorzugten Abfragen hinzugefügt werden, indem Sie ihren Eintrag auswählen und auf die Schaltfläche Add To Favorites klicken. Verwenden Sie die Schaltfläche Clear History, wenn Sie die Verlaufsliste „leeren“ möchten.
Bis zu neun der zuletzt verwendeten Abfrageausdrücke aus der Liste stehen im Rechtsklick-Untermenü History des Filterfensters zur Verfügung.
Beachten Sie, dass der Inhalt der Liste History für die Filterfenster in einer Design-Domäne gemeinsam ist (und von dort aus zugänglich ist) (SCH Filter / SCHLIB Filter in der Schaltplan-Bearbeitungsdomäne; PCB Filter / PCBLIB Filter in der PCB-Bearbeitungsdomäne). Einige Abfrageausdrücke liefern bei Verwendung im Schaltplaneditor möglicherweise keine Ergebnisse, insbesondere wenn sie für Objekte erstellt wurden, die nur im Schaltplanbibliothekseditor verfügbar sind.
Bevorzugte Abfragen
Jede definierte Abfrage kann auf zwei Arten zu einer Liste bevorzugter Abfragen hinzugefügt werden:
-
Klicken Sie auf die Schaltfläche Add To Favorites oder klicken Sie mit der rechten Maustaste in den Hauptbereich Query Expression und wählen Sie im Kontextmenü den Befehl Add to Favorites, um den aktuell im mittleren Bereich des aktiven Filterfensters definierten Abfrageausdruck hinzuzufügen.
-
Wählen Sie auf der Registerkarte History des Dialogs Expression Manager einen Eintrag aus den früheren Abfragen aus und klicken Sie dann auf die Schaltfläche Add To Favorites.
Bevorzugte Abfrageausdrücke werden auf der Registerkarte Favorites des Dialogs Expression Manager gespeichert und verwaltet. Der Zugriff erfolgt über die Schaltfläche Favorites in einem Filterfenster (SCH Filter / SCHLIB Filter, PCB Filter / PCBLIB Filter) oder durch Rechtsklick im Hauptbereich Query Expression eines Filterfensters und Auswahl des Befehls Organize Favorites im Kontextmenü. Aus dem Designbereich heraus kann auf den Dialog mit der Tastenkombination Y zugegriffen werden; wählen Sie anschließend Organize Favorites aus dem eingeblendeten Filtermenü.
Greifen Sie über das Filterfenster des Editors oder über den Designbereich mithilfe des eingeblendeten Filtermenüs auf eine Liste Ihrer bevorzugten Abfragen zu.
Wenn ein Abfrageausdruck zur Liste Favorites hinzugefügt wird, erhält er einen eindeutigen Namen. Standardmäßig wird ein generischer Name vergeben – Favorite_n –, wobei n die nächste verfügbare unbenutzte Nummer ist. Der Name eines Eintrags kann jederzeit mit einer der folgenden Methoden geändert werden:
-
Den Abfrageeintrag auswählen und dann auf die Schaltfläche Rename klicken.
-
Den Abfrageeintrag auswählen und dann im Rechtsklick-Menü den Befehl Edit wählen.
-
Den Abfrageeintrag auswählen und dann erneut innerhalb des Felds Name klicken.
Geben Sie in jedem Fall den neuen Namen wie gewünscht ein und klicken Sie dann außerhalb des Felds Name, um die Änderung zu übernehmen.
Um einen bevorzugten Abfrageausdruck zu bearbeiten, wählen Sie seinen Eintrag in der Liste aus und klicken dann auf die Schaltfläche Edit (oder klicken Sie mit der rechten Maustaste und wählen Sie Edit aus dem Kontextmenü). Der Dialog Edit Favorite wird geöffnet. Verwenden Sie den Dialog, um den Namen des Favoriten zu ändern, den Ausdruck selbst anzupassen und außerdem festzulegen, wie Designobjekte behandelt werden (sowohl diejenigen, die den Filter passieren, als auch diejenigen, die ihn nicht passieren).
Ändern Sie eine vorhandene bevorzugte Abfrage mit dem Dialog Edit Favorite, hier gezeigt für Schaltplan (links) und PCB (rechts).
Um eine Abfrage aus der Liste Favorites zu entfernen, wählen Sie ihren Eintrag in der Liste aus und klicken dann entweder auf die Schaltfläche Remove oder wählen Sie den Befehl Remove aus dem Rechtsklick-Menü. Es erscheint ein Dialog, der eine Bestätigung für das Entfernen anfordert.
Beachten Sie, dass der Inhalt der Liste Favorites für die Filterfenster in einer Design-Domäne gemeinsam ist (und von dort aus zugänglich ist) (SCH Filter / SCHLIB Filter in der Schaltplan-Bearbeitungsdomäne; PCB Filter / PCBLIB Filter in der PCB-Bearbeitungsdomäne). Einige Abfrageausdrücke liefern bei Verwendung im Schaltplaneditor möglicherweise keine Ergebnisse, insbesondere wenn sie für Objekte erstellt wurden, die nur im Schaltplanbibliothekseditor verfügbar sind.
Verwenden bevorzugter Abfragen
Es gibt drei Möglichkeiten, Ihre bevorzugten Abfragen zu verwenden:
-
Über die Registerkarte Favorites des Dialogs Expression Manager – wählen Sie entweder den Eintrag aus und klicken Sie dann auf die Schaltfläche Apply Expression, oder doppelklicken Sie auf den Eintrag. Der Dialog wird geschlossen und der Ausdruck für die Abfrage wird in den mittleren Bereich des entsprechenden Filterfensters geladen.
-
Über den oberen Bereich des Rechtsklick-Menüs des Filterfensters (bis zu zehn der zuletzt zur Liste Favorites hinzugefügten Abfrageausdrücke sind verfügbar).
-
Über das eingeblendete Filtermenü des Designbereichs (drücken Sie Y) – bis zu zehn bevorzugte Abfrageausdrücke werden oben im Menü aufgeführt. Der ausgewählte Abfrageausdruck wird in den mittleren Bereich des entsprechenden Filterfensters geladen.
Sie können auch eine Tastenkombination für einen Favoriten definieren, indem Sie das Menü Filter anpassen. Weitere Informationen zum Konfigurieren und Anpassen der Altium Designer-Umgebung finden Sie unter
Configuring and Customizing Altium Designer.
Verwenden vorkonfigurierter Beispiele
Sowohl der Schaltplaneditor als auch der PCB-Editor verfügen über einen Satz vorkonfigurierter Beispielabfragen. Diese Beispiele sind über das Filtermenü verfügbar – entweder durch Rechtsklick im Ausdrucksbereich des Filterfensters oder durch Verwendung der Tastenkombination Y im Designbereich. Bewegen Sie den Mauszeiger über Examples, um das Untermenü anzuzeigen.
Wenn Sie einen Eintrag im Untermenü auswählen, wird die Abfrage hinter diesem Filter angewendet. Um die tatsächliche Abfrage hinter einem der Beispiele anzuzeigen, sehen Sie nach dem Anwenden in der Liste History nach. Sie können auf diese Liste auch im eingeblendeten Filtermenü zugreifen.
Um die Filterung zu löschen, drücken Sie im Designbereich
Shift+C oder klicken Sie mit der rechten Maustaste in den Designbereich und wählen Sie im Kontextmenü den Befehl
Clear Filter.
Werkzeuge zum Erstellen von Abfragen
Der vielleicht einfachste Weg, eine Abfrage zu schreiben, besteht darin, Altium Designer sie für Sie schreiben zu lassen! Sie können dies entweder mit dem Dialog Find Similar Objects oder dem Dialog Query Builder tun.
Dialog „Find Similar Objects“
Wenn Sie den Dialog Find Similar Objects dialog verwenden, erzeugt er eine Abfrage, um die gewünschten Objekte zu finden. Wenn die Option Create Expression aktiviert ist, wird diese Abfrage im Fenster Filter angezeigt. Dies ist eine hervorragende Methode, um verschiedene Abfrage-Schlüsselwörter kennenzulernen.
Der Dialog Find Similar Objects wird geöffnet, wenn Sie mit der rechten Maustaste auf ein beliebiges nicht maskiertes Objekt in Ihrem Designdokument klicken und dann im Kontextmenü Find Similar Objects auswählen.
Linkes Bild: PCB-Version; rechtes Bild: SCH-Version
Dieser Dialog ermöglicht es Ihnen, Objekte zu finden, die dem Objekt ähneln, auf das Sie mit der rechten Maustaste geklickt haben, und anschließend festzulegen, welche Attribute des Objekts für eine Übereinstimmung gleich (oder unterschiedlich) sein müssen. Angenommen, Sie möchten alle GND-Pads in Ihrem Design ändern. Sie könnten mit der rechten Maustaste auf ein solches Pad klicken, Find Similar Objects wählen und dann das Feld Net von Any (die Standardeinstellung) auf Same ändern. Alle GND-Pads werden ausgewählt, wenn Sie im Dialog auf Apply klicken. Wenn die Option Create Expression aktiviert ist, wird die folgende Abfrage im Bereich Filter angezeigt: (ObjectKind = 'Pad') And (Net = 'GND').
Als Beispiel aus einem Schaltplan können Sie die Eigenschaft Color aller Power Objects mit einer bestimmten Text-Eigenschaft (z. B. „GND“) innerhalb eines Dokuments auf denselben Wert ändern. In einem PCB können Sie beispielsweise die Eigenschaft Hole Size aller Vias mit einer bestimmten Eigenschaft Via Diameter innerhalb eines Dokuments auf denselben Wert ändern.
Option „Vorhandene löschen“
Aktivieren Sie die Option Clear Existing , um vor dem Anwenden der Suche eine vorhandene Auswahl oder Bearbeitungsmaske zu löschen. Deaktivieren Sie diese Option, wenn Sie aufeinanderfolgende Suchen durchführen und es wünschenswert ist, dass sich die Ergebnisse ansammeln.
Filter-Symbolleiste
Die Filter Toolbar steht für PCB-Dokumente zur Verfügung und ermöglicht es Ihnen, alle Objekte innerhalb eines Dokuments zu maskieren, außer denen mit einer angegebenen Eigenschaft oder denen, die Teil einer angegebenen Komponente sind. Das Feld ganz rechts in der Symbolleiste dient zur Angabe des Inhalts einer Abfrage. Sie können die Abfrage in das Feld eingeben oder über die Dropdown-Liste eine der zuletzt verwendeten Abfragen auswählen (eine, die in der Abfrage-History Liste vorhanden ist). Es ist nicht möglich festzulegen, welche Optionen verwendet werden sollen, wenn Abfragen aus dem Filter Toolbar angewendet werden; in allen Fällen wird jede vorherige Abfrage gelöscht, und anschließend werden die Optionen Mask und Zoom mit der aktuellen Abfrage verwendet. Um Abfrageoptionen zu verwenden, nutzen Sie den Bereich Filter , den Dialog Query Builder, den Dialog Query Helper oder den Dialog Find Similar Objects .
-
Wenn die Platine ungeroutet ist, werden die logischen Verbindungen, die dem gewählten Netz zugeordnet sind, sichtbar, wenn der Filter angewendet wird. Wenn die Platine geroutet ist, wird die geroutete Leiterbahn, die dem gewählten Netz zugeordnet ist, sichtbar, wenn der Filter angewendet wird.
-
Bei angewendeter Maskierung stehen alle Objekte außerhalb des Filterbereichs nicht zur Auswahl/Bearbeitung zur Verfügung. Der Umfang der angewendeten Maskierung kann manuell über den Schieberegler Masked Objects angepasst werden, auf den im Abschnitt Mask and Dim Settings auf der Registerkarte View Options des Bereichs View Configuration panel zugegriffen wird.
-
Sie können einen vorhandenen (und angewendeten) Filter jederzeit manuell löschen, indem Sie die Tastenkombination Shift+C verwenden oder auf die Schaltfläche
in der Symbolleiste Filter klicken.
Operatoren für logische Abfrageausdrücke
Nachfolgend finden Sie eine Zusammenfassung der Operatoren, die beim Definieren logischer Abfrageausdrücke mit der Abfragesprache verwendet werden können.
Arithmetische Operatoren
| Operator |
Beschreibung |
Beispiel |
| + |
Additionsoperator |
NetPinCount + NetViaCount |
| - |
Subtraktionsoperator |
ArcStopAngle - ArcStartAngle |
| * |
Multiplikationsoperator |
PadXSize_BottomLayer * PadYSize_BottomLayer |
| / |
Divisionsoperator |
HoleDiameter / ViaDiameter |
| Div |
Operator für ganzzahlige Division |
Color Div 65536
Dies berechnet Color geteilt durch 65536; der Nachkommateil des Ergebnisses wird verworfen |
| Mod |
Modulo-Operator |
Color Mod 256
Dies berechnet den Rest, wenn Color durch 256 geteilt wird, ohne den Nachkommateil des Ergebnisses zu bestimmen |
Logische Operatoren
| Operator |
Beschreibung |
Beispiel |
| And |
Logischer UND-Operator |
IsPad And OnMultiLayer
Damit ein Objekt zurückgegeben wird, muss es ein Pad sein und sich auf dem Multi-Layer befinden |
| && |
Logischer UND-Operator
(niedrigere Priorität) |
IsPad && OnMultiLayer
Damit ein Objekt zurückgegeben wird, muss es ein Pad sein und sich auf dem Multi-Layer befinden |
| Or |
Logischer ODER-Operator |
IsPad Or IsVia
Damit ein Objekt zurückgegeben wird, muss es entweder ein Pad oder ein Via sein |
| || |
Logischer ODER-Operator
(niedrigere Priorität) |
IsPad || IsVia
Damit ein Objekt zurückgegeben wird, muss es entweder ein Pad oder ein Via sein |
| Xor |
Logischer EXKLUSIV-ODER-Operator |
OnMultiLayer Xor (HoleDiameter <> 0)
Damit ein Objekt zurückgegeben wird, muss es sich entweder auf dem Multi-Layer befinden und einen Hole Diameter von null haben, oder sich nicht
auf dem Multi-Layer befinden und einen Hole Diameter ungleich null haben. |
| Not |
Logischer NICHT-Operator |
Not OnMultiLayer
Damit ein Objekt zurückgegeben wird, darf es sich nicht auf dem Multi-Layer befinden |
Wenn Sie den Operator Not in Abfrageausdrücken im PCB-Editor verwenden, um Primitive eines bestimmten Typs auszuschließen, beachten Sie, dass diese Primitive nicht ausgeschlossen werden, wenn sie Teil von Gruppenobjekten sind und diese Gruppenobjekte nicht ebenfalls durch den Ausdruck ausgeschlossen werden. Zum Beispiel liefert der Abfrageausdruck Not IsPad alle Objekte außer freien Pad-Objekten zurück, aber er liefert Komponentenobjekte zurück, die Pads enthalten können, sodass Pads in Komponenten durch diesen Ausdruck ebenfalls zurückgegeben werden. Außerdem können Pads in Netzen enthalten sein, die im PCB-Editor ebenfalls als Gruppenobjekte betrachtet werden. Um alle Pad-Objekte auszuschließen, sollte der Abfrageausdruck Not IsPad And Not IsComponent And Not IsNet verwendet werden.
Vergleichsoperatoren
| Operator |
Beschreibung |
Beispiel |
| < |
Kleiner-als-Operator |
HoleDiameter < 40
Damit ein Objekt zurückgegeben wird, muss es einen Hole Diameter haben, der kleiner als 40 ist |
| <= |
Kleiner-gleich-Operator |
HoleDiameter <= 40
Damit ein Objekt zurückgegeben wird, muss es einen Hole Diameter haben, der kleiner oder gleich 40 ist |
| >= |
Größer-gleich-Operator |
HoleDiameter >= 40
Damit ein Objekt zurückgegeben wird, muss es einen Hole Diameter haben, der größer oder gleich 40 ist |
| > |
Größer-als-Operator |
HoleDiameter > 40
Damit ein Objekt zurückgegeben wird, muss es einen Hole Diameter haben, der größer als 40 ist |
| <> |
Ungleich-Operator |
HoleDiameter <> 40
Damit ein Objekt zurückgegeben wird, muss es einen Hole Diameter haben, der ungleich 40 ist |
| = |
Gleich-Operator |
HoleDiameter = 40
Damit ein Objekt zurückgegeben wird, muss es einen Hole Diameter haben, der gleich 40 ist |
| Between...And... |
Inklusiver Bereichsoperator |
HoleDiameter Between 30 And 50
Damit ein Objekt zurückgegeben wird, muss es einen Hole Diameter haben, der größer oder gleich 30 ist, und
kleiner oder gleich 50. |
| Like |
Like-Operator |
Name Like 'ADDR?*'
Dies gibt Objekte zurück, die eine Eigenschaft Name haben, deren zugehörige (Text-)Zeichenfolge mit ADDR beginnt und
die mindestens ein weiteres Zeichen enthält |
Platzhalterzeichen
Platzhalterzeichen ermöglichen die Angabe von Zeichenfolgen, die nicht exakt spezifiziert sind. Diese Zeichen werden typischerweise in Verbindung mit anderen Zeichen verwendet, wodurch teilweise spezifizierte Zeichenfolgen entstehen. Einige wenige spezielle Schlüsselwörter können Zeichenfolgenparameter akzeptieren, die nicht exakt spezifiziert sind, aber größtenteils dürfen Zeichenfolgen nur dann Platzhalterzeichen enthalten, wenn sie mit dem Operator Like verglichen werden.
| Operator |
Beschreibung |
Beispiel |
| ? |
Dies kann durch ein einzelnes Zeichen beliebigen Typs ersetzt werden |
Footprint Like 'DIP1?'
Dies gibt Objekte zurück, die eine Eigenschaft Footprint von DIP10, oder DIP12, oder DIP14 usw. haben. |
| * |
Dies kann durch eine beliebige Anzahl von Zeichen ersetzt werden, von denen jedes beliebigen Typs sein kann |
Footprint Like 'SIP*'
Dies gibt Objekte zurück, die eine Eigenschaft Footprint von SIP1, oder SIP12, oder SIP216 usw. haben. (Objekte mit einer Eigenschaft Footprint von SIP werden ebenfalls zurückgegeben, weil „*“ auch durch no Zeichen ersetzt werden kann) |
Boolesche Zeichenfolgen
| Operator |
Beschreibung |
Beispiel |
| True |
Dies bekräftigt die Bedeutung eines Schlüsselworts |
IsPad = True
Damit ein Objekt zurückgegeben wird, muss es ein Pad sein |
| False |
Dies negiert die Bedeutung eines Schlüsselworts |
IsVia = False
Damit ein Objekt zurückgegeben wird, darf es kein Via sein |
Runde Klammern und Reihenfolge der Priorität
Es lohnt sich, einen Blick auf die Reihenfolge der Priorität zu werfen, die für die in logischen Abfrageausdrücken verwendeten Operatoren gilt. Schließlich kann ein Ausdruck ohne dieses Wissen möglicherweise nicht die gewünschten Objekte ansprechen.
Runde Klammern haben die höchste Priorität innerhalb einer für die verschiedenen Operatoren definierten Prioritätsreihenfolge, die bestimmt, wie Abfragen von der Software interpretiert werden (wenn der Benutzer keine runden Klammern angegeben hat). Die Reihenfolge von der höchsten zur niedrigsten Priorität ist wie folgt:
-
Runde Klammern ()
-
Not
-
^, *, /, Div, Mod, And
-
+, -, Or, Xor
-
=, <>, <, >, <=, >=
-
&&, ||
Diese Prioritätsreihenfolge ist ähnlich der in Pascal-ähnlichen Sprachen verwendeten. Mehrdeutigkeiten werden durch Auswertung von links nach rechts aufgelöst. Runde Klammern werden von innen nach außen ausgewertet, und gleiche Ebenen werden von links nach rechts ausgewertet.
Es ist dringend zu empfehlen, immer dann runde Klammern zu verwenden, wenn auch nur die geringste Möglichkeit besteht, dass die Abfrage nicht korrekt interpretiert wird. Eine großzügige Verwendung runder Klammern beseitigt Zweifel und macht die resultierenden Abfragen für andere leichter lesbar.
Globale System-Abfragefunktionen

Im Dialog Query Helper angezeigte globale System-Abfragefunktionen
Dieser Abschnitt beschreibt die Schlüsselwörter der Abfragesprache, die in Schaltplan-, PCB- und Bibliotheksdokumenten in Altium Designer verfügbar sind. Hilfe zu einem bestimmten Abfrage-Schlüsselwort erhalten Sie über die folgenden aufklappbaren Abschnitte, oder indem Sie ein beliebiges Schlüsselwort markieren (oder hineinklicken) – im Query Helper, in einem Filter-Panel oder im Feld Query einer PCB-Designregel – und F1 drücken, um direkt zum entsprechenden Abschnitt zu gelangen.
Einzelheiten zu den in bestimmten Editoren und Werkzeugen in Altium Designer verfügbaren Schlüsselwörtern der Abfragesprache finden Sie auf den folgenden Seiten:
Arithmetische Funktionen
ABS
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem Absolutwert des numerischen Werts des Parameters entspricht. Wenn dieser numerische Wert positiv ist, hat die zurückgegebene Zahl denselben Wert; andernfalls entspricht die zurückgegebene Zahl dem numerischen Wert des Parameters multipliziert mit -1.
Syntax
ABS(X : Number / Numeric_String) : Number
Beispielverwendung
ABS(2.3)
Gibt 2.3 zurück.
ABS(-7.2)
Gibt 7.2 zurück.
CEIL
Zusammenfassung
Gibt eine ganze Zahl zurück, deren Wert von der Art des numerischen Werts des Parameters abhängt. Wenn dieser numerische Wert eine exakte ganze Zahl ist, hat die zurückgegebene Zahl genau denselben Wert; andernfalls ist die zurückgegebene Zahl die kleinste ganze Zahl, die größer ist als der numerische Wert des Parameters.
Syntax
CEIL(X : Number / Numeric_String) : Number
Beispielverwendung
CEIL(5.0)
Gibt 5 zurück.
CEIL(5.33)
Gibt 6 zurück.
CEIL(-5.0)
Gibt -5 zurück.
CEIL(-5.33)
Gibt -5 zurück.
FLOOR
Zusammenfassung
Gibt eine ganze Zahl zurück, deren Wert von der Art des numerischen Werts des Parameters abhängt. Wenn dieser numerische Wert eine exakte ganze Zahl ist, hat die zurückgegebene Zahl genau denselben Wert; andernfalls ist die zurückgegebene Zahl die größte ganze Zahl, die kleiner ist als der numerische Wert des Parameters.
Syntax
FLOOR(X : Number / Numeric_String) : Number
Beispielverwendung
FLOOR(5.0)
Gibt 5 zurück.
FLOOR(5.33)
Gibt 5 zurück.
FLOOR(-5.0)
Gibt -5 zurück.
FLOOR(-5.33)
Gibt -6 zurück.
FRAC
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert von der Art des numerischen Werts des Parameters abhängt:
-
Wenn dieser numerische Wert positiv, aber keine exakte ganze Zahl ist, ist die zurückgegebene Zahl die Differenz zwischen dem numerischen Wert des Parameters und der größten ganzen Zahl, die kleiner ist als der numerische Wert des Parameters.
-
Wenn dieser numerische Wert negativ, aber keine exakte ganze Zahl ist, ist die zurückgegebene Zahl die Differenz zwischen dem numerischen Wert des Parameters und der kleinsten ganzen Zahl, die größer ist als der numerische Wert des Parameters.
-
Wenn der numerische Wert des Parameters eine exakte ganze Zahl ist, ist die zurückgegebene Zahl 0.
Syntax
FRAC(X : Number / Numeric_String) : Number
Beispielverwendung
FRAC(5.0)
Gibt 0 zurück.
FRAC(5.33)
Gibt 0.33 zurück.
FRAC(-5.0)
Gibt 0 zurück.
FRAC(-5.33)
Gibt -0.33 zurück.
IIF
Zusammenfassung
Dies ist eine Konstruktion für spezielle Zwecke, die drei Abfragen enthält. Der Wert der ersten Abfrage (zwischen der öffnenden Klammer und dem ersten Komma) wird ausgewertet. Wenn dieser True ist, wird die zweite Abfrage (zwischen den Kommas) zurückgegeben; andernfalls wird die dritte Abfrage (zwischen dem zweiten Komma und der schließenden Klammer) zurückgegeben.
Dieses Schlüsselwort ähnelt konzeptionell den Konstruktionen „If ... Then ... Else ...“, die in vielen Programmiersprachen verfügbar sind.
Syntax
IIF(L : Boolean Query , A : Query , B : Query)
L, A und B sind allesamt Zeichenfolgen, die jeweils eine Abfrage angeben; L muss eine boolesche Abfrage sein (d. h. eine Abfrage, die entweder True oder False zurückgibt).
IIF(L,A,B) hat dasselbe Ergebnis wie die Abfrage aus ((L = True) And A) Or ((L = False) And B). Daher ist es besonders nützlich, wenn L komplex ist, da es nur einmal angegeben werden muss.
Beispielverwendung
IsArc And IIF(ArcStopAngle - ArcStartAngle >= 0 , ArcStopAngle - ArcStartAngle Between 30 And 60 , ArcStartAngle - ArcStopAngle Between 300 And 330)
Gibt alle Bögen zurück, deren Bogenlänge größer oder gleich 30 Grad und kleiner oder gleich 60 Grad ist. (Die Eigenschaft „Arc Length“ eines Bogens ist ein Winkel, der durch Subtraktion seiner Eigenschaft „Start Angle“ von seiner Eigenschaft „Stop Angle“ bestimmt wird. Eine erschwerende Besonderheit ist, dass die Eigenschaft „Stop Angle“ eines Bogens kleiner sein kann als seine Eigenschaft „Start Angle“, aber diese Abfrage wertet die tatsächliche Eigenschaft der Bogenlänge für alle möglichen Bogenobjekte korrekt aus.)
IsComponent And IIF(Layer = 'Top Layer' , Rotation <> 0 , Rotation <> 180)
Gibt alle Komponenten auf der Oberseite der PCB zurück, deren Eigenschaft „Rotation“ nicht 0 Grad ist, sowie alle Komponenten auf der Unterseite der PCB, deren Eigenschaft „Rotation“ nicht 180 Grad ist. (Komponentenobjekte können sich nur auf der Top-Signallage oder Bottom-Signallage befinden; daher muss jede Komponente, die sich nicht auf der Top-Signallage befindet, stattdessen auf der Bottom-Signallage liegen.)
INT
Zusammenfassung
Gibt eine ganze Zahl zurück, deren Wert von der Art des numerischen Werts des Parameters abhängt:
-
Wenn dieser numerische Wert positiv, aber keine exakte ganze Zahl ist, ist die zurückgegebene Zahl die größte ganze Zahl, die kleiner ist als der numerische Wert des Parameters.
-
Wenn dieser numerische Wert negativ, aber keine exakte ganze Zahl ist, ist die zurückgegebene Zahl die kleinste ganze Zahl, die größer ist als der numerische Wert des Parameters.
-
Wenn dieser numerische Wert eine exakte ganze Zahl ist, hat die zurückgegebene Zahl genau denselben Wert.
Syntax
INT(X : Number / Numeric_String) : Number
Beispielverwendung
INT(5.0)
Gibt 5 zurück.
INT(5.33)
Gibt 5 zurück.
INT(-5.0)
Gibt -5 zurück.
INT(-5.33)
Gibt -5 zurück.
Tipps
Dies ist ein Alias für die arithmetische Funktion TRUNC.
MAX
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem Maximalwert aller angegebenen Parameter entspricht. Jeder Parameter muss entweder eine Zahl oder eine numerische Zeichenfolge sein, und es kann eine beliebige Anzahl von Parametern angegeben werden.
Syntax
MAX(N1 : Number / Numeric_String, [N2] : Number / Numeric_String, ...) : Number
Beispielverwendung
MAX(2)
Gibt 2 zurück.
MAX(7,2,3)
Gibt 7 zurück.
Tipps
Es muss mindestens ein Parameter angegeben werden.
MIN
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem Minimalwert aller angegebenen Parameter entspricht. Jeder Parameter muss entweder eine Zahl oder eine numerische Zeichenfolge sein, und es kann eine beliebige Anzahl von Parametern angegeben werden.
Syntax
MIN(N1 : Number / Numeric_String, [N2] : Number / Numeric_String, ...) : Number
Beispielverwendung
MIN(2)
Gibt 2 zurück.
MIN(7,2,3)
Gibt 2 zurück.
Tipps
Es muss mindestens ein Parameter angegeben werden.
POWER
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem numerischen Wert des ersten Parameters hoch dem numerischen Wert des zweiten Parameters entspricht.
Syntax
POWER(X : Number / Numeric_String , Y : Number / Numeric_String) : Number
Beispielverwendung
POWER(3,2)
Gibt 9 zurück.
POWER(32,0.2)
Gibt 2 zurück.
POWER(16,-0.5)
Gibt 0.25 zurück.
ROUND
Zusammenfassung
Gibt eine ganze Zahl zurück, deren Wert von der Art des numerischen Werts des Parameters abhängt:
-
Wenn dieser numerische Wert eine exakte ganze Zahl ist, hat die zurückgegebene Zahl genau denselben Wert.
-
Wenn dieser numerische Wert keine exakte ganze Zahl ist, ist die zurückgegebene Zahl die ganze Zahl, die dem numerischen Wert des Parameters am nächsten liegt. Positive Zahlen, die genau in der Mitte zwischen benachbarten ganzen Zahlen liegen, werden upwards gerundet, während negative Zahlen, die genau in der Mitte zwischen benachbarten ganzen Zahlen liegen, downwards gerundet werden.
Syntax
ROUND(X : Number / Numeric_String) : Number
Beispielverwendung
ROUND(5.0)
Gibt 5 zurück.
ROUND(5.33)
Gibt 5 zurück.
ROUND(5.5)
Gibt 6 zurück (aufgerundet).
ROUND(5.66)
Gibt 6 zurück.
ROUND(-5.0)
Gibt -5 zurück.
ROUND(-5.33)
Gibt -5 zurück.
ROUND(-5.5)
Gibt -6 zurück (abgerundet).
ROUND(-5.66)
Gibt -6 zurück.
SIGN
Zusammenfassung
Gibt den Vorzeichenwert des angegebenen Parameters zurück. Das heißt, es wird eine ganze Zahl zurückgegeben, deren Wert von der Art des numerischen Werts des Parameters abhängt:
-
Wenn dieser numerische Wert positiv ist, ist die zurückgegebene Zahl 1.
-
Wenn dieser numerische Wert negativ ist, ist die zurückgegebene Zahl -1.
-
Wenn dieser numerische Wert genau null ist, ist die zurückgegebene Zahl 0.
Syntax
SIGN(X : Number / Numeric_String) : Number
Beispielverwendung
SIGN(5.33)
Gibt 1 zurück.
SIGN(-5.33)
Gibt -1 zurück.
SIGN(0)
Gibt 0 zurück.
SQR
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem Quadrat des numerischen Werts des Parameters entspricht.
Syntax
SQR(X : Number / Numeric_String) : Number
Beispielverwendung
SQR(2)
Gibt 4 zurück.
SQR(14.1)
Gibt 198.81 zurück.
SQR(-1.5)
Gibt 2.25 zurück.
SQRT
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert der (positiven) Quadratwurzel des numerischen Werts des Parameters entspricht.
Syntax
SQRT(X : Number / Numeric_String) : Number
Beispielverwendung
SQRT(4)
Gibt 2 zurück.
SQRT(10)
Gibt 3.1623 zurück.
TRUNC
Zusammenfassung
Gibt eine ganze Zahl zurück, deren Wert von der Art des numerischen Werts des Parameters abhängt:
-
Wenn dieser numerische Wert positiv ist, aber keine exakte ganze Zahl, ist die zurückgegebene Zahl die größte ganze Zahl, die kleiner ist als der numerische Wert des Parameters.
-
Wenn dieser numerische Wert negativ ist, aber keine exakte ganze Zahl, ist die zurückgegebene Zahl die kleinste ganze Zahl, die größer ist als der numerische Wert des Parameters.
-
Wenn dieser numerische Wert eine exakte ganze Zahl ist, hat die zurückgegebene Zahl genau denselben Wert.
Syntax
TRUNC(X : Number / Numeric_String) : Number
Beispielverwendung
TRUNC(5.0)
Gibt 5 zurück.
TRUNC(5.33)
Gibt 5 zurück.
TRUNC(-5.0)
Gibt -5 zurück.
TRUNC(-5.33)
Gibt -5 zurück.
Tipps
Dies ist ein Alias für die arithmetische Funktion INT.
ZERO
Zusammenfassung
Gibt eine ganze Zahl zurück, deren Wert je nach numerischem Wert des Parameters entweder 0 oder 1 ist. Wenn dieser numerische Wert null ist, ist die zurückgegebene Zahl 0; andernfalls ist die zurückgegebene Zahl 1.
Syntax
ZERO(X : Number / Numeric_String) : Number
Beispielverwendung
ZERO(5.33)
Gibt 1 zurück.
ZERO(-5.33)
Gibt 1 zurück.
ZERO(0)
Gibt 0 zurück.
Trigonometrische Funktionen
ACOS
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem Winkel des Arkuskosinus der durch den numerischen Wert des Parameters angegebenen Zahl entspricht; dieser Winkel wird im Bogenmaß angegeben (und nicht in Grad).
Syntax
ACOS(X : Number / Numeric_String) : Number
Beispielverwendung
ACOS(0)
Gibt 1.5708 zurück.
ACOS(0.5)
Gibt 1.0472 zurück.
ACOS(1)
Gibt 0 zurück.
ASIN
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem Winkel des Arkussinus der durch den numerischen Wert des Parameters angegebenen Zahl entspricht; dieser Winkel wird im Bogenmaß angegeben (und nicht in Grad).
Syntax
ASIN(X : Number / Numeric_String) : Number
Beispielverwendung
ASIN(0)
Gibt 0 zurück.
ASIN(0.5)
Gibt 0.5236 zurück.
ASIN(1)
Gibt 1.5708 zurück.
ATAN
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem Winkel des Arkustangens der durch den numerischen Wert des Parameters angegebenen Zahl entspricht; dieser Winkel wird im Bogenmaß angegeben (und nicht in Grad).
Syntax
ATAN(X : Number / Numeric_String) : Number
Beispielverwendung
ATAN(0)
Gibt 0 zurück.
ATAN(1)
Gibt 0.7854 zurück.
ATAN(2.5)
Gibt 1.1903 zurück.
COS
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem Kosinus des durch den numerischen Wert des Parameters angegebenen Winkels entspricht; dieser Winkel wird im Bogenmaß angegeben (und nicht in Grad).
Syntax
COS(X : Number / Numeric_String) : Number
Beispielverwendung
COS(0)
Gibt 1 zurück.
COS(0.8)
Gibt 0.6967 zurück.
COS(1.57)
Gibt 0.0008 zurück.
COSH
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem hyperbolischen Kosinus des numerischen Werts des Parameters entspricht.
Syntax
COSH(X : Number / Numeric_String) : Number
Beispielverwendung
COSH(TextHeight / TextWidth) < 70.5
Gibt Objekte zurück, bei denen der hyperbolische Kosinus des Verhältnisses ihrer TextHeight-Distanz zu ihrer TextWidth-Distanz kleiner als 70.5 ist. (Dies entspricht der Rückgabe von Objekten, bei denen das Verhältnis ihrer TextHeight-Distanz zu ihrer TextWidth-Distanz kleiner als 4.9487 ist.)
(TextHeight / TextWidth) >= COSH(2.3)
Gibt Objekte zurück, bei denen das Verhältnis ihrer TextHeight-Distanz zu ihrer TextWidth-Distanz gleich dem hyperbolischen Kosinus von 2.3 oder größer ist (dieser beträgt 5.0372).
COTAN
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem Kotangens des durch den numerischen Wert des Parameters angegebenen Winkels entspricht; dieser Winkel wird im Bogenmaß angegeben (und nicht in Grad).
Syntax
COTAN(X : Number / Numeric_String) : Number
Beispielverwendung
COTAN(0.1)
Gibt 9.9666 zurück.
COTAN(0.8)
Gibt 0.9712 zurück.
COTAN(1.57)
Gibt 0.0008 zurück.
SIN
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem Sinus des durch den numerischen Wert des Parameters angegebenen Winkels entspricht; dieser Winkel wird im Bogenmaß angegeben (und nicht in Grad).
Syntax
SIN(X : Number / Numeric_String) : Number
Beispielverwendung
SIN(0)
Gibt 0 zurück.
SIN(0.8)
Gibt 0.7174 zurück.
SIN(1.57)
Gibt 1.0 zurück.
SINH
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem hyperbolischen Sinus des numerischen Werts des Parameters entspricht.
Syntax
SINH(X : Number / Numeric_String) : Number
Beispielverwendung
SINH(TextWidth / TextHeight) < 0.17
Gibt Objekte zurück, bei denen der hyperbolische Sinus des Verhältnisses ihrer TextWidth-Distanz zu ihrer TextHeight-Distanz kleiner als 0.17 ist. (Dies entspricht der Rückgabe von Objekten, bei denen das Verhältnis ihrer TextWidth-Distanz zu ihrer TextHeight-Distanz kleiner als 0.1692 ist.)
(TextWidth / TextHeight) >= SINH(0.2)
Gibt Objekte zurück, bei denen das Verhältnis ihrer TextWidth-Distanz zu ihrer TextHeight-Distanz gleich dem hyperbolischen Sinus von 0.2 oder größer ist (dieser beträgt 0.2013).
TAN
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem Tangens des durch den numerischen Wert des Parameters angegebenen Winkels entspricht; dieser Winkel wird im Bogenmaß angegeben (und nicht in Grad).
Syntax
TAN(X : Number / Numeric_String) : Number)
Beispielverwendung
TAN(0)
Gibt 0 zurück.
TAN(0.8)
Gibt 1.0296 zurück.
TAN(1.57)
Gibt 1255.7656 zurück.
TANH
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem hyperbolischen Tangens des numerischen Werts des Parameters entspricht.
Syntax
TANH(X : Number / Numeric_String) : Number
Beispielverwendung
TANH(TextWidth / TextHeight) < 0.17
Gibt Objekte zurück, bei denen der hyperbolische Tangens des Verhältnisses ihrer TextWidth-Distanz zu ihrer TextHeight-Distanz kleiner als 0.17 ist. (Dies entspricht der Rückgabe von Objekten, bei denen das Verhältnis ihrer TextWidth-Distanz zu ihrer TextHeight-Distanz kleiner als 0.1717 ist.)
(TextWidth / TextHeight) >= TANH(0.2)
Gibt Objekte zurück, bei denen das Verhältnis ihrer TextWidth-Distanz zu ihrer TextHeight-Distanz gleich dem hyperbolischen Tangens von 0.2 oder größer ist (dieser beträgt 0.1974).
Exponential- und logarithmische Funktionen
EXP
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert gleich e hoch dem numerischen Wert des Parameters ist. (Die Zahl e ist die Basis der natürlichen Logarithmen und ist ungefähr gleich 2.7183.)
Syntax
EXP(X : Number / Numeric_String) : Number
Beispielverwendung
EXP(0)
Gibt 1 zurück.
EXP(1)
Gibt 2.7183 zurück.
LG
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem Logarithmus zur Basis 10 des numerischen Werts des Parameters entspricht.
Syntax
LG(X : Number / Numeric_String) : Number
Beispielverwendung
LG(1)
Gibt 0 zurück.
LG(10)
Gibt 1 zurück.
LG(25)
Gibt 1.3979 zurück.
LN
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem natürlichen Logarithmus (oder Logarithmus zur Basis e) des numerischen Werts des Parameters entspricht. (Die Zahl e ist 2.7183.)
Syntax
LN(X : Number / Numeric_String) : Number
Beispielverwendung
LN(1)
Gibt 0 zurück.
LN(2)
Gibt 0.6931 zurück.
LN(10)
Gibt 2.3026 zurück.
LOG
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem Logarithmus zur Basis 2 des numerischen Werts des Parameters entspricht.
Syntax
LOG(X : Number / Numeric_String) : Number
Beispielverwendung
LOG(1)
Gibt 0 zurück.
LOG(2)
Gibt 1 zurück.
LOG(8)
Gibt 3 zurück.
LOG(10)
Gibt 3.3219 zurück.
Aggregatfunktionen
AVG
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem Durchschnittswert aller angegebenen Parameter entspricht. Jeder Parameter muss entweder eine Zahl oder eine numerische Zeichenfolge sein, und es kann eine beliebige Anzahl von Parametern angegeben werden.
Syntax
AVG(N1 : Number / Numeric_String, [N2] : Number / Numeric_String, ...) : Number
Beispielverwendung
AVG(2)
Gibt 2 zurück.
AVG(7,2,3)
Gibt 4 zurück.
Tipps
-
Mindestens ein Parameter muss angegeben werden.
MAX
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem Maximalwert aller angegebenen Parameter entspricht. Jeder Parameter muss entweder eine Zahl oder eine numerische Zeichenfolge sein, und es kann eine beliebige Anzahl von Parametern angegeben werden.
Syntax
MAX(N1 : Number / Numeric_String, [N2] : Number / Numeric_String, ...) : Number
Beispielverwendung
MAX(2)
Gibt 2 zurück.
MAX(7,2,3)
Gibt 7 zurück.
Tipps
Mindestens ein Parameter muss angegeben werden.
MIN
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem kleinsten Wert aller angegebenen Parameter entspricht. Jeder Parameter muss entweder eine Zahl oder eine numerische Zeichenfolge sein, und es kann eine beliebige Anzahl von Parametern angegeben werden.
Syntax
MIN(N1 : Number / Numeric_String, [N2] : Number / Numeric_String, ...) : Number
Beispielverwendung
MIN(2)
Gibt 2 zurück.
MIN(7,2,3)
Gibt 2 zurück.
Tipps
Mindestens ein Parameter muss angegeben werden.
PROD
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem Produkt aller angegebenen Parameter entspricht. Jeder Parameter muss entweder eine Zahl oder eine numerische Zeichenfolge sein, und es kann eine beliebige Anzahl von Parametern angegeben werden.
Syntax
PROD(N1 : Number / Numeric_String, [N2] : Number / Numeric_String, ...) : Number
Beispielverwendung
PROD(2)
Gibt 2 zurück.
PROD(7,2,3)
Gibt 42 zurück.
Tipps
Mindestens ein Parameter muss angegeben werden.
SUM
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert der Summe aller angegebenen Parameter entspricht. Jeder Parameter muss entweder eine Zahl oder eine numerische Zeichenfolge sein, und es kann eine beliebige Anzahl von Parametern angegeben werden.
Syntax
SUM(N1 : Number / Numeric_String, [N2] : Number / Numeric_String, ...) : Number
Beispielverwendung
SUM(2)
Gibt 2 zurück.
SUM(7,2,3)
Gibt 12 zurück.
Tipps
Mindestens ein Parameter muss angegeben werden.
Systemfunktionen
Copy
Zusammenfassung
Gibt eine Teilzeichenfolge einer Zeichenfolge zurück. Es kann angegeben werden, wie viele Zeichen die zurückgegebene Teilzeichenfolge enthalten soll und an welcher Position innerhalb der Zeichenfolge das erste Zeichen der zurückgegebenen Teilzeichenfolge stehen soll.
Syntax
Copy(S : String , Index : Integer , Count : Integer) : String
S ist ein Ausdruck vom Typ Zeichenfolge. Index und Count sind Ausdrücke vom Typ Ganzzahl. Copy gibt eine Teilzeichenfolge mit Count Zeichen zurück, beginnend bei S[Index].
Wenn Index größer als die Länge von S ist, gibt Copy eine leere Zeichenfolge zurück.
Wenn Count mehr Zeichen angibt, als verfügbar sind, werden nur die Zeichen von S[Index] bis zum Ende von S zurückgegeben.
Beispielverwendung
Copy('Cats and dogs',1,1)
Gibt „C“ zurück. (Gibt 1 Zeichen ab der 1. Position innerhalb der Zeichenfolge zurück.)
Copy('Cats and dogs',2,1)
Gibt „a“ zurück. (Gibt 1 Zeichen ab der 2. Position innerhalb der Zeichenfolge zurück.)
Copy('Cats and dogs',13,1)
Gibt „s“ zurück. (Gibt 1 Zeichen ab der 13. Position innerhalb der Zeichenfolge zurück.)
Copy('Cats and dogs',14,1)
Gibt '' (eine leere Zeichenfolge) zurück. (Gibt 1 Zeichen ab der 14. Position innerhalb der Zeichenfolge zurück; die Zeichenfolge enthält jedoch nur 13 Zeichen, daher wird eine leere Zeichenfolge zurückgegeben.)
Copy('Cats and dogs',1,2)
Gibt „Ca“ zurück. (Gibt 2 Zeichen ab der 1. Position innerhalb der Zeichenfolge zurück.)
Copy('Cats and dogs',2,2)
Gibt „at“ zurück. (Gibt 2 Zeichen ab der 2. Position innerhalb der Zeichenfolge zurück.)
Copy('Cats and dogs',12,2)
Gibt „gs“ zurück. (Gibt 2 Zeichen ab der 12. Position innerhalb der Zeichenfolge zurück.)
Copy('Cats and dogs',13,2)
Gibt „s“ zurück. (Gibt 2 Zeichen ab der 13. Position innerhalb der Zeichenfolge zurück; die Zeichenfolge enthält jedoch nur 13 Zeichen, daher wird nur 1 Zeichen zurückgegeben.)
Copy('Cats and dogs',15,2)
Gibt '' (eine leere Zeichenfolge) zurück. (Gibt 2 Zeichen ab der 15. Position innerhalb der Zeichenfolge zurück; die Zeichenfolge enthält jedoch nur 13 Zeichen, daher wird eine leere Zeichenfolge zurückgegeben.)
Copy('Cats and dogs',1,6)
Gibt „Cats a“ zurück. (Gibt 6 Zeichen ab der 1. Position innerhalb der Zeichenfolge zurück.)
Copy('Cats and dogs',5,9)
Gibt „ and dogs“ zurück. (Gibt 9 Zeichen ab der 5. Position innerhalb der Zeichenfolge zurück.)
Copy('Cats and dogs',8,5)
Gibt „d dog“ zurück. (Gibt 5 Zeichen ab der 8. Position innerhalb der Zeichenfolge zurück.)
Copy('Cats and dogs',8,6)
Gibt „d dogs“ zurück. (Gibt 6 Zeichen ab der 8. Position innerhalb der Zeichenfolge zurück.)
Copy('Cats and dogs',8,7)
Gibt „d dogs“ zurück. (Gibt 7 Zeichen ab der 8. Position innerhalb der Zeichenfolge zurück; die Zeichenfolge enthält jedoch nur 13 Zeichen, daher werden nur 6 Zeichen zurückgegeben.)
Length
Zusammenfassung
Gibt die Anzahl der in einer Zeichenfolge enthaltenen Zeichen zurück.
Syntax
Length(S : String) : Integer
S ist die Zeichenfolge, deren Zeichenzahl zurückgegeben werden soll.
Beispielverwendung
Length(Name) Between 4 And 7
Gibt Objekte zurück, die eine Name-Eigenschaft haben, deren Inhalt zwischen 4 und 7 Zeichen umfasst.
Length('Cat')
Gibt 3 zurück.
Length('Darryll')
Gibt 7 zurück.
Length('Cats and dogs')
Gibt 13 zurück.
Length('')
Gibt 0 zurück.
Pos
Zusammenfassung
Gibt den Indexwert des ersten Zeichens in einer angegebenen Teilzeichenfolge zurück, die in einer gegebenen Zeichenfolge vorkommt.
Syntax
Pos(Substr : String , S : String) : Integer
Pos sucht nach einer Teilzeichenfolge, Substr, innerhalb einer Zeichenfolge, S. Substr und S sind Ausdrücke vom Typ Zeichenfolge. Es wird ein Ganzzahlwert zurückgegeben, der dem Index des ersten Zeichens von Substr entspricht.
Pos berücksichtigt Groß-/Kleinschreibung. Wenn Substr nicht gefunden wird, gibt Pos null zurück.
Beispielverwendung
Pos('T',Name) = 1
Gibt alle Objekte zurück, die eine Name Eigenschaft haben, deren zugehörige Zeichenfolge erstmals an ihrer ersten Position ein „T“ enthält; „T1“ und „Time Table“ sind Beispiele für solche Zeichenfolgen. („T“ kommt in der Zeichenfolge „Time Table“ zweimal vor, aber die erste Fundstelle ist an der ersten Position.)
Pos('A',Name) = 2
Gibt alle Objekte zurück, die eine Name Eigenschaft haben, deren zugehörige Zeichenfolge erstmals an ihrer zweiten Position ein „A“ enthält; „RA1“ und „CABLE CHART“ sind Beispiele für solche Zeichenfolgen.
Pos('B',Name) = 0
Gibt alle Objekte zurück, die eine Name Eigenschaft haben, deren zugehörige Zeichenfolge an keiner Position ein „B“ enthält; „D1“ und „Time Table“ sind Beispiele für solche Zeichenfolgen. (Die Zeichenfolge „Time Table“ enthält an ihrer achten Position ein „b“, aber Pos berücksichtigt Groß-/Kleinschreibung.)
Pos('D',Name) > 0
Gibt alle Objekte zurück, die eine Name Eigenschaft haben, deren zugehörige Zeichenfolge an mindestens einer Position und an beliebiger Stelle ein „D“ enthält; „Data Chart“, „U1D“ und „Install either D1 and D2 or D3 and D4, but never install all of these.“ sind Beispiele für solche Zeichenfolgen.
Pos('Con',Name) = 1
Gibt alle Objekte zurück, die eine Name Eigenschaft haben, deren zugehörige Zeichenfolge erstmals an ihrer ersten, zweiten und dritten Position „Con“ enthält; „Concatenate“ ist ein Beispiel für eine solche Zeichenfolge. (Die erste Fundstelle von „Con“ innerhalb von „Concatenate“ sind dessen erste drei Zeichen; das erste Zeichen innerhalb von „Con“ ist „C“, und seine Position ist das erste Zeichen von „Concatenate“.)
Pos('ate',Name) = 5
Gibt alle Objekte zurück, die eine Name Eigenschaft haben, deren zugehörige Zeichenfolge erstmals an ihrer fünften, sechsten und siebten Position „ate“ enthält; „Concatenate“ ist ein Beispiel für eine solche Zeichenfolge. (Die erste Fundstelle von „ate“ innerhalb von „Concatenate“ sind dessen fünftes bis siebtes Zeichen; das erste Zeichen innerhalb von „ate“ ist „a“, und seine Position ist das fünfte Zeichen von „Concatenate“.)
Pos('ate',Name) = 0
Gibt alle Objekte zurück, die eine Name Eigenschaft haben, deren zugehörige Zeichenfolge „ate“ nirgends enthält; „C1“ und „TIME:“ sind Beispiele für solche Zeichenfolgen.
Pred
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem numerischen Wert des Parameters minus 1,0 entspricht.
Syntax
Pred(X : Number / Numeric_String) : Number
Beispielverwendung
Pred(4.1)
Gibt 3.1 zurück.
Pred(41.313)
Gibt 40.313 zurück.
Random
Zusammenfassung
Gibt eine Zufallszahl zwischen 0 und X-1 zurück.
Syntax
Random(X) : Number
Beispielverwendung
Random(10)
Gibt einen Wert zwischen 0 und 9 zurück.
Random(100)
Gibt einen Wert zwischen 0 und 99 zurück.
Succ
Zusammenfassung
Gibt eine reelle Zahl zurück, deren Wert dem numerischen Wert des Parameters plus 1,0 entspricht.
Syntax
Succ(X : Number / Numeric_String) : Number
Beispielverwendung
Succ(2.1)
Gibt 3.1 zurück.
Succ(41.313)
Gibt 42.313 zurück.