Makro do rozłączania właściwości konfiguracji (nadrzędny/podrzędny)

Witam

W naszej działalności bardzo często wymaga się od nas korzystania z funkcji " wstaw część ", aby mieć część w pomieszczeniu.

Podczas importu części, ze względu na potrzeby jakościowe, będziemy musieli powiązać pewne właściwości (Rodzic/Dziecko).

Rzeczywiście istnieje możliwość, podczas importu, powiązania właściwości. Problem polega na tym, że wiąże je wszystkie.

Mam dwie opcje, więc:
1- Wiążę wszystkie właściwości z importem, a następnie odłączam te, których nie chcę
2- Niczego nie wiążę, potem wiążę tylko te właściwości, których potrzebuję.

Zmierzam do tego, że musiałbym to zrobić za pomocą makra, które uruchamiałoby się po uruchomieniu SmartProperties.
Zasadniczo chcę działać zgodnie z tymi znacznikami wyboru:

Mój problem polega na tym, że ja i VBA nie jesteśmy wielkimi przyjaciółmi, no tak ... Jest wspaniałym przyjacielem, nie ma ze mną problemu. Ja natomiast...! :sweat_smile:

Czy miłosierna dusza byłaby w stanie mi pomóc lub przynajmniej poprowadzić mnie w tym temacie?
Z góry dziękuję!! :blush:

1 polubienie

Trochę pytanie w wersji beta... Po co robić makro, aby to zrobić?

Oczywiście, czasami musisz to zrobić, a czasami nie. Makro automatyzujące to, wykona akcję za każdym razem, gdy uruchomi się SmartProperties

Witam;

Nawet jeśli nie zgadzam się na używanie zagnieżdżonych części w innych częściach: (Fuj)
Pomoc Solidworks informuje nas:
https://help.solidworks.com/2021/English/api/sldworksapi/SolidWorks.Interop.sldworks~SolidWorks.Interop.sldworks.ICustomPropertyManager~LinkAll.html

Można więc wydelegować (do przetestowania):

Option Explicit

Sub main()

    Dim swApp As SldWorks.SldWorks
    Dim swModel As SldWorks.ModelDoc2

swmodel.LinkAll = False

End Sub

Teoretycznie powoduje to zerwanie wszystkich powiązań wszystkich właściwości... ale wydaje mi się to prawie zbyt proste...

W przeciwnym razie, ale jest to o wiele bardziej skomplikowane, wydaje się, że istnieje możliwość zerwania powiązań między niektórymi właściwościami... (ale i tak musisz znać wszystkie ich imiona i wiedzieć, kto powinien być z kim spokrewniony... lub nie.)
https://help.solidworks.com/2021/English/api/sldworksapi/SolidWorks.Interop.sldworks~SolidWorks.Interop.sldworks.ICustomPropertyManager~LinkProperty.html

Myślę, że technika polegająca na tym, że nie decyduje się na powiązanie właściwości z importem nowej części, pozostaje najprostsza. (Nawet jeśli lepiej :shushing_face: jest wykonać montaż)

Pozdrowienia.

1 polubienie

Tym razem nie, muszę to robić cały czas.

W prawie wszystkich naszych projektach mamy pokój w pokoju.
Zobaczyłem, że istnieje sposób na warunkowanie SmartProperties, czyli modyfikowanie właściwości, które zapisuje zgodnie z warunkami.

Hurt:

  • jeśli wybiorę opcję 1, mam SmartProperties 1 i to daje mi pokój 1,
  • jeśli wybiorę opcję 2, mam SmartProperties 2 i to daje mi pokój 2.

Nadal mam 2 sztuki, które używają 1 sztuki.

Chciałbym, aby SmarProperties 2 uruchamiał to makro, aby samodzielnie odłączało pewne właściwości, a następnie zapisywało je.
Pomiędzy Załącznikiem 1 a Załącznikiem 2 zawsze mamy wspólne właściwości, które muszą być ze sobą powiązane.

Oczywiście, jest to " komfort ", rzeczywiście można to zrobić ręcznie, ale tak było, jeśli kiedykolwiek istniał " prosty " sposób na zrobienie makro...

1 polubienie

Dziękuję! :slight_smile:
Zagłębię się w to!

" Nawet jeśli miksowanie jest lepsze :shushing_face: ",
Zgadzam się... :face_with_peeking_eye: Ale tak właśnie działa moja firma

1 polubienie