API - właściwość niestandardowa

Witam wszystkich,

Mam pytanie dotyczące zarządzania właściwościami niestandardowymi w solidworks

Czy możemy zmienić właściwość niestandardową z zestawu, pozwól, że wyjaśnię:

Mam otwarty zespół i z tego zespołu "CO37662-33867_Ensemble_goulotte_sortie" chcę zmodyfikować właściwość niestandardową części "CO37662-33867F09-1" 

Czy jest to możliwe bez otwierania pokoju?

Zrobiłem kawałek kodu w VBA do testowania, ale to nie działa

' ******************************************************************************
' ******************************************************************************
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.Extension.SelectByID2("CO37662-33867F09-1@CO37662-33867_Ensemble_goulotte_sortie", "COMPONENT", 0, 0, 0, False, 0, Nothing, 0)
Part.CustomInfo("No_article") = 2000200



' fonctionne dans une piece
'boolstatus = Part.AddCustomInfo3("", "No_article", 1, "")
'Part.CustomInfo("No_article") = 2000200
End Sub

 

Dziękuję za pomoc

1 polubienie

Witam

Nie mam pod ręką oprogramowania do sprawdzenia, ale myślę, że musisz przynajmniej edytować część w złożeniu, aby móc ingerować w jej niestandardowe właściwości, czego twój fragment kodu nie robi...

Pozdrowienia

Witam

Włożyłem w montaż utwór w ten sposób

boolstatus = Part.Extension.SelectByID2("CO37662-33867F01-1@CO37662-33867_Ensemble_goulotte_sortie", "COMPONENT", 0, 0, 0, False, 0, Nothing, 0)

 

Zmienia to jednak atrybut zespołu.

 

Witam

Funkcja SelectByID2 nie jest funkcją edycyjną, a jedynie funkcją wyboru...

Aby zrobić to, co chcesz, musisz użyć funkcji GetModelDoc2 w celu pobrania ModelDoc2 wybranego komponentu, z którego możesz pracować nad tymi niestandardowymi właściwościami.

Pozdrowienia

2 polubienia