It may depend on how your tables are related, and whether that relationship is reflected as an association in your object mappings.
Assuming the Order object has a collection of OrderDetail objects, this might work (or might not):
Code:
from Order order where order.Details.StatusID in (1,2,3,4,5) and order.VendorID = 1 and order.SalesDate > '01.02.2004'
I've never had much luck with dates as strings in HQL, so I would use a named parameter ":dateVal" in creating an IQuery, then set the parameter using a DateTime object.
The names of the objects and properties I used were arbitrary, and would depend on the mapping files matching the object to the table.