You can create a Snapshot of an Assembly from Structure Manager. This will put all the sub-assemblies and components into a flat list in the Snapshot. Then you can select all and approve at once.
Add action handler to workflow root start...
You'll probably want a couple more arguments like:
Use in conjunction with EPM-attach-related-objects to get the BOMViewRevision and Datasets after adding components.
NX 11 | SW 2016 | Creo 4 | TcUA 11.4
Evaluating: AW 3.4