Foxtable(狐表)用户栏目专家坐堂 → 求助!!!!


  共有9386人关注过本帖树形打印复制链接

主题:求助!!!!

帅哥哟,离线,有人找我吗?
myzzip
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:159 积分:1283 威望:0 精华:0 注册:2013/5/15 14:11:00
求助!!!!  发帖心情 Post By:2013/11/23 14:07:00 [只看该作者]

 Dim dr As DataRow
    dr = DataTables("商品入库").Find("商品编号 = " & "'" & e.Form.Controls("TextBox1").Value & "'" )
    If dr IsNot Nothing Then '如果找到就把文本框5的值与表列中的值想加
        dr("入库数量") = e.Form.Controls("TextBox5").Value + dr("入库数量")
    Else '如果未找到 就新增数据写到表里面 但是在这一步报错???
        dr("商品编号") = e.Form.Controls("TextBox1").Value
        dr("产品类别") = e.Form.Controls("TextBox2").Value
        dr("产品名称") = e.Form.Controls("TextBox3").Value
        dr("单位") = e.Form.Controls("TextBox4").Value
        dr("入库数量") = e.Form.Controls("TextBox5").Value
        dr("采购价") = e.Form.Controls("TextBox6").Value
        dr("销售单价") = e.Form.Controls("TextBox7").Value
    End If

图片点击可在新窗口打开查看此主题相关图片如下:q~4`drmbh~yvum78hvnnut.jpg
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
myzzip
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:159 积分:1283 威望:0 精华:0 注册:2013/5/15 14:11:00
  发帖心情 Post By:2013/11/23 14:08:00 [只看该作者]

是曾加按钮Click事件


 回到顶部
帅哥,在线噢!
狐狸爸爸
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/11/23 14:10:00 [只看该作者]

你多了个else,应该:

 

Dim dr As DataRow
dr = DataTables("商品入库").Find("商品编号 = " & "'" & e.Form.Controls("TextBox1").Value & "'" )
If dr IsNot Nothing Then '如果找到就把文本框5的值与表列中的值想加
    dr("入库数量") = e.Form.Controls("TextBox5").Value + dr("入库数量")
    dr("商品编号") = e.Form.Controls("TextBox1").Value
    dr("产品类别") = e.Form.Controls("TextBox2").Value
    dr("产品名称") = e.Form.Controls("TextBox3").Value
    dr("单位") = e.Form.Controls("TextBox4").Value
    dr("入库数量") = e.Form.Controls("TextBox5").Value
    dr("采购价") = e.Form.Controls("TextBox6").Value
    dr("销售单价") = e.Form.Controls("TextBox7").Value
End If


 回到顶部
帅哥哟,离线,有人找我吗?
myzzip
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:159 积分:1283 威望:0 精华:0 注册:2013/5/15 14:11:00
  发帖心情 Post By:2013/11/23 14:14:00 [只看该作者]

else 不多


 回到顶部
帅哥,在线噢!
狐狸爸爸
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/11/23 14:17:00 [只看该作者]

当然多了,你原来的代码,else之后的部分,是没有找到符合条件的行才会执行的,既然没有符合条件的行,那么dr为nothing,运行这些代码肯定出错。

要理清楚自己的逻辑,再写代码。

[此贴子已经被作者于2013-11-23 14:21:01编辑过]

 回到顶部
帅哥,在线噢!
狐狸爸爸
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/11/23 14:24:00 [只看该作者]

这段代码的逻辑是否是这样的:如果找到,则数量累加,没有找到,则增加一行。

如果是的,代码为:

 

Dim dr As DataRow
dr = DataTables("商品入库").Find("商品编号 = " & "'" & e.Form.Controls("TextBox1").Value & "'" )
If dr IsNot Nothing Then '如果找到
   dr("入库数量") = e.Form.Controls("TextBox5").Value + dr("入库数量")
Else
    dr = DataTables("商品入库").AddNew() '如果没有找到,则增加一行
    dr("商品编号") = e.Form.Controls("TextBox1").Value
    dr("产品类别") = e.Form.Controls("TextBox2").Value
    dr("产品名称") = e.Form.Controls("TextBox3").Value
    dr("单位") = e.Form.Controls("TextBox4").Value
    dr("入库数量") = e.Form.Controls("TextBox5").Value
    dr("采购价") = e.Form.Controls("TextBox6").Value
    dr("销售单价") = e.Form.Controls("TextBox7").Value
End If

[此贴子已经被作者于2013-11-23 14:26:40编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
myzzip
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:159 积分:1283 威望:0 精华:0 注册:2013/5/15 14:11:00
  发帖心情 Post By:2013/11/23 14:24:00 [只看该作者]

 Dim dr As DataRow
    dr = DataTables("商品入库").Find("商品编号 = " & "'" & e.Form.Controls("TextBox1").Value & "'" )
    If dr IsNot Nothing Then '如果找到就把文本框的值与表列中的值想加
        dr("入库数量") = e.Form.Controls("TextBox5").Value + dr("入库数量")
    Else If dr Is Nothing Then
        dr("商品编号") = e.Form.Controls("TextBox1").Value
        dr("产品类别") = e.Form.Controls("TextBox2").Value
        dr("产品名称") = e.Form.Controls("TextBox3").Value
        dr("单位") = e.Form.Controls("TextBox4").Value
        dr("入库数量") = e.Form.Controls("TextBox5").Value
        dr("采购价") = e.Form.Controls("TextBox6").Value
        dr("销售单价") = e.Form.Controls("TextBox7").Value
    End If

 回到顶部
帅哥,在线噢!
狐狸爸爸
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/11/23 14:27:00 [只看该作者]

看六楼。

另建议:提问,除了贴出代码,最好也介绍下这段代码的目的,以及说明什么时候会出错。

[此贴子已经被作者于2013-11-23 14:27:26编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
myzzip
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:159 积分:1283 威望:0 精华:0 注册:2013/5/15 14:11:00
  发帖心情 Post By:2013/11/23 14:27:00 [只看该作者]

我的意思是如果没有找到符合条件的就新增一行把当前文本框里的值写到表里面去 代码怎么实现?谢谢啦!!!

 回到顶部
帅哥,在线噢!
狐狸爸爸
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/11/23 14:28:00 [只看该作者]

看六楼,我已经猜出你的意思了,你漏掉了增加行的代码。
[此贴子已经被作者于2013-11-23 14:28:12编辑过]

 回到顶部
总数 11 1 2 下一页