If Tables("材料表").TopPosition > -1 Then '如果选定区域包括数据行
Dim dr As Row = Tables("材料选择_table1").Current
If dr IsNot Nothing Then
If dr.IsNull("CatePathKey") =False And dr.IsNull("工种")=False And dr.IsNull("材料名称")=False And dr.IsNull("单位")=False And dr.IsNull("AutoID")=False Then
Dim n1 As Integer = DataTables("材料表").SQLCompute("max(AutoID)")+1 关键像这个:主键:autoid 的值,怎么获取?
Dim clb As DataRow = DataTables("材料表").AddNew()
clb("AutoID") =n1
clb("CatePathKey") =dr("CatePathKey")
clb("工种") =dr("工种")
clb("材料名称") = "[复制]" & dr("材料名称")
clb("单位") =dr("单位")
clb("规格") =dr("规格")
clb("顺序") =dr("顺序")
clb("材料名称PY") =dr("材料名称PY")
clb("参考价") =dr("参考价")
clb("零售价") =dr("零售价")
clb("批发价") =dr("批发价")
clb("底限价") =dr("底限价")
clb("品牌") =dr("品牌")
clb("创建人") ="超级用户"
clb("批注") =dr("批注")
clb("条形码") =dr("条形码")
clb.save
'复制图片
If MessageBox.show("是否将""" & dr("材料名称") & """的图片复制到新增的行? ","提示!",MessageBoxButtons.YesNo ) = DialogResult.Yes Then
Dim strs As List(of DataRow) = DataTables("材料图片表").SQLSelect("mainid = '" & dr("autoid") & "'")
For Each str As DataRow In strs
Dim n As Integer = DataTables("材料图片表").SQLCompute("max(AutoID)")+1
Dim r As Row = Tables("材料表.材料图片表").AddNew()
r("MainID") = n1
r("AutoID") = n
r("名称") = str("名称") '写入文件名
r("照片Ext") = str("照片Ext") '写入文件后缀
r.Save '必须先保存
Dim fl As String = str("名称") & str("照片Ext")
r.DataRow.SQLInsertFile("照片",fl) '插入文件
r.Save '必须先保存
Next
' End If
End If
Else
msgbox("要复制的行,材料名称为: """ & dr("材料名称") & """ 的行,,工种/材料名称/单位为空,此行无法导入!")
End If
Else
msgbox("""材料表""的当前行为空,不无法复制新增!")
End If
End If