Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Macro im Product ausführen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Macro im Product ausführen (1289 mal gelesen)
V5-Maxe
Mitglied
CAD-Konstrukteur, CATIA V5


Sehen Sie sich das Profil von V5-Maxe an!   Senden Sie eine Private Message an V5-Maxe  Schreiben Sie einen Gästebucheintrag für V5-Maxe

Beiträge: 37
Registriert: 16.06.2005

Windows7 Prof x64
CATIA V5R19
Dell Precision T5500
12GB
NVIDIA Quadro FX 580 512MB

erstellt am: 25. Mai. 2012 14:27    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo zusammen, ich hab ein Macro, dass im (separat geöffneten) Part problemlos funzt.
Wenn das Part aber im Product hängt (TypeName(CATIA.ActiveDocument)="PartDocument"), dann erhalte ich die Fehlermeldung:
"Das Object unterstützt diese Eigenschft oder Methode nicht: `partDocument1.Part`


Sub CATMain()
Dim partDocument1 As Document
Set partDocument1 = CATIA.ActiveDocument

Dim part1 As Part
Set part1 = partDocument1.Part

Dim orderedGeometricalSets1 As OrderedGeometricalSets
Set orderedGeometricalSets1 = part1.OrderedGeometricalSets

Dim orderedGeometricalSet1 As OrderedGeometricalSet
Set orderedGeometricalSet1 = orderedGeometricalSets1.Add()
orderedGeometricalSet1.Name = "NEW"
part1.UpdateObject orderedGeometricalSet1
End Sub


Wie sage ich CATIA, in welches mein (vermeintlich aktives) "partDocument1.Part" ist

Vielen Dank für Eure Hilfe!!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

geekv5
Mitglied
Konstrukteur


Sehen Sie sich das Profil von geekv5 an!   Senden Sie eine Private Message an geekv5  Schreiben Sie einen Gästebucheintrag für geekv5

Beiträge: 214
Registriert: 13.07.2011

Notebook<P>MSI GX660R
Intel Core i5 460M
8GB DDR3
1GB Mobility HD5870
80GB Intel X25-M Postville
250GB HDD<P>Desktop<P>AMD Phenom II X4 965
1GB HD4890@ FirePro V8700
8GB DDR3-1600
2,5TB HDD<P>Belinea 2485 S1W 24" MVA

erstellt am: 25. Mai. 2012 15:31    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für V5-Maxe 10 Unities + Antwort hilfreich

Hallo,

hier meine Lösung:

Code:

Sub CATMain()

Dim partdocument1 As PartDocument
Dim part1 As Part
Dim selection1 As Selection
Dim orderedgeometricalSets1 As OrderedGeometricalSets
Dim orderedgeometricalSet1 As OrderedGeometricalSet
Dim adoc As Document

On Error Resume Next
Set adoc = CATIA.ActiveDocument
If Err.Number <> 0 Then Exit Sub

Set selection1 = adoc.Selection
  
Select Case TypeName(adoc)

    Case "PartDocument"
   
        Set partdocument1 = adoc
   
    Case "ProductDocument"
   
        selection1.Search ("'Part Design'.Teil, in")
       
        If Not selection1.Count = 1 Then Exit Sub
       
        Set partdocument1 = adoc.Selection.Item(1).Value.Parent.Product.ReferenceProduct.Parent
   
    Case Else
   
        MsgBox "Nicht unterstützter Dokumenttyp, breche ab.."
        Exit Sub

End Select

Set part1 = partdocument1.Part
Set orderedgeometricalSets1 = part1.OrderedGeometricalSets
Set orderedgeometricalSet1 = orderedgeometricalSets1.Add()

part1.UpdateObject orderedgeometricalSet1

End Sub


Zur Erklärung: selection1.Search ("'Part Design'.Teil, in") ermittelt das aktive (blaue) Teil.. Wenn das selection1.count=0 ist, dann ist kein Part aktiv..

Gruß

[Diese Nachricht wurde von geekv5 am 25. Mai. 2012 editiert.]

[Diese Nachricht wurde von geekv5 am 25. Mai. 2012 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

V5-Maxe
Mitglied
CAD-Konstrukteur, CATIA V5


Sehen Sie sich das Profil von V5-Maxe an!   Senden Sie eine Private Message an V5-Maxe  Schreiben Sie einen Gästebucheintrag für V5-Maxe

Beiträge: 37
Registriert: 16.06.2005

Windows7 Prof x64
CATIA V5R19
Dell Precision T5500
12GB
NVIDIA Quadro FX 580 512MB

erstellt am: 29. Mai. 2012 13:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo geekv5,
vielen Dank! 
Dein Tip funzt so weit auch bei mir, wenn ich das Part direkt im Productbaum selektiere.
Aber komme wie ich an das Part, wenn darin schon ein Feature oder orderedGeoSet selektiert ist?

Gruß

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

geekv5
Mitglied
Konstrukteur


Sehen Sie sich das Profil von geekv5 an!   Senden Sie eine Private Message an geekv5  Schreiben Sie einen Gästebucheintrag für geekv5

Beiträge: 214
Registriert: 13.07.2011

Notebook<P>MSI GX660R
Intel Core i5 460M
8GB DDR3
1GB Mobility HD5870
80GB Intel X25-M Postville
250GB HDD<P>Desktop<P>AMD Phenom II X4 965
1GB HD4890@ FirePro V8700
8GB DDR3-1600
2,5TB HDD<P>Belinea 2485 S1W 24" MVA

erstellt am: 30. Mai. 2012 10:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für V5-Maxe 10 Unities + Antwort hilfreich

Wie meinst du das? Bist du im Part oder Produkt (was ist im Baum blau hinterlegt)? Wenn das Part nicht die aktive Komponente ist, dann funktioniert es nicht, dann müsstest du dich vom selektierten Element zum Part hochhangeln..

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

V5-Maxe
Mitglied
CAD-Konstrukteur, CATIA V5


Sehen Sie sich das Profil von V5-Maxe an!   Senden Sie eine Private Message an V5-Maxe  Schreiben Sie einen Gästebucheintrag für V5-Maxe

Beiträge: 37
Registriert: 16.06.2005

Windows7 Prof x64
CATIA V5R19
Dell Precision T5500
12GB
NVIDIA Quadro FX 580 512MB

erstellt am: 30. Mai. 2012 13:48    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


PorMacro_yes.jpg


PorMacro_no.jpg

 
also, ich meine das so:
blau hinterlegt ist das Part, weil ich darin arbeite.
Wenn das aktive (blaue) Teil direkt selektiert ist, dann ist alles gut 

Wenn jedoch ein selektiertes Element in diesem Part existiert,
dann ermittelt CATIA das aktive (blaue) Teil anders. - Aber ich weiss nicht wie   

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

geekv5
Mitglied
Konstrukteur


Sehen Sie sich das Profil von geekv5 an!   Senden Sie eine Private Message an geekv5  Schreiben Sie einen Gästebucheintrag für geekv5

Beiträge: 214
Registriert: 13.07.2011

Notebook<P>MSI GX660R
Intel Core i5 460M
8GB DDR3
1GB Mobility HD5870
80GB Intel X25-M Postville
250GB HDD<P>Desktop<P>AMD Phenom II X4 965
1GB HD4890@ FirePro V8700
8GB DDR3-1600
2,5TB HDD<P>Belinea 2485 S1W 24" MVA

erstellt am: 30. Mai. 2012 14:10    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für V5-Maxe 10 Unities + Antwort hilfreich

Hm füge doch mal nach "Set selection1 = adoc.Selection" ein "selection1.clear" ein, dann müsste es gehen, wobei es bei mir auch so funktioniert, egal was ich selektiert habe 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

V5-Maxe
Mitglied
CAD-Konstrukteur, CATIA V5


Sehen Sie sich das Profil von V5-Maxe an!   Senden Sie eine Private Message an V5-Maxe  Schreiben Sie einen Gästebucheintrag für V5-Maxe

Beiträge: 37
Registriert: 16.06.2005

Windows7 Prof x64
CATIA V5R19
Dell Precision T5500
12GB
NVIDIA Quadro FX 580 512MB

erstellt am: 30. Mai. 2012 14:54    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke für Deine Unterstützung, leider hilft
  > selection1.clear <
nicht weiter.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz