Definieren Sie komplexe Teilberechnungen von Berechnungsvorschriften, die in mehreren Attributberechnungen verwendet werden, als Berechnungsfunktionen. Eine Berechnungsfunktion wird über den Aufruf usefunction in der Berechnungsvorschrift einer Attributberechnung oder Berechnungsfunktion verwendet.
Warnung
Vermeiden Sie beim Aufruf von Berechnungsfunktionen aus anderen Berechnungsfunktionen zyklische Abhängigkeiten. Der Import einer solchen Kennzahlenkonfiguration wird mit Ausgabe einer Fehlermeldung abgebrochen.
XML-Tag |
Bezeichnung |
---|---|
function name |
Interner Name der Berechnungsfunktion. Wird im Funktionsaufruf referenziert. |
Resulttype |
Ergebnistyp (für die Verwendung mit anderen Operatoren). Mögliche Werte: |
Datatype |
Datentyp des Berechnungsergebnisses |
Usefunction |
Funktionsaufruf |
Sowohl bei der Definition als auch beim Aufruf einer Berechnungsfunktion müssen Ergebnistyp (resulttype) und Datentyp (datatype) mit angegeben werden.
Beispiel
Das folgende Beispiel zeigt die Definition der Berechnungsfunktion getPrincipal, die als Ergebnis einen Wert vom Datentyp TEXT zurückliefert.
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE keyindicatorconfig SYSTEM
"KeyindicatorConfiguration.dtd">
<keyindicatorconfig>
...
<function name="getPrincipal" resulttype="VALUE"
datatype="TEXT">
<if>
<exists>
<attribute name="AT_PRINCIPAL_NAME"
nodetype="PROCESS"/>
</exists>
<then>
<max>
<attribute name="AT_PRINCIPAL_NAME"
nodetype="PROCESS"/>
</max>
</then>
<else>
<max>
<attribute name="AT_PRINCIPAL_ID"
nodetype="PROCESS"/>
</max>
</else>
</if>
</function>
...
</keyindicatorconfig>
Aufruf der Berechnungsfunktion
Die zuvor definierte Berechnungsfunktion getPrincipal wird in der Berechnungsvorschrift des Attributs AT_EXP mit usefunction aufgerufen. Zu beachten ist, dass der Ergebnistyp der Berechnungsfunktion zum verarbeitenden Operator passt. Im Beispiel wird syntaktisch korrekt der Ergebnistyp VALUE (Wert) mit dem Werte verarbeitenden Operator eq kombiniert.
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE keyindicatorconfig SYSTEM
"KeyindicatorConfiguration.dtd">
<keyindicatorconfig>
...
<calcattr name="AT_EXP" type="PROCESS">
<calculation>
<if>
<eq>
<usefunction name="getPrincipal"
resulttype="VALUE" datatype="TEXT"/>
<constant>
<dataitem>
KTD
<datatype name="TEXT">Text</datatype>
</dataitem>
</constant>
</eq>
<then>
...
</then>
...
</if>
</calculation>
</calcattr>
...
</keyindicatorconfig>
Erstellen Sie Berechnungsfunktionen mit Hilfe des PPM Customizing Toolkit. Im Menü Berechnete Attribute des Moduls Kennzahlen und Dimensionen rufen Sie den Dialog zum Anlegen, Bearbeiten oder Löschen von Berechnungsfunktionen über die Schaltfläche Berechnungsfunktionen konfigurieren auf. Wenn Berechnungsfunktionen im System gepflegt sind, sind diese im Dialog Berechnungsvorschrift definieren sowohl für die Definition weiterer Berechnungsfunktionen als auch für die Definition von Attributberechnungen verfügbar.