没看懂你组合的意思,组合后你要做什么?把数据显示到哪里?
获取单价的问题,参考
Select Case e.DataCol.Name
Case "生产入库单号","主件品号","子件品号","耗用量"
Dim dr As DataRow = e.DataRow
Dim pr As DataRow
If dr.IsNull("生产入库单号") OrElse dr.IsNull("主件品号") Then
dr("单价") = Nothing
Else
Dim filter1 As String
filter1 = "成品品号 = '" & dr("主件品号") & "' And 半成品品号 = '" & dr("子件品号") & "'"
pr = DataTables("半成品成本").Find(filter1)
Dim drs = e.DataTable.Select("生产入库单号='" & e.DataRow("生产入库单号") & "' and 来源单号='" & e.DataRow("来源单号") & "' and 子件品号='" & e.DataRow("子件品号") & "'", "_Identify")
For i As Integer = 0 To drs.count-1
If i = 0 Then
drs(i)("半成品单价") = pr("成本单价")
Else
drs(i)("半成品单价") = 0
End If
Next
End If
End Select