You should use the FieldCompareSetPredicate to implement the IN clause.
Please check the LLBLGen Pro manual "Using the generated code -> Adapter/SelfServicing -> Filtering and sorting -> The predicate system"
It should look something like:
predicateExpression.Add(new FieldCompareSetPredicate(
HeaderFields.HeaderID, null, HeaderFields.HeaderID, null,
SetOperator.In, innerFilter));
Construct the "innerFilter" in the same way:
innerFilter.Add(new FieldCompareSetPredicate(
HeaderFields.BuyerCode, null, CustomerFields.CustID, null,
SetOperator.In, (CustomerFields.CustomerName % "%XYZ%")));
innerFilter.AddWithOr(new FieldCompareSetPredicate(
HeaderFields.SellerCode, null, CustomerFields.CustID, null,
SetOperator.In, (CustomerFields.CustomerName % "%XYZ%")));
innerFilter.AddWithOr(new FieldCompareSetPredicate(
HeaderFields.AgentCode, null, CustomerFields.CustID, null,
SetOperator.In, (CustomerFields.CustomerName % "%XYZ%")));