以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助] 标间条件批量增加行  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=117614)

--  作者:wumingrong1
--  发布时间:2018/4/16 11:13:00
--  [求助] 标间条件批量增加行
以下命令、如果我想加一个判断,就是如果【OLT设备VLAN使用清单表】中已经存在与准备增加的行的【内层VLAN】相同的数据时;就不添加改行。命令该怎么修改?

比如:【OLT设备VLAN使用清单表】中的【内层VLAN】列已经有一行的数字为“6”;那么就只增加7行(1、2、3、4、5、7、8)


Dim r As Row = Tables("OLT设备VLAN规划清单表").current

If r("OLT网元名称") = ""  Or  r("业务类型") = ""  Or   r("外层VLAN") = ""  Or   r("内层VLAN起始") = ""  Or   r("内层VLAN截止") = ""   Then
    MessageBox.Show("请填写完整【OLT网元名称】【业务类型】【外层VLAN】【内层VLAN起始】【内层VLAN截止】内容!!!", "非常关键提醒",MessageBoxButtons.OK,MessageBoxIcon.Warning)
Else
    For i As Integer = 1  To   8
          
        \' For Each r1 As Row In Tables("OLT设备VLAN使用清单表").Rows
        \'    If r1("内层VLAN") <> Format(i) Then

        Dim ndr As DataRow = DataTables("OLT设备VLAN使用清单表").AddNew
        ndr("区域名称") = r("区域名称")
        ndr("区域名称") = r("区域名称")
        ndr("OLT网元名称") = r("OLT网元名称")
        ndr("OLT网元IP地址") = r("OLT网元IP地址")
        ndr("OLT设备厂家") = r("OLT设备厂家")
        ndr("业务类型") = r("业务类型")
        ndr("外层VLAN") = r("外层VLAN")
        ndr("内层VLAN") = Format(i)
        
        \'   Else
        \'   End  If
        
        \'Next
    Next
End If

--  作者:有点甜
--  发布时间:2018/4/16 11:25:00
--  
For i As Integer = 1 To 8
    Dim idx As Integer = Tables("OLT设备VLAN使用清单表").FindRow("内层VLAN=\'" & i & "\'")
    If idx < 0 Then
        Dim ndr As DataRow = DataTables("OLT设备VLAN使用清单表").AddNew
        ndr("区域名称") = r("区域名称")
        ndr("区域名称") = r("区域名称")
        ndr("OLT网元名称") = r("OLT网元名称")
        ndr("OLT网元IP地址") = r("OLT网元IP地址")
        ndr("OLT设备厂家") = r("OLT设备厂家")
        ndr("业务类型") = r("业务类型")
        ndr("外层VLAN") = r("外层VLAN")
        ndr("内层VLAN") = i
    End If
Next

--  作者:wumingrong1
--  发布时间:2018/4/16 17:03:00
--  
如果【OLT设备VLAN使用清单表】中存在与【集客业务工单清单表】当前行【OLT网元IP地址】【内层VLAN】相同的内容时,弹出提示;否则增加行并填入内容。一下命令该怎么修改?



Dim r As Row = Tables("集客业务工单清单表").current

Dim idx As DataRow = DataTables("OLT设备VLAN使用清单表").sqlFind(" OLT网元IP地址 =\'" & r("IP") & "\'  and  内层VLAN =\'" & r("内层VLAN") & "\' ")
\'Dim idx As Integer = Tables("OLT设备VLAN使用清单表").FindRow("  OLT网元IP地址 =\'" & r("OLT网元IP地址") & "\'  and  内层VLAN =\'" & r("区域名称") & "\' ")
If idx IsNot Nothing Then
    Dim nd As DataRow = DataTables("OLT设备VLAN使用清单表").AddNew
    nd("OLT网元IP地址") = r("OLT网元IP地址")
    nd("外层VLAN") = r("外层VLAN")
    nd("内层VLAN") = r("内层VLAN")
    nd("客户名称") = r("管线ONU名称")
    
    MessageBox.show("完成【OLT设备VLAN使用清单表】数据增加工作!!!", "非常关键提醒")
    
    Dim Result As DialogResult
    Result = MessageBox.Show( "确定保存【OLT设备VLAN使用清单表】:请按  [是]" & vbcrlf & "放弃保存修改:请按  [否]", "非常关键提醒", MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
    If Result = DialogResult.Yes Then
        DataTables("OLT设备VLAN使用清单表").Save()
    Else
    End If
  Else
      MessageBox.show("【OLT设备VLAN使用清单表】存在相同数据!!!", "非常关键提醒")
End If
[此贴子已经被作者于2018/4/16 17:30:40编辑过]

--  作者:有点甜
--  发布时间:2018/4/16 17:31:00
--  

最基础的判断吧?

 

If idx Is Nothing Then

 

Else

 

End If


--  作者:wumingrong1
--  发布时间:2018/4/16 17:51:00
--  
现在的情况是:【OLT设备VLAN使用清单表】中不存在与【集客业务工单清单表】当前行【OLT网元IP地址】【内层VLAN】相同的内容时,也会弹出提示( MessageBox.show("【OLT设备VLAN使用清单表】存在相同数据!!!", "非常关键提醒") )
Dim r As Row = Tables("集客业务工单清单表").current
Dim idx As DataRow = DataTables("OLT设备VLAN使用清单表").sqlFind(" OLT网元IP地址 =\'" & r("IP") & "\'  and  内层VLAN =\'" & r("内层VLAN") & "\' ")
If idx Is Nothing Then

 MessageBox.show("【OLT设备VLAN使用清单表】存在相同数据!!!", "非常关键提醒")

Else

    Dim nd As DataRow = DataTables("OLT设备VLAN使用清单表").AddNew
    nd("OLT网元IP地址") = r("OLT网元IP地址")
    nd("外层VLAN") = r("外层VLAN")
    nd("内层VLAN") = r("内层VLAN")
    nd("客户名称") = r("管线ONU名称")
    
    Dim Result As DialogResult
    Result = MessageBox.Show( "确定保存【OLT设备VLAN使用清单表】:请按  [是]" & vbcrlf & "放弃保存修改:请按  [否]", "非常关键提醒", MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
    If Result = DialogResult.Yes Then
        DataTables("OLT设备VLAN使用清单表").Save()
    Else
    End If

     
End If

[此贴子已经被作者于2018/4/16 17:51:19编辑过]

--  作者:有点甜
--  发布时间:2018/4/16 17:53:00
--  

Dim r As Row = Tables("集客业务工单清单表").current
Dim idx As DataRow = DataTables("OLT设备VLAN使用清单表").sqlFind(" OLT网元IP地址 =\'" & r("IP") & "\'  and  内层VLAN =\'" & r("内层VLAN") & "\' ")
If idx Is Nothing Then
    Dim nd As DataRow = DataTables("OLT设备VLAN使用清单表").AddNew
    nd("OLT网元IP地址") = r("OLT网元IP地址")
    nd("外层VLAN") = r("外层VLAN")
    nd("内层VLAN") = r("内层VLAN")
    nd("客户名称") = r("管线ONU名称")
   
    Dim Result As DialogResult
    Result = MessageBox.Show( "确定保存【OLT设备VLAN使用清单表】:请按  [是]" & vbcrlf & "放弃保存修改:请按  [否]", "非常关键提醒", MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
    If Result = DialogResult.Yes Then
        DataTables("OLT设备VLAN使用清单表").Save()
    Else
    End If
Else
    MessageBox.show("【OLT设备VLAN使用清单表】存在相同数据!!!", "非常关键提醒")       
End If