以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]不重复复制(已解决)  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=13526)

--  作者:yyzlxc
--  发布时间:2011/10/15 15:33:00
--  [求助]不重复复制(已解决)

一段按钮代码,复制数据填报窗口的一组文本框数据到数据汇总表,如何实现当欲复制的日期及单位的数据与数据汇总表重复时,不复制并提示,请各位老师帮助指教,谢谢!!

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目176.table

 

数据填报_Button1_Click

 

Dim zc As Integer = CInt(Forms("数据填报").Controls("TextBox1").Text)  \'在册

Dim a As Integer =  CInt(Forms("数据填报").Controls("TextBox2").Text)  \'A

Dim b As Integer =  CInt(Forms("数据填报").Controls("TextBox3").Text)  \'B

Dim c As Integer =  CInt(Forms("数据填报").Controls("TextBox4").Text)  \'C

Dim d As Integer =  CInt(Forms("数据填报").Controls("TextBox5").Text)  \'D

If zc <> a+b+c+d Then

MessageBox.Show("请检查评定等级是否遗漏","提示")

 Return

End If

 

Dim r As Row = Tables("数据汇总").Rows.AddNew()

r("在册人数")=e.Form.Controls("TextBox1").Value

r("A级人数")=e.Form.Controls("TextBox2").Value

r("B级人数")=e.Form.Controls("TextBox3").Value

r("C级人数")=e.Form.Controls("TextBox4").Value

r("D级人数")=e.Form.Controls("TextBox5").Value

r("日期")= e.Form.Controls("TextBox10").Value

r("单位")= e.Form.Controls("TextBox11").Value


[此贴子已经被作者于2011-10-15 17:36:59编辑过]

--  作者:mr725
--  发布时间:2011/10/15 17:03:00
--  

增加行之前判断一下:

Dim dr As DataRow
dr = DataTables("数据汇总").Find("日期 = #" & Forms("数据填报").Controls("TextBox10").text & _
"# And 单位 = \'" & Forms("数据填报").Controls("TextBox11").text & "\'")

If dr Is Nothing

    ···    addnew()

    ··········

End If


--  作者:czy
--  发布时间:2011/10/15 17:08:00
--  
Dim zc As Integer = CInt(Forms("数据填报").Controls("TextBox1").Text)  \'在册
Dim a As Integer =  CInt(Forms("数据填报").Controls("TextBox2").Text)  \'A
Dim b As Integer =  CInt(Forms("数据填报").Controls("TextBox3").Text)  \'B
Dim c As Integer =  CInt(Forms("数据填报").Controls("TextBox4").Text)  \'C
Dim d As Integer =  CInt(Forms("数据填报").Controls("TextBox5").Text)  \'D
If zc <> a+b+c+d Then
    MessageBox.Show("请检查评定等级是否遗漏","提示")
    Return
End If
Dim s1 As String = e.Form.Controls("TextBox10").Value
Dim s As String = e.Form.Controls("TextBox11").Value
Dim dr As DataRow = DataTables("数据汇总").Find("日期 = \'" & s1 & "\' And 单位 = \'" & s & "\'")
If dr IsNot Nothing Then
    MessageBox.Show("数据汇总表中已经存在 " & s1 & " 日 " & s & " 单位的数据!")
    Return
End If
Dim r As Row = Tables("数据汇总").Rows.AddNew()
r("在册人数")=e.Form.Controls("TextBox1").Value
r("A级人数")=e.Form.Controls("TextBox2").Value
r("B级人数")=e.Form.Controls("TextBox3").Value
r("C级人数")=e.Form.Controls("TextBox4").Value
r("D级人数")=e.Form.Controls("TextBox5").Value
r("日期")= s1
r("单位")= s

--  作者:yyzlxc
--  发布时间:2011/10/15 17:27:00
--  

谢谢CZY和mr725两位老师的回复,CZY老师的代码好像有点问题,附上截图,请指教。谢谢!!

 


图片点击可在新窗口打开查看此主题相关图片如下:j.png
图片点击可在新窗口打开查看

--  作者:czy
--  发布时间:2011/10/15 17:30:00
--  
你上传窗口中的日期是TextBox所以我才用单引号,你改成#即可。
--  作者:yyzlxc
--  发布时间:2011/10/15 17:37:00
--  
知道了,再次谢谢CZY老师的指教!!