以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 求高手帮我改进代码(解决) (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=7925) |
||||
-- 作者:卟离卟弃 -- 发布时间:2010/8/20 8:51:00 -- 求高手帮我改进代码(解决) 表中的代码如下:
Dim dr As DataRow = e.DataRow
有问题的代码 Case "累计成本"
看起来所有代码都没有问题,但是如果表格有上万行的时候,文件就会。。。。。
我想要的效果是:当表格中某一行的 “本工序成本” 发生变化时,本行所属的成品型号 的累计成本,自动累加。
[此贴子已经被作者于2010-8-20 13:31:49编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2010/8/20 9:33:00 -- RaiseDataColChanged也是可以设置条件的,只针对符合条件的行触发 |
||||
-- 作者:卟离卟弃 -- 发布时间:2010/8/20 10:44:00 -- Case "累计成本"
改:
Case "累计成本"
Dim ab As Byte = dr("加工级别") - 1 if dr(“类别”) = “原材料”or dr("类别") = "自制件" then Dim Filter As String = "成品型号= \'" & dr("成品型号") & "\' And 物料型号 = \'" & dr("物料型号") & "\' and 加工级别 = \'" & ab & "\'" else Dim Filter1 As String = "成品型号= \'" & dr("成品型号") & "\' and 加工级别 = \'" & ab & "\'" end if
我已填写了条件,,当发生变化后,Case "累计成本" 怎么不计算呢? |
||||
-- 作者:czy -- 发布时间:2010/8/20 12:35:00 -- 可以呀,只要变动系数、单价和本工序成本都能触动代码。 |
||||
-- 作者:mr725 -- 发布时间:2010/8/20 12:57:00 -- 我想要的效果是:当表格中某一行的 “本工序成本” 发生变化时,本行所属的成品型号 的累计成本,自动累加。
应该: Case "本工序成本" 再: DataTables("表A").DataCols("累计成本").RaiseDataColChanged(Filter) 吧 |