What else is in the loop / script? Can you post a copy?
There is no record ID? You can't just use a find operation or go to related record?
There is an ID so that's my fall back. The script itself is pretty simple (this part of it anyway) - Show All, Perform Find, Go to First, Omit, Show Omitted. Not sure why it isn't working properly.
A copy of the script would be good. Are you sure you've got Show All Records in the Loop and not a second Show Omitted instead? That would cause this behavior.
If you Perform Find, then anything you don't find is in the "omitted" set. So the record you omit wouldn't be the only one.
Or am I missing something?
Your script should be
Perform Find, Go to First, Show All, Omit, Show Omitted.
But, there may be no reason to use such a many steps instead of BruceRobertson's suggest (one step),
and I think there are rare risk that someone make record(s) between Omit and Show Omitted steps.
You can replace
[…] Show All, Omit, Show Omitted.
Find Matching Records [ primaryID ; Replace ]
In a multi-user system, I've run into problems using Show Omitted. Any newly created records between the Omit Record and Show Omitted, become Omitted records. It may not be your issue here, but a good reason to consider isolating records using a find.
The script itself is pretty simple (this part of it anyway) - Show All, Perform Find, Go to First, Omit, Show Omitted
Why do you need Show All before a Find?
I changed it to a find. I hate inherited systems.