Steve,
The underlying technique is similar to Access, though Paradox (of course) has a different spin on the implementation.
Basically, you design a form to collect the input from the user, execute the query, and run the report. It requires a bit of ObjectPAL, but isn't that difficult.
Most of the issues are discussed in
which is a tutorial showing most of the tasks involved.
It doesn't show how to collect information from the user, though. For that, you'll want to place an unbound field object on your form, name it, and then revise code in the article to take the value from that field instead of the Customer_No field used in the article.
You'll want to replace the value assigned to the str variable in the article with the value of your unbound field.
If you run into problems, feel free to send me an email from the article's Feedback link.
Hope this helps...
-- Lance