Create a self-joining relationship based on first name, last name, and (perhaps) company. Then, create a check for duplicate records using a calculation such as this:
Case ( currentTable::uniqueID ≠ currentTableSelfJoin::uniqueID ; "Duplicate" ; "" )
Of course, this is simply a Boolean test; if the expression is true, then you have a duplicate, so you can use it in an If statement in a script, in a validation calculation, and so forth. "uniqueID" can be the key field of the table, or any other field that's guaranteed always to be populated and unchanging (like a creation timestamp that users don't have access to).
P.S. Props to forum participant siplus for this method.
if you introduce the uniqueID do not match predicate into the self join then the calc could become a simple matter of checking to see if their is a match across the join. The reason I like to include the mismatch in the self join is that to delete only the duplicates just go to related records, show only matching and delete all.
I'm sorry, I'm totally not skilled with this and am still having trouble. I created a self-joining relationship, by making another table occurrence and linking my last name and first name. I then tried to create a script trigger using the Case function you provided and I'm not getting any result. Where could I be going wrong?
This worked perfectly. Thank you!