CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  其他数据库开发 >  VFP

保存数据时,提示操作类型不匹配

楼主zengqh(a)2006-03-15 11:04:40 在 其他数据库开发 / VFP 提问

一个数据库里有二个字段,其中一个名为"人民币"类型为"N"   宽度为"4"   另外一个字段名为"美金",类型为"N"     宽度为"4"  
     
  在新建的一个表单里,有两个文本框,一个为text1,另外一个为text2,设美金与人民币的汇率是1:8并设text2为人民币,text1为美金,当在text1输入1的时候,text2会自动得到8.00,以上的都好了,当我保存的时候,提示操作类型不匹配,  
   
  我挂起这一次的操作,发现错误指针指向在text1的语句上,而text2的值就自动加入到数据库  
  (我的意思是说text2的值能保存,text1的值说操作类型不匹配)  
   
  我搞不懂,请朋友们帮我一下吧 问题点数:40、回复次数:10Top

1 楼apple_8180(十豆三)回复于 2006-03-15 11:06:16 得分 0

在TEXT1的INIT事件中:  
   
  THIS.VALUE=0Top

2 楼zengqh(a)回复于 2006-03-15 11:12:41 得分 0

这样不行呀!!!  
  在TEXT1的INIT事件中:THIS.VALUE=0,就是表单初级化时,text1的值为0  
  可以我在text1输入数字的时候提示"函数参数的值,类型或者数目无效"然后我挂起这个次操作  
  指针指向thisform.text2.value=val(this.value)*8放在interactivechange  
   
  十三豆你看看  
  Top

3 楼TERRYYRRET(命运)回复于 2006-03-15 11:35:39 得分 0

你是不是把text1和字段绑一起了  
  在text1的interactivechange事件.  
  this.value=val(this.value)Top

4 楼apple_8180(十豆三)回复于 2006-03-15 11:37:46 得分 0

你TEXT1的interactivechangeT事件用了如下代码:  
   
  thisform.text2.value=val(this.value)*8  
   
  那TEXT1的INIT事件就不要用  
   
  THIS.VALUE=0  
   
  改为在TEXT2的INIT事件:  
  THIS.VALUE=0  
  Top

5 楼TERRYYRRET(命运)回复于 2006-03-15 11:52:23 得分 0

刚才说错了,  
  是   rmb=val(this.value)  
        然后把rmb存到记录中去,呵呵Top

6 楼zengqh(a)回复于 2006-03-15 12:25:58 得分 0

都不行呀!!  
  上面的我都试过了,不行呀!!  
   
  其实我只是想保存,text1里的值,老是提示数据类型不匹配Top

7 楼darkhawlk(黑鹰)回复于 2006-03-15 12:54:16 得分 0

你保存的语句发现来看看??Top

8 楼zengqh(a)回复于 2006-03-15 13:05:57 得分 0

一个数据库里有二个字段,其中一个名为"人民币"类型为"N"   宽度为"4"   另外一个字段名为"美金",类型为"N"     宽度为"4"  
   
  append   blank  
  replace   美金   with   thisform.text1.value  
  replace   人民币   with   thisform.text2.value  
  thisform.text1.value=""  
  thisform.text2.value=""  
   
  我只是想保存数值Top

9 楼darkhawlk(黑鹰)回复于 2006-03-15 13:17:39 得分 0

首先要在设计器里将其value都设为0  
  然后  
  append   blank  
  replace   美金   with   thisform.text1.value  
  replace   人民币   with   thisform.text2.value  
  *最主要是这两句要去掉,这两句会文本框的数据类型自动转换为字符型,报错就在所难免了  
  thisform.text1.value=""  
  thisform.text2.value=""Top

10 楼darkhawlk(黑鹰)回复于 2006-03-15 13:24:00 得分 40

或者这样也可以  
  append   blank  
  replace   美金   with   val(thisform.text1.text)  
  replace   人民币   with   val(thisform.text2.value)  
  在计算时可以  
  this.parent.text2.value=8*val(this.text)  
  这样不管text1,text2的类型为数值型还是字符型,用户只要录入内容是数字,均能正确录入。不过楼主要做好用户验证才好Top

相关问题

  • 进行集体修改操作时,老是提示“数据类型不匹配”。谢
  • 为什么提示类型不匹配
  • 操作符类型不匹配
  • 操作符不匹配的问题。
  • 急,运行后提示do whil i<=3000操作符/操作数类型不匹配,有谁帮我解决一下,谢谢
  • 关于"操作符/操作数类型不匹配"的问题
  • 验证控件提示类型不匹配
  • select的时候提示类型不匹配在线等.
  • 为什么总是提示数据类型不匹配?
  • 运行asp脚本,提示类型不匹配

关键词

  • 字段
  • 数据
  • 数据库
  • thisform
  • 不匹配
  • 类型
  • 美金
  • 保存
  • blankreplace
  • 操作

得分解答快速导航

  • 帖主:zengqh
  • darkhawlk

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo