PB函数⼤全(超全,解析很全⾯)
这⼏天在pb花的时间⽐较长,⽤⼀个新的ide,⼀个新的语⾔,在短时间内去开发⼀个MIS,也是⽐较有难度的⼀件事⼉。最主要的是熟悉语法格式和各种常⽤函数,再结合以前所学的编程语⾔,来快速消化并掌握它。
⼯欲善其事,必先利其器。所以熟悉了语法格式后,常⽤函数则需要有个⼤概了了解,⽅便⽤时来查。下⾯是我收集的常⽤函数,⽐较多,希望对⼤家有⽤。
Abs()
功能计算绝对值。
语法Abs ( n )
参数n:要得到绝对值的数值型变量或表达式返回值返回值的数据类型与n的数据类型相同,函数执⾏成功时返回n的绝对值。如果参数n的值为NULL,Abs()函数返回NULL。
Ceiling()
功能返回⼤于n的最⼩整数。
语法Ceiling ( n )
参数n:数值型变量或表达式返回值返回值的数据类型与n的数据类型相同。函数执⾏成功时返回⼤于n的最⼩整数。如果参数n的值为NULL,Ceiling()函数返回NULL。
Cos()
功能计算余弦,其中参数以弧度为单位。
语法Cos ( n )
参数n:数值型变量或表达式返回值Double。函数执⾏成功时返回n的余弦。如果参数n的值为NULL,Cos()函数返回NULL。
Exp()
功能计算e的n次⽅。
语法Exp ( n )
参数n:指定幂值返回值Double。函数执⾏成功时返回e(约等于2.71828)的n次⽅。如果参数n的值
为NULL,Exp()函数返回NULL。
Fact()
功能计算n的阶乘。
语法Fact ( n )
参数n:数值型变量或表达式返回值Double。函数执⾏成功时返回n的阶乘。如果参数n的值为NULL,Fact()函数返回NULL。
Int()
功能得到⼩于等于n的最⼤整数。
语法Int ( n )
参数n:数值型变量或表达式返回值Integer。函数执⾏成功时返回⼩于等于n的最⼤整数。如果n的值太⼩或太⼤,超过了整数的表⽰范围,则函数返回0。如果参数n的值为NULL,Int()函数返回NULL。
Log()
功能计算n的⾃然对数。
语法Log ( n )
参数n:数值型变量或表达式,其值必须⼤于0返回值Double。函数执⾏成功时返回n的⾃然对数。如果n⼩于等于0,将导致运⾏错误。如果参数n的值为NULL,Log()函数返回NULL。
LogTen()
功能计算n的常⽤对数(以10为底)。
语法LogTen ( n )
参数n:数值型变量或表达式,其值必须⼤于0返回值Double。函数执⾏成功时返回n的常⽤对数。如果n⼩于等于0,将导致运⾏错误。如果参数n的值为NULL,LogTen()函数返回NULL。
Max()
功能求两个数中的最⼤值。
语法Max ( x, y )
参数x:数值型变量或表达式,参加⽐较的第⼀个数y :数值型变量或表达式,参加⽐较的第⼆个数返回值以x、y中数据类型更精确的数据类型作为该函数的返回值数据类型。函数执⾏成功时返回参数⽐较的两个数中更⼤者。如果任何参数的值为NULL,Max()函数返回NULL。
Min()
功能求两个数中的最⼩值。
语法Min( x, y )
参数x:数值型变量或表达式,参加⽐较的第⼀个数y :数值型变量或表达式,参加⽐较的第⼆个数返回值以x、y中数据类型更精确的数据类型作为该函数的返回值数据类型。函数执⾏成功时返回参数⽐较的两个数中较⼩者。如果任何参数的值为NULL,Min()函数返回NULL。
Mod()
功能求余数。
语法Mod ( x, y )
参数x:数值型变量或表达式,被除数y :数值型变量或表达式,除数返回值以x、y中数据类型更精确的数据类型作为该函数的返回值数据类型。函数执⾏成功时返回x除以y所得的余数。如果任何参数的值为NULL,Mod()函数返回NULL。
Pi()
功能计算n与Pi()的乘积。
语法Pi ( n )
参数n:数值型变量或表达式返回值Double。函数执⾏成功时返回n与Pi()的乘积。发⽣错误时返回-1。如果参数n的值为NULL,Pi()函数返回NULL。Rand()
功能得到1与n之间的⼀个伪随机数。
语法Rand ( n )
参数n:数值型变量或表达式,指定要产⽣的伪随机数的上界。有效值在1到32,767之间返回值与n的数据类型相同。函数执⾏成功时返回1与n之间的⼀个伪随机数,包括1和n在内。如果参数n的值为NULL,Rand()函数返回NULL。
Randomize()
功能初始化伪随机数发⽣器,这样让应⽤程序每次使⽤不同的伪随机数序列。
语法Randomize ( n )
参数n:数值型变量或表达式,指定伪随机数⽣成器使⽤的起始值,不同的起始值可以⽣成不同的伪随机数序列。当n的值为0时,该函数把系统时钟作为伪随机数⽣成器的起始值,这样可以⽣成不可重复的伪随机数序列。当n的值不为0时,可以产⽣不同的伪随机数序列,但是,如果两次使⽤相同的伪随机数⽣成器起始值,那么两次⽣成的伪随机数序列相同。n的值在0到32,767之间返回值Integer。极少使⽤该函数的返回值。
Round()
功能将x四舍五⼊到n位。
语法Round ( x, n )参数x:要四舍五⼊的数值型数据n:整数类型,指定从哪个⼩数位上四舍五⼊x。有效值在0到18之间返回值Decimal。函数执⾏成功时返回将x四舍五⼊到⼩数点后第n位的数值,如果函数执⾏失败或任何参数的值为NULL,Round()函数返回NULL。
Sign()
功能确定n是整数、负数还是零。
语法Sign ( n )
参数n:数值型变量或表达式,指定要测试符号的值返回值Integer。当n⼤于0时返回1;当n⼩于0时返回-1;当n等于0时返回0。如果参数n的值为NULL,Sign()函数返回NULL。
Sin()
功能计算正弦,其中参数以弧度为单位。
语法Sin( n )
参数n:数值型变量或表达式返回值Double。函数执⾏成功时返回n的正弦。如果参数n的值为NULL,Sin()函数返回NULL。
Sqrt()
功能计算平⽅根。
语法Sqrt ( n )
参数n:数值型变量或表达式,指定要计算平⽅根的数据返回值Double。函数执⾏成功时返回n的平⽅根。如果n是负数,则执⾏该函数时引发运⾏错误。如果参数n的值为NULL,Sqrt()函数返回NULL。
Tan()
功能计算正切,其中参数以弧度为单位。
语法Tan( n )
参数n:数值型变量或表达式返回值Double。函数执⾏成功时返回n的正切。如果参数n的值为NULL,Tan()函数返回NULL。
Truncate()
功能截断数值到指定的⼩数位。
语法Truncate ( x, n )
参数x:要截断的数值型数据n:整数类型,指定从哪个⼩数位上截断x。有效值在0到18之间返回值Decimal。函数执⾏成功时返回将x截断到⼩数点后第n位的数值,如果函数执⾏失败或任何参数的值为NULL,Truncate()函数返回NULL。所谓截断就是舍弃指定位之后的数值。 
Asc()
功能得到字符串第⼀个字符的ASCII码整数值。
语法Asc ( string )
参数string:要得到第⼀个字符ASCII值的字符串返回值Integer。函数执⾏成功时返回string参数第⼀个字符的ASCII值,如果string参数的值为NULL,则Asc()函数返回NULL。Char()
功能将字符串的第⼀个字符、Blob变量的第⼀个值、或⼀个整数转换成字符。
语法Char ( n )
参数n:字符串、Blob变量或整数,也可以是包含上述类型数据的Any类型变量返回值Char。返回参数n的第⼀个字符。如果n参数的值为NULL,则Char()函数返回NULL。
Dec()
功能将字符串或Blob值转换成Decimal类型的值。
语法Dec ( stringorblob )
参数stringorblob:string类型变量或Blob类型变量。Blob类型变量时,把该变量第⼀个值转换为Decimal类型的值,其余部分被忽略。stringorblob参数也可以是包含上述类型数据的Any类型变量返回值Decimal。函数执⾏成功时返回相应的Decimal类型值。如果stringorblob参数中的值不是有效的PowerScript数字或数据类型不兼容,那么Dec()函数返回0。如果stringorblob参数的值为NULL,则Dec()函数返回NULL。
Double()
功能将字符串或Blob值转换成Double类型的值。
语法Double(stringorblob)
参数stringorblob:string类型变量或Blob类型变量。Blob类型变量时,把该变量第⼀个值转换为Double类型的值,其余部分被忽略。stringorblob参数也可以是包含上述类型数据的Any类型变量返回值Double。函数执⾏成功时返回相应的Double类型值。如果stringorblob参数中的值不是有效的PowerScript数字或数据类型不兼容,那么Double()函数返回0。如果stringorblob参数的值为NULL,则Double()函数返回NULL。
Integer()
功能将字符串或Blob值转换成Integer类型的值。
语法Integer ( stringorblob )
参数stringorblob:string类型变量或Blob类型变量。Blob类型变量时,把该变量第⼀个值转换为Integer类型的值,其余部分被忽略。stringorblob参数也可以是包含上述类型数据的Any类型变量返回值Integer。函数执⾏成功时返回相应的Integer类型值。如果stringorblob参数中的值不是有效的PowerScript数字或数据类型不兼容,那么Integer()函数返回0。如果stringorblob参数的值为NULL,则Integer()函数返回NULL。
Long()
功能将其它类型的数据转换为Long类型的值。该函数有两种语法格式:
语法⼀、将两个⽆符号整数组合成⼀个长整数值;
语法⼆、将字符串或Blob值转换成Long类型的值。下⾯分别予以介绍:
语法⼀、将两个⽆符号整数组合成⼀个长整数值
语法Long ( lowword, highword )
参数lowword:UnsignedInteger类型,指定长整数中的低位值highword:UnsignedInteger类型,指定长整数中的⾼位值返回值Long。函数执⾏成功时返回由低位值和⾼位值组合后的长整数值,发⽣错误时返回-1。如果任何参数的值为NULL,则Long()函数返回NULL。
语法⼆、将字符串或Blob值转换成Long类型的值
语法Long ( stringorblob )
参数stringorblob:string类型变量或Blob类型变量。Blob类型变量时,把该变量第⼀个值转换为Long类型的值,其余部分被忽略。stringorblob参数也可以是包含上述类型数据的Any类型变量返回值Long。函数执⾏成功时返回相应的Long类型值。如果stringorblob参数中的值不是有效的PowerScript数字或数据类型不兼容,那么Long()函数返回0。如果stringorblob参数的值为NULL,则Long()函数返回NULL。
Real()
功能将字符串或Blob值转换成Real类型的值。
语法Real ( stringorblob )
参数stringorblob:string类型变量或Blob类型变量。当该参数是Blob类型变量时,把该变量第⼀个值转换为Real类型的值,其余部分被忽略。stringorblob参数也可以是包含上述类型数据的Any类型变量返回值Real。函数执⾏成功时返回相应的Real类型值。如果stringorblob参数中的值不是有效的PowerScript数字或数据类型不兼容,那么Real()函数返回0。如果stringorblob参数的值为NULL,则Real()函数返回NULL。
Date()功能将其它类型的数据转换为Date类型的数据。该函数有三种语法格式:
语法⼀、将DateTime类型或第⼀个值是DateTime或Date的Blob值转换成Date类型的值;
语法⼆、将其值是个有效⽇期的字符串转换成Date类型的值;
语法三、将三个整数组合成⼀个⽇期。下⾯分别予以介绍:
语法⼀、将DateTime类型或第⼀个值是DateTime或Date的Blob值转换成Date类型的值
语法Date ( datetime )
参数datetime:DateTime类型的值或第⼀个值是DateTime或Date的Blob类型的值。当该参数是Blob类型变量时,把该变量第⼀个值转换为Date类型的值,其余部分被忽略。datetime参数也可以是包含上
述类型数据的Any类型变量返回值Date。函数执⾏成功时返回相应的Date类型值。如果datetime参数中的值不是有效的PowerScript⽇期或数据类型不兼容,那么Date()函数返回1900-01-01。如果datetime参数的值为NULL,则Date()函数返回NULL。
语法⼆、将其值是个有效⽇期的字符串转换成Date类型的值
语法Date ( string )
参数string:string类型,其值包括⼀个有效的以字符串形式表⽰的⽇期(⽐如January 1, 1998或12-31-99),string参数也可以是包含字符串类型数据的Any类型变量返回值
Date。函数执⾏成功时返回相应的Date类型值。如果string参数中的值不是有效的PowerScript⽇期或数据类型不兼容,那么Date()函数返回1900-01-01。如果string参数的值为NULL,则Date()函数返回NULL。
语法三、将三个表⽰年、⽉、⽇的整数组合成⼀个⽇期
语法Date ( year, month, day )
参数year:integer类型,指定⽇期中的年份,⽤四位数字表⽰,从0到9999month:integer类型,指定
⽇期中的⽉份,⽤⼀位或两位数字表⽰,从1到12day:integer类型,指定⽇期中的号数,⽤⼀位或两位数字表⽰,从1到31返回值Date。函数执⾏成功时返回由year、month、day三个参数确定的⽇期。如果这三个参数中任何⼀个参数使⽤了⽆效值(⽐如⽉份指定为14),则Date()函数返回1900-01-01。如果任何参数的值为NULL,则Date()函数返回NULL。
DateTime()
功能将其它类型的数据转换为DateTime类型的数据。该函数有两种语法格式:语法⼀、把⽇期和时间值组合成DateTime类型的值;语法⼆、将Blob类型的值转换成DateTime类型的值。下⾯分别予以介绍:
语法⼀、把⽇期和时间值组合成DateTime类型的值
语法DateTime ( date {, time } )
参数date:Date类型的⽇期值time:可选参数,Time类型的时间值,省略该参数时,PowerBuilder把时间设置为午夜(00:00:00.000000)。当指定该参数时,可以仅仅指定⼩时值返回值DateTime。函数执⾏成功时返回⽇期和时间组合⽽成的DateTime类型的值。如果任何参数的值为NULL,则DateTime()函数返回NULL。
语法⼆、将Blob类型的值转换成DateTime类型的值
语法DateTime ( blob )
参数blob:Blob类型变量,把该变量第⼀个值转换为DateTime类型的值,其余部分被忽略。blob参数也可以是包含blob类型数据的Any类型变量返回值DateTime。函数执⾏成功时返回相应的DateTime类型值。如果blob参数的值为NULL,则DateTime()函数返回NULL。
IsDate()
功能检测指定的字符串是否包含有效的⽇期。
语法IsDate ( datevalue )
参数datevalue:string类型,指定要检测的字符串返回值Boolean。如果datevalue包含了有效的⽇期,则IsDate()函数返回TRUE,否则返回FALSE。如果datevalue参数的值为NULL,则IsDate()函数返回NULL。
IsNull()
功能测试变量或表达式的值是否是NULL。
语法IsNull ( any )
参数any:要测试的变量或表达式返回值Boolean:如果any的值为NULL,函数返回TRUE,否则函数返回FALSE。
IsNumber()
功能测试字符串是否是有效的数值。
语法IsNumber ( string )
参数string:string类型,要测试的字符串返回值Boolean:如果string的值为有效的PowerScript数字,函数返回TRUE,否则函数返回FALSE。如果string参数的值为NULL,则IsNumber()函数返回NULL。
IsTime()
功能测试字符串的值是否是有效的时间。
语法IsTime ( timevalue )
参数timevalue:string类型,要测试的字符串返回值Boolean:如果timevalue的值为有效的时间,函数
返回TRUE,否则函数返回FALSE。如果timevalue 参数的值为NULL,则IsTime()函数返回NULL。
String()
功能按指定格式将数据转换成字符串。String()可以把Date、DateTime、数值类型、Time、String类型的数据转换成指定格式的字符串。
语法String(data,{format})
参数data:指定要转换格式的数据,其数据类型可以是Date、DateTime、数值类型、Time、String,也可以是包含上述类型数据的Any类型变量format:可选项,string类型,其值指定数据格式。如果data参数的类型为string,则必须指定format参数返回值String。函数执⾏成功时返回以字符串⽅式表⽰的指定数据,如果data参数的数据类型与format参数指定的格式不匹配、format参数指定的格式⽆效、或data参数不是前⾯提到的适宜数据类型时,String()函数返回空字符串("")。
⽤法:
format是个⽤掩码表⽰的字符串,对data参数为数值类型的情况来说,格式为:正数格式;负数格式;零的显⽰格式;空的显⽰格式除第⼀部分必须提供外,其它部分可以省略。数值型显⽰格式中使⽤两个掩码字符:#和0,其中,使⽤#代表0~9之间的任意数字,0代表每个零都要显⽰。另外,货币
符号($或¥)、百分号(%)、⼩数点(.)、逗号(,)等字符也可以出现在格式字符串中,但是,除⼩数点(.)、逗号(,)能够出现在格式字符#和0之间外,其它字符只能放置在格式串的前⾯或后⾯,例
如,###,###$###是个错误的格式串,¥###,###,###是个正确的格式串。省略format参数时,String()函数使⽤PowerBuilder缺省格式。注意,如果显⽰格式有多个部分,各部分之间的分号(;)不能省略。其它字符也可以出现在显⽰格式字符串中(只能放在格式串的开头和末尾),但它们没有特殊意义,系统只是照原样显⽰。例如,⽤显⽰格式字符串“收⼊##”格式化数值12时,显⽰结果为“收⼊12”。对data参数为字符串(String)类型的情况来说,format参数的语法格式为:正常字符串格式;空值时格式在“正常字符串格式”中,@代表字符串中的任意字符,除此之外的任何字符照原样显⽰,例如,如果定义了下⾯的格式:(@@)@@@@-@@@@则字符串0166767593显⽰为:(01)6676-7593对data参数为⽇期(Date)类型的情况来说,format参数的语法格式为:正常⽇期格式;⽇期为空值时的格式⽇期格式中格式字符意义如下:d棗开头不带0的⽇数(如
8)dd棗开头带0的⽇数(如08)ddd棗星期的英⽂缩写(如Mon、Tue)dddd棗星期的英⽂全称(如Monday、Tuesday)m棗开头不带0的⽉份(如8)mm棗开头带0的⽉份(如08)mmm棗⽉份的英⽂缩写(如Jan、Feb)mmmm棗⽉份的英⽂全称(如January、February)yy棗两位数字表⽰的年份(如97)yyyy棗四位数字表⽰的年份(如1997)另外,还可以使⽤下⾯的关键字作为⽇期的显⽰格式:
[General] Windows系统中定义的短⽇期格式[LongDate] Windows系统中定义的长⽇期格式[ShortDate] Windows系统中定
义的短⽇期格式对data参数为时间(Time)类型的情况来说,语法格式为:正常时间格式;时间为空值时的格式时间格式中格式字符意义如下:h开头不带0的⼩时(⽐如6)hh 棗开头带0的⼩时(⽐如06)m棗开头不带0的分钟(⽐如6)mm棗开头带0的分钟(⽐如06)s棗开头不带0的秒(⽐如6)ss棗开头带0的秒(⽐如06)f棗开头不带0的微秒,可以指定1~6个f,每个f代表⼀部分微秒AM/PM棗⽤AM/PM显⽰上、下午时间,12⼩时制am/pm棗⽤am/pm显⽰上、下午时间,12⼩时制A/P棗⽤A/P显⽰上、下午时间,12⼩时制a/p棗⽤a/p显⽰上、下午时间,12⼩时制另外,显⽰格式中还可以使⽤关键字[Time],它表⽰按当前Windows系统定义的格式显⽰时间。对data参数为⽇期时间(DateTime)类型的情况来说,语法格式为:正常⽇期时间格式;⽇期时间为空值时的格式⽇期时间类型使⽤的掩码就是把⽇期掩码和时间掩码结合起来即可。
Time()
功能把其它类型的数据转换为Time类型的值。该函数有三种语法格式:语法⼀、将DateTime类型或第⼀个值是DateTime或Time的Blob值转换成Time类型的值;语法⼆、将其值是个有效时间的字符串转换成Time类型的值;语法三、将表⽰时、分、秒、以及微秒的整数组合成⼀个时间值。下⾯分别予以介绍:
语法⼀、将DateTime类型或第⼀个值是DateTime或Time的Blob值转换成Time类型的值
语法Time ( datetime )
参数datetime:DateTime类型的值或第⼀个值是DateTime或Time的Blob类型的值。当该参数是Blob类型变量时,把该变量第⼀个值转换为Time类型的值,其余部分被忽略。datetime参数也可以是包含上述类型数据的Any类型变量返回值Time。函数执⾏成功时返回相应的Time类型值。如果datetime参数中的值不是有效的PowerScript时间或数据类型不兼容,那么Time()函数返回00:00:00.000000。如果datetime参数的值为NULL,则Time()函数返回NULL。
语法⼆、将其值是个有效时间的字符串转换成Time类型的值
语法Time ( string )
参数string:string类型,其值包括⼀个有效的以字符串形式表⽰的时间(⽐如9am或10:25),string参数也可以是包含时间类型数据的Any类型变量返回值Time。函数执⾏成功时返回相应的Time类型值。如果string参数中的值不是有效的PowerScript时间或数据类型不兼容,那么Time()函数返回00:00:00.000000。如果string参数的值为NULL,则Time()函数返回NULL。
语法三、将表⽰时、分、秒、以及微秒的整数组合成⼀个时间值
语法Time ( hour, minute, second {, microsecond } )
参数hour:integer类型,指定时间中的⼩时,从0到23minute:integer类型,指定时间中的分钟,从0到59second:integer类型,指定时间中的秒,从0到59microsecond:integer类型,可选项,指定时间中的微秒,从0到32767返回值Time。函数执⾏成功时返回由hour、minute、second、microsecond 四个参数确定的时间。如果这四个参数中任何⼀个参数使⽤了⽆效值(⽐如⼩时指定为44),则Time()函数返回NULL。
Beep()
功能响铃n次(n超过10时只响10次)。
语法Beep ( n )
参数n:数值类型,指定需要的响铃次数。如果n的值⼤于10,那么计算机只响铃10次返回值Integer。函数执⾏成功时返回1,发⽣错误时返回-1。如果参数n的值为NULL,Beep()函数返回NULL。
ClassName()
功能确定指定变量的类(数据类型)。
语法ClassName(variable)
参数variable:指定要确定其数据类型的变量返回值String。函数执⾏成功时返回指定变量的数据类型,发⽣错误时返回空字符串。如果参数variable的值为NULL,ClassName()函数返回NULL。⽤法需要注意的是,ClassName()函数不能确定枚举类型变量的类型,此时,ClassName()函数返回空字符串("")。
DebugBreak()
功能暂停程序执⾏,打开调试器,进⼊调试模式。
语法DebugBreak ( )
返回值⽆⽤法 DebugBreak()函数可以帮助你调试应⽤程序。如果你希望应⽤程序执⾏某条语句后暂停执⾏,然后进⼊调试模式,那么可以在该语句后⾯放上DebugBreak()函数,应⽤程序执⾏到DebugBreak()函数后,打开Debug(调试)窗⼝,并在其中显⽰当前上下⽂信息。这种⽅式实现了应⽤程序在PowerBuilder开发环境中的即时调试功能。
IntHigh()
功能得到Long型值的⾼位字。
语法IntHigh ( long )
参数long:long型值或变量返回值 Integer。函数执⾏成功时返回参数long的⾼位字,发⽣错误时返回-1。如果参数long的值为NULL,IntHigh()函数返回NULL。⽤法IntHigh()函数通常⽤于分解外部C或C++语⾔函数的返回值和Windows消息。
parameter数据类型IntLow()
功能得到Long型值的低位字。
语法IntLow ( long )
参数long:long型值或变量返回值Integer。函数执⾏成功时返回参数long的低位字,发⽣错误时返回-1。如果参数long的值为NULL,IntLow()函数返回NULL。⽤法IntLow()函数通常⽤于分解外部C或C++语⾔函数的返回值和Windows消息。⽰例请参看IntHigh()函数。
IsValid()
功能检查对象变量是否已经实例化,即实例变量的值是否是个有效的对象句柄。
语法IsValid ( objectname )
参数objectname:要检测的对象名返回值Boolean。如果指定对象已经创建了对象实例,那么IsValid()函数返回TRUE,否则返回FALSE。如果参数objectname的值为

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。