I need to search 14 fields for a text string. Is there a simple way to do this (in a procedure) or do I have to specify 14 different searches?
The answer is the same whether the question is about Panorama X or about Panorama 6: You can do it manually with cmd-F and then “Any field contains”.
When you record your action as a procedure, you’ll get this code:
select exportline() contains "YourSearchString"
The code selects all records where any field contains your search string.
You requested simple and the above simple solution should work fine for most databases, but for a sufficiently complex one (100+ fields, some of them long, with lots of records) it may slow down. It would be slower to code, but faster to run, searching just the desired fields. If the search fields are all text ones than:
Select A+tab()+B+tab()+C+…+tab()+N contains "YourSearchString"
with the ellipsis expanded to include field names A-N as your 14 separate search fields, would search only the desired fields. The
+tab()s prevent accidental false matches spanning multiple fields and is pre-built into the
exportline() function. If some of your search fields are non-text, as the
exportline() solution allows, substitute
A, in your A+tab() etc. string for the non-text search fields. The
exportcell() is also pre-built into
exportline() for non-text fields, converting dates and numbers to text by their default patterns.