habe noch was Probiert.
Hab mir erstmal die Referenzen über DisplayName ausgeben lassen:
----------------------------------------
----------------------------------------
Sub CATMain ()
'Set oPub = CATIA.ActiveDocument.Product.Products.Item(4) 'TTM Konstr
Dim Position
Position = "VR"
Set Docs = CATIA.Documents
Set ProdDoc = Docs.Item("TTM.CATProduct")
Set Prod = ProdDoc.Product
Set constraints1 = Prod.Connections("CATIAConstraints")
Set oPub = CATIA.ActiveDocument.Product.Products.Item(4).Products.Item("T_VERBINDER_" & Position & "")
Set oPublic1 = oPub.Publications.Item("POS_Y_AXIS") ' greift auf Publ. der Ebene TTM zu.. Set Ref1 = oPublic
Set Ref1 = oPublic1.Valuation
Ausg = Ref1.DisplayName
MsgBox(Ausg)
Set oPublic = CATIA.ActiveDocument.Product.Publications.Item("ANBIND_1_-Y") 'greift auf Publ. der obersten EBene zu
Set oPubRef = oPublic.Valuation 'gibt Publ als Referenz fuer Constrains etc wieder
Set Ref2 = oPubRef
Ausg2 = Ref2.DisplayName
MsgBox(Ausg2)
Set ProdDoc = Docs.Item("TTM.CATProduct")
Set Prod = ProdDoc.Product
Set Ref1 = Prod.CreateReferenceFromName("TTM/T_VERBINDER_" & Position &"/!POS_Y_AXIS")
Ausg = Ref1.DisplayName
MsgBox(Ausg)
'Set constraint1 = constraints1.AddBiEltCst(catCstTypeOn, Ref1, Ref2)
End Sub
-----------------------------------------
-----------------------------------------
Da fiel mir nun folgendes auf:
Bei dem Zugriff der Publication über Value gibt er den Pfad (eine Ebene höher) aus und immer die Instanznamen (also .Name)
(hier: "TMZ/TM_S1/T_Verbinder_VR/!POS_Y_Axis")
Bei createReferenceByName gibt er aber "nur" den Pfad wieder des normalen Namens..also PartNumber quasi..
(hier: "TTM/T_Verbinder_VR/!POS_Y_Axis")
könnte das das Problem sein?
Also sowohl dass er beim einen den .Name Pfad verfolgt (beim anderen den .Partnnumber)
also auch die Tatsache, dass er bei Pub.Valuation eine Ebene höher in der Struktur ist?!
WIe umgehe ich das Problem am besten? String abschneiden?
Ich versteh das nicht, da auf V5Automation das genauso gemacht wird (siehe: CAAAsmCstOnPublish.CATScript)
[Diese Nachricht wurde von Daeumling am 05. Feb. 2009 editiert.]
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP