l MODIFY函数
函数功能:使用字符串中定义的操作修改数据窗口控件。
语法格式:dwcontrol.Modify(modstring)
参数说明:String类型,其值定义修改数据窗口的各种操作。
返回结果:String。函数执行成功时返回空字符串(“”),发生错误时函数返回一条出错消息。出错消息的形式为“Line n Column n incorrect syntax”,指明modstring参数中哪一行、哪一列产生了错误。列数从modstring参数编译后的起始位置开始计数。如果任何参数的值为NULL,则Modify()函数返回NULL。
Modify()函数可以在应用程序代码中设置许多你在数据窗口画板中设置的属性或功能。典型情况下,函数应用如下:
Ø 修改数据窗口对象中各种对象等的颜色、标题、文本以及其它外貌特性。
Ø 修改数据窗口中不同表的更新状态,以便让应用程序一次更新多个表。
Ø 修改数据窗口对象中SQL SELECT语句的WHERE子句。
Ø 改变Retrieve Only As Needed(按需检索数据)状态(对应于数据窗口对象的Retrieve.AsNeeded属性,Modify()函数中引用该属性的表达方式能常为Object.Datawindow.Retrieve.AsNeeded)
Ø 改变数据窗口对象的数据源。
Ø 控制打印预览(Print Preview)显示模式。
Ø 在数据窗口对象中增加和删除对象(例如直线、位图等)。
在Modify()函数的modstring参数中可以使用三种类型的语句来修改数据窗口对象,如表所列。
语句类型 作用说明
CREATE object (settings) 向数据窗口对象中增加object对象。注:Object参数不能是OLE对象。
DESTROY [COLUMN] object 删除数据窗口对象中的object对象。当object对象是列时,指定关键字COLUMN将同时删除列对象以及该列在数据窗口缓冲区中的数据。
Objectname.property = value 将数据窗口对象的property属性的值设置为value。
根据具体属性的不同,value的取值可以为:
Ø 常量。
Ø 用引号括起来的常量。
Ø 由默认值、数据窗口画板表达式组成的表达式,要求数据窗口画板表达式的返回值的类型与要设置属性的类型兼容。
Modify()函数中使用的表达式
当为数据窗口对象的某个属性指定一个表达式时,表达式的格式为:
Defaultvalue~t DataWindowpainterexpression
其中,Defaultvalue是一个具体值,该值要能够转换为适应于该属性的数据类型。~t是Tab字符,用于分隔默认值(defaultvalue)和数据窗口画板表达式(DataWindowpainterexpression)。DataWindowpainterexpression是数据窗口画板表达式,其中可以使用任何数据窗口画板函数(即能够在数据窗口画板中使用的函数)。
数据窗口画板表达式求值之后的数据类型必须与要设置其值的属性的数据类型相匹配。当你设置鞭个列的属性时,表达式的运算作用于数据窗口中该列的每一行数据。
例:Modstring = "emp_id.color = '16777215 ~t IF(emp_status=~~'A~~',255,16777215) ' "
ls_mod_string = "administration.visible = '1 ~t IF((order_class<>~~'A~~' and order_class<>~~'B~~' and order_class<>~~'E~~') ,0,1) '"
modstring参数中的引号"或'波浪号(~)
由于Modify()函数的modstring参数是个字符串,在字符串中还可以包括其它的字符串,因此,需要使用特殊的语法来表示引号。在字符串内部使用引号的方法有两种:
第一种,使用与字符串开头使用的引号不同的引号。例如,一个字符串以双引号(")开头,那么在字符串内部可以直接使用单引号('),反之亦然。
第二种,在字符串内部的引号前使用波浪符(~)来使引号转义,多一层字符串嵌套时,多用一个转义符(~)。
下面是第二种表达方式的一个示例,其功能与前面介绍的示例相同。
Modstring = "emp_id.color = ~"16777215 ~t IF(emp_status=~~~"A~~",255,16777215) ~ ""
使用变量构造modstring字符串
如果想在modstring参数中使用变化着的数据,那么在程序中可通过字符串连接操作来构造所需的字符串。需要注意的是,必须的引号要包括在字符串之中。
使用Modify()函数一次可以修改多个属性,此时,在modstring字符串中写上多个属性设置,各属性设置之间使用空格分隔。
函数功能:使用字符串中定义的操作修改数据窗口控件。
语法格式:dwcontrol.Modify(modstring)
参数说明:String类型,其值定义修改数据窗口的各种操作。
返回结果:String。函数执行成功时返回空字符串(“”),发生错误时函数返回一条出错消息。出错消息的形式为“Line n Column n incorrect syntax”,指明modstring参数中哪一行、哪一列产生了错误。列数从modstring参数编译后的起始位置开始计数。如果任何参数的值为NULL,则Modify()函数返回NULL。
Modify()函数可以在应用程序代码中设置许多你在数据窗口画板中设置的属性或功能。典型情况下,函数应用如下:
Ø 修改数据窗口对象中各种对象等的颜色、标题、文本以及其它外貌特性。
Ø 修改数据窗口中不同表的更新状态,以便让应用程序一次更新多个表。
Ø 修改数据窗口对象中SQL SELECT语句的WHERE子句。
Ø 改变Retrieve Only As Needed(按需检索数据)状态(对应于数据窗口对象的Retrieve.AsNeeded属性,Modify()函数中引用该属性的表达方式能常为Object.Datawindow.Retrieve.AsNeeded)
Ø 改变数据窗口对象的数据源。
Ø 控制打印预览(Print Preview)显示模式。
Ø 在数据窗口对象中增加和删除对象(例如直线、位图等)。
在Modify()函数的modstring参数中可以使用三种类型的语句来修改数据窗口对象,如表所列。
语句类型 作用说明
CREATE object (settings) 向数据窗口对象中增加object对象。注:Object参数不能是OLE对象。
DESTROY [COLUMN] object 删除数据窗口对象中的object对象。当object对象是列时,指定关键字COLUMN将同时删除列对象以及该列在数据窗口缓冲区中的数据。
Objectname.property = value 将数据窗口对象的property属性的值设置为value。
根据具体属性的不同,value的取值可以为:
Ø 常量。
Ø 用引号括起来的常量。
Ø 由默认值、数据窗口画板表达式组成的表达式,要求数据窗口画板表达式的返回值的类型与要设置属性的类型兼容。
Modify()函数中使用的表达式
当为数据窗口对象的某个属性指定一个表达式时,表达式的格式为:
Defaultvalue~t DataWindowpainterexpression
其中,Defaultvalue是一个具体值,该值要能够转换为适应于该属性的数据类型。~t是Tab字符,用于分隔默认值(defaultvalue)和数据窗口画板表达式(DataWindowpainterexpression)。DataWindowpainterexpression是数据窗口画板表达式,其中可以使用任何数据窗口画板函数(即能够在数据窗口画板中使用的函数)。
数据窗口画板表达式求值之后的数据类型必须与要设置其值的属性的数据类型相匹配。当你设置鞭个列的属性时,表达式的运算作用于数据窗口中该列的每一行数据。
例:Modstring = "emp_id.color = '16777215 ~t IF(emp_status=~~'A~~',255,16777215) ' "
ls_mod_string = "administration.visible = '1 ~t IF((order_class<>~~'A~~' and order_class<>~~'B~~' and order_class<>~~'E~~') ,0,1) '"
modstring参数中的引号"或'波浪号(~)
由于Modify()函数的modstring参数是个字符串,在字符串中还可以包括其它的字符串,因此,需要使用特殊的语法来表示引号。在字符串内部使用引号的方法有两种:
第一种,使用与字符串开头使用的引号不同的引号。例如,一个字符串以双引号(")开头,那么在字符串内部可以直接使用单引号('),反之亦然。
第二种,在字符串内部的引号前使用波浪符(~)来使引号转义,多一层字符串嵌套时,多用一个转义符(~)。
下面是第二种表达方式的一个示例,其功能与前面介绍的示例相同。
Modstring = "emp_id.color = ~"16777215 ~t IF(emp_status=~~~"A~~",255,16777215) ~ ""
使用变量构造modstring字符串
如果想在modstring参数中使用变化着的数据,那么在程序中可通过字符串连接操作来构造所需的字符串。需要注意的是,必须的引号要包括在字符串之中。
使用Modify()函数一次可以修改多个属性,此时,在modstring字符串中写上多个属性设置,各属性设置之间使用空格分隔。