SW2013 SP4
Enterprise PDM 2013 SP4
I have created an EPDM add-in to allow users to right click on an assembly file (or a drawing or PDF of an assembly) to display a 'Print BOM' menu item. The addin will open Excel and create a nicely formatted BOM for printing like this:
Because we do not have a formal ECO/ECN process, it is not uncommon for a part drawing to be revised without updating the assemblies where it is used. To highlight such items they are displayed in bold red text as shown above.
Internally, the add-in is retrieving the BOM from the SolidWorks drawing (using GetDerivedBOM). This BOM may be out of date if any of its components have been revised so I call GetComputedBOM and replace any out of date info. Any such replacements are flagged so that I can highlight them in the Excel output.
This would all work OK except that the GetComputedBOM method requires a configuration name as a parameter. The IEdmBom returned from GetDerivedBOM does not provide access to the configuration(s) referenced by the BOM. I thought I would be able to use the Document Manager API where the ISwDMTable object has a ReferencedConfigurationNames property but that always returns all the configurations in the model, not just the configurations in the BOM.
So at this point I appear to be stuck, unless I am missing something.
Does anyone know of a way to determine what configuration(s) a derived BOM is referencing?
Jim S.
SolidworksApi macros