basic语法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(4)、布尔型:Boolean
比如True或False,一般Yes可取代True,No可取代False。
(5)、日期及时间型:Date,Time及DataTime
Date类型用于存放日期,Time类型用于存放时间,DataTime类型则可同时存放日期和时间
时间可以使用#...#来标识如:#2001/10/1#
CDateTime()、CDate()及CTime()可以使用CDateTime()、CDate()、CTime()将日期时间字符串,数字等转换成DateTime,Date,Time型的数据。
(4)、数组(队列)
Array()函数:用来建立数组,与Crystal语法中的MakeArray()具有相同的功能。注意Array中的数据类型要一致。
Dim 数组名(数组长度)AS数据类型
例子:Dim Week(6) AS String
Week=Array("Mon","Tue","Wed","Thu","Fri","Sat","Sun")
4、数组除了可以存放简单数据类型数据外,还可以存放范围数据
5、运算符
(1)、布尔运算符
Not:产生相反的效果
(1)、字符串
Len()函数:用来计算字符串的长度;
Trim():去掉字符串中的所有空格;
LTrim():去掉字符串开头的空格;
RTrim()函数:删除字符串尾部的空格;
Ucase(“jack”)函数:将字符串转换成大写
Lcase(“JACK”)函数:将字符串转换成小写
其执行步骤是先判断布尔表达式是否成立,如果成立,就执行省略号中的程序段,否则就跳出该while循环。
(6)、Do
7、全局变量
上面讲述的Dim语句声明的变量都是属于局部变量,而全局变量的语法格式如下:
Global 全局变量名 AS 变量类型 例子:Global Sdepart AS String
请注意,Null与空字符串时不一样的,Null指该字段中没有值。另外,还有PreviousIsNull()及NextIsNull()可检查上一条或则下一条字段值是否为空值。
(2)、Select Case语句
Select Case 变量
Case 条件1
程序
Case 条件2
程序
Case Else
程序
End Select
(3)、For/Next语句
2、变量及初始值
变量在使用前必须使用Dim关键字声明,格式为:
Dim变量名 AS 数据类型 变量命名比较灵活,但不能和BASIC语法中的关键字同名,关键字是以蓝色显示的。
变量类型可以分为以下几种:
(1)、简单类型
(2)、范围类型
(3)、用来存放简单类型和范围类型的数组
3、水晶报表的BASIC语法公式中只支持一维数组,且数组的下标从1开始,这和很多的编程语言的语法规则不一样。按照如下方式定义一个数组:
请记住,凡是定义为Global的全局变量,只要这些变量的名称相同,则其所占用的内存也相同。
8、共享变量
除了全局变量外,还有可以在主报表和子报表之间共享的变量,前面介绍的全局变量在主报表中使用同一块内存,而共享变量的内存是有主报表和子报表共用,所以共享变量的定义域比全局变量更大,也就是说,共享变量不仅可以跨域公式,还可以跨域主/子报表。
IsDateTime(),IsDate(),IsTime()
格式:
WeekDay(),WeekdayName()及MonthName()
格式:
DateSerial()及TimeSerial()
格式:
DateDiff()
(3)、类型转换
CBool()函数:该函数仅接受Number或Currency类型的数据,若给定的值不为0则返回True,否则返回False,如下例:CBool(-12.1) '返回True
Mid()、Left()、Right()
StrCmp(“apple”,“app”):字符串比较函数,前一个是目标字符串,后一个是比较字符串。
Instr()函数:寻找字符串内容函数
Filter()函数:从数组中寻找字符串内容
Replace()函数:取代字符串内容
StrReverse()函数:字符串反转
And:逻辑与
Or:逻辑或
Xor:异或
Eqv:(a Eqv b,a和b两者值相同的时候,运算结果为真)
Imp:(a Imp b,除a为真,b为假外,其他运算结果都为真)
(2)、比较运算符
=:
<>:
<:
<=:
>:
>=:
(3)、NULL值
(4)、算术运算符
+:
-:
*:
/:
For I=1 To n
....
Next I
(4)、Exit For(只用于For循环语句中)
有时,可能在循环语句未执行完毕的时候, 就想先结束该循环语句的执行。
(5)、While
while 语句用来条件反复执行一段语句,该语句基本结构如下:
while 布尔表达式
......
end
9、报表中公式的执行顺序
指定公式执行的顺序,可以使用函数EvaluateAfter()
例子:
EvaluateAfter(@gongshi2)
‘gongshi1的公式代码
......
10、Cystal Reports内建函数
水晶报表中的十几种内建函数
\:
Mod:
-:
^:
6、控制公式执行流程的语句
(1)、If-Then-Else语句
If 布尔表达式 Then
...
或则
End If
if Байду номын сангаас尔表达式 then
...
elseif 布尔表达式 then
...
elseif 布尔表达式 then
...
else
...
endif
UBound()函数:传递回数组的长度
统计:可以对数组中的数据进行计算如求总和,求平均值等等。
(5)、格式化
(6)、判断NULL值
判断Null的函数格式为:IsNull(字段名)
比如下例:可检查用户名字是否为空:IsNull({})
Basic公式的语法
1、数据类型
(1)、字符串型:String
字符串处理有很多函数,如:Left(),Right(),Mid(),Trim()
(2)、数字型:Number
(3)、货币型:Currency
Crystal Reports中提供CCur()函数,可以将数值型数据转换为货币型数据,比如:CCur(500)。
Split()函数:分割字符串函数
Join()函数:连接字符串
(2)、日期时间
CurrentDate,CurrentTime,CurrentDateTime取得当前时间
要取出日期中的年,月,日甚至时,分,秒则可以使用Year(),Month(),Day(),Hour(),Minute(),Second()函数
定义共享变量的语法格式如下:
Shared 共享变量名 As 变量类型
同样在主报表中定义了共享变量后,在子报表中药引用该共享变量的时候,也需要再声明一次。主子报表的共享变量其实也是占用同一块内存。
另外请记住,当修改子报表后,如果看到报表的结果并没有更新,这时请在报表设计区中右键单击子报表控件,并在弹出的对话框中选择“重新导入子报表”,这样就能看到更新的结果了。
CCur()函数:该函数可以将Number,String类型数据转换成Currency类型的数据
如下例:CCur(“1200”) ‘返回1200
CDbl()函数:将字符串转换成Number型的数据,如下例:CDbl(“143.2”) ’返回143.2
CStr()函数:该函数可以把输入数据转换成字符串,也可以用来格式化数据内容,若输入的数据是Boolean值,则返回值只有两种“真”,“假”。若输入的参数是Number或Currency,则可以指定的参数就非常多,具体格式请读者们参考相关的帮助。
比如True或False,一般Yes可取代True,No可取代False。
(5)、日期及时间型:Date,Time及DataTime
Date类型用于存放日期,Time类型用于存放时间,DataTime类型则可同时存放日期和时间
时间可以使用#...#来标识如:#2001/10/1#
CDateTime()、CDate()及CTime()可以使用CDateTime()、CDate()、CTime()将日期时间字符串,数字等转换成DateTime,Date,Time型的数据。
(4)、数组(队列)
Array()函数:用来建立数组,与Crystal语法中的MakeArray()具有相同的功能。注意Array中的数据类型要一致。
Dim 数组名(数组长度)AS数据类型
例子:Dim Week(6) AS String
Week=Array("Mon","Tue","Wed","Thu","Fri","Sat","Sun")
4、数组除了可以存放简单数据类型数据外,还可以存放范围数据
5、运算符
(1)、布尔运算符
Not:产生相反的效果
(1)、字符串
Len()函数:用来计算字符串的长度;
Trim():去掉字符串中的所有空格;
LTrim():去掉字符串开头的空格;
RTrim()函数:删除字符串尾部的空格;
Ucase(“jack”)函数:将字符串转换成大写
Lcase(“JACK”)函数:将字符串转换成小写
其执行步骤是先判断布尔表达式是否成立,如果成立,就执行省略号中的程序段,否则就跳出该while循环。
(6)、Do
7、全局变量
上面讲述的Dim语句声明的变量都是属于局部变量,而全局变量的语法格式如下:
Global 全局变量名 AS 变量类型 例子:Global Sdepart AS String
请注意,Null与空字符串时不一样的,Null指该字段中没有值。另外,还有PreviousIsNull()及NextIsNull()可检查上一条或则下一条字段值是否为空值。
(2)、Select Case语句
Select Case 变量
Case 条件1
程序
Case 条件2
程序
Case Else
程序
End Select
(3)、For/Next语句
2、变量及初始值
变量在使用前必须使用Dim关键字声明,格式为:
Dim变量名 AS 数据类型 变量命名比较灵活,但不能和BASIC语法中的关键字同名,关键字是以蓝色显示的。
变量类型可以分为以下几种:
(1)、简单类型
(2)、范围类型
(3)、用来存放简单类型和范围类型的数组
3、水晶报表的BASIC语法公式中只支持一维数组,且数组的下标从1开始,这和很多的编程语言的语法规则不一样。按照如下方式定义一个数组:
请记住,凡是定义为Global的全局变量,只要这些变量的名称相同,则其所占用的内存也相同。
8、共享变量
除了全局变量外,还有可以在主报表和子报表之间共享的变量,前面介绍的全局变量在主报表中使用同一块内存,而共享变量的内存是有主报表和子报表共用,所以共享变量的定义域比全局变量更大,也就是说,共享变量不仅可以跨域公式,还可以跨域主/子报表。
IsDateTime(),IsDate(),IsTime()
格式:
WeekDay(),WeekdayName()及MonthName()
格式:
DateSerial()及TimeSerial()
格式:
DateDiff()
(3)、类型转换
CBool()函数:该函数仅接受Number或Currency类型的数据,若给定的值不为0则返回True,否则返回False,如下例:CBool(-12.1) '返回True
Mid()、Left()、Right()
StrCmp(“apple”,“app”):字符串比较函数,前一个是目标字符串,后一个是比较字符串。
Instr()函数:寻找字符串内容函数
Filter()函数:从数组中寻找字符串内容
Replace()函数:取代字符串内容
StrReverse()函数:字符串反转
And:逻辑与
Or:逻辑或
Xor:异或
Eqv:(a Eqv b,a和b两者值相同的时候,运算结果为真)
Imp:(a Imp b,除a为真,b为假外,其他运算结果都为真)
(2)、比较运算符
=:
<>:
<:
<=:
>:
>=:
(3)、NULL值
(4)、算术运算符
+:
-:
*:
/:
For I=1 To n
....
Next I
(4)、Exit For(只用于For循环语句中)
有时,可能在循环语句未执行完毕的时候, 就想先结束该循环语句的执行。
(5)、While
while 语句用来条件反复执行一段语句,该语句基本结构如下:
while 布尔表达式
......
end
9、报表中公式的执行顺序
指定公式执行的顺序,可以使用函数EvaluateAfter()
例子:
EvaluateAfter(@gongshi2)
‘gongshi1的公式代码
......
10、Cystal Reports内建函数
水晶报表中的十几种内建函数
\:
Mod:
-:
^:
6、控制公式执行流程的语句
(1)、If-Then-Else语句
If 布尔表达式 Then
...
或则
End If
if Байду номын сангаас尔表达式 then
...
elseif 布尔表达式 then
...
elseif 布尔表达式 then
...
else
...
endif
UBound()函数:传递回数组的长度
统计:可以对数组中的数据进行计算如求总和,求平均值等等。
(5)、格式化
(6)、判断NULL值
判断Null的函数格式为:IsNull(字段名)
比如下例:可检查用户名字是否为空:IsNull({})
Basic公式的语法
1、数据类型
(1)、字符串型:String
字符串处理有很多函数,如:Left(),Right(),Mid(),Trim()
(2)、数字型:Number
(3)、货币型:Currency
Crystal Reports中提供CCur()函数,可以将数值型数据转换为货币型数据,比如:CCur(500)。
Split()函数:分割字符串函数
Join()函数:连接字符串
(2)、日期时间
CurrentDate,CurrentTime,CurrentDateTime取得当前时间
要取出日期中的年,月,日甚至时,分,秒则可以使用Year(),Month(),Day(),Hour(),Minute(),Second()函数
定义共享变量的语法格式如下:
Shared 共享变量名 As 变量类型
同样在主报表中定义了共享变量后,在子报表中药引用该共享变量的时候,也需要再声明一次。主子报表的共享变量其实也是占用同一块内存。
另外请记住,当修改子报表后,如果看到报表的结果并没有更新,这时请在报表设计区中右键单击子报表控件,并在弹出的对话框中选择“重新导入子报表”,这样就能看到更新的结果了。
CCur()函数:该函数可以将Number,String类型数据转换成Currency类型的数据
如下例:CCur(“1200”) ‘返回1200
CDbl()函数:将字符串转换成Number型的数据,如下例:CDbl(“143.2”) ’返回143.2
CStr()函数:该函数可以把输入数据转换成字符串,也可以用来格式化数据内容,若输入的数据是Boolean值,则返回值只有两种“真”,“假”。若输入的参数是Number或Currency,则可以指定的参数就非常多,具体格式请读者们参考相关的帮助。