It seems to me this question is about how to Find via a relationship. The thing is, you cannot Find for "=" (empty) in a related field (portal or single field, doesn't matter); the relationship is not valid for those. What you can do is Find for "*" (something), then Omit.
There is a relationship between the Request and Machinery tables in that if Make, Model, Year, and Budget in the Request table = Make, Model, Year, and Price in the Machinery table, the specific records in the Machinery table are displayed in a portal for each Request portal. So is there a script that can omit all of the Requests which have matching Machines (i.e. omit all Request records with something in the portal)?
Please advise. Thanks.
I suggested that in your other thread:
Enter find mode 
Set Field [Relatedtable::Field ; "*"]
Omit records does the same operation in this script that clicking the "omit" button does in manual finds.
This report does not show any Machines, only the Request and Contact information as follows:
Request ID Name Company Make Model Year Budget
It is based on the Request table.
As of now, the report includes every record in the Request table. What I want to do is omit the records which have matches in the Machinery table. For this to happen, do I need to include fields from the Machinery table as well? If so, how would the report be organized so the final version would just provide a list of Requests that don't have matches.
You do not need to add these fields to your layout. Just run the script I've suggested subsituting your table occurrence and field names for the placeholder Relatedtable::field that I used.
But which field would I enter "*" in? This report is basically a list of all the Requests in the database. In the Form view, there is a portal on each Request record that shows any matching items in the Machinery table. In the list of the Requests, there is no portal obviously so it only shows information inherent to that table (i.e. only fields from the Request table). The purpose of this report is to provide a quick look at all the Requests that do not currently have matches. So as far as I can tell there is no field in the Request table where I can enter "*" and see only the Requests without matches.
Put simply, when I enter Find mode on the Request layout, I enter "*" in the Machine ID field in the portal (i.e. linked to the Machinery table), and choose to Omit Records. This Find gives me all the Requests without matches. What I want is this found set in a report format.
Never mind, what I did was add the Machine ID field to the report and ran the script you suggested with Machine ID set to "*". It worked. Thanks.
Glad it worked, but you don't have to add the field to your layout for the script to work.