What comprises a "completed" sub Module? What data is recorded in what table?
The following suggestions are very general as I don't quite see how all the pieces fit together here:
A portal filter can probably be set up with the IsEmpty function if a field is empty unless the sub Module is completed.
Or a calculation field can be defined to return a value when the sub Module is not complete and you can use it in a match field to match for such records.
ExecuteSQL could be used to produce a list of return separated IDs as a Match field as well.
What you can't do, is use a match field in a relationship if that field is empty to show that the sub module is not complete.