CX_CURRENCY_RATE::CurrencyConvert
Beschreibung:
Mit dieser Funktion wird eine Währungseinheit in eine andere konvertiert. Dazu bekommt sie neben der Ausgangswährung eine Zielwährung und die gewünschte Konvertierungsart angegeben. Ist eine Konvertierung möglich, so wird die Menge an Zielwährung errechnet und der Wahrheitswert TRUE, als Zeichen für eine erfolgreiche Konvertierung, zurückgegeben. Falls die Konvertierung nicht möglich war, wird der Wert FALSE geliefert.
Code-Beispiel:
In dem Beispiel-Programm wird eine Konvertierung von fünf Deutschen Mark in
U.S.-Dollar bei einem Wechselkurs von "1,62 DEM = 1 USD" durchgeführt,
wobei die Konvertierungsart keine Rolle spielt, da "immer" gewählt
wurde und eine Konvertierung in beliebiger Richtung möglich ist. Als Ergebnis
erhält man den Wahrheitswert TRUE auf dem Stack, und es wird der entsprechende
Wert an U.S.-Dollar in toValue gespeichert.
Var(currencyRate, valuePer, fromValue, toValue)
CreateTransObject(CX_VALUE_PER) -> valuePer
"1,62 DEM / 1 USD" valuePer Put
CreateTransObject(CX_CURRENCY_RATE) -> currencyRate
valuePer currencyRate SetReference(amount)
CreateTransObject(CX_VALUE) -> fromValue
"5 DEM" fromValue Put
CreateTransObject(CX_VALUE) -> toValue
"0 USD" toValue Put
fromValue toValue 0 currencyRate Call(CurrencyConvert)
Stack | Position | Objekttyp | Kurzbeschreibung |
---|---|---|---|
Stack(In) | Top | CX_CURRENCY_RATE | die Währungsparität |
Top-1 | INTEGER | die Umrechnungsart | |
Top-2 | CX_VALUE | die Zielwährung | |
Top-3 | CX_VALUE | der Ausgangswährungs-Wert | |
Stack(Out) | Top | INTEGER | der Wahrheitswert, der anzeigt, ob eine Konvertierung durchgeführt werden konnte |