Prt-asm bevestigen bij het openen van een RWZI

Hallo collega's,

Snelle vraag, is het mogelijk om alle onderdelen en samenstellingen en subassemblages eenvoudig te repareren na het openen van een trede, voor het 1e niveau geen zorgen, maar dan moet je inzetten en openen om te repareren. Er moet zeker iets zijn, maar ik kan het niet vinden.

Bij voorbaat dank

1 like

Hallo
Ik gebruik de macro als bijlage ;-)

Hier is de code:

Option Explicit

Dim swApp As SldWorks.SldWorks

Sub main()
    Dim swModel As ModelDoc2
    Dim swAssy As AssemblyDoc
    
    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
    Set swAssy = swModel
    TransverseComponents swAssy
    swApp.SendMsgToUser "Terminé" & Chr(10) & ":-)"
    swAssy.ForceRebuild2 (True)
End Sub

Sub TransverseComponents(swAssy As AssemblyDoc)
    Dim vComponents As Variant
    Dim i As Integer
    Dim swComponent As Component2
    Dim swModel As ModelDoc2
    Dim swAssembly As AssemblyDoc
    
    vComponents = swAssy.GetComponents(True)
    For i = 0 To UBound(vComponents)
        Set swComponent = vComponents(i)
        Set swModel = swComponent.GetModelDoc2
        Debug.Print swComponent.Name2
        swComponent.Select4 False, Nothing, False
        swAssy.FixComponent
        If Not swModel Is Nothing Then
            If swModel.GetType = swDocASSEMBLY Then
                Set swAssembly = swModel
                TransverseComponents swAssembly
            End If
        End If
    Next i
End Sub

 


fixer_ensembles_et_sous_ensembles.swp
2 likes

De klas, dank je. Het werkt geweldig.

2 likes

Goedenavond

Ik heb het net gebruikt met SW19 en de onderdelen staan niet vast, alleen de sets en s/sets.
Heb ik iets gemist, is het een versieprobleem of is het normaal?

@stefbeno, tijdens mijn eerste gebruik had ik niet opgelet, maar na twee of drie keer draaien was de PRT gerepareerd.  Misschien een kleine bug door de nieuwe versies, want ik ben in 2020. Misschien met @remrem kijken of hij deze bug ook heeft opgemerkt?

1 like