Document toolboxDocument toolbox

Formelmakros

Was sind Formelmakros?

Formelmakros stellen eine weitere Möglichkeit neben den Konstanten dar, eine Formel einer Stückliste allgemeingültig zu formulieren.

Ein Formelmakro ist ein Platzhalter für eine Formel, der zum Zeitpunkt der Auslösung einer Stückliste durch die tatsächliche Formel ersetzt wird.

Wir sehen uns den Unterschied am Beispiel an.

Wir wollen in einer Formel den Umfang eines rechteckigen
Elements mit 10 multiplizieren.

Dann müssen wir entweder

10*((SF[ Breite ]*2+SF[ Länge/Tiefe ]*2)/1000)

als Formel erfassen, oder wir definieren den unterstrichenen Abschnitt als Formelmakro und können die Formel dann so schreiben:

10*FM[ Umfang SF ]

Formelmakros definieren

Um ein Formelmakro zu definieren, gehen Sie von der Bearbeitung eines Typenstücklistenteils in die Bearbeitung der Formel, die Sie zu einem Makro machen wollen.

  • Markieren Sie den gewünschten Abschnitt und kopieren Sie ihn in die Zwischenablage.
  • Wechseln Sie über den Button Formel in die Übersicht der Formelmakros.
  • Wählen Sie aus dem Menü Ablage/Datei den Befehl Neu. Sie gelangen in den untenstehenden Dialog.
  • Fügen Sie die Formel ein und geben Sie ihr einen Namen und eine Beschreibung.

Formelmakros verwenden

Um ein Formelmakro zu verwenden, selektieren Sie das gewünschte Makro in der Formelmakroübersicht und klicken auf Übernehmen.

Dazu sollten Sie sich natürlich in einer Formelbearbeitung befinden.

Formelmakros sind extrem hilfreich, wenn bestimmte Formeln in mehreren Stücklisten vorkommen und eventuell geändert werden müssen. Außerdem erhöhen sie die Lesbarkeit einer Formel.

Je mehr Sie mit Formelmakros arbeiten, umso weniger fehleranfällig werden Ihre Stücklisten.

Einige kreative Ideen für Formelmakros

Mit Formelmakros läßt sich viel mehr machen, als man auf den ersten Blick denken mag. Hier einige Denkanstöße und Richtlinien zur Verwendung:

Einheiten einfacher machen

  • Formelname: Minuten
  • Formeldefinition: /60
  • Verwendungsbeispiel: (2,5FM[ Minuten ])
  • ausführliche Form: (2,5/60)
  • Vorteil: wenn man in Vorgabezeiten mit Minuten rechnen will, muß nicht immer der Quotient dabeistehen.
    --> Dieses Vorgehen sollten Sie nicht verwenden, wenn Sie mit langen Formelmakros arbeiten. Achten Sie dann vielmehr darauf, dass ein Formelmakro in sich korrekt und auswertbar ist.

Anzahl aus Position oder frei eingeben

  • Formelname: WahlAnzahl
  • Formeldefinition: Wenn (“K[ Anzahl ]“=“Position“) DANN PF[ Anzahl ]SONST “K[ Anzahl ]“
  • Verwendungsbeispiel: FM[ Wahlanzahl ]
  • ausführliche Form: siehe oben
  • Vorteil: wenn man eine Stückliste manchmal unabhängig von dem Wert der Anzahl in der Auftragsposition auflösen will, ist diese Formel hilfreich. Eine Konstante Anzahl muß natürlich definiert werden. Diese erhält als Standardwert Position. Damit wird normalerweise die Anzahl aus der Auftragsposition verwendet. Ist dies nicht gewünscht, kann der Anwender bei der Auflösung eine Zahl eintragen.

Tipps

  • Kommentare können mit "#" eingefügt werden (alles was dahinter kommt wird in der gleichen Zeile ignoriert)
  • Die Formelmakros finden Sie auch über direkt über Konstanten -> Formelmakros
  • Zur Verwendung in der Stückliste können sie das gewünschte Makro markieren und mit Strg+C in die Zwischenablage kopieren. Das praktische dabei ist, dass es direkt in der richtigen Konvertierung FM[ Formelmakroname ] erstellt wird

Verwendung von Formelmakros in Konstanten

Syntaxhinweise

In Variablen können Sie Formelmakros verwenden, wobei Sie dann eine eigene Syntax beachten müssen:

  • Eine Formel im Wertfeld einer Variablen hat immer folgende Syntax: { Formel }
  • Eine andere Variable wird mit [Name] referenziert.

Eine gültige Formel ist also
{[Türanzahl]*3}.

Weiterhin ist gültig: {wenn FM[ makro2 ]=3 dann FM[ meinmakro ]*17 sonst 0}

Abfrage von Variablen mit Hilfe von Formeln

Einfache Abhängigkeiten lassen sich mit Formeln abbilden, welche direkt in die Datenbankfelder geschrieben werden.

Unsere Empfehlung ist in dem Zusammenhang auf Formelmakros zurückzugreifen - damit bleiben die ablaufenden Zusammenhänge transparenter und können über die Tabelle Formelmakros sauber ausgelesen werden.

Ausgehend von der Anlage von Variablen mit Auswahlliste - OFLTyp und Wert in der Auswahlliste "mela" führt folgende Abfrage zum Ergebnis, dass dann die Variable Belag gezogen wird:

{wenn "[OFLTyp]"="mela" dann "" sonst "[Belag]"}

Auswahlliste ergänzt um "furniert" und "lack" sieht so aus:

{wenn "[OFLTyp]"="mela" dann "" sonst (wenn "[OFLTyp]"="furniert" dann "[Belag]" sonst "[lack]")}

So kann weiter verschachtelt werden.

Vorgabewerte für Verknüpfung von Artikelnummern

Mit Vorgabewerten können Artikelnummern aus Variablen und fest definierten Vorgabewerten "zusammengebaut" werden.

{"Fpy-""[StaronFarbe]""-19"}

FPY- wird hier mit einem Wert aus einer Auswahlliste (StaronFarbe) und -19 zu einer Artikelnummer verknüpft.<br>
Heraus kommt die Artikel Nr: FPY-grün-19 - wobei grün der Wert aus einer Auswahlliste ist.

Der Vorgabewert wird bereits in der Variablendefinition hinterlegt. Die Variable wird idealerweise auf "nicht änderbar" gesetzt.

Mischen von Konstanten und Variablen

In der Formel zu einer Variablen, wie sie verwendet wird, um Artikelnummern in der Stückliste durch Verknüpfung zu erzeugen, können Sie nicht Variable (in eckigen Klammern) und Konstanten (K[ Konstantenname ]) mischen. Nur Variable können referenziert werden.