Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Annotations im Product - method Parent failed

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:  Annotations im Product - method Parent failed (1129 mal gelesen)
HoBLila
Mitglied
Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx


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

Beiträge: 1118
Registriert: 29.05.2008

DELL PRECISION T3500
Intel(R) Xeon(R) CPU W3540 @ 2.93GHz
12285 MB RAM
NVIDIA Quadro FX 1800
Microsoft Windows 7 Enterprise Service Pack 1
CATIA V5 R19 SP09 HF69
VB6.5
CAA RADE CDC

erstellt am: 26. Okt. 2010 09:51    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,

wie ihr an meinen Themen merkt bin ich mal wieder mit Annotations unterwegs und muss mal wieder feststellen, wie schlecht das Geraffel doch implementiert ist.
Aktuell habe ich jetzt das Problem, dass der User eine Annotation selektiert und ich mich bis zum Part/Product hoch hangeln will. Grund ist lediglich, dass ich den Namen des Products brauche, für die Weiterverarbeitung (habe ich es schon abgearbeitet). Im Part klappt das alles wunderbar. Nun habe ich jedoch eine Annotation im Product. Dort komme ich über die Parent-Methoden nur bis zum AnnotationSet. Dieses sagt mir auch korrekt KindOfSet = „Product“. Die Parent-Methode sagt jedoch <The method Parent failed>.

Wie würdet ihr das Problem am smartesten lösen?

------------------
Mit freundlichen Grüßen,
Henry Schneider
alias Lila

Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren:
Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen,
die Natur versucht, immer bessere Idioten zu bauen

Xing

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

DanielFr.
Moderator
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 26. Okt. 2010 12:52    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 HoBLila 10 Unities + Antwort hilfreich

Hallo Henry,

die smarteste...halt einzigste...Möglichkeit die mir einfällt ist über das ModelElement zu gehen (aus dem Objekt der User-Selection). Hier gibt es das Objekt "Document". In diesem befindet sich das komplett Dokument das an das ModelELement übergeben wurde (d.h. auch deine gesuchtet Root-Produkt).

Da du dich nicht über die Parents hangeln musst....ist das Ganze doch wieder smart  . Anbei mal mein Beispielcode (selektiert wird hier die View aber das kannst du ja noch ändern)

Code:

Sub CATMain()

    '***by Daniel Frauenrath

    Dim objDoc As Document
    Dim objSel As Object
    Dim StrState As String
    Dim strFilter(0)
    Dim objTPSView As TPSView
    Dim objAnnoSets As AnnotationSets
    Dim objModelElement As ModelElement
   
    Set objDoc = CATIA.ActiveDocument
    If TypeName(objDoc) <> "ProductDocument" Then
        MsgBox "Das aktive Dokument ist kein Product", vbExclamation, "Abbruch"
        Exit Sub
    End If
   
    Set objSel = objDoc.Selection
    objSel.Clear
   
    strFilter(0) = "TPSView"

    'MsgBox "Bitte wählen Sie eine Annotation aus", vbInformation, "Abfrage"
   
    StrState = objSel.SelectElement2(strFilter, "Bitte Annotation wählen / ESC zum Abbrechen", False)
   
    If StrState <> "Normal" Then
        MsgBox "Abbruch durch Anwender", vbExclamation, "Abbruch"
    Else
        Set objTPSView = objSel.Item(1).Value
        Set objModelElement = objTPSView.GetItem("ModelElement")
        objSel.Clear
    End If
   
    MsgBox "Das Root-Product der selektierten Annotation ist:" + vbNewLine + _
            objModelElement.Document.Product.Name, vbInformation, "Ausgabe"

   
End Sub



------------------
MFG Daniel

Systeminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)

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

HoBLila
Mitglied
Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx


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

Beiträge: 1118
Registriert: 29.05.2008

DELL PRECISION T3500
Intel(R) Xeon(R) CPU W3540 @ 2.93GHz
12285 MB RAM
NVIDIA Quadro FX 1800
Microsoft Windows 7 Enterprise Service Pack 1
CATIA V5 R19 SP09 HF69
VB6.5
CAA RADE CDC

erstellt am: 26. Okt. 2010 16:30    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 Daniel,

wie Du weißt schätze ich Deine Arbeit sehr, hierbei sind mir jedoch jedoch zwei Sachen aufgefallen:

1. Hast Du lange Weile, da ein ganzes Programm drum herum zu programmieren? 
2. Hut ab! Da hätt' ich zwar nach meiner letzten Frage auch drauf kommen müssen, aber es gefällt mir! Sollte diesen Trick langsam zu den besseren Kniffen tun.  Jedenfalls bin ich froh, dass meine Fragen in letzter Zeit auch super gut beantwortet werden.

Und noch ein Bonus: Ich muss nun nicht mehr zwischen Part und Product unterscheiden, denn ich muss mir ja nur die Dokumente merken.

Ich hätt' jetzt die Produktstruktur rekursiv durchsucht... 

------------------
Mit freundlichen Grüßen,
Henry Schneider
alias Lila

Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren:
Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen,
die Natur versucht, immer bessere Idioten zu bauen

Xing

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



Mitarbeiter Arbeitsvorbereitung (m/w/d)

Die Firma eibe ist einer der führenden Spielplatzgerätehersteller und Experte im Bereich Entwicklung, ganzheitliche Konzeption und Planung von innovativen Spielräumen für den Außen- und Innenbereich. Als Komplettanbieter leistet die Firma eibe alles aus einer Hand: das Unternehmen entwickelt, berät, plant, produziert, liefert und montiert.

Um unseren Erfolg fortzusetzen, suchen wir einen ...

Anzeige ansehenBauwesen
DanielFr.
Moderator
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 27. Okt. 2010 10:22    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 HoBLila 10 Unities + Antwort hilfreich

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