I know that in .Net you can programatically set the parameters, in which case you would just need to code your record selection (if you are joining straight to the tables), you could also populate the parameter and join to a stored proc, in which case your record selection code would be in the stored proc, or you can call the stored proc from your app and then push the resulting dataset to the Crystal Report.
We use the last option in our reports, and all that is done is setting the DataSource of the report to the dataset from your data tier.
HTH