以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助] 条件公式问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=56248) |
-- 作者:wumingrong1 -- 发布时间:2014/9/1 22:02:00 -- [求助] 条件公式问题 我有一个“增加”按钮 如下命令:其中如果“设备编码”条件内容为空、那么在其他条件完全相同的情况下还是会新增一行、如果“设备编码”有内容、那么点击按钮后就不会再新增一行。为什么? Dim d1 As String = e.Form.Controls("机房名称").Text Dim t11 As String = e.Form.Controls("设备名称").Text Dim t12 As String = e.Form.Controls("设备型号").Text Dim t13 As String = e.Form.Controls("设备编号").Text Dim c1 As String = e.Form.Controls("板件槽位1").Text Dim t1 As String = e.Form.Controls("板件型号1").Text Dim nd2 As DataRow = DataTables("机房设备板件表").Find("机房名称 = \'" & d1 & "\' and 设备名称 = \'" & t11 & "\' and 设备型号 = \'" & t12 & "\' and 设备编号 = \'" & t13 & "\'and 板件槽位 = \'" & c1 & "\'and 板件型号 = \'" & t1 & "\'") If nd2 Is Nothing Then If c1 > "" And t1 > "" Then nd2 = DataTables("机房设备板件表").AddNew() nd2("机房名称") = d1 nd2("设备名称") = t11 nd2("设备型号") = t12 nd2("设备编号") = t13 nd2("板件槽位") = c1 nd2("板件型号") = t1 End If End If [此贴子已经被作者于2014-9-1 22:34:47编辑过]
|
-- 作者:程兴刚 -- 发布时间:2014/9/1 22:08:00 -- 您不要问别人为什么,而是应该告诉别人您需要什么结果! |
-- 作者:程兴刚 -- 发布时间:2014/9/1 22:10:00 -- 猜一下:
Dim d1 As String = e.Form.Controls("机房名称").Text
Dim t11 As String = e.Form.Controls("设备名称").Text
Dim t12 As String = e.Form.Controls("设备型号").Text
Dim t13 As String = e.Form.Controls("设备编号").Text
Dim c1 As String = e.Form.Controls("板件槽位1").Text
Dim t1 As String = e.Form.Controls("板件型号1").Text
Dim nd2 As DataRow = DataTables("机房设备板件表").Find("机房名称 = \'" & d1 & "\' and 设备名称 = \'" & t11 & "\' and 设备型号 = \'" & t12 & "\' and 设备编号 = \'" & t13 & "\'and 板件槽位 = \'" & c1 & "\'and 板件型号 = \'" & t1 & "\'")
If nd2 Is Nothing Then
nd2 = DataTables("机房设备板件表").AddNew()
end if
If c2 > "" And t2 > "" Then
nd2("机房名称") = d1
nd2("设备名称") = t11
nd2("设备型号") = t12
nd2("设备编号") = t13
nd2("板件槽位") = c1
nd2("板件型号") = t1
End If
|
-- 作者:wumingrong1 -- 发布时间:2014/9/1 22:12:00 -- 我希望实现:在以下这些条件中如果其中有任何一个条件列的内容时空的;在其他条件完全相同的情况下、也能够实现不再新增该行 "机房名称 = \'" & d1 & "\' and 设备名称 = \'" & t11 & "\' and 设备型号 = \'" & t12 & "\' and 设备编号 = \'" & t13 & "\'and 板件槽位 = \'" & c1 & "\'and 板件型号 = \'" & t1 & "\'"
|
-- 作者:程兴刚 -- 发布时间:2014/9/1 22:12:00 -- 不过没看见您定义的变量c2和t2 |
-- 作者:wumingrong1 -- 发布时间:2014/9/1 22:16:00 -- 应该是 If c1> "" And t1> "" Then 我以上公式的目的是如果我要新增加的内容在表中已经存在;就不再新增;但是像我表中原来已经有两条记录第一条“设备编号”有_01、第二条“设备编号”为空。那么我录入窗口中录入的其他内容都是一模一样;当“设备编号”列为_01时,公式就会默认不再新增这一条相同内容;但是如果我新增的是第二条“设备编号”是空的、那么公式就会在表中新增一行。我想实现跟第一行那样不再新增一行。公式该怎么修改? [此贴子已经被作者于2014-9-1 22:33:52编辑过]
|
-- 作者:有点甜 -- 发布时间:2014/9/1 23:53:00 -- 3楼就是你要的代码。 |
-- 作者:wumingrong1 -- 发布时间:2014/9/2 11:08:00 -- 还是不行: 如果当“设备编号”中有内容;点击“新增板件”按钮的话就不会新增行(在这里只有“设备编号”有可能有或者没有;其他的都是会有的)
[此贴子已经被作者于2014-9-2 12:23:24编辑过]
|
-- 作者:有点甜 -- 发布时间:2014/9/2 11:12:00 -- 例子发上来,根本理解不了你的意思。 |
-- 作者:有点甜 -- 发布时间:2014/9/2 11:33:00 -- Dim d1 As String = e.Form.Controls("机房名称").Text Dim t1 As String = e.Form.Controls("板件型号1").Text Dim nd2 As DataRow If d1 = "" Then If nd2 Is Nothing Then |