Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Solid Edge
  API Hilfe gesucht

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:  API Hilfe gesucht (1017 mal gelesen)
BerndB
Mitglied
Ingenieur


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

Beiträge: 611
Registriert: 28.09.2001

erstellt am: 17. Dez. 2012 10:43    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 Experten,

Ich habe eine Baugruppe bestehend aus mehreren Unterbaugruppen geöffnet.

Jetzt will ich Einzelteile in der Unterbaugruppe ersetzen

Befehl:

Call UNTER_objPart.SubOccurrences.Item(i).ThisAsOccurrence.Replace(NewOccurrenceFileName:="C:\123.par", ReplaceAll:=True)
   

Der Befehl bringt immer

Unbekannter Fehler

wenn das Teil mehrmals in der Unterbaugruppe verbaut ist.

Menge 1 kein Problem.

ReplaceAll:=False bring auch nichts...


Nach em Befehlsaufruf kann ich die Unterbaugruppe auch nicht mehr in SE speichern.

Hat da einer eine Idee??????


Alternative:

Wenn ich die Unterbaugruppe vorher von Hand anwähle und Rechte Maus Bearbeiten ausführe
geht das Umbenennen..

ABER:  Wie lautet der Befehl zum Bearbeiten einer Unterbaugruppe ?

AktuellesDokument.Edit("C:\123.asm")  oder ähnliches finde ich nicht.

Kennt da jemand was?


Gruß!

Bernd

------------------
Complaining about the way wheels never worked properly however often you laid them flat and pushed them.

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

Kricher
Mitglied
Entwickler


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

Beiträge: 270
Registriert: 10.09.2004

Solid Edge (ST6 - SE2020)
SolidWorks (2014 - 2020)
DraftSight 2016 und 2018
Creo Elements Direct Modeling
(SolidDesigner V17, V18, V19, V20)
Inventor 2018
ACAD/Mechanical 2018

erstellt am: 17. Dez. 2012 11:13    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 BerndB 10 Unities + Antwort hilfreich

Hi Bernd,

für solche Fälle würde ich in jedem Fall immer die Revisionmanager-API verwenden. Meiner Meinung nach die einzige Möglichkeit Dateien in jedem Fall immer korrekt auszutauschen und umzubenennen usw. Einzig der Umstand, dass immer die Parents in denen ausgetauscht werden soll in SE geschlossen sein müssen nervt ein wenig!

CU

Kricher

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

BerndB
Mitglied
Ingenieur


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

Beiträge: 611
Registriert: 28.09.2001

erstellt am: 17. Dez. 2012 11:45    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 Kricher,

danke für die Hilfe.

Revison Manager OK immer eine Ebene die Teile austauschen..

Mist nur, dass ich die Baugruppe offen habe...

Mein Programm exportiert aus SolidWorks eine große Baugruppe
öffnet die BG in SE
Jetzt werden teilweise vorhandene SE Datein in der neuen Struktur ausgetauscht.
Dann bekommt der User eine Maske um neue Nummern einzugeben.

Die BG zu schließen ist halt nicht so schön....

Da kann ich halt gleich auch die einzelnen Unterbaugruppen als Datei öffnen
und dann mit Replace eine Ebene ersetzen...

Weißt du evtl.

Wie lautet der API Befehl um in einer Baugruppe (Rechte Maus Anwahl einer Unterbaugruppe)
die Unterbaugruppe zu bearbeiten ?
Dann kann ich alles auch im geöffneten Zustand austauschen.

Dann will ich Sie wieder schließen..

Was würde ich dafür geben, dass SE einen richtigen Makro Rekorder hätte....

------------------
Complaining about the way wheels never worked properly however often you laid them flat and pushed them.

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

Kricher
Mitglied
Entwickler


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

Beiträge: 270
Registriert: 10.09.2004

Solid Edge (ST6 - SE2020)
SolidWorks (2014 - 2020)
DraftSight 2016 und 2018
Creo Elements Direct Modeling
(SolidDesigner V17, V18, V19, V20)
Inventor 2018
ACAD/Mechanical 2018

erstellt am: 17. Dez. 2012 12:02    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 BerndB 10 Unities + Antwort hilfreich

Du kannst natürlich wie folgt vorgehen:

1) Filename zur aktuellen BG-Occurrence ermitteln
2) Über SolidEdgeFramework.Application.Documents kontrollieren, ob die baugruppe in einem eigenen fenster geöffnet ist.
a) Wenn ja dann diese Documentinstanz verwenden
b) Wenn nicht, dann eine eigene Instanz in einem Fenster öffnen
3) In der jeweiligen Instanz austauschen und wieder schließen, wenn zuvor explizit geöffnet

Ich denke das müsste gehen, wobei ich wie gesagt den RVManager verwenden würde, dessen Routinen für den Referenzwechsel vertraue ich da weit mehr ;-)

Mir ist nach Deiner Beschreibung aber auch nicht klar, warum Du das ganze nicht über den RVManager machen kannst (dort kannst Du mit einem Rutsch alle Instanzen eines Dokuments ersetzen -> das will man doch wahrscheinlich sowieso?)?!
Da Du nach Deiner Beschreibung selbst die BG in SE öffnest verstehe ich das Problem nicht.

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

BerndB
Mitglied
Ingenieur


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

Beiträge: 611
Registriert: 28.09.2001

erstellt am: 17. Dez. 2012 13: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

Hi back,

ich bekomme eine Parasolid Datei .X_T
Die öffne ich in SE
Dadurch werden in dem Ordner C:\TEMP\Name des Parasolids\,
den ich für die Parasolid anlege
alle Dateien der Struktur abgelegt.
Die Hauptbaugppe fehlt noch, die speicher ich dann halt auch noch.

Jetzt einfach mal alle Strukturen in der geöffneten ASM mit
den beiden Repace Funktionen ändern Occurence und suboccurence

geht nicht "sauber"

Lösung 1:
Gehe in SE Struktur durch, Editiere alle Unterbaugruppen
in der geöffneten Hauptbaugruppe. Replace geht dann.

Hierzu fehlt mir momentan der Editier Befehl...

Lösung2:
Schließe die Baugruppe
Suche alle ASM des neuen Verzeichnisses
Ersetze bei bestimten Bedingungen die Einzelteile.
Dann wieder SE BG öffnen und dem User eine Liste geben:
Hier neue Namen vorgeben für neue Dokumentnummern, die noch fehlen.

Dann mit den neuen Namen das obere spielchen erneut und BG wieder Öffnen zu Zeigen des Ergebnisses...

Aufwendigster Weg aber sauber.

Lösung 3
AUs BG alle Unterbaugruppen als eingene Datei öffnen und dort Replace durchführen...

Ich mache jetzt wohl NR 2.

Danke für deine Unterstützung.

Gruß

Bernd

------------------
Complaining about the way wheels never worked properly however often you laid them flat and pushed them.

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