Stuart McLachlan
stuart at lexacorp.com.pg
Wed Nov 18 15:44:30 CST 2009
Do NOT use the two fields as a PK! Just create an additional unique index in the table on the two fields. -- Stuart On 18 Nov 2009 at 9:43, Hollis, Virginia wrote: > I need to prevent duplicates based on two text field entries. I asked > something like this awhile back & want to use something similar on > another form except base it on two fields. The ItemName & ItemDesc > (these are Text fields). I set the ItemName & ItemDesc as primary keys - > thought that would work. But I still can't get it to say - 'hey you > already entered this item, you can't add it again'. Also, should they be > primary keys or is there a better way for that too? > > > > Dim OXK As String > > Dim stLinkCriteria As String > > Dim rsc As DAO.Recordset > > > > Set rsc = Me.RecordsetClone > > > > If Not IsNull(Me.ItemName) Then > > OXK = Me.ItemName.Value (Need to have ItemDesc too) > > stLinkCriteria = "[ItemName]=" & "'" & OXK & "'" > > 'Check for duplicate > > If DCount("ItemName", "tbl_ItemMain", (AND ItemDesc) _ > > stLinkCriteria) > 0 Then > > 'Undo duplicate entry > > Me.Undo > > 'Message box warning of duplication > > If MsgBox("Item " _ > > & OXK & " has already been entered." _ > > & vbCr & vbCr & "Would you like to view to the record?", _ > > vbYesNo, "Duplicate Record") = vbYes Then > > rsc.FindFirst stLinkCriteria > > Me.Bookmark = rsc.Bookmark > > Else > > Exit Sub > > End If > > End If > > End If > > Set rsc = Nothing > > -- > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com