Parameter für Kostenberechnung
Parameter werden wie Platzhalter behandelt. Das bedeutet, dass an den Parameterstellen genau die benötigten Parameterinhalte eingesetzt werden.
Parameter können nur innerhalb von Zellen, deren Zelltyp Text mit Auswertung oder Zahl mit Auswertung ist, sowie innerhalb bedingter Parameter verwendet werden.
Formelausdruck
Eine Formel entspricht folgender Formelsyntax:
Kette := [{+,-}] Ausdruck [{+,-,*,/} Ausdruck [...]...]
wobei
Ausdruck := {Zahl, Parametername, ( Kette ), | Kette |}
Sie können also auch Klammern setzen, wobei die Klammerausdrücke von innen nach außen berechnet werden (die Klammern haben also Vorrang). Beträge werden wie Klammern gehandhabt, jedoch ist das Ergebnis stets positiv.
Es gilt nicht "Punktrechnung vor Strichrechnung". Die Abarbeitung erfolgt von links nach rechts.
Formeln werden nur bei Zellen des Zelltyps Zahl mit Auswertung oder bedingten Zahlparametern berechnet. Bei Zellen des Zelltyps Text mit Auswertung oder bedingten Textparametern werden nur Zeichenketten miteinander verbunden (ein Operator ist nicht erlaubt).
Bedingte Parameter
Bedingte Parameter sind Parameter, die von anderen Parametern abhängen. Dabei muss über den Typ definiert werden, ob das Ergebnis ein Text- oder ein Zahlparameter ist. Die Syntax eines bedingten Textparameters ist:
formular="IF{ Prädikat };{ Dann };{ Sonst }"
Dabei stellt das Prädikat die Bedingung dar, die erfüllt oder nicht erfüllt ist. Bei Erfüllung wird in den Teil Dann gesprungen, ansonsten (bei Nichterfüllung) in den Sonst-Teil. Das Prädikat besitzt folgende Syntax:
Attribut-Ausdruck; Operation; Wert-Ausdruck
Für das Attribut und den Wert kann ein beliebiger Formelausdruck verwendet werden - also eine Konstante, ein existierender Parameter oder eine Formel. Als Operatoren sind möglich:
{=, <, >, <=, >=}
Die im Prädikat verwendeten Parameter werden in dem Typ des bedingten Parameters interpretiert. Das bedeutet, dass Zahlparameter bei bedingten Textparametern als Texte und Textparameter bei bedingten Zahlparametern als Zahlen interpretiert werden. Analog gilt dies für verwendete Operatoren.
Bedingungen sind in den Dann und Sonst-Teilen beliebig verschachtelbar.
Beispiel eines bedingten Zahlparameters zur Bestimmung des Kostenansatzes für eine Brücke in Abhängigkeit zur Brückenlänge (zur Übersicht wurde die Formel in logische Zeilen aufgeteilt):
<parameter type="TSplineCostsParameterFloatConstraint" name="$KBWBR$" formular="
IF{$$BR_LPL$$;<=;15.0};
{$KOST06_BRUEK01$};{
IF{$$BR_LPL$$;<=;30.0};
{$KOST06_BRUEK02$};{
IF{$$BR_LPL$$;<=;100.0};
{$KOST06_BRUEK03$};
{$KOST06_BRUEK04$}
}
}"
/>
Gültigkeitsbereich eines Parameters
Der Gültigkeitsbereich (Kontext) eines Parameters ist immer global, falls er nicht explizit in einem lokalen Gültigkeitsbereich erstellt wurde. Lokale Gültigkeitsbereiche ergeben sich durch Einzelbrücken, Einzeltunnel, einzelne Stützwände oder einzelne Lärmschutzwände. Parameter, die in Zeilen mit speziellem Inhalt erstellt werden, erhalten ebenso den lokalen Gültigkeitsbereich der Zeile.
Wird ein Parameter in einem lokalen Gültigkeitsbereich verwendet, wird zuerst im lokalen Gültigkeitsbereich gesucht. Ist dieser nicht vorhanden, wird automatisch im globalen Gültigkeitsbereich gesucht.
Es können globale Parameter durch gleichnamige lokale Parameter verdeckt werden.
Es besteht keine direkte Möglichkeit, lokale Parameter in einem globalen Kontext auszuwerten. Zum Verwenden der lokalen Parameter können Sie nur Summen über alle lokalen Gültigkeitsbereiche bilden: Mit $SUM[ Parameter ]$ ermitteln Sie die Summe der Parameterwerte über alle vorhandenen lokalen Gültigkeitsbereiche.
Vordefinierte Parameter
Aus der Konstruktionslinie und den Modellobjekten werden Werte berechnet, die KorFin® für die Kostenanalyse bereithält.
Die Bezeichner der von KorFin® definierten Parameter sind mit $$ eingeschlossen. Mit dieser Konvention erkennen Sie sofort den Ursprung der Parameter.
Allgemeine Parameter
Bezeichner | Typ | Beschreibung |
$PARAM( Konstruktionslinienname, Parameter)$ | Evaluieren eines Parameters aus der jeweiligen Konstruktionslinie. z.B.: $PARAM(Autobahn1, RODUNG_AHORN_HöHE_20_M)$, um die Anzahl der gerodeten Ahornbäume mit der Höhe 20m zu verwenden. | |
$$BAUMTYP$$ | Evaluieren aller gerodeten Bäume (Vegetation) über alle Konstruktionslinien mit gegebenem Vegetationstyp. z.B.: $$RODUNG_AHORN_HöHE_20_M$$ |