Metainformationen zur Seite
  •  

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
speedy:30_modules:interpreter [2021/01/06 12:18] adminspeedy:30_modules:interpreter [2022/06/29 18:05] (aktuell) – [Zeichenkettenverarbeitung] speedy
Zeile 1: Zeile 1:
 +~~NOCACHE~~ 
 ====== Formelinterpreter ====== ====== Formelinterpreter ======
 Der in speedyPDM integrierte Formelinterpreter ermöglicht es an vielen Stellen in der Konfiguration einfach Anpassungen vorzunehmen. Der in speedyPDM integrierte Formelinterpreter ermöglicht es an vielen Stellen in der Konfiguration einfach Anpassungen vorzunehmen.
Zeile 21: Zeile 22:
 ===== Wertzuweisung ===== ===== Wertzuweisung =====
 Variablen können in Formeln als konstante oder für Zwischenrechnungen verwendet werden. Variablen können in Formeln als konstante oder für Zwischenrechnungen verwendet werden.
 +<code>
 x1 = ref1 + IF( ref2 < 10, ref3 - 5, ref4 + 5 );  x1 = ref1 + IF( ref2 < 10, ref3 - 5, ref4 + 5 ); 
 +</code>
  
 ===== Arithmetik ===== ===== Arithmetik =====
Zeile 80: Zeile 81:
 **IF(Prüfung, DannWert, SonstWert);** **IF(Prüfung, DannWert, SonstWert);**
  
-Liefert DannWert, wenn Prüfung TRUE ist. Ist DannWert nicht angegeben, wird TRUE zurückgegeben. +Liefert DannWert, wenn Prüfung TRUE ist. Ist DannWert nicht angegeben, wird TRUE zurückgegeben. \\ 
-Liefert SonstWert, wenn Prüfung FALSE ist. Ist SonstWert nicht angegeben, wird FALSE zurückgegeben.+Liefert SonstWert, wenn Prüfung FALSE ist. Ist SonstWert nicht angegeben, wird FALSE zurückgegeben.  \\
  
-Für die Erstellung komplexerer Bedingungen lassen sich maximal sieben IF-Funktionen verschachteln. +Für die Erstellung komplexerer Bedingungen lassen sich maximal sieben IF-Funktionen verschachteln. \\ 
-Sobald die Argumente DannWert und SonstWert ausgewertet sind, liefert IF den Wert, den diese Anweisungen zurückgeben.+Sobald die Argumente DannWert und SonstWert ausgewertet sind, liefert IF den Wert, den diese Anweisungen zurückgeben. \\
  
-Ist eines der an eine IF-Funktion übergebende Argument eine Matrix, so wird bei der Ausführung dieser IF-Anweisung jedes Element der Matrix ausgewertet. +Ist eines der an eine IF-Funktion übergebende Argumente eine Matrix, so wird bei der Ausführung dieser IF-Anweisung jedes Element der Matrix ausgewertet. \\ 
-Sind einige der als DannWert und SonstWert übergebenen Argumente ausführbare Funktionen, werden diese vollständig ausgeführt.+Sind einige der als DannWert und SonstWert übergebenen Argumente ausführbare Funktionen, werden diese vollständig ausgeführt. \\
  
-Beispiel: +Beispiel: \\ 
-IF(A==B, 100, 0); ergibt 100, wenn A identisch B ist. +<code>IF(A==B, 100, 0);</code> ergibt 100, wenn A identisch B ist. \\ 
-IF(Gesamtsumme>1000, "Mehr als Eintausend", "Weniger als Eintausend");+<code>IF(Gesamtsumme>1000, "Mehr als Eintausend", "Weniger als Eintausend");</code>
  
-**Beachten Sie, dass das weglassen des Dannwert oder des Sonstwert zu undefinierten zuständen in nachfolgenden Formeln führen kann.  +<note important>Beachten Sie, dass das weglassen des DannWert oder des SonstWert zu undefinierten zuständen in nachfolgenden Formeln führen kann. \\ 
-Sie sollten immer beide Fälle angeben, um Formelfehler in nachfolgenden Formeln zu vermeiden.  +Sie sollten immer beide Fälle angeben, um Formelfehler in nachfolgenden Formeln zu vermeiden.</note> 
-**+\\
  
 **SWITCH(Testwert, Vergleich1, Anweisung1, ..., VergleichX, AnweisungX);** **SWITCH(Testwert, Vergleich1, Anweisung1, ..., VergleichX, AnweisungX);**
  
-Liefert AnweisungN, wenn VergleichN identisch ist mit Testwert.+Liefert AnweisungN, wenn VergleichN identisch ist mit Testwert. \\
 Diese Funktion benötigt mindestens drei Argumente. Diese Funktion benötigt mindestens drei Argumente.
  
-Als Argument kann der String "DEFAULT" für den Standardfall verwendet werden. +Als Argument kann der String "DEFAULT" für den Standardfall verwendet werden. \\ 
- +Beispiel: \\ 
-Beispiel:+<code>
 SWITCH(BEN1_deu,  SWITCH(BEN1_deu, 
  "Frankreich", "Baguette",   "Frankreich", "Baguette", 
  "England", "Fish and Chips",  "England", "Fish and Chips",
  "DEFAULT", "Leberkäse");   "DEFAULT", "Leberkäse"); 
 +</code>
 ergibt "Leberkäse", wenn in BEN1_deu weder Frankreich noch England steht. ergibt "Leberkäse", wenn in BEN1_deu weder Frankreich noch England steht.
  
-**Beachten Sie, dass "DEFAULT" der letzte Vergleichswert ist, denn "DEFAULT" trifft __immer__ zu**+<note important>Beachten Sie, dass "DEFAULT" der letzte Vergleichswert ist, denn "DEFAULT" trifft __immer__ zu</note> 
  
 ===== Mathematik & Statistik ===== ===== Mathematik & Statistik =====
Zeile 234: Zeile 237:
  
 **ADDLINE(Text1, Text2, ...);**\\ **ADDLINE(Text1, Text2, ...);**\\
-Fügt eine beliebige Anzahl von Texten aneinander und trennt die einzelenen Texte durch einen Zeilenumbruch. Es entstehen keine Leerzeilen.+Fügt eine beliebige Anzahl von Texten aneinander und trennt die einzelnen Texte durch einen Zeilenumbruch. Es entstehen keine Leerzeilen.
  
 +**CONCAT_WS(separator,str1,str2,...);**\\
 +Fügt eine beliebige Anzahl von Texten aneinander und trennt die einzelnen Texte durch den separator, wenn der nächste Text nicht leer ist.
 \\ \\
 ===== Pfade und Dateinamen ===== ===== Pfade und Dateinamen =====
Zeile 337: Zeile 342:
  
  
 +/*
 ===== Einschränkungen ===== ===== Einschränkungen =====
  
Zeile 350: Zeile 356:
 Logische Verknüpfungen\\ Logische Verknüpfungen\\
 Sonstige Funktionen\\ Sonstige Funktionen\\
 +*/