If all products had at least one related sub product record (even if it's blank except for the key field), you could base your report on the sub product table and include related fields from products, but this excludes the products that do not have a sub product record.
Your portal approach can work if you set your portal to "slide up" , "Resize enclosing part" in the sliding & visibility section of the Inspector's position tab, provided that you do not the fields within the portal to adjust field height for differing amounts of text. (The portal will shrink/slide, but not the rows inside.)
Key facts about sliding layout objects:
- It's only visible in preview mode and when you print/save as PDF...
- All layout objects below and in the same layout part as the slide/resize field need to also be set to slide up and resize.
- Objects in headers and footers will not slide.
- Portals will shrink/slide to fit the number of rows of records, but fields within the portal row will not shrink/slide.
- Container fields will slide only if Top, Left alignment is specified for it in the data formatting section of the Inspector's data tab.
- Consistent side borders are difficult to achieve with sliding fields.
Excellent solution - thank you!