There's more than one way to do this depending on how you want to structure your user interface--and one method does not use a portal, but instead uses a list view layout based on subParts with sub summary parts that group the sub parts by Project. A master-detail pair of portals can also be used. In that interface, portal 1 lists all projects. Portal 2 lists the sub parts of the currently clicked project. You can also use a single sorted portal where you specify the project in one column and select the item in the next column. Sorting in the portal sorts first by project to keep the sub parts grouped by project.
All of these methods except the last work from this system of relationships:
"and one method does not use a portal, but instead uses a list view layout based on subParts with sub summary parts that group the sub parts by Project."
Can you direct me to a solution, template or example that I can look at?
Unfortunately not. I worked with another forum member with the same need so know it can be done but don't have a specific demo file or tutorial. It's a bit unusual as you use a summary report for data entry instead of your report. The trick is to use a global variable and an auto-enter calcualtion so that each new line item record gets the same InvoiceID even though you are creating the records without a portal.