Hallo miteinander,
ich bin neu hier. Euer Forum ist echt Klasse. Ich habe auch schon ein paar Hilfen gefunden.
Leider habe ich zu dem jetztigen Problem nichts gefunden das mir weiterhilft. Leider bin ich auch nicht mehr fit was das Schreiben von Makros betrifft.
Zu meinem Problem: Ich habe rund 400Parts die ich in meiner Projektarbeit bearbeiten muss...
Ich möchte bei einem Product ein Part mit einem neuen Parameter versehen und das dann mit einer Formel verknüpfen.
Ich habe mir die Makros aufgezeichnet und zurechtgestuzt. Soweit funktioniert es auch. Allerdings nur in diesem Product und nur dieses eine Part.
Ich möchte es gerne allgemein anwendbar machen, in anderen Products und Parts.
Mir würde es erstmal völlig reichen wenn ich das Part selectieren muss und dann das Makro starte(da ich noch die Messung um die Masse erweitern muss wäre das nicht so schlimm, ein Makro für die Erweiterung um Mass Volumen oder ähnliches geht irgendwie garnicht zu erstellen). Es muss nicht das ganze Product durchgehen und alle Parts mit Parameter und Formel versehen.
Wäre super wenn Ihr mir da weiterhelfen könnt. Ein paar hinweise oder wie ich mir das vorstelle habe ich beigefügt.
Language="VBSCRIPT"
Sub CATMain()
'1.Teil Parameter hinzufügen bzw. add Properties
Set documents1 = CATIA.Documents
''''hier wird das Product angespochen ("4141A4D53C usw.")...habe es mit.. Set partDocument1 = CATIA.ActiveDocument ..probiert aber es gibt dann im Späteren verlauf ein problem.
Set partDocument1 = documents1.Item("4141A4D53C8A2D1E4141A4...")
''''hier mein Part das müsste allgemein ansprechbar sein bzw. den Namen des Parts ("3H__3571080_0000_01__A")einlesen und später bei "`3H__3571080_0000_01__A\InertiaVolume.1\Mass` "...wieder eintragen werden
Set product1 = partDocument1.GetItem("3H__3571080_0000_01__A")
Set product1 = product1.ReferenceProduct
Set parameters1 = product1.UserRefProperties
Set dimension1 = parameters1.CreateDimension("PartMass", "MASS", 0.000000)
'''''geht auch ohne diese Zeile
'dimension1.ValuateFromString "`3H__3571080_0000_01__A\InertiaVolume.1\Mass` "
Set product1 = product1.ReferenceProduct
'2.Teil hinzufügen der Formel
Set documents1 = CATIA.Documents
''''hier wird das Product angespochen ("4141A4D53C usw.")...habe es mit.. Set partDocument1 = CATIA.ActiveDocument .. geht leider nicht.
Set partDocument1 = documents1.Item("4141A4D53C8A2D1E4141A4...")
Set part1 = partDocument1.Part
Set relations1 = part1.Relations
Set parameters1 = part1.Parameters
'''''hier müsste wieder das selektierte part eingetragen werden da immer dort der Partname eingetragen werden muss bzw. die Bezeichnung von oben beim erstellen des Parameters("partname\Properties\PartMass")
Set dimension1 = parameters1.Item("3H__3571080_0000_01__A\Properties\PartMass")
Set formula1 = relations1.CreateFormula("Formula.3", "", dimension1, "InertiaVolume.1\Mass ")
formula1.Rename "Formula.3"
End Sub
Vielen Dank schon mal
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP