I have a specific version of slddrw file that I want to get the derived BOMs for with an API call. The problem is that when I call IEdmFile7.GetDerivedBOMs it returns all the BOMs ever made for that file, even ones that are no longer used, and there is no property attached to those BOMs that I can correlate back to the file version. I only care about the specific BOMs used on a specific version of the drawing file. Anyone know how to do this with APIs?
I can do this manually in file explorer. If I click on the slddrw file in EPDM and go the BOM tab, I can scroll through my file versions and pick the one I am interested in. Then I can select the BOM I want to use from the drop down list. EPDM knows which BOMs are used with that version of the file, why can't I get that correlation using APIs?
The slddrw file of interest has had a few different BOMs added and deleted throughout its life, and now has 2 used currently(one on each sheet). This is a legacy thing as I'm trying to get the guys to only have one BOM per drawing, but for now I have to deal with this scenario.
I attached a screen shot to show my EPDM viewer with the BOM options in the drop down. "Bill of Materials4" and "Bill of Materials5" are still used, but not "Bill of Materials1". If I change my file version, the BOM options update accordingly. I want to pick a file version (i.e. version 12) with an API call and find what BOMs are being used on that version. Currently, GetDerivedBOMs call returns an array of 19 BOMs, with just their name and object ID.
Any help is appreciated.