if i understand correctly you would not.
What is the {?custno} param for in the regular report.
I assumed it was to to limit the data set for which packing slips to be printed. If it is only used for suprpession of the invloice records i do not think you need it at all.
My suggestion was to use the include_invoice table in your data set with an outer join .
NOw you shyould have a full data et with two custno's.
iclude_invoice.custno will be NULL whenever the record has not been printed yet.
if my understanding is accurate then after you alter your data set by outer joining in the inlcude_invoice table
NOT(isnull(include_invoice.custno))
is the same as your desired
{?custno} not in (select custno from dbo.include_invoice)
Did I get part of your requirements incorrect?
include_invoice.custno is not null it is the same thing as your original statement of