Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Solid Edge
  Stukturauflösung von Teilefamilien

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
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SolidEdge
Autor Thema:  Stukturauflösung von Teilefamilien (873 mal gelesen)
auerpa
Mitglied
Anwendungsentwickler


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

Beiträge: 15
Registriert: 27.10.2014

erstellt am: 27. Okt. 2014 09:42    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 habe ein Problem beim Auflösen bzw. Analysieren von Dateistrukturen, welche Familyparts beinhalten in Vb.net.

Hier ein Ausschnitt:

Code:


        Dim sNormPart As String

        Dim oModel As SolidEdgePart.Model
        For Each oModel In oModels
           
            If oModel.CopiedParts.Count > 0 Then
                For i = 1 To oModel.CopiedParts.Count

                    Dim oCopyPart As SolidEdgePart.CopiedPart = oModel.CopiedParts.Item(i)

                    sNormPart = oCopyPart.FileName

                    If IsSolidEdgeDoc(sNormPart) = False Then
                        Return True
                        Exit Sub
                    End If

                    SeApp.DisplayAlerts = False

                    Dim oNormPart As SolidEdgeDocument = SeApp.Documents.Open(sNormPart)
                   
                    'Hier analysiere ich das Normteil. Dafür brauche ich das Normteil als SolidEdgeDocument und
                    'muss es dafür öffnen. Das geht extrem in die Laufzeit...
                    'Wie bekomme ich das SolidEdgeDocument aus SolidEdgePart.CopiedPart ohne es explizit öffnen zu müssen.
                    'Bzw. wie kann ich eine saubere Stukturauflösung ausführen? Evtl. gibt es einen anderen Weg die Varianten zu analysieren.
                   
                    'Ziel soll es sein über die Struktur zu laufen und herauszufinden, welche Dateien Varianten sind und welche Dateien
                    'Teilefamilien sind.


                    oNormPart.Close()
                    oNormPart = Nothing

                    SeApp.DisplayAlerts = True

                Next
            End If
        Next



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

Arne Peters
Ehrenmitglied V.I.P. h.c.
CAD Dokumentation / Training / Programmierung / Datenbanken


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

Beiträge: 7321
Registriert: 05.2002.24

Solid Edge Seminarunterlagen
Training, Beratung, Programmierung

erstellt am: 27. Okt. 2014 09:47    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 auerpa 10 Unities + Antwort hilfreich

Vielleicht ohne SE mit dem RevisionManager-Objekt.
Aber ich weiß nicht, ob man die Links da differenzieren kann.
Ich erinner blaß, dass es da einen LinkType gibt.

------------------
Arne

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

auerpa
Mitglied
Anwendungsentwickler


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

Beiträge: 15
Registriert: 27.10.2014

erstellt am: 27. Okt. 2014 10:39    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


interpart.png

 
Hallo Arne,

ich weiss was du meinst. Leider bringt mich das an der Stelle nicht weiter (siehe Anhang).
Ich habe es mit dem Revisionmanager bereits probiert.

Code:

                    'beispiel:
                    Dim objApplication As RevisionManager.Application = Nothing
                    Dim objDocument As RevisionManager.Document = Nothing
                    Dim objLinkedDocuments As RevisionManager.LinkedDocuments = Nothing

                    objApplication = New RevisionManager.Application
                    objDocument = objApplication.Open(oDoc.FullName)
                    objLinkedDocuments = objDocument.LinkedDocuments(RevisionManager.LinkTypeConstants.seLinkTypeInterpart)
                    ' habe auch die anderen Konstanten getestet...                   


Hat jemand sonst noch eine Idee?
Evtl. kann man das doch mit dem Revisionmanager machen, nur wie? Aus der sesdk.chm geht nicht hevor wie die Konstanten zu verwenden sind und
welche Bedeutung sie haben, deshalb tappe ich noch im Dunkeln.

Grüße.

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

ckunkel72
Mitglied
CAD Konstruktion Maschinenbau


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

Beiträge: 183
Registriert: 20.02.2013

Windows 10 Pro x64
SolidEdge ST9 MP5
Visual Studio Community 2017

erstellt am: 27. Okt. 2014 10:55    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 auerpa 10 Unities + Antwort hilfreich

Wenn Du nur eine Referenz auf das Teil brauchst geht das auch so:

Code:

Dim oNormPart as SolidEdgeDocument
oNormPart = TryCast(System.Runtime.InteropServices.Marshal.BindToMoniker(sNormPart), SolidEdgeFramework.SolidEdgeDocument)


Gruß Christian

------------------
Seit Januar 2013 vollständig verschoben und syncronisiert.

http://c-k-m.info

[Diese Nachricht wurde von ckunkel72 am 27. Okt. 2014 editiert.]

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

auerpa
Mitglied
Anwendungsentwickler


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

Beiträge: 15
Registriert: 27.10.2014

erstellt am: 27. Okt. 2014 11:12    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 Christian,

super! Genau das hat mir gefehlt.
Vielen lieben Dank! 

Grüße,
Paul

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