| 网站首页 | 业界新闻 | 群组 | 人才 | 技术文章 | 下载频道 | 博客 | 代码贴 | 编程论坛
绝地游戏外挂辅助教学千里之行 始于足下
共有 349 人关注过本帖
标题:求助 如何按照登记顺序查找数据并计算显示结果
只看楼主 收藏
时间旅行者
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2017-7-1
结帖率:40%
  已结贴   问题点数:20  回复次数:6   
求助 如何按照登记顺序查找数据并计算显示结果
db_sjk.mdb  为access数据库
tb_in  为数据表,“商品名称”、“入库数量”、“入库单价”为字段名
数据库链接:Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\db_sjk.mdb;Persist Security Info=False


在tb_in 表中登记顺序

 ID   商品名称   入库数量   入库单价
  1    a          10         210
  2    a          12         220
  3    a          15         200

(每次登记为一个入库批次,本问题商品名称仅以a为例,实际可能包含b,c,d,.......)

求助问题:

如果Text1 = 商品名称,Text2 = 出库数量,在Text3 如何得到出库金额?(数量*单价)

要求出库金额必须按照商品入库登记顺序查找并计算,

比如a商品:
Text2 = 8,出库金额就是8*210=1680
Text2 = 13,出库金额就是10*210(第一批次数量*单价)+3*220(第二批次其中3的数量*单价)=2760
Text2 = 32,出库金额就是10*210(第一批次数量*单价)+12*220(第二批次数量*单价)+11*200(第三批次其中11的数量*单价)=4300

由于本问题只是涉及到一个工程应用,不能改变库表结构,如何按以上要求在 Text3 得到出库金额的计算结果呢?





  
2017-08-01 15:48
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:189
帖 子:4068
专家分:25057
注 册:2008-10-15
  得分:0 
你有入库时间吗?要以入库时间来排序。
如果没有入库时间,数据库以存储的物理顺序来排序,谁不知道第一条记录是第几批次的。这个你自己解决。
另外,这个表有问题,入库数量,应该是一次填入后,不应该变的。能变的应该有一个库存数量,每次核减是核减库存数量。这个你也自己解决吧,下面按你的入库数量描述一下算法。

 ID   商品名称   入库数量   入库单价
  1    a          10         210
  2    a          12         220
  3    a          15         200
描述一下算法
N =20 时
do while n=0 and not rs.eof
if N>=rs(入库数量) then
记录这条全部出库,把这个库存量设为0
计算金额
n=n-rs(入库数量)   '剩余还需出库数量
else
n=0
更新库,库存量为 rs(入库数量)-n
计算金额
end if
rs.movenext
loop



[此贴子已经被作者于2017-8-1 19:40编辑过]


授人于鱼,不如授人于渔
早已停用QQ了
2017-08-01 17:11
xyxcc177
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:16
帖 子:87
专家分:381
注 册:2017-7-8
  得分:0 
你的这个问题我的帖子已经解决了,发贴的时候把问题表述清楚,你如果就出库时显示一次,以后不管,更简单,把我的第二个贴子稍加改动即可。
2017-08-02 07:39
xyxcc177
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:16
帖 子:87
专家分:381
注 册:2017-7-8
  得分:0 
qq501214014
2017-08-02 07:43
xyxcc177
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:16
帖 子:87
专家分:381
注 册:2017-7-8
  得分:20 
附件: 您没有浏览附件的权限,请 登录注册
2017-08-02 15:22
时间旅行者
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2017-7-1
  得分:0 
回复 2楼 风吹过b
谢谢老师的指点,您给的方式我会好好研究一下
2017-08-02 23:18
时间旅行者
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2017-7-1
  得分:0 
回复 5楼 xyxcc177
万分感谢老师,我需要的效果就是你示例给的这种,由于刚开始学习vb,好多知识都是空白,只好不断咨询,再次感谢您的帮助
2017-08-02 23:21







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

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