471,066 Members | 1,316 Online
Bytes | Software Development & Data Engineering Community
Post +

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 471,066 software developers and data experts.

datatable.row.find method

I need a routine that runs through the current datatable to check for a
duplicate entry using two columns. When I set an array variable to object
and then set each variable's data to find, does the find method search for
var1 or var2, or var1 AND var2? I need it to include any rows that contain
both of these variables.

Here is code that I am using if it might help. If there is another way of
doing this, I am open to suggestions.

Thanks for the information.
Dim foundRow As DataRow

Dim findThese(1) As Object

findThese(0) = dtpEventDate.Value

If cmbShowTrial.SelectedText <> "" Then findThese(1) =
cmbShowTrial.SelectedText Else findThese(1) = ""

foundRow = DsConformation1.Tables(0).Rows.Find(findThese)

If Not (foundRow Is Nothing) Then 'row is found

MsgBox("This entry has already been made")

Exit Sub

End If
Nov 21 '05 #1
3 25876
Hi,

The find method will find a data row based on a primary key. The
primary key can be based on more than one column. If you set the primary key
equal to the 2 columns you will get an error if you try to add a duplicate
entry.

http://msdn.microsoft.com/library/de...rykeytopic.asp

http://msdn.microsoft.com/library/de...sFindTopic.asp

Ken
----------------------
"Brad" <al*******@sbcglobal.net> wrote in message
news:eZ****************@TK2MSFTNGP11.phx.gbl...
I need a routine that runs through the current datatable to check for a
duplicate entry using two columns. When I set an array variable to object
and then set each variable's data to find, does the find method search for
var1 or var2, or var1 AND var2? I need it to include any rows that contain
both of these variables.

Here is code that I am using if it might help. If there is another way of
doing this, I am open to suggestions.

Thanks for the information.
Dim foundRow As DataRow

Dim findThese(1) As Object

findThese(0) = dtpEventDate.Value

If cmbShowTrial.SelectedText <> "" Then findThese(1) =
cmbShowTrial.SelectedText Else findThese(1) = ""

foundRow = DsConformation1.Tables(0).Rows.Find(findThese)

If Not (foundRow Is Nothing) Then 'row is found

MsgBox("This entry has already been made")

Exit Sub

End If

Nov 21 '05 #2
Brad,

Bassed on your code I got this idea, why not use a dataview

When you do something the same as now and change every time the rowfilter,
based on your keys, than when the dataview.count is more than one you know
you have a duplicate.

It is just an idea I got when I was looking at your code so not tried.

I hope this helps?

Cor
Nov 21 '05 #3
Cor,

Thanks always for your help.

I did decide to use a dataview because as I discovered, the datarow.find
method only works on unique key columns. The criteria that I need to check
for are not unique columns. Using the dataview I search for the first
criteria and if found then I search for the second and if that is found then
I search for the third. If the final criteria is found then I know that
this is a duplicate entry, alerts the user and exits the sub.

Brad
"Cor Ligthert" <no**********@planet.nl> wrote in message
news:%2****************@TK2MSFTNGP10.phx.gbl...
Brad,

Bassed on your code I got this idea, why not use a dataview

When you do something the same as now and change every time the rowfilter,
based on your keys, than when the dataview.count is more than one you know
you have a duplicate.

It is just an idea I got when I was looking at your code so not tried.

I hope this helps?

Cor

Nov 21 '05 #4

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

2 posts views Thread by doug | last post: by
5 posts views Thread by harry | last post: by
1 post views Thread by mirandacascade | last post: by
6 posts views Thread by Millo | last post: by
1 post views Thread by Joe Smith | last post: by
3 posts views Thread by emailtonitin | last post: by
2 posts views Thread by cameljs18 | last post: by

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.