After cycling through the compute materials report for awhile I tried recording a macro with the C3D 'action recorder' but it has limited capability. So I searched online for a recorder and found the jitbit recorder free trial. So I have a macro recorded for the process but fails because jitbit does not easily count. The macro needs to open the compute materials volume report _AeccGenerateQuantitiesReport and then parse through the alignments and place in a memory counter how many alignments there are, the number of sampleLines for each, and the number of materials for each. Then when the macro is run, the process repeats for each alignment n times for each sampleLine group; n is the number of material lists for each sampleLine. When the output file is created I wrote the macro to rename the file but I need the alignment-sampleLine-materialList to name each file uniquely. For example, alignment 1, sample line 3, material list 1 is QuantityReportTemp_1-3-1.xml so I know what it is later and it does not just rewrite over the same file repeatedly. Even better is if the file was named with the actual alignment name, sampleLine, and materialList I defined in C3D.
For repeat the recorder needs a text filet and a write to file linet indexing the count for each loop, then for the loop statement read the text file value. Lame workaround 101, I guess this could also work for the file nameing. The problem is still how to obtain the count from parsing - there is no way to determine when the end of the list is reached. It seems like C3D should include some consideration for the use of macros in the quantity takeoff function if not throughout.