老师:我做了出库明细表及站点安装明细,用意是考察出库的物料是比对出库物料与安装物料之间的差异,另外做了一张施工结余物料,采用了数据填充代码,发现,多次出库的物料,代码有的能填充,有的不能填充,请教老师应该如何解决?
代码如下:
’数据填充
Dim A As New Filler
DataTables("施工结余物料").DataRows.Clear() '清除原有数据
A.SourceTable = DataTables("出库明细表")
A.SourceCols = "工单编号,站点名称,领料人员,物料编码,物料简称,单位,出库日期,出库数量"
A.DataTable = DataTables("施工结余物料")
A.DataCols = "工单编号,站点名称,领料人员,物料编码,物料简称,单位,出库日期,出库数量"
a.ExcludeExistValue = True
a.ExcludeNullValue = True
A.Fill()
Dim Cols1() As String = {"实际安装日期","新装数量"}'指定数据来源列
Dim Cols2() As String = {"实际安装日期","新装数量"}'指定数据接收列
For Each dr1 As DataRow In DataTables("站点安装明细").Select("")
Dim dr2 As DataRow = DataTables("施工结余物料").Find("站点名称 = '" & dr1("站点名称") & "' and 工单编号 = '" & dr1("工单编号") & "'and 物料简称 = '" & dr1("物料简称") &"'")
If dr2 Is Nothing Then
dr2 = DataTables("施工结余物料").AddNew()
End If
For i As Integer = 0 To Cols1.Length -1
dr2(Cols2(i)) = dr1(Cols1(i))
Next
Next
‘同表计算
Dim exp As String = "[出库数量] - [新装数量] "
Dim drs As List(of DataRow) = DataTables("施工结余物料").Select("")
For Each dr As DataRow In drs
dr("结余物料") = Eval(exp,dr)
[此贴子已经被作者于2021/1/30 17:05:38编辑过]