Jak wyświetlić część lub podzespół w stanie odzyskiwania

Witajcie, przyjaciele. Mam nadzieję, że ci nie przeszkadzam!

Nie pamiętam, jak to zrobić. Jest to ASM w innym, większym ASM. Trzeba powiedzieć, że nie używam już intensywnie solidworks :innocent:
To jest komunikat, który pojawia się, gdy chcę coś wstawić

image

Pozdrowienia

Cześć @Zozo_mp ,
Oto przewodnik od Visitiv CH:

Albo równoważny temat, na który odpowiedziałem:

3 polubienia

Witaj @Zozo_mp , cieszę się, że mogę cię znowu :grinning: przeczytać;

Mam Wam do zaoferowania małe makro:
=> Pozwala zidentyfikować pierwszy dokument w napotkanym stanie odzyskiwania (do kilkukrotnego ponownego uruchomienia, jeśli wystąpią inne zdarzenia).

Dim swApp As SldWorks.SldWorks               'Objet principal de l’application SolidWorks
Dim swDoc As SldWorks.ModelDoc2              'Objet de type document (pièce, assemblage, mise en plan…)
Dim swFeat As Feature                        'Objet représentant une fonction (feature) dans l’arbre
Dim sList As String                          'Chaîne de caractères pour stocker les informations

Sub main()

    'Connexion à l’instance de SolidWorks
    Set swApp = Application.SldWorks
    
    'Récupère le premier document ouvert dans SolidWorks
    Set swDoc = swApp.GetFirstDocument
    
    'Initialise la chaîne vide
    sList = ""
    FileName = ""
    'Boucle sur tous les documents ouverts
    While Not swDoc Is Nothing
        
        'Récupère la première fonction en partant du bas de l’arbre des fonctions
        Set swFeat = swDoc.FeatureByPositionReverse(0)
        
        'Teste si le document est "en reprise" (rollback mode)
        If (swFeat.IsRolledBack = True) Then
            'Ajoute le chemin complet du document à la liste
            sList = sList & vbCrLf & swDoc.GetPathName
            
            'Récupère uniquement le nom du fichier avec extension
            FileName = swDoc.GetTitle
            
            'Stop   'Instr de debug (pause)
        End If
        
        'Passe au document suivant ouvert
        Set swDoc = swDoc.GetNext
    Wend
If FileName = "" Then FileName = "Pas de Documents trouvé."
    'Affiche un message avec le dernier document trouvé en reprise
    MsgBox "Document en état de Reprise: " & vbCrLf & FileName

End Sub



Uwaga: W Solidworks 2022 możliwe jest przywrócenie tego stanu zaraz po otwarciu złożenia:
image

Pozdrowienia.

1 polubienie

Dziękuję za odpowiedzi.

W końcu użyłem bestialskiej metody przed twoimi doskonałymi odpowiedziami

1°) Stworzyłem całkowicie pusty ASM
2°) Miałem w drugim oknie, w którym miałem krnąbrnego ASM
3°) Przenosiłem podzbiory jeden po drugim z drugiego okna do pustego ASM, aż pojawił się komunikat.
Następnie otworzyłem oporny s/s asm i przeniosłem każdy element do pustego ASM i dokonałem małej drobnej modyfikacji na wymiarze, a następnie wznowiłem w opornym sub ASM i bum, pb zniknął. Na wszelki wypadek poddałem kwarantannie krnąbrnego sub-asm i wziąłem starą wersję sub-asm i uczyniłem je identycznymi z tym, który został poddany kwarantannie.
Od tego czasu działa poprawnie. Ufff :crazy_face:

Więc jeszcze raz dziękuję za pomoc! Przechowuję kopię twoich odpowiedzi w słowie. :wink:

3 polubienia