| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3078 人关注过本帖
标题:做的一个简单的数据录入表单,输入完点增加的时候提示数据类型不匹配,但是 ...
只看楼主 加入收藏
追风筝的辉少
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2014-4-22
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:20 
做的一个简单的数据录入表单,输入完点增加的时候提示数据类型不匹配,但是前几个信息增加成功了。。。
数据录入.zip (5 KB)
搜索更多相关主题的帖子: 信息 
2014-05-22 12:04
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:4 
with thisform
  .text10.value=""
  .text11.value=""
  .text1.value=""
  .text2.value=""
  .text17.value=""
  .text5.value=""
  .text3.value=""
  .text18.value=""
  .text6.value=""
  .text4.value=""  
  .text19.value=""
  .text7.value=""
  .text8.value=""
  .text20.value=""
  .text9.value=""
  .text13.value=""
endwith

与对应的字段类型是否相符

表结构
图片附件: 游客没有浏览图片的权限,请 登录注册


      replace 岩石名称 with alltrim(thisform.text10.value);
              采样地点 with alltrim(thisform.text11.value);
              分析号 with alltrim(thisform.text1.value);
              现场号 with alltrim(thisform.text2.value);
              含水量 with thisform.text17.value;
              容重 with thisform.text5.value;
              干容重 with thisform.text3.value;
              岩块吸水率 with thisform.text18.value;
              粉末吸水率 with thisform.text6.value;
              胶结系数 with thisform.text4.value;
              浸水破坏性 with alltrim(thisform.text19.value);
              液限 with thisform.text7.value;
              塑限 with thisform.text8.value;
              塑性指数 with thisform.text20.value;
              胶结程度 with alltrim(thisform.text9.value);
              膨胀性 with alltrim(thisform.text13.value)

坚守VFP最后的阵地
2014-05-22 12:56
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:4 
提示数据类型不匹配就是让你给搭配匹配,注意:不能一律用字符型
2014-05-22 13:04
liuxingang28
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:山东济南
等 级:贵宾
威 望:47
帖 子:658
专家分:2180
注 册:2014-2-7
收藏
得分:4 
“含水量”、“容重”等字段是数值型,而文本框在没有赋初值、没有指定 ControlSource 时,其 Value 属性为字符型,因此在执行 Replace 时数据类型不匹配。
解决方法有多种:
1. 使用 Val(THISFORM.TEXT17.Value) 转换
2. 为 TEXT 控件赋初值,如:0
3. a. 在数据环境中设定表的 BufferModeOverride=3(开放式行缓冲);
   b. 为所有控件指定 ControlSource,将控件与表字段绑定;
   c. 在“增加”按钮的代码中输入:
      append blank
      THISFORM.Refresh
      THISFORM.Text1.SetFocus
   d. 新增“保存”按钮,输入代码:TableUpdate(.f.,.t.);
   e. 增加一个“取消”按钮,输入代码:TableRevert(.f.)

注:推荐采用第 3 种方法,代码更为简单。


[ 本帖最后由 liuxingang28 于 2014-5-22 13:31 编辑 ]

泉城飞狐
2014-05-22 13:09
追风筝的辉少
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2014-4-22
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册
有几个没对应,改过后没大有用
2014-05-22 13:25
liuxingang28
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:山东济南
等 级:贵宾
威 望:47
帖 子:658
专家分:2180
注 册:2014-2-7
收藏
得分:0 
回复 5 楼 追风筝的辉少
上述代码是在那个事件中输入的?最简单的方法是在属性窗口中设置控件的 Value 属性。另外,在你的代码里,对于数值型字段直接输入 0.00 即可,为什么要通过 VAL("")来输入0值呢?

泉城飞狐
2014-05-22 13:35
qjbzjp
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:尧的故乡
等 级:贵宾
威 望:48
帖 子:1914
专家分:4397
注 册:2007-3-14
收藏
得分:4 
试试:
WITH thisform  
  .text10.value=""
  .text11.value=""
  .text1.value=""
  .text2.value=""
  .text17.value=0
  .text5.value=0
  .text3.value=0
  .text18.value=0
  .text6.value=0
  .text4.value=0
  .text19.value=""
  .text7.value=0
  .text8.value=0
  .text20.value=0
  .text9.value=""
  .text13.value=""
ENDWITH


[ 本帖最后由 qjbzjp 于 2014-5-22 13:43 编辑 ]

相互学习,互相交流,共同提高。
2014-05-22 13:35
qjbzjp
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:尧的故乡
等 级:贵宾
威 望:48
帖 子:1914
专家分:4397
注 册:2007-3-14
收藏
得分:0 
试试:
WITH thisform  
  .text10.value=""
  .text11.value=""
  .text1.value=""
  .text2.value=""
  .text17.value=0
  .text5.value=0
  .text3.value=0
  .text18.value=0
  .text6.value=0
  .text4.value=0
  .text19.value=0
  .text7.value=0
  .text8.value=0
  .text20.value=0
  .text9.value=""
  .text13.value=""
ENDWITH

      replace 岩石名称 with alltrim(thisform.text10.value),;
              采样地点 with alltrim(thisform.text11.value),;
              分析号 with alltrim(thisform.text1.value),;
              现场号 with alltrim(thisform.text2.value),;
              含水量 with thisform.text17.value,;
              容重 with thisform.text5.value,;
              干容重 with thisform.text3.value,;
              岩块吸水率 with thisform.text18.value,;
              粉末吸水率 with thisform.text6.value,;
              胶结系数 with thisform.text4.value,;
              浸水破坏性 with alltrim(thisform.text19.value),;
              液限 with thisform.text7.value,;
              塑限 with thisform.text8.value,;
              塑性指数 with thisform.text20.value,;
              胶结程度 with alltrim(thisform.text9.value),;
              膨胀性 with alltrim(thisform.text13.value)

相互学习,互相交流,共同提高。
2014-05-22 13:46
追风筝的辉少
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2014-4-22
收藏
得分:0 
回复 3 楼 tlliqi
恩,是这个问题
2014-05-22 17:29
追风筝的辉少
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2014-4-22
收藏
得分:0 
回复 4 楼 liuxingang28
大神啊,第一种方法没试,第二种方法可行,第三种方法也行(很高端的样子),但是添加的时候表格指针赖在第一行不动,不晓得是不是我操作的问题。。。
2014-05-22 17:33
快速回复:做的一个简单的数据录入表单,输入完点增加的时候提示数据类型不匹配, ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021358 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved