Hallo,
scheint schwerer zu sein als ich Dachte.
Habe mich nun entschlossen, das Produkt nicht Parallel
zum bestehenden aufzubauen sondern innerhalb des bestehenden Produktes ein neues Produkt anzuhängen und unter diesem die Parts zu kopieren.
Das erzeugen eines Produktes klappt inkl. aktuellem Datum und Urzeit.
Probleme macht mir noch das aufbauen der Selektion der Parts und dann das kopieren in das gerade erzeugte Produkt. Das habe ich mir mal mit dem Makro Recorder aufgezeichnet und versucht hier einzubauen aber das hat nicht so ganz funktioniert.
public product2
public name
public selection1
public msg
Sub CATMain()
msg = 0
Set ROOTDOC = CATIA.ActiveDocument
Set ROOTPROD = ROOTDOC.Product
Set selection1 = ROOTDOC.Selection
'on Error resume next
Set productDocument1 = CATIA.ActiveDocument
Set product1 = productDocument1.Product
Set products1 = product1.Products
Dim name
Dim dTime
Dim sTime
dTime=Time
sTime=left(dTime,2)&"_"&right(left(DTime,5),2)&"_"&right(dTime,2)
'msgbox("Time : "&dTime &" Stime : "&sTime)
name = product1.PartNumber&"_"&Date&"_"&sTime
'msgbox ("Name : " & name)
set product2=products1.AddNewComponent("Product", name)
'Analysieren(productDocument1)
Analysieren ROOTPROD
msgbox ("Anzahl Selektion : "&selection1.count)
selection1.Copy
Set selection2 = productDocument1.Selection
selection2.Clear
Set product11 = products2.Item(name)
selection2.Add product11
selection2.Paste
End Sub
Sub Analysieren(VATER)
Dim count
Dim AKTUELLESProdukt
for count = 1 To VATER.Products.Count
Set AKTUELLESProdukt = VATER.Products.Item(count)
if msg <2 then
if Typename(VATER.ReferenceProduct.Parent)="ProductDocument" Then
AKTUELLESProdukt.ActivateDefaultShape
msgbox ("TypenameProduckt : "& Typename(VATER.ReferenceProduct.Parent))
msg=3
else
msgbox ("TypenamePart : "& Typename(VATER.ReferenceProduct.Parent))
msg=3
end if
end if
' Platzhalter
' on Error Resume next
Dim Pdoc
'msgbox ("Name : " & P.Name)
Set Pdoc = VATER.ReferenceProduct.Parent
dim strline
'strline =""
strline = strline & " Typ : "&Typename(Pdoc)
strline = strline & " Name : "&Pdoc.Name &vbcr
'strline = strline & " Parent : "&Pdoc.ReferenceProduct.Parent.name
'msgbox(strline)
if Typename(Pdoc)="PartDocument" Then
set productPart=Pdoc.product.Products.Item.name
selection1.Add productPart
msgbox ("Anzahl Selektion : "&selection1.count)
' Set product1 = productDocument1.Product
' Set products1 = product1.Products
' Set product2 = products1.Item(P.InstanceName)
' selection1.Add product2
' selection1.Copy
' Set productDocument1 = CATIA.ActiveDocument
' Set selection2 = productDocument1.Selection
' selection2.Clear
' Set product11 = products1.Item(P.InstanceName)
' selection2.Add product11
' selection2.Paste
end if
Analysieren AKTUELLESProdukt
next
'msgbox(strline)
End sub
Vieleicht hat ja jemand dazu einen Ansatz oder noch besser eine Lösung.
Schönen Tag noch an alle
elHarry
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP