Dim cmd1 As New SQLCommand
Dim dt As DataTable
Dim cmd2 As New SQLCommand
Dim dr As DataRow
Dim dt2 As DataTable
Dim Val As Double
Dim val1 As Double
Dim s As Integer
cmd1.C
cmd1.CommandText = "SE LECT * From {派工明细表} Where 内部加工单号= ' Filte ' "
dt = cmd1.ExecuteReader()
cmd2.C
cmd2.CommandText = "SE LECT * From {加工点清单} Where 内部加工单号= ' Filte ' "
dt2 = cmd1.ExecuteReader()
For Each r As Row In Tables("工序库调用_table1").Rows
Val = dt.SQLCompute("Sum(派工量)"," 编号= '" & r("编号") & "'")
val1 = dt.SQLCompute("Sum(部件派工)"," 编号= '" & r("编号") & "'")
r("可派工量") = r("工序数量") - val
r("部件余量") = r("部件量") - val1
dr = dt2.find("编号 = '" & r("编号") & "'")
If dr.DataTable.DataRows.Count = 1 Then
r("状态") = " 已派 "
End If
Next
Tables("工序库调用_table1").Filter = "[可派工量] > 0 "
标红的部分,目的是遍历 工序库调用_table1 ,在 dt2中查询是否有符合条件的行。
自己想法 1、 查询dt2中符合条件的行,如果有将“ 工序库调用_table1” 的状态行标注为已派。
2、 可以查询dt2的编号列,是否有 这个编号 ,如果有 将“ 工序库调用_table1” 的状态行标注为已派。
第二种方式如何写代码。另外第一种方式老是出错,显示未将写入。