以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  关于多条件成本累计计算  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=6962)

--  作者:卟离卟弃
--  发布时间:2010/5/4 11:44:00
--  关于多条件成本累计计算
各位老师,不知道累计成本怎么样计算....

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:成本累计.table


表中是一个产品的BOM清单

区别条件有  成品型号  物料型号  加工级别(加工时的顺序)

成品 的累计成本 = 所有第二级别物料的累计成本价格 
其它类别的 累计成本 = 同一物料型号下,上一加工工序的累计成本世纪+ 本工序加工成本...


图片点击可在新窗口打开查看此主题相关图片如下:qq截图未命名.jpg
图片点击可在新窗口打开查看


各位老师请看看....
--  作者:mr725
--  发布时间:2010/5/4 21:29:00
--  
Currenttable.Current("成本累计") = Currenttable.Current("本工序成本") + Currenttable.rows(Currenttable.plsition+1)("成本累计")
--  作者:卟离卟弃
--  发布时间:2010/5/15 11:03:00
--  

大哥,不可以。


图片点击可在新窗口打开查看此主题相关图片如下:qq截图未命名.jpg
图片点击可在新窗口打开查看

--  作者:blackzhu
--  发布时间:2010/5/15 13:20:00
--  
做一个简单的例子,你自己修改着试试.
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:成本累计.table


--  作者:卟离卟弃
--  发布时间:2010/5/15 14:32:00
--  

同一 成品型号,同一 物料型号 下面的 累计成本 代码已经解决

 

在同一成品型号下,把各各子物料的累计成本,加到 成品累计成本 下面的代码,怎么样写?

 

表中 2859 成品 的累计成本, =  各个第二级别的累计成本相加。

 

怎么样累加????

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:成本累计.table

[此贴子已经被作者于2010-5-15 14:37:52编辑过]

--  作者:e-png
--  发布时间:2010/5/15 18:56:00
--  

1、2楼的plsition是个笔误,应该是position 这个你应该看得出的;

2、“表中 2859 成品 的累计成本, =  各个第二级别的累计成本相加。”试试下面:

Dim dr As DataRow = DataTables("表A").DataRows(currenttable.position)

if dr("类别") = "成品"

    dr("累计成本") = Tables("表A").Compute("Sum(累计成本)", "成品型号 = \'" & _
    dr("成品型号") & "\' and 加工级别 = 2")   
end if


--  作者:卟离卟弃
--  发布时间:2010/5/19 8:25:00
--  

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:成本累计.table

还有一个问题,当我任意修改某一工序单价后(如,第三步工序的单价),第三步工序的累计成本会自动更新,而第四步工序的累计成本不自动更新

 

只能一行一行的重置,  有没有办法可以实现这样的功能,,某成品型号下的任意工序单价、累计成本更新后,整个成品型号下的所有工序都自动重置


--  作者:卟离卟弃
--  发布时间:2010/6/3 18:40:00
--  

各位大哥大姐,,怎么样可以重置整列???一个工序更改价格,所有 累计成本自动更改。。。  我实现不了啊。。


--  作者:mr725
--  发布时间:2010/6/3 20:52:00
--  

没搞懂你的意思, 是不是要这样的结果???

Select Case e.DataCol.Name
    case "单价","累计成本"       
        for i as integer = Tables("表A").count-1 to 0 step -1
            Dim r As Row = Tables("表A").Rows(i)
            if  i = Tables("表A").count-1
                r("累计成本") = r("系数") * r("单价")
            else               
                if r("加工级别") <> Tables("表A").Rows(i+1)("加工级别")
                    r("累计成本") = DataTables("表A").Compute("Sum(累计成本)", "加工级别 = " & _
                    Tables("表A").Rows(i+1)("加工级别") & " ") + r("单价")
                else
                    r("累计成本") = r("系数") * r("单价")
                end if               
            end if
        next
End Select

[此贴子已经被作者于2010-6-3 21:19:22编辑过]

--  作者:卟离卟弃
--  发布时间:2010/6/4 13:39:00
--  

感谢感谢,,

 

谢谢你!

    就是这样的效果!