新增的时候,工程名称赋值要唯一,如
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
Dim nd As WinForm.TreeNode = trv.SelectedNode
If nd IsNot Nothing Then
If nd.Level = 2 Then
MessageBox.Show("请选择单位工程再新建专业工程!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
Else
Dim pr As DataRow = DataTables("项目结构").find("_Identify = " & nd.tag)
Dim dr As Row = Tables("项目结构").AddNew()
dr("项目编号") = pr("项目编号")
dr("工程名称") = pr("工程名称")
dr("单位工程") = "单位工程" & dr("_Identify")
Dim bh As String= DataTables("项目结构").Compute("max(专业编号)","项目编号 = '" & pr("项目编号") & "' and 专业编号 like '" & pr("项目编号") & "-%'")
Dim id As Integer = 1
If bh > "" Then
id = cint(bh.SubString(pr("项目编号").Length + 1,2)) + 1
End If
dr("专业编号") = pr("项目编号") & "-" & Format(id,"00")
If nd.Level = 0
nd = nd.Nodes.Add("单位工程","单位工程" & dr("_Identify"))
ElseIf nd.Level = 1
nd = nd.ParentNode.Nodes.Add("单位工程", "单位工程" & dr("_Identify"))
End If
nd.tag = dr("_Identify")
trv.SelectedNode = nd
trv.Select()
trv.BeginEdit()
End If
End If