Witam
Na tym samym rysunku pojawia się zespół wraz z przypisaną mu nomenklaturą oraz rysunkami części danego zespołu. Chciałbym opisać te rysunki układem współrzędnych części i ilością użytą w zespole, ale nie mogę znaleźć parametrów do powiązania.
Za pomocą parametru "Numer części BOM" pokazuje mi nazwę konfiguracji...
W załączeniu zrzut ekranu z tym, co chciałbym mieć.
Dziękuję za pomoc.
capture_20171221.png
Nie sądzę, aby możliwe było powiązanie parametrów zespołu z widokiem części.
Można jednak obejść ten problem (jeśli nie ma zbyt wielu części), tworząc widoki złożenia, w których zostaną ukryte wszystkie inne części.
3 polubienia
Witam
To, czego możesz spróbować, to połączyć wartość z komórką w nomenklaturze (patrz PC)
Połączenie pozostaje niezmienione nawet wtedy, gdy część zostanie przeniesiona w zestawieniu komponentów, co może się zdarzyć w przypadku dodania lub usunięcia elementów do zespołu. Wygląda więc praktycznie.
Z drugiej strony właśnie odkryłem opcję, więc może mieć swoje ograniczenia
capture.png
Myślę, że jest coś prostszego.
Po utworzeniu MEP zespołu wraz z jego nomenklaturą tworzysz nowy arkusz, w którym wstawiasz część swojego ASS.
Następnie albo dołączasz adnotację do tej części, pobierając jej właściwość niestandardową, następnie umieszczasz się w "Komponencie, do którego dołączona jest adnotacja", a następnie wybierasz żądaną właściwość: numer części, masę, materiał itp.
Lub lepiej, wczytujesz właściwości swojej części bezpośrednio do kasety, klikając prawym przyciskiem myszy arkusz, a następnie edytując mapę bazową. Następnie w dolnym menu rozwijanym musisz wybrać widok tego arkusza. A twój wkład jest wypełniony właściwościami części włożonej do tego arkusza.
Tu
Właśnie dokładniej przetestowałam moje rozwiązanie i działa bardzo dobrze :)
Oto kroki:
- - Dodawanie adnotacji
- - Wstaw niestandardowy tekst (np. marker:)
- - Kliknij ikonę na PC.
- - Kliknij pole, aby połączyć się w nomenklaturze
FYI, przeniosłem komponenty w BOM, zduplikowałem komponenty w dodanym zespole i usunąłem inne komponenty, aby sprawdzić, czy skończy się to utratą połączeń i tak się nie stało.
Ilości części i układy współrzędnych są poprawnie aktualizowane w opisie
capture.png
2 polubienia
Dziękuję wszystkim trojgu za odpowiedzi.
@stefbeno:
Nasze zespoły mogą zawierać ponad pięćdziesiąt części. Twoja technika wydaje się być ograniczona po tej stronie.
@ludo. Maj:
Próbowałem już z tą funkcją, ale nie mogę zaznaczyć komórek. Działa raz na dziesięć...
@ronathan:
Jak ustawić tę właściwość "numer części", ponieważ zależy to od nomenklatury rysunku, a nie od części.
W końcu postaram się zautomatyzować to zadanie za pomocą API.
Dziwne, że nie możesz zaznaczyć komórek. Być może dlatego, że jesteś na osobnym arkuszu.
Może to działać poprzez utworzenie adnotacji na arkuszu zawierającym zestawienie materiałów oraz skopiowanie i wklejenie jej na drugim arkuszu
Kliknąłem komórkę, w rzeczywistości musisz wybrać jej zawartość i kliknąć obok niej, aby zweryfikować.
Tak, dziękuję!
Teraz muszę uzyskać identyfikator mojej tabeli nomenklatury, aby móc zautomatyzować to zadanie za pomocą VBA.
Ten temat może Ci pomóc: https://stackoverflow.com/questions/34087325/deleting-rows-in-bill-of-materials
Pełne makro służy do usuwania wiersza z nomenklatury, ale zawiera on identyfikator
Ciekawe, dziękuję. Ale szuka identyfikatora wiersza, a nie identyfikatora tabeli.
Nagrałem makro tego, co chciałem osiągnąć, używając funkcji "powiąż wartość z komórką", aby wiedzieć, których funkcji użyć w VBA. Wygląda to tak:
' C:\Users\fmaisonneuve\AppData\Local\Temp\swx9184\Macro1.swb - macro recorded on 12/21/17 by FMAISONNEUVE
' ******************************************************************************
Dim swApp As Object
Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
Sub main()
Set swApp = Application.SldWorks
Set Part = swApp.ActiveDoc
boolstatus = Part.ActivateView("Vue de mise en plan8")
Dim myNote As Object
Dim myAnnotation As Object
Dim myTextFormat As Object
Set myNote = Part.InsertNote("Repère : <TABLEOBJECT ID=""1189"" RECORD ID=""8"" COLUMN ID=""2"" COMPNAME=""Chassis-6@Nomenclature2/Tole_Essai4-1@Chassis"" COLNAME=""Rep."" WELDMENTORDNUM=""-1"">" + Chr(13) + Chr(10) + _
"Qté : <TABLEOBJECT ID=""1189"" RECORD ID=""8"" COLUMN ID=""4"" COMPNAME=""Chassis-6@Nomenclature2/Tole_Essai4-1@Chassis"" COLNAME=""<FONT style=B>Nbre"" WELDMENTORDNUM=""-1"">" + Chr(13) + Chr(10) + _
"Epaisseur : $PRPVIEW:""Epaisseur"" mm" + Chr(13) + Chr(10) + _
"Matière : $PRPVIEW:""Matiere""" + Chr(13) + Chr(10) + _
"Protection : $PRPVIEW:""Protection""")
If Not myNote Is Nothing Then
myNote.LockPosition = False
myNote.Angle = 0
boolstatus = myNote.SetBalloon(0, 0)
Set myAnnotation = myNote.GetAnnotation()
If Not myAnnotation Is Nothing Then
longstatus = myAnnotation.SetLeader3(swLeaderStyle_e.swNO_LEADER, 0, True, False, False, False)
boolstatus = myAnnotation.SetPosition(0.400401767151841, 0.446719946500758, 0)
boolstatus = myAnnotation.SetTextFormat(0, True, myTextFormat)
End If
End If
Part.ClearSelection2 True
Part.WindowRedraw
boolstatus = Part.ActivateSheet("Feuille1")
boolstatus = Part.ActivateView("Vue de mise en plan8")
End Sub
Aby zautomatyzować, muszę pobrać wartość skojarzoną z "TABLEOBJECT ID" z wcześniej utworzonej nomenklatury.
W rzeczywistości w swojej nomenklaturze możesz umieścić oznaczenie linii i numer części. Informacje te powinny być powiązane z niestandardowymi właściwościami każdej monety.
W ten sposób, wskazując adnotację na części rysunku, nawet po wykonaniu rysunku zespołu, będziesz w stanie odzyskać informacje zastosowane wcześniej.