Hi Samuel,
OK - you can't use "AND()" because I didn't understand the problem!

But the way to get where you're going is to use "GETLINKEDVALUE()" in a Filter for the second View. Lookup the invoice number you are reading in the list of invoices that contain "Cylinder". If the invoice number is found, then check for "new rod" in the detail row.
Filter like this:
AND(
TRIM(GETLINKEDVALUE("InvoiceCylinders","Order Key","Order Key"))<>"",
FIND("new rod",{Description} ,1)<>0
)
Assuming that the View "InvoiceCylinders" contains the list of invoices with this part. Note linking on the Order Key - just checking if it returns a non-blank value.
This will return only the "new rod" details on invoices that had "cylinders" as an item.
PS. You may want to include "UPPER()" and "TRIM()" functions on the text variables to handle inconsistent entry of the text. It won't catch misspellings of cylinder though!
