Foxtable(狐表)用户栏目专家坐堂 → 请高手指教一下,


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

主题:请高手指教一下,

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


加好友 发短信
等级:小狐 帖子:383 积分:2757 威望:0 精华:0 注册:2011/9/1 14:26:00
请高手指教一下,  发帖心情 Post By:2014/1/5 9:05:00 [只看该作者]

"合同数量","库存","补数","通打数量",这四列中最先人工输入的是"合同数量",在"合同数量"里面输入数值后,其它列才能输入数值,其它三列输入的顺序是不同的,有时先输入"库存"列,有时也有可能输入"补数"列,类推.我想得到的结果是以下:

需要得到的条件一: "库存"=1,"补数"=0,"通打数量"=0.     结果为:"通打数量"="合同数量"-"库存"
需要得到的条件二: "库存"=1,"补数"=1,"通打数量"=0.     结果为:"通打数量"="合同数量"-("库存"+"补数")
需要得到的条件三: "库存"=1,"补数"=0,"通打数量"=1.     结果为:"通打数量"="合同数量"-("库存"+"通打数量")
需要得到的条件四: "库存"=0,"补数"=1,"通打数量"=1.     结果为:"通打数量"="合同数量"-("补数"+"通打数量")
需要得到的条件五: "库存"=1,"补数"=1,"通打数量"=1.     结果为:"通打数量"="合同数量"-("补数"+"通打数量"+"库存")


我需要的是代码,不需要表达式,谢谢高手们,您们辛苦了!
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.table


 回到顶部
帅哥,在线噢!
y2287958
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4649 积分:33907 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2014/1/5 9:54:00 [只看该作者]

既然类似这些“"库存"=1,"补数"=0,"通打数量"=0”都赋值了
后面直接写不就完了吗?
比如:
如果
"库存"=1,"补数"=0,"通打数量"=0
那么
通打数量"="合同数量"-1

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


加好友 发短信
等级:小狐 帖子:383 积分:2757 威望:0 精华:0 注册:2011/9/1 14:26:00
  发帖心情 Post By:2014/1/5 10:16:00 [只看该作者]

0与1代表是数值,在输入的过程中会比它有更大的值,不是单指0与1

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


加好友 发短信
等级:版主 帖子:1693 积分:12123 威望:0 精华:7 注册:2013/7/11 10:52:00
  发帖心情 Post By:2014/1/5 10:40:00 [只看该作者]

你这个逻辑真奇怪
 
按你的条件5
需要得到的条件五: "库存"=1,"补数"=1,"通打数量"=1.     结果为:"通打数量"="合同数量"-("补数"+"通打数量"+"库存")
 
先填合同数量 10
再填 补数 =2       得出  通打数量 = 8
再填 库存 = 1     得出   通打数量 = 10 -(2 + 8 + 1)= -1
 
 
图片点击可在新窗口打开查看

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


加好友 发短信
等级:小狐 帖子:383 积分:2757 威望:0 精华:0 注册:2011/9/1 14:26:00
  发帖心情 Post By:2014/1/5 11:04:00 [只看该作者]

需要得到的条件五:(修改) "库存"=1,"补数"=1,"通打数量"=1.     结果为:"通打数量"="通打数量"-("补数"+"库存")

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


加好友 发短信
等级:版主 帖子:1693 积分:12123 威望:0 精华:7 注册:2013/7/11 10:52:00
  发帖心情 Post By:2014/1/5 11:14:00 [只看该作者]

还是理解不了

 

 

上个代码做参考

 

DataColChanged  事件

 

 

If e.DataCol.Name <> "通打数量" Then
    Dim dr As DataRow = e.DataRow
    dr("通打数量") = iif(dr("合同数量") Is Nothing,0,dr("合同数量")) - iif(dr("库存") Is Nothing,0,dr("库存"))- iif(dr("补数") Is Nothing,0,dr("补数"))
End If


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


加好友 发短信
等级:小狐 帖子:383 积分:2757 威望:0 精华:0 注册:2011/9/1 14:26:00
  发帖心情 Post By:2014/1/5 12:33:00 [只看该作者]

这是我想要的结果谢谢您了,
还有一个问题:  原始值:合同数量里面为10.  通打数量里面为1,  当我在库存里面在填写1的时候得到的结果是9,其实我想得出的结果是:合同数量减去通打数量,在减去库存数量等于的是8,这样怎么改代码,

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


加好友 发短信
等级:版主 帖子:1693 积分:12123 威望:0 精华:7 注册:2013/7/11 10:52:00
  发帖心情 Post By:2014/1/5 13:20:00 [只看该作者]

建议你不要这么做

 

因为 通打数量  是计算列,其他列的输入会影响他的值,让他参与计算,出错率会很高。就像我楼上提的条件五 一样

 

你可以增加其他输入列来让用户输入

 

 

还有,给你个建议,提问时尽量少用高手、大师之类的词,

 

否则,能帮你的人立马少一半,都避嫌去了。


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


加好友 发短信
等级:小狐 帖子:383 积分:2757 威望:0 精华:0 注册:2011/9/1 14:26:00
  发帖心情 Post By:2014/1/5 13:48:00 [只看该作者]

呵呵 谢谢提示.  我这样变一下看看行不行  (拟定合同数量:10)
需要得到的条件一: "库存"=1,"补数"=0,"通打数量"=0.     结果为:"通打数量"="合同数量"-"库存"  结果:9
需要得到的条件二: "库存"=1,"补数"=2,"通打数量"=0.     结果为:"通打数量"=("合同数量"-"库存")+"补数" 结果:11
需要得到的条件三: "库存"=1,"补数"=2,"通打数量"=5.     结果为:"通打数量"= ("通打数量"-"库存")+"补数"  结果:6
需要得到的条件四: "库存"=1,"补数"=0,"通打数量"=5.     结果为:"通打数量"="通打数量"-"库存" 结果:4
需要得到的条件五: "库存"=0,"补数"=1,"通打数量"=5.     结果为:"通打数量"="通打数量"+" 补数 "结果:6

这样最后当通打数量里面有数的时候就直接用通打数量去减  请帮看一下,如何写代码.

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


加好友 发短信
等级:小狐 帖子:383 积分:2757 威望:0 精华:0 注册:2011/9/1 14:26:00
请朋友帮看一下  发帖心情 Post By:2014/1/5 13:55:00 [只看该作者]

图片点击可在新窗口打开查看

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