Document toolboxDocument toolbox

Formeln - Hinweise zur Syntax

Einführung

Hier erfahren Sie mehr darüber, wie Sie in profacto mit Formeln im Allgemeinen arbeiten. Es gibt darüber hinaus in verschiedenen Bereichen Sonderregeln, was die "Verpackung" von Formeln angeht, aber generell immer funktioniert das, was hier erläutert wird.

Zahlen, Strings und Variable

Zahlen und Strings

profacto arbeitet in seinen Formeln mit Zahlen, Strings und Variablen.

Beispiele für Zahlen:

  • 1
  • 2,4
  • 334,998

Beispiele für Strings:

  • "Test"
  • "Das ist ein Satz"

Variable

Variable sind in profacto je nach Situation anwendbar. In der Stückliste und in den Vorgabezeiten können Sie Variable wie PA, PT, SA oder BA verwenden. Alternativ ist auch eine Notation wie SF[ Anzahl ] möglich. Bei allen Variablen, auf die Sie über SF, SEF oder PF zugreifen, muß der Begriff innerhalb der eckigen Klammern in Leerzeichen stehen, also SF[ Feldname ]. Vor und nach Feldname steht ein Leerzeichen!

In manchen Fällen haben Sie auch Zugriff auf Variable wie kGroesse oder kAnzahlTueren. Diese Variable werden im Variablenmanager definiert, ohne das vorangestellte "k", und werden so in der Stückliste verwendet.

Nicht jede Variable kann in jeder Situation verwendet werden, beispielsweise greift in der Auswertung eines Textfelds einer Konstanten nicht jede Variable.

Variable haben in profacto die Besonderheit, dass sie in einer Formel nur gelesen werden können, sie können in einer Formel ihren Wert nicht ändern. Andererseits wird das Ergebnis einer Formel in der Regel zu einem Feldwert, die eben beispielsweise die Anzahl eines Stücklistenteils, und kann so auch wieder in einer anderen Formel verwendet werden.

Operatoren

Gültige Operatoren sind

  • +, -, *, / für Zahlen
  • UND und ODER für Wahrheitswerte
  • & für Strings

Ausdrücke

Ein Ausdruck ist eine mehr oder minder komplexe Kombination von Zahlen, Strings, Variablen und Funktionen, die durch Operatoren verknüpft sind und die durch den Formelparser von profacto ausgewertet werden, um ein Ergebnis zu liefern.

Beispiele:

  • SA*2
  • SB/1000
  • WENN SA=2 dann SB/4 SONST SB
  • Links("Hallo";3)
  • Links("SF[ Bezeichnung ]";3)

Kontrollstrukturen

Die einzige Kontrollstruktur, die Sie in profacto verwenden können ist

WENN <BoolAusdruck> DANN <Ausdruck> SONST <Ausdruck>

Ein BoolAusdruck muss einen Wahrheitswert liefern, also Wahr oder Falsch.

Gültig als BoolAusdruck ist

  • (1=2)
  • (Links("SF[ Bezeichnung ]";4)="Test")
  • (SA=5)

In solchen Konstrollstrukturen ist es immer gut, Ausdrücke zu klammern.

Funktionen

Suchen(suchtext;text;beginn)

Sucht suchtext in text ab position beginn. Positionen werden ab 1 gezählt. Liefert die Position des Suchtexts oder einen Wert <= 0 zurück

Links(Text;Anzahl)

Liefert die linken Anzahl Zeichen von Text

Rechts(Text;Anzahl)

Liefert die rechten Anzahl Zeichen von Text

Wiederholen(Text; Anzahl)

 Wiederholt Text Anzahl mal, aus Wiederholen("*+";2) wird "*+*+*+"

Identisch(T1;T2)

Prüft, ob T1=T2, Gross/Kleinschreibung wird nicht berücksichtigt

Länge(Text)

Liefert die Länge des Texts in Zeichen zurück

Teil(Text;Beginn;Anzahl)

Liefert ab Beginn maximal Anzahl Zeichen aus Text zurück

Str(Zahl)

Macht aus der Zahl einen String

Text 1 & Text2

Verknüpft die beiden Texte zu einem gesamten Text

Wahr, Falsch

Wahrheitswerte

Abs(Zahl)

Liefert den Absolutwert einer Zahl zurück, also immer positiv

Runden(Zahl; NKStellen)

Rundet eine Zahl auf NKStellen kaufmännisch

Wurzel(Zahl)

Liefert die Quadratwurzel einer Zahl

Sin(Zahl)

Liefert den Sinus einer Zahl.

Cos(Zahl)

Liefert den Cosinus einer Zahl.

Tan(Zahl)

Liefert den Tangens einer Zahl.

Exp(Zahl)

Exponentialfunktion auf Basis 10 einer Zahl

Power(Basis, Exponent)

Berechnet Basis hoch Exponent

Pi()

Liefert die Zahl Pi zurück

Num(String)

Liefert den Zahlenwert eines Strings zurück. Besteht ein String aus Zahlen und Buchstaben, wird nur der erste Zahlenanteil von links gesehen verwendet.