Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Solid Edge
  Teile in Baugruppen

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:  Teile in Baugruppen (1325 mal gelesen)
Mrole
Mitglied



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

Beiträge: 118
Registriert: 02.04.2003

erstellt am: 16. Nov. 2007 13:15    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,

nochmal zum Thema Teile in Baugruppen identifizieren über API:
Wenn ich das gleiche Teil mehrmals in der Baugruppe verbaue,
wird in der EdgeBar der Name mehrmals gleich benannt mit dem Zusatz
Dateiname.par:1, Dateiname:2, Dateiname:3 usw..

Wird also ein Teil im Partbereich editiert, wie kann man feststellen,
welches dieser Teile im Moment aktiv ist, bzw. in der Baugruppe ausgewählt wurde zum Editieren?
Mein Stand:
im PartDocument kann ich mit ActiveDocument.InPlaceActivated erkennen, dass dieses aktiv ist, aber nicht, welchem Occurrence aus dem Assembly diesem entspricht,
da die Property InPlaceActivated nicht für Occurrence gültig ist wie es aussieht...

Geht das irgendwie?

Viele Grüße Roland

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

modeng
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 7061
Registriert: 10.12.2003

erstellt am: 16. Nov. 2007 14: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 Nur für Mrole 10 Unities + Antwort hilfreich

Moin,

irgendwie wird sich da schon etwas machen lassen nur wohin soll
die Reise gehen? Willst Du das aus einem Addin machen, oder aus einem
normalen programm heraus. Egal wie oft und wo das Teil verbaut
wurde -- es ist nur einmal vorhanden und sobald es im Kontext
editiert wird werden alle Instanzen dieses Teils aktiviert (V19/v20)

modeng

------------------
Lieber Fehler riskieren als Initiative verhindern (R. Mohn)

[Diese Nachricht wurde von modeng am 16. Nov. 2007 editiert.]

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

Mrole
Mitglied



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

Beiträge: 118
Registriert: 02.04.2003

erstellt am: 16. Nov. 2007 15:11    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

Hi,

ich hab ein Addin, in dem mein Programm als Exe ausgeführt wird.
Das addin ist in der Part Umgebung aktiv und erscheint, wenn ein Part mit Edit geöffnet wird. Jetzt würde ich gerne identifizieren, um welches Teil genau es sich hierbei handelt (welches Occurrence).

Ich bräuchte nämlich später, zurück in der Baugruppe, den Namen des Teils, das editiert wurde, um es hier zu selektieren.
Wäre es also möglich, in der Part-Umgebung herauszufinden, welches Occurrence aus dem Assembly gerade editiert wird?

Hoffe, das bringt dich weiter!

Viele Grüße und Schönes WE

Roland

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

modeng
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 7061
Registriert: 10.12.2003

erstellt am: 16. Nov. 2007 15: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 Mrole 10 Unities + Antwort hilfreich

Moin,

so kommst Du schon mal and die Subasm in der das Teil verbaut
wurde:

    Dim oMat() As Double
    Dim oObj As Object
    Set mApp = GetObject(, "SolidEdge.Application")
    Call mApp.ActiveDocument.GetContainerDocumentAndMatrixOfIPADoc(oObj, oMat)
    If oObj Is Nothing Then
      '
      ' Teil ist top level asm oder nicht InPlaceActivated
      '
    Else
        ' Teil ist in der sub asm
        MsgBox oObj.Name    ' asm name
        ' jetzt ueber die Occurrences laufen und mit
        ' <...>.occurrence.occurrencedocument.InPlaceActivated
        ' abfragen
        '
        '
    End


modeng

------------------
Lieber Fehler riskieren als Initiative verhindern (R. Mohn)

[Diese Nachricht wurde von modeng am 16. Nov. 2007 editiert.]

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

Mrole
Mitglied



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

Beiträge: 118
Registriert: 02.04.2003

erstellt am: 19. Nov. 2007 13:03    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,

mit der Matrix ist ne gute Idee, aber ich glaub die bekomm ich nur im Assembly von einem Occurrence?

Ich möchte nur ein Identifikationsmerkmal eines Teils (durch seinen Namen oder die Matrix, oder etwas anderes), das mir beim in der Baugruppe geöffneten Teil sagt, welches Occurrence vorher ausgewählt wurde, damit eben dieses Teil zum Bearbeiten geöffnet wird.

Kann ich so eine Identifikation also auch vom Part in der Part-Umgebung bekommen, oder geht das nur beim Occurrence in der Baugruppe?

Viele Grüße
Roland

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: 19. Nov. 2007 13:26    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 Mrole 10 Unities + Antwort hilfreich

Du willst es erst aus dem ASM öffnen und dann rausbekommen, wo Du her gekommen bist? Ich verstehe das Anliegen eigentlich nicht.
Wenn Du schon programmierst, merk Dir doch vorher in Deinem Programm, wo Du hergekommen bist.

------------------
APeters@BSS-Online.de

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

modeng
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 7061
Registriert: 10.12.2003

erstellt am: 19. Nov. 2007 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 Nur für Mrole 10 Unities + Antwort hilfreich

[...]
ich hab ein Addin, in dem mein Programm als Exe ausgeführt wird.
Das addin ist in der Part Umgebung aktiv und erscheint, wenn ein
Part mit Edit geöffnet wird.
[...]

Damit wird es ueber das Event: AfterDocumentOpen angesprochen. Eine
direkte Unterscheidung ob nun Edit oder Open ist nicht moeglich.
Das obige Coding liefert
- Nothing wenn es per Open geoeffnet oder als einzelnes Part
  geoeffnet wurde
- die Container ASM wenn es aus einer ASM heraus mit Edit
  bearbeitet wurde.
 
Im ersten Fall liefert <objApp>.Documents.Item(1) entweder eine
ASM (Top ASM) oder das Part selbst zurueck.

Im zweiten Fall musst Du halt in der ASM das Teil mit einer
Schleife uber die Occurrences suchen und Dir merken. Etwas
anders faellt mir momentan dazu nicht ein

modeng

------------------
Lieber Fehler riskieren als Initiative verhindern (R. Mohn)

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: 19. Nov. 2007 14:21    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 Mrole 10 Unities + Antwort hilfreich

Aha.

------------------
APeters@BSS-Online.de

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