InsertBomTable3 multi configuraties

Hoi allemaal

Op een SolidWorks-assembly kunt u met het VBA-commando "InsertBomTable3" en een paar regels code de BOM van een assembly-configuratie invoegen op een gekozen weergave. Maar hoe geef je, met VBA-commando's, de nomenclatuur van verschillende configuraties weer zoals dat mogelijk is op de SW-interface?
Inderdaad, op SolidWorks is het bij het invoegen van een stuklijsttabel mogelijk om het tabelmodel, het BOM-type, het type groepering maar ook de configuraties te kiezen die u wilt weergeven (zoals hier wordt uitgelegd). De toegevoegde stuklijst heeft dus evenveel "hoeveelheidskolommen" als er configuraties zijn, en alle onderdelen van de assemblage worden vermeld.
Ik heb verschillende pogingen gedaan, waaronder het opnemen van een macro, maar ik kan het commando of de opeenvolging van commando's niet vinden waarmee je hetzelfde in VBA kunt weergeven als rechtstreeks op de interface.
Heeft u een oplossing voor deze vraag?
Thomas

Hallo @t.soulard, Goedenavond Thomas :grinning:

Blij je te zien op het forum en je te verwelkomen.

Ik hoop dat we je regelmatig kunnen helpen met het oplossen van een paar problemen, maar ook dat we kunnen profiteren van je kennis en ervaring.

We hebben op ons forum een supersterke VBA-kerel die je snel zal antwoorden!

Vriendelijke groeten

1 like

Hallo @tous
Mogelijk voor de top_level met de "setconfigurations" functie van
"bomfeature" Voorbeeld

2 likes

Hier zijn de opties die beschikbaar zijn voor:
IBom-functies:
https://help.solidworks.com/2022/english/api/sldworksapi/SolidWorks.Interop.sldworks~SolidWorks.Interop.sldworks.IBomFeature_members.html?id=57845b2c38d74d48a28ce6088236d074#Pg0
IBomTabel:
https://help.solidworks.com/2022/english/api/sldworksapi/SolidWorks.Interop.sldworks~SolidWorks.Interop.sldworks.IBomTable_members.html?id=8da3b33e278a402d8d5020ee6ea63ebb#Pg0

1 like

Hallo
Dank u voor uw antwoorden. Ik ga proberen vandaag wat tijd te besteden om ze te bestuderen en ze te implementeren in mijn programma dat direct op de 3D werkt en niet op de tekening.

Hallo sbadenis,
Bedankt voor de IBomFeatures-track die de juiste was.
Ik gebruikte GetConfigurations om alle configuraties te kennen die op de naam kunnen worden gezet en vervolgens SetConfigurations om ze te laten verschijnen.

Uiteindelijk is mijn code als volgt.
Stel swBOMAnnotatie in = swModelDocExt.InsertBomTable3(TemplateName, 0, 0, BomType, Configuratie, False, swNumberingType_Detailed, True)
Stel swBOMFeature = swBOMAnnotation.BomFeature in
ConfigS_Nom = swBOMFeature.GetConfigurations(Onwaar, Zichtbaar)
boolstatus = swBOMFeature.SetConfigurations(True, True, ConfigS_Nom)

Bedankt voor je hulp

Zelfgevalideerde S is niet fijn

1 like