primus:bedingung
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| primus:bedingung [2022/08/05 12:39] – gelöscht - Externe Bearbeitung (Unknown date) 127.0.0.1 | primus:bedingung [2024/08/14 08:54] (aktuell) – +Wikilink mgras | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== Bedingung ====== | ||
| + | Bedingungen werden für Primus Funktionen verwendet um z.B. bestimmte Menüeinträge nur unter bestimmten Bedingungen anzuzeigen oder zu aktivieren. Es gibt mehrere Möglichkeiten Bedingungen zu definieren. | ||
| + | ===== Globale Bedingung definieren ===== | ||
| + | Im Abschnitt [[Public]] können Bedingungen definiert werden um sie an anderer Stelle in der Konfiguration zu nutzen. Dadurch erhöht sich die Lesbarkeit der Konfiguration und es werden Fehler durch unterschiedliche Vergleiche vermieden. | ||
| + | |||
| + | Das [[Glossar# | ||
| + | |||
| + | ^Vergleichsoperator ^Funktion^ | ||
| + | | '' | ||
| + | | '' | ||
| + | | ''< | ||
| + | | ''> | ||
| + | | ''<'' | ||
| + | | ''>'' | ||
| + | |'' | ||
| + | |'' | ||
| + | |||
| + | <code xml> | ||
| + | <!--Eine Bedingung die prüft ob es sich bei dem aktuellen Dokument um eine Solid Edge Datei handelt--> | ||
| + | < | ||
| + | |||
| + | |||
| + | ===== Direkt definieren ===== | ||
| + | Eine Bedingung kann auch direkt in dem Parameter der //TRUE// oder //FALSE// erfordert, eingegeben werden. | ||
| + | Beispiel: <code xml> | ||
| + | < | ||
| + | <SAMPLE visible="'# | ||
| + | |||
| + | ===== Primus interne Bedingungen ===== | ||
| + | Es gibt auch Bedingungen die in Primus intern bereits vordefiniert sind. Die Bedingungen geben immer //TRUE// oder //FALSE// zurück. Optional gibt es Parameter mit denen die Bedingung näher spezifiziert werden kann. | ||
| + | Hier eine Liste der bisher bekannten: | ||
| + | |||
| + | ^Bedingung ^Parameter ^Erklärung^ | ||
| + | |CheckFileLocalSite| '' | ||
| + | |:::| '' | ||
| + | |[[CheckActiveLicenseType]]| '' | ||
| + | |:::| '' | ||
| + | |:::| '' | ||
| + | |:::| < | ||
| + | |[[ContainsListValue]]| '' | ||
| + | |[[IsActiveRegTab]]| | Liefert den Namen des aktiven Datenregisters| | ||
| + | |IsCellForPaste | | | | ||
| + | |IsCtrlKey | |Abfrage ob die STRG-Taste gedrückt ist| | ||
| + | |IsDataForPaste | |Sind Einfügedaten in der Zwischenablage| | ||
| + | |IsElementsForCopyPaste | | | | ||
| + | |IsElementsForCopyPaste | | | | ||
| + | |IsElementsForPaste | |Kann in dieses Element eingefügt werden| | ||
| + | |IsJobServerEnabled | |Ist die Jobserverfunktion aktiv| | ||
| + | |IsJobServerHost | |Ist dies der Jobserver| | ||
| + | |IsListAllSubProjects | |Ist die Listeneinstellung "alle Unterprojekte auflisten" | ||
| + | |ISLPrimusAddIn.islGetInsertFolder| |{{tag> | ||
| + | |IsNodeTypeActive |jobserver| | ||
| + | |::: | ||
| + | |::: | ||
| + | |::: | ||
| + | |IsProjectActive| |Ist der aktiv gewählte Knoten " | ||
| + | |IsSearchServiceDBActive | |Ist der PrimusSearchService aktiv/ | ||
| + | |LocalWorkMode|0 |Server Arbeitsweise aktiv| | ||
| + | |:::|1 |Lokale Arbeitsweise aktiv| | ||
| + | |:::|2 |Offline Arbeitsweise aktiv| | ||
| + | |PrimusSmartCopy.IsMarkTarget|0 |Ist ein Einfügeordner gesetzt| | ||
| + | |:::|1 |Ist ein Zielordner gesetzt| | ||
| + | |PrimusSmartCopy.IsSessionActive| |Ist eine SmartCopy Session aktiv| | ||
| + | |PrimusSmartCopy.IsSmartCopySessionActive| |Ist eine SmartCopy Sitzung aktiv| | ||
| + | |Workflow.newversioncond| |{{tag> | ||
| + | |||
| + | ===== Bedingung in einem Attribut nutzen ===== | ||
| + | Die Bedingung wird aufgerufen mit **' | ||
| + | |||
| + | Beispiel: <code xml> <SAMPLE visible="' | ||
| + | |||
| + | ==== Ausnahme ==== | ||
| + | $(Workflow.newversioncond) | ||
| + | |||
| + | ===== Funktionen mit Rückgabewerten ===== | ||
| + | Es gibt auch die Möglichkeit eine Funktion aufzurufen die als Rückgabewert //TRUE// oder //FALSE// zurück liefert. Können oder müssen mehrere Werte angeben werden so sind diese mit dem entsprechenden Trennzeichen zu trennen. Im Attribut '' | ||
| + | |||
| + | ^Funktion ^Attribute ^Funktion^ | ||
| + | |[[CheckChildrenStatus]]|'' | ||
| + | |:::| '' | ||
| + | |:::| '' | ||
| + | |:::| '' | ||
| + | |[[CheckParentsStatus]]| '' | ||
| + | |:::| '' | ||
| + | |:::| '' | ||
| + | |:::| '' | ||
| + | |:::| '' | ||
| + | |:::| '' | ||
| + | |[[IgnoreStatus]]| '' | ||
| + | |:::| '' | ||
| + | |:::| '' | ||
| + | |:::| '' | ||
| + | |||
| + | ===== AND / OR Verknüpfung ===== | ||
| + | Bedingungen können mittels **AND** und **OR** miteinander verknüpft werden. Dabei gilt die Regel AND vor OR, ähnlich wie Punkt- vor Strichrechnung in der Mathematik. Es ist aber auch möglich die Vergleiche in Klammern zu setzen, diese Klammern kommen in der Reihenfolge zuerst. | ||
| + | <code xml> | ||
| + | Es wird zuerst verglichen ob es eine '' | ||
| + | |||
| + | ==== Verschachtelte Verknüpfungen ==== | ||
| + | Bei Verschachtelten Verknüpfungen kann es evtl. notwendig sein mit Klammern zu arbeiten. | ||
| + | === Beispiel === | ||
| + | <code xml> | ||
| + | < | ||
| + | <-- Definition der Bedingung --> | ||
| + | < | ||
| + | </ | ||
| + | Für die Verarbeitung werden von Primus intern die Bedingungen in ihre Strings aufgelöst, was dann so aussieht: | ||
| + | <code xml> | ||
| + | < | ||
| + | </ | ||
| + | Ohne die zusätzliche Klammer um die Bedingung '' | ||
| + | <code xml> | ||
| + | ... OR'# | ||
| + | </ | ||
| + | Die UND Bedingung wäre also nur bei PWDs erfüllt worden, bei keinem anderen Dateityp. | ||
| + | |||
| + | ==== Ausnahme bei Call ==== | ||
| + | Werden Bedingungen mittels [[Call]] abgefragt, dann ist die Verwendung von Klammern nicht möglich. In dem Fall muss " | ||
| + | <code xml>' | ||
| + | |||
| + | ===== Bedingte Wertzuweisung in Parametern mittels IF ===== | ||
| + | Es ist möglich in Attributen die Parameter einzelner Funktionen sind, Werte mithilfe von Bedingungen zu definieren. Dies ist z.B. bei der Definition von Dateinamen wichtig. | ||
| + | Die Bedingungen hat folgenden allgemeinen Aufbau '' | ||
| + | |||
| + | **Ein verschachteln der IF Bedingungen ist nicht zulässig!** | ||
| + | ==== Beispiele ==== | ||
| + | <code xml> | ||
| + | <!-- Wenn das FileNamePrefix leer ist, dann nimm den Counter, sonst nichts. | ||
| + | Wenn die Revision nicht leer ist, dann nimm - mit Revision dahinter, sonst nichts. --> | ||
| + | < | ||
| + | <!-- Macht ein Feld im Datenblatt beschreibbar (W), wenn der Benutzer Admin ist, sonst nur lesbar (R) --> | ||
| + | < | ||
| + | </ | ||
| + | |||
| + | ==== Liste der unterstützten Parameter ==== | ||
| + | Die Auswertung von '' | ||
| + | ^ Parameter^ Verwendung^ | ||
| + | | '' | ||
| + | | '' | ||
| + | | '' | ||
| + | |||
| + | |||
| + | |||
| + | {{tag> | ||
