怎么样对dw中的输入进行校验?全部分了!
怎么样对dw中的输入进行校验?
当向DW中的某个字段进行输入时,若输入完毕但是不是合法的,我要求在用TAB键切换到下一个字段时进行提示,并且使鼠标仍然在输入错误的字段里面,这样怎么实现
问题点数:50、回复次数:13Top
1 楼braversmmu(笨鸟先飞)回复于 2004-12-03 08:32:04 得分 5
pb8,pb9在数据窗口画板:菜单:View-->Column Specifications视图里面,有一项:Validation Expression就可以指定。Top
2 楼lzp_lrp(lzp)回复于 2004-12-03 08:45:55 得分 10
简单的校验表达式可以写在validation Expression里
复杂的校验表达式你也可以在itemchanged里,然后用return 1 即可
焦点即不会离开Top
3 楼nccxl(小猪的狗熊)回复于 2004-12-03 08:47:34 得分 5
也可以在ITEMCHANGEED事件里用代码进行控制,里面的参数可以得到输入的值,通过不同的RETURN值控制是否接受值以及光标是否跳出。Top
4 楼nccxl(小猪的狗熊)回复于 2004-12-03 08:48:31 得分 0
呵呵,写慢了,楼上两位的方法就能够处理的。Top
5 楼qyqtn(大巫)回复于 2004-12-03 09:05:14 得分 0
不知道校验什么东西
1。把字段属性里设置成你想要的格式的,就应该可以了,如果输入的有问题
系统就会给你提示。
2。可强行设置约束,就象楼上几位说的Top
6 楼handycyw(xmccc)回复于 2004-12-03 09:12:16 得分 0
我一般在itemerror中进行校验。
在保存之前再校验一次。Top
7 楼cgh6223(米)回复于 2004-12-03 09:43:45 得分 0
还有一种!如下:
dw_1.object.sex.validation = "sex = 'f' or sex = 'm'"
dw_1.object.sex.validationmsg = "性别必须是f或m!!"Top
8 楼jeff_107(笑眯眯)回复于 2004-12-03 09:53:13 得分 0
呵呵,,我比较喜欢使用楼上的方法,在代码里写比较随意些Top
9 楼aichangfeng(PowerBuilder/VB.NET)回复于 2004-12-03 11:32:35 得分 0
我觉得两种都可以,个人习惯不同,反正功能实现就行了Top
10 楼gun_hzic(新手)回复于 2004-12-03 11:54:13 得分 0
谢谢大家的提醒,我也知道在itemchanged事件里编写,但是存在一个问题!
比如说,我现在有个字段要求不能为空,当我一打开窗口,然后往DW里面录入数据,但是我一开始不想往那个字段录入,直接用TAB键切换到另外一个字段,这时后不会提示错误信息,要想得到错误信息必须先在那个字段上输入,然后把他清除,这时用TAB键切换到另外字段的时候就会提示错误.
我想实现的是一打开DW,数据录入,用TAB键切换如果不符合马上提示,不知道大家有没有明白我说的意思?Top
11 楼lzp_lrp(lzp)回复于 2004-12-03 12:10:05 得分 30
在itemfocuschanged里写代码,判断这个列的上一列和下一列
if dwo.name = '上一列' or dwo.name = '下一列' then
if len(this.getitemstring(row, "列名")) > 0 then
//
else
messagebox('提示信息', '列名 不能为空')
this.post fucntion setcolumn("列名")
end if
end if
即可Top
12 楼PHizingHelen(PHizing)回复于 2004-12-03 12:37:41 得分 0
选择required属性Top
13 楼gaopipigao(高痞)回复于 2004-12-03 13:06:55 得分 0
我赞成代码实现,灵活,而且validation Expression比较单一,很多时候如果符合判断就不能解决问题了。Top




