Autor
|
Thema: UserRefProperties in jedem Produkt erstellen bzw. beschreiben (2162 mal gelesen)
|
Heini_K Mitglied
Beiträge: 34 Registriert: 26.09.2006 Catia V5R14SP4/R16 HP- Unix- Workstation
|
erstellt am: 25. Okt. 2006 11:23 <-- editieren / zitieren --> Unities abgeben:
Hallo, Ich beschäftige mich zur Zeit mit dem Vorgang für jedes Produkt der Produktstruktur eigene Properties zu erstellen bzw. zu beschreiben. Leider funktioniert die Property "UserRefProperties" nur für das RootProduct. Obwohl sie laut Catia-Hilfe zumindest für alle Reference Products funktionieren sollte. Anbei Auschnitte meines bisheriegen Codes: --------------- Dim MyProduct As Product Set MyProduct = product2 'Beliebiges Product bei rekursivem Durchlauf des Baumes Dim MyParameters As DirectParameters Set MyParameters = MyProduct.UserRefProperties ... Dim MyDimension As Dimension Set MyDimension = MyParameters.CreateDimension("Masse", "MASS", MassValueRounded) '<- MassValueRounded ist Masse ------------------------------ Wenn product2 nicht das RootProduct ist kommt die Fehlermeldung: "The Method UserRefProperties failed" Vielen Dank für Tipps und Anregungen. ------------------ Gruß, Matthias Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tomtom1972 Mitglied dipl ing maschinenbau
Beiträge: 605 Registriert: 22.03.2005 NVidia Quadro K4000 Intel Xeon E5-1620, 64GB RAM Windows10 64bit R30 <= CATIA V5 > =R19
|
erstellt am: 25. Okt. 2006 12:29 <-- editieren / zitieren --> Unities abgeben: Nur für Heini_K
Hallo, prinzipiell geht das so (für die erste Strukturebene). Bei komplexeren Strukturen einfach rekursiv aufbauen: Set oProducts = Catia.ActiveDocument.Product.Products For i = 1 To oProducts.Count Set oUserRefProps = oProducts.Item(i).ReferenceProduct.Parent.Product.UserRefProperties Set sStrParam = oUserRefProps.CreateString("Test", "") sStrParam.ValuateFromString "123" Next Gruss TomTom ------------------ tomtom1972 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Heini_K Mitglied
Beiträge: 34 Registriert: 26.09.2006 Catia V5R14SP4/R16 HP- Unix- Workstation
|
erstellt am: 25. Okt. 2006 14:21 <-- editieren / zitieren --> Unities abgeben:
Hallo Torben, Super, genau das was ich brauchte. (Und dann auch noch so schnell). Besten Dank! -------- Vielleicht noch eine kleine Ergänzung für andere Forum-Mitglieder, die den Code einbinden wollen: Vor dem Schreiben testen, ob der Parameter schon existiert, sonst wird er bei jedem Durchlauf (und auch bei Komponenten mit gleichem Reference Product) mehrfach erzeugt. ------------------ Gruß, Matthias [Diese Nachricht wurde von Heini_K am 30. Nov. 2006 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Heini_K Mitglied
Beiträge: 34 Registriert: 26.09.2006 Catia V5R14SP4/R16 HP- Unix- Workstation
|
erstellt am: 06. Nov. 2006 09:53 <-- editieren / zitieren --> Unities abgeben:
Hallo, Ich habe einen Effekt festgestellt, den ich mir nicht so richtig erklären kann. Also im Desing-Mode funktioniert alles einwandfrei. Nur wenn ich das Makro im Visualization-Mode laufen lasse, wird die UserRefProperty bei den Products direkt über den Parts (die man über Insert Component enthält), beim ersten rekursiven Durchlauf nicht erfasst, beim zweiten aber schon. Hat jemand eine Erklärung dafür? Vielen Dank im Voraus. ------------------ Gruß, Matthias Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
crinuy Mitglied Student
Beiträge: 19 Registriert: 17.02.2005
|
erstellt am: 10. Jan. 2007 10:23 <-- editieren / zitieren --> Unities abgeben: Nur für Heini_K
ah, erstmal viele Dank für den Code und ein sorry, dass ich den Thread wieder aus der Versenkung hole. Aber kann mir jemand einen Tip geben, wie ich überprüfen kann, ob die UserRefProperty schon vorhanden ist? Danke schonmal! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Lusilnie Mitglied
Beiträge: 1486 Registriert: 13.07.2005
|
erstellt am: 10. Jan. 2007 23:00 <-- editieren / zitieren --> Unities abgeben: Nur für Heini_K
|