Config-specifieke eigenschappen

Hallo

Is er een manier om alle "configuratiespecifieke" eigenschappen van een partij onderdelen te wissen, naar het voorbeeld van een SW-tool, Mycad of een macro? Of zal het alleen het feit benadrukken dat er een of meer "configuratiespecifieke" eigenschappen zijn?

Het is echt vervelend om een bubbel in een masterplan te hebben die op zoek gaat naar deze eigenschappen terwijl we alles netjes hebben opgevuld met smartbom of batchproperties  >:(

1 like

Hallo.

U kunt het Batch Custom Properties-programma proberen 

Ga naar de opties om de eigenschappen van de Configs te bekijken

Hallo

Deze link zou je moeten helpen

https://bluebyte.biz/macros/delete-all-properties-for-the-active-configuration-solidworks-macro/

 

Vriendelijke groeten 

Met batchProperties zet u de naam van de eigenschap (1) of eigenschappen die moeten worden gewist met @Delete (2) als de waarde, vervolgens in de opties (3)  in de toepassingen van de eigenschappen, kiest u op alle configuraties en past u vervolgens toe op de batch onderdelen of samenstellingen.

1 like

Dank u voor uw antwoorden

Ik koos voor de macroversie van yannick.petit, zodat ik deze kon gebruiken in Mycad-integratie. Het andere voordeel is dat ik de naam van de te verwijderen eigenschappen niet hoef op te geven.

Ik heb de code iets gewijzigd om het handmatige bevestigingsverzoek te verwijderen.

Idealiter zou ik het opnieuw moeten aanpassen zodat het op alle configuraties werkt, en niet alleen op de actieve.

Om te verwijderen op elke configuratie:

Option Explicit
Sub main()
    Dim swApp As SldWorks.SldWorks
    Dim swModel As SldWorks.ModelDoc2
    Dim swConfig As SldWorks.Configuration
    Dim swCustPropMgr As SldWorks.CustomPropertyManager
    Dim vPropNames As Variant
    Dim vPropName As Variant
    Dim configNames As Variant
    Dim configName As Variant
    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc
    configNames = swModel.GetConfigurationNames
    For Each configName In configNames
        Set swConfig = swModel.GetConfigurationByName(configName)
        Set swCustPropMgr = swConfig.CustomPropertyManager
        vPropNames = swCustPropMgr.GetNames
        For Each vPropName In vPropNames
            swCustPropMgr.Delete vPropName
        Next
    Next
End Sub

 

1 like

Hallo

Anders, als u in BatchProperties * in de naam van de eigenschap zet, worden alle eigenschappen verwijderd

Dit elimineert de noodzaak om bestanden in SOLIDWORKS te openen om de macro te starten en bespaart tijd.

Fijne dag

Philippe

2 likes

Nikkel

Het is waar dat batch het voordeel heeft dat het bijna onmiddellijk is.

Ik stuur ook de macro terug omdat het niet ongebruikelijk is dat ik mijn assemblage toch door de molen haal. Het integreren van deze functie is bovendien niet duur.

Hartelijk dank!