一位群友写的程序段不知哪有问题?

xlj2000 2010-01-20 07:44:20
下面程序不执行也不报错,不知哪有问题,有人说and改为 .and. 但还是一样的问题。

do case
case allt(thisform.combo1.value)=="人保寿险康宁人生终身寿险" and allt(thisform.combo2.value)=="趸缴" and allt(thisform.combo3.value)="直销"
zs=(thisform.text1.value)*0.035*0.6
thisform.text2.value=zs

case allt(thisform.combo1.value)=="人保寿险康宁人生终身寿险" and allt(thisform.combo2.value)=="趸缴" and allt(thisform.combo3.value)="中介"
zs1=(thisform.text1.value)*0.035*0.3
thisform.text2.value=zs1

endcase
...全文
56 4 打赏 收藏 举报
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
lc_apple 2010-01-22
  • 打赏
  • 举报
回复
[Quote=引用楼主 xlj2000 的回复:]
下面程序不执行也不报错,不知哪有问题,有人说and改为 .and. 但还是一样的问题。

do case
  case allt(thisform.combo1.value)=="人保寿险康宁人生终身寿险" and allt(thisform.combo2.value)=="趸缴" and allt(thisform.combo3.value)="直销"
  zs=(thisform.text1.value)*0.035*0.6
  thisform.text2.value=zs

  case allt(thisform.combo1.value)=="人保寿险康宁人生终身寿险" and allt(thisform.combo2.value)=="趸缴" and allt(thisform.combo3.value)="中介"
  zs1=(thisform.text1.value)*0.035*0.3
  thisform.text2.value=zs1

endcase

[/Quote]
do case语句这样写可不是好习惯,建议改成:
If Allt(Thisform.combo1.Value)=="人保寿险康宁人生终身寿险" And Allt(Thisform.combo2.Value)=="趸缴"
Do Case
Case Allt(Thisform.combo3.Value)="直销"
zs=(Thisform.text1.Value)*0.035*0.6
Thisform.text2.Value=zs

Case Allt(Thisform.combo3.Value)="中介"
zs1=(Thisform.text1.Value)*0.035*0.3
Thisform.text2.Value=zs1
Otherwise
=Messagebox('case错误')
Endcase
Else
=Messagebox('if错误')
Endif
wwwwb 2010-01-20
  • 打赏
  • 举报
回复
在DO CASE中加入
WAIT WIND ‘123’之类的,看看是否执行

and与.and.是一致的
十豆三 2010-01-20
  • 打赏
  • 举报
回复

thisform.combo1.value 改为 thisform.combo1.displayvalue

thisform.combo2.value 改为 thisform.combo2.displayvalue
十豆三 2010-01-20
  • 打赏
  • 举报
回复
不执行也不报错,说明条件不成立。
相关推荐
发帖
VFP

2573

社区成员

VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
帖子事件
创建了帖子
2010-01-20 07:44
社区公告
暂无公告