以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]当前表里面查找录入  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=148782)

--  作者:miaoqingqing
--  发布时间:2020/4/15 12:05:00
--  [求助]当前表里面查找录入
求助,加入当前表 地理 已存在当前项目编号,且 国家列值 不为空 或 值不等于  要更新项目名称,就录入 国家列值为 要更新项目名称
下面代码怎么修改,求助

Dim dr As DataRow = e.DataRow
Select Case e.DataCol.name
    
    Case "项目编码","国家"
        If e.DataRow.IsNull("项目编码") = False Then
            Dim fdr As DataRow = DataTables("地理").Find("项目编码 = \'" & e.DataRow("项目编码") & "\'" And 国家 <> "要更新项目名称" And 国家 <> " ")
            dr("国家") = "要更新项目名称"
        End If
        
End Select

--  作者:有点蓝
--  发布时间:2020/4/15 14:07:00
--  

表的DataColChanging事件代码设置为:

Select Case e.DataCol.name
    Case 
"项目编码","国家"
        Dim xh As String
        Dim gg As String
        If e.DataCol.Name= "
项目编码" Then
            xh = e.NewValue
            gg = e.DataRow("
国家")
        Else
            gg = e.NewValue
            xh = e.DataRow("
项目编码")
        End If
        If xh > "" AndAlso gg  > "" Then 
            
Dim dr As DataRow = e.DataRow
            If DataTables("
地理").Find("项目编码 = \'" & xh & "\' And 国家 = \'" & gg & "\'"IsNot Nothing Then

                MessageBox.Show("已经存在相同型号和规格的行!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
                e.Cancel = True
            End If
        End If

End
 Select


--  作者:miaoqingqing
--  发布时间:2020/4/15 14:30:00
--  回复:(有点蓝)排除重复值?参考:http://www.foxta...
不是要禁止两列值重复

项目编号  国家
01              中国                      有多行重复数据
01              中华人民共和国   有多行重复数据

上面是历史数据,新增行项目编号等于01时,国家列,暂时录入:要更新项目名称,不录入  中国  或中华人民共和国

--  作者:有点蓝
--  发布时间:2020/4/15 15:16:00
--  
Dim dr As DataRow = e.DataRow
Select Case e.DataCol.name
    
    Case "项目编码","国家"
        If e.DataRow.IsNull("项目编码") = False Then
            Dim fdr As DataRow = DataTables("地理").Find("项目编码 = \'" & e.DataRow("项目编码") & "\' And 国家 is not null")
if fdr isnot nothing then
            dr("国家") = "要更新项目名称"
end if
        End If
        
End Select