This approach is ok, but if you need to expand the field you want to search on you will need to modify the calculation each time. Whereas since you are already running a script you could use the script to perform the find on each individual field.
I would suggest changing the calculated field you have to be a Text field and make it Global Storage from the field options.
Then your script goes to the layout with that field as it does currently without the Enter Find Mode step, and I assume you pause it at the point the user inputs the search criteria, following the Pause step do the following:
Enter Find Mode  // Deselect 'Pause'
Set Field [ CUSTOMERS::first name ; CUSTOMERS::GlobalSearchField ]
Set Field [ CUSTOMERS::last name ; CUSTOMERS::GlobalSearchField ]
Set Field [ CUSTOMERS::street address ; CUSTOMERS::GlobalSearchField ]
Perform Find 
#// Check result and if no records found alert user.
If [ Get ( FoundCount ) = 0 ]
Show Custom Dialog ["Message" ; "No Records Found."]
Enter Browse Mode 
This will be easier for you to maintain than a concatenated calculation.
If anything is unclear let me know and I will explain.
I hope this helps.
Thanks Orlando - very interesting. Will try it out this w/end and advise. Appreciated.