There's a way I know to set a filter for your portal using a technique that dates back to Filemaker 4 or older. Still works, there may be a better way, if so, maybe someone will chime in with it.
If you don't have a serial number field that uniquely identifies each client record, define one and Use the Replace Field contents tool to assign a serial ID number to all your existing records.
Create a new client layout with only one field on it, the above ClientID field.
Define a global text field: gClientList
Make your self Join relationship: Clients :: gClientList = Clients 2 :: ClientID
Place gClientList on your Clients layout.
If you script your find, (or possibly set a script trigger on your main layout that executes when you leave find mode), the following script will filter your portal to just show the current found set's matching records:
Go to Layout [ClientIDlayout (Clients)]
Copy All Records
Go to Layout [Clients (Clients)]
The draw back to this approach is that you use copy and paste which have inherent drawbacks:
1) the referenced fields must be present on the current layout
2) Copy All Records will destroy any data the user has previously copied to the clipboard.
An alternative is to loop through the script and use set field to build the list of records that Copy All Records does in one step.
Set field [clients :: gClientlist ; "" ]
Set field [clients :: gClientlist ; clients :: gClientlist & "¶" ]
Go to Record [Next ; exit after last ]
Don't see why highlighting the current portal row would be different for your case than any other.
For the Portal Scroll Bar behavior, are you seeing this when you click outside the portal or when you return from your detail view layout? In the first case, there's an option in Portal setup that controls whether the scroll bar snaps back up to the beginning. I'm not sure that it applies when you switch layouts like this. You might have to scirpt something with a Go To Portal row step to reposition the portal.
Thank you so much for the detailed reply!
I am not sure about the copy and paste method, I just might have to give up on this idea of showing a found set in a portal in a self-join.
If the found sets are small, I'd try the second alternative (loop through the records) and keep the clipboard untouched.