Crystal Reports Designer  

类型自动转换(Basic 语法)

一般情况下,在 Crystal Reports 中若没有明确提供类型转换函数,则无法在期待某一类型值的位置使用另一类型的值。例如:

Dim postalCode as String
'Error- assigning a Number value to a String variable
postalCode = 10025
'OK- use the type conversion function CStr
'to create "10025"
postalCode = CStr (10025, 0)

但是,有几种转换已可以自动进行:

例如,以下赋值是正确的:

Dim cost As Currency
'Same as: cost = CCur (10)
cost = 10
Dim orderDate As DateTime
'Same as: orderDate = CDateTime (1999, 9, 23, 0, 0, 0)
orderDate = CDate (1999, 9, 23)
Dim aRange As Number Range
'Same as: aRange = 20 To 20
aRange = 20
Dim aRangeArray () As Number Range
'Same as :
'aRangeArray = Array (10 To 10, 20 To 25, 2 To 2)
aRangeArray = Array (10, 20 To 25, 2)
注意   不允许反向转换。例如:
Dim num As Number
num = 5 + CCur (10) 'Error
'OK- convert to Number type using the CDbl function
num = CDbl (5 + CCur (10))

将 5 转换为 CCur (5) 并添加到 CCur (10) 得到 CCur (15)。但是,无法自动将该“货币”值赋给“数字”变量 num,因为不允许从“货币”自动转换到“数字”。同样,“数字”参数可以提供给接受“货币”参数的函数,并且“数字”参数将转换为“货币”,而在没有首先使用 CDbl 将“货币”显式转换为“数字”的情况下,“货币”参数就无法提供给接受“数字”参数的函数。

另请参见

变量 | 简单数据类型 | 范围数据类型 | 数组数据类型