工序合并表数据样式如下:
工序 卷号 母卷号 库存标记 重量
原料入库 CS150001 CS150001 F 1000
材料分切 CS150001A CS150001 T 500
材料分切 CS150001B CS150001 F 500
材料分切 CS150001BA CS150001 T 250
材料分切 CS150001BA CS150001 T 250
原料入库 CS150002 CS150002 F 1000
材料分切 CS150002A CS150002 T 500
材料分切 CS150002B CS150002 T 500
......
目前代码如下:
Dim i As Integer=0
Do While i < Tables("工序合并表").Rows.Count
Dim r As Row = Tables("工序合并表").Rows(i)
If Tables("工序合并表").Find( r("卷号"),i+1,"卷号",False, False, False)>-1 Then
r("库存标记")=False
Else r("库存标记")=True
End If
i=i+1
Loop
代码功能:
根据卷号来判断哪一步为此卷的最后一步工序,也就是此步的重量才是真正的库存重量,此时库存标记的值变为TRUE
目前问题:
当工序发生变化后必须执行上述代码以达到标识出库存的目的,但目前的代码很没效率,目前工序表中有18000条记录,执行上面的代码用了近30秒,实际使用时,并不用全部重算,只要重算某个指定母卷号所对应的相关的记录就行了,例如上面代码如何改,能达到计算得到母卷号为CS150001的相关记录的库存标记,其他的母卷号不计算。
谢谢老师!
[此贴子已经被作者于2015-1-8 15:13:52编辑过]