If the components have a common orientation, maybe LenY as the length, then you can use the modified ruby line tool and rotated rectangle tool to easy place and scale components. Consider this simple dynamic component:-
beam.skp|attachment (15.8 KB)
Having no nested DCs, then it does not become unique on scaling
As the “LenY” attribute is not exposed but is passed to an info attribute, one can select a number of instances and change their size without effecting their length.
This shows how to use the report writer to create a material takeoff
example of imperial / metric
and the use of instance names for labeling, note do not use the Name in the info attributes as this will override the updates to the option and attribute dialog
The video shows the customized ruby line tool to place and scale the component. If you decide on this work flow then I recommend you choose some of your 150 architects(?) (drafters) with a disposition to coding to pick up on some of the shared ruby and build your in house system.