Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Grundsätzlich ist es in Crystal Reports nicht möglich, Werte eines bestimmten Typs ohne expliziten Gebrauch einer Typenkonvertierungsfunktion zu verwenden, wenn Werte eines anderen Typs erwartet werden. Beispiel:
Dim postalCode as String
'Fehler - Zuweisung eines Zahlenwertes zu einer Zeichenfolgenvariablen.
postalCode = 10025
'OK - Verwenden der Typkonvertierungsfunktion CStr, um "10025" zu erstellen.
postalCode = CStr (10025, 0)
Es gibt jedoch einige Konvertierungen, die automatisch durchgeführt werden:
- Zahl zu Währung
- Datum zu DatumUhrzeit
- Konvertierung eines einfachen Typs zu einem Bereichswert desselben einfachen Typs
Die folgenden Beispielanweisungen sind korrekt:
Dim cost As Currency
'Identisch mit: cost = CCur (10)
cost = 10
Dim orderDate As DateTime
'Identisch mit: orderDate = CDateTime (1999, 9, 23, 0, 0, 0)
orderDate = CDate (1999, 9, 23)
Dim aRange As Number Range
'Identisch mit: aRange = 20 To 20
aRange = 20
Dim aRangeArray () As Number Range
'Identisch mit: aRangeArray = Array (10 To 10, 20 To 25, 2 To 2)
aRangeArray = Array (10, 20 To 25, 2)
Anmerkung |
|---|
In umgekehrter Richtung ist diese Konvertierung jedoch nicht möglich. Beispiel: |
Dim num As Number
num = 5 + CCur (10) 'Dies ist ein Fehler.
' Convert to Number type using the CDbl function.
num = CDbl (5 + CCur (10))
5 wird automatisch zu CCur (5) konvertiert und zu CCur (10) hinzuaddiert, um CCur (15) zu erhalten. Dieser Währungswert kann jedoch nicht automatisch der Zahlenvariablen Zahl zugewiesen werden, da automatische Konvertierungen von Währung zu Zahl nicht zulässig sind. In ähnlicher Weise ist es möglich, einer Funktion, die ein Währungsargument erwartet, stattdessen ein Zahlenargument zu übergeben, da dieses Zahlenargument dabei automatisch in einen Währungswert umgewandelt wird. Umgekehrt ist es jedoch nicht möglich, einer Funktion, die ein Zahlenargument erwartet, ein Währungsargument zu übergeben, ohne dieses zuerst mit Hilfe der Funktion CDbl explizit zu einem Zahlenwert zu konvertieren.
Anmerkung