设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
楼主: petrelai
打印 上一主题 下一主题

[其它] 各位高手,请进!关于库存先进先出问题!

[复制链接]
21#
 楼主| 发表于 2004-3-30 05:47:00 | 只看该作者
嘻,最好你搞出一个完整的例子,最好啦!
22#
发表于 2004-3-30 05:55:00 | 只看该作者
恐怕不行,我最近在搞另一个东西,头正大着ing
23#
 楼主| 发表于 2004-4-4 07:25:00 | 只看该作者
以下是引用我同意在2004-3-28 20:32:16的发言:
假设有一进库历史表

日期 数量 价格 剩余数量

注意,剩余数量是该条记录所进货的剩余数量.

出货时,先进先出,应该是从日期最小且有剩余数量的记录开始操作,数量不够则再找更大日期的进货记录,(前面几位提到找最新价则是后进先出了).
当然退货是相反的过程(如果规则是这样),从最新进货记录开始,逐条记录朝前补剩余数.

和18的说法.经过大家热心的帮忙!
现在我做到了,但数量不够则再找更多的日期的进货记录还没有做到.那应怎么再跳到那里去呢?
[此贴子已经被作者于2004-4-3 23:45:39编辑过]

24#
发表于 2004-4-4 07:50:00 | 只看该作者
研读了一下本话题,
我认为,历史价格表内记录的增加肯定是日期新的记录在后面的.所以实际上寻找记录的循环只要依次MoveNext并判断货品是否匹配.数量是否够是是否结束寻找循环的判断条件之一.当然还要考虑是否到文件尾等.
25#
 楼主| 发表于 2004-4-5 18:36:00 | 只看该作者
又有新问题了,如果我想在销售出库时,找出它相应的进货价,但如果这次出库量含有两个不同进货价的出库量,那应该怎么做才可以把它们各自的进货价找出来呢?请帮忙改一下:

Dim bian, ku, wan, wei, qi, qian, zi
Dim e As Currency
Dim ri As Date
Dim db As DAO.Database
Dim rec As DAO.Recordset
Dim strXs As String
Dim check
check = True

bian = " [商品编号] ='" & Forms![销售出库]![销售出库子窗体]![商品编号] & "'"
wan = "[完结]=" & False
wei = Forms![销售出库]![销售出库子窗体]!数量
      Set db = CurrentDb()
      strXs = "select 库存表.日期,库存表.库存量,库存表.完结,库存表.商品进价 from 库存表 where 库存表.商品编号 = '" & Forms!销售出库!销售出库子窗体!商品编号 & "'" & "and  库存表.完结 = " & False & ""
      Set rec = db.OpenRecordset(strXs, dbOpenDynaset)
      'ri = DMin("日期", "库存表")
      'rec.FindFirst "[日期]=# " & Forms!销售出库!销售出库子窗体!单据日期 & "#"
       Do While wei < 0 Or Not rec.EOF
        If rec("库存量") > wei Then
        rec.Edit
        rec("库存量") = rec("库存量") - wei
        Forms![销售出库]![销售出库子窗体]![进货价] = rec("商品进价")
        rec.Update
        Exit Do
        Else
        rec.Edit
        wei = wei - rec("库存量")
        Forms![销售出库]![销售出库子窗体]![进货价] = rec("商品进价")
        rec("库存量") = 0
        rec("完结") = True
        rec.Update
        
        End If
        
    rec.MoveNext
   Loop
  
26#
发表于 2004-4-5 19:45:00 | 只看该作者
你的子窗是进货历史表吗?
另外你找进货价的目的是什么?
先进先出是用进货价来计算已销售商品成本的.
27#
 楼主| 发表于 2004-4-5 20:50:00 | 只看该作者
对呀,我的就是用来算销售商品的成本的。
但上面的程序只能记住着最一次的进货价。如这次出库量为2,但库存里有一个进货价为220,一个进货价为215的,我想把它们的进货价也拿出来,跟销售单放在一块。即这出库金额为220+215=435,而不是215*2=430
28#
发表于 2004-4-5 22:32:00 | 只看该作者
你可以用总价来记录成本嘛!
29#
 楼主| 发表于 2004-4-5 22:37:00 | 只看该作者
那当我在算单个商品成本时,那岂不是没得算?!还有什么方法呀?
30#
发表于 2004-4-5 22:47:00 | 只看该作者
按平均单价不就成了吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-5 15:19 , Processed in 0.113012 second(s), 32 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表