Metainformationen zur Seite
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| speedy:30_modules:interpreter [2017/05/04 18:03] – [Zeichenkettenverarbeitung] admin | speedy: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. | ||
| ===== Formelsyntax ===== | ===== Formelsyntax ===== | ||
| - | + | Die Sytax des Formelinterpreters orientiert sich dabei an der Formelsyntax von Excelformeln. \\ | |
| - | Eine Formel endet immer mit einem Semikolon. | + | Eine Formel |
| + | < | ||
| + | =FORMELAUSDRUCK; | ||
| + | </ | ||
| + | \\ | ||
| ===== Datentypen ===== | ===== Datentypen ===== | ||
| - | + | Es stehen folgende Datentypen zur Verfügung: | |
| - | * Es stehen folgende Datentypen zur Verfügung: | + | |
| * Fließkomma | * Fließkomma | ||
| * Ganzzahl | * Ganzzahl | ||
| Zeile 16: | Zeile 21: | ||
| ===== 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. | ||
| + | < | ||
| x1 = ref1 + IF( ref2 < 10, ref3 - 5, ref4 + 5 ); | x1 = ref1 + IF( ref2 < 10, ref3 - 5, ref4 + 5 ); | ||
| + | </ | ||
| ===== Arithmetik ===== | ===== Arithmetik ===== | ||
| Zeile 29: | Zeile 35: | ||
| |%%^%%|Potenzierung|%%3^2%%|9| | |%%^%%|Potenzierung|%%3^2%%|9| | ||
| - | Die Negation von Funktionen ist nicht zulässig: | + | Die Negation von Funktionen ist nicht zulässig: |
| - | Falsch: -SUM( x1; x2 ); | + | Falsch: -SUM( x1; x2 ); \\ |
| - | Richtig: 0 - SUM( x1, x2 ); | + | Richtig: 0 - SUM( x1, x2 ); \\ |
| - | Negation von Zahlen oder Variablen innerhalb arimethischer Ausdrücke ist ebenfalls nicht zulässig: | + | Negation von Zahlen oder Variablen innerhalb arimethischer Ausdrücke ist ebenfalls nicht zulässig: |
| - | Falsch: X1 + -X2; | + | Falsch: X1 + -X2; \\ |
| - | Richtig: X1 - X1; | + | Richtig: X1 - X1; \\ |
| - | Mehrfaches Potenzieren: | + | Mehrfaches Potenzieren: |
| 3^2^4; entspricht 3^(2^4); | 3^2^4; entspricht 3^(2^4); | ||
| Zeile 75: | Zeile 81: | ||
| **IF(Prüfung, | **IF(Prüfung, | ||
| - | 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 | + | Ist eines der an eine IF-Funktion übergebende |
| - | 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. | + | < |
| - | IF(Gesamtsumme> | + | < |
| - | **Beachten Sie, dass das weglassen des Dannwert | + | <note important> |
| - | 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.</ |
| - | ** | + | \\ |
| **SWITCH(Testwert, | **SWITCH(Testwert, | ||
| - | 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 " | + | Als Argument kann der String " |
| - | + | Beispiel: | |
| - | Beispiel: | + | < |
| SWITCH(BEN1_deu, | SWITCH(BEN1_deu, | ||
| " | " | ||
| " | " | ||
| " | " | ||
| + | </ | ||
| ergibt " | ergibt " | ||
| - | **Beachten Sie, dass " | + | <note important> |
| ===== Mathematik & Statistik ===== | ===== Mathematik & Statistik ===== | ||
| Zeile 229: | Zeile 237: | ||
| **ADDLINE(Text1, | **ADDLINE(Text1, | ||
| - | Fügt eine beliebige Anzahl von Texten aneinander und trennt die einzelenen | + | Fügt eine beliebige Anzahl von Texten aneinander und trennt die einzelnen |
| + | **CONCAT_WS(separator, | ||
| + | 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 318: | Zeile 328: | ||
| Gibt die Kalenderwoche zurück. | Gibt die Kalenderwoche zurück. | ||
| + | \\ | ||
| + | ===== Datenbankfunktionen ===== | ||
| + | |||
| + | **SELECT(" | ||
| + | Führt eine Datenbankabfrage in folgender Form : \\ | ||
| + | <code MySql> | ||
| + | |||
| + | **GETSETTING(" | ||
| + | Gibt einen Konfigurationparameter zurück. \\ | ||
| + | |||
| + | **SETSETTING(" | ||
| + | Setzt einen Konfiguraitonsparmeter. \\ | ||
| + | |||
| + | |||
| + | /* | ||
| ===== Einschränkungen ===== | ===== Einschränkungen ===== | ||
| Zeile 331: | Zeile 356: | ||
| Logische Verknüpfungen\\ | Logische Verknüpfungen\\ | ||
| Sonstige Funktionen\\ | Sonstige Funktionen\\ | ||
| + | */ | ||