在PrepareEdit中设置了日期锁定如下,就是填写“实发支数1”后,显示当天日期,填写“实发支数2”时,判断当天是否与“实发日期1”相同,若不同显示当天日期,若相同则锁定“实发支数2”,如此类推,也就是要求实发日期是不相同的!
Select Case e.DataCol.Name
Case "实发_日期1"
If e.DataRow.IsNull("实发_日期1") = True Then
DataTables("角钢每日发料明细").DeleteFor("序号='" & e.DataRow("序号")& "' And [发料日期] = '" & e.DataRow("实发_日期1") & "'")
Else
Dim ndr1 As DataRow = DataTables("角钢每日发料明细").Find("序号 = '" & e.DataRow("序号") & "' And [发料日期] = '" & e.DataRow("实发_日期1") & "'")
If ndr1 Is Nothing Then
Dim ndr As Row = Tables("角钢每日发料明细").AddNew
ndr("进料表编号") = e.DataRow("进料表编号")
ndr("序号") = e.DataRow("序号")
ndr("工程名称") = e.DataRow("工程名称")
ndr("塔型") = e.DataRow("塔型")
ndr("机组") = e.DataRow("机组")
ndr("规格") = e.DataRow("规格")
ndr("材质") = e.DataRow("材质")
ndr("长度m") = e.DataRow("长度m")
ndr("材料标准") = e.DataRow("材料标准")
ndr("实发支数") = e.DataRow("实发_支数1")
ndr("货位") = e.DataRow("货位")
ndr("发料日期") = e.DataRow("实发_日期1")
ndr("仓储配料员") = e.DataRow("仓储配料员")
ndr("编制人") = e.DataRow("编制人")
ndr("发料人") = User.name
ndr.Move(0)
End If
End If
End Select
Select Case e.DataCol.Name
Case "实发_日期2"
If e.DataRow.IsNull("实发_日期2") = True Then
DataTables("角钢每日发料明细").DeleteFor("序号='" & e.DataRow("序号")& "' And [发料日期] = '" & e.DataRow("实发_日期2") & "'")
Else
Dim ndr1 As DataRow = DataTables("角钢每日发料明细").Find("序号 = '" & e.DataRow("序号") & "' And [发料日期] = '" & e.DataRow("实发_日期2") & "'")
If ndr1 Is Nothing Then
Dim ndr As Row = Tables("角钢每日发料明细").AddNew
ndr("进料表编号") = e.DataRow("进料表编号")
ndr("序号") = e.DataRow("序号")
ndr("工程名称") = e.DataRow("工程名称")
ndr("塔型") = e.DataRow("塔型")
ndr("机组") = e.DataRow("机组")
ndr("规格") = e.DataRow("规格")
ndr("材质") = e.DataRow("材质")
ndr("长度m") = e.DataRow("长度m")
ndr("材料标准") = e.DataRow("材料标准")
ndr("实发支数") = e.DataRow("实发_支数2")
ndr("货位") = e.DataRow("货位")
ndr("发料日期") = e.DataRow("实发_日期2")
ndr("仓储配料员") = e.DataRow("仓储配料员")
ndr("编制人") = e.DataRow("编制人")
ndr("发料人") = User.name
ndr.Move(0)
End If
End If
End Select
Select Case e.DataCol.Name
Case "实发_日期3"
If e.DataRow.IsNull("实发_日期3") = True Then
DataTables("角钢每日发料明细").DeleteFor("序号='" & e.DataRow("序号")& "' And [发料日期] = '" & e.DataRow("实发_日期3") & "'")
Else
Dim ndr1 As DataRow = DataTables("角钢每日发料明细").Find("序号='" & e.DataRow("序号")& "' And [发料日期] = '" & e.DataRow("实发_日期3") & "'")
If ndr1 Is Nothing Then
Dim ndr As Row = Tables("角钢每日发料明细").AddNew
ndr("进料表编号") = e.DataRow("进料表编号")
ndr("序号") = e.DataRow("序号")
ndr("工程名称") = e.DataRow("工程名称")
ndr("塔型") = e.DataRow("塔型")
ndr("机组") = e.DataRow("机组")
ndr("规格") = e.DataRow("规格")
ndr("材质") = e.DataRow("材质")
ndr("长度m") = e.DataRow("长度m")
ndr("材料标准") = e.DataRow("材料标准")
ndr("实发支数") = e.DataRow("实发_支数3")
ndr("货位") = e.DataRow("货位")
ndr("发料日期") = e.DataRow("实发_日期3")
ndr("仓储配料员") = e.DataRow("仓储配料员")
ndr("编制人") = e.DataRow("编制人")
ndr("发料人") = User.name
ndr.Move(0)
End If
End If
End Select