Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Zeichnungen neu referenzieren

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:  Zeichnungen neu referenzieren (1625 mal gelesen)
mortal sin
Mitglied
Dipl. Ing. Maschinenbau

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

Beiträge: 3
Registriert: 24.05.2007

erstellt am: 25. Mai. 2007 07:41    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


Fehlermeldung.JPG

 
Hallo zusammen,
ich habe folgendes Problem:
Ich möchte per Makro das Referenzpart eines Drawings ändern, also eine Zeichnung von einem Part_XXX auf ein Part_YYY umhängen. Bei diese beiden Parts sind identisch, haben jedoch andere Dateinamen und Teilenummern.

Ich hatte mir das prinzipiell so vorgestellt:

Language = CATScript
Sub CATMain()
  Dim Part As Document
  Dim Drawingdoc As Document
  Dim Sheets As DrawingSheets
  Dim Sheet As DrawingSheet
  Dim AktViews As DrawingViews
  Dim aktView, MyView As DrawingView

  Set Part = CATIA.Documents.Item("Testpart.CATPart")
  Set Drawingdoc = CATIA.ActiveDocument
  Set Sheets = Drawingdoc.Sheets
  Set Sheet = Sheets.ActiveSheet
  Set AktViews = Sheet.Views
  For i = 1 To AktViews.Count
    Set aktView = aktViews.Item(i)'ActiveView
    IF Not (GenView = aktView.IsGenerative()) Then
      Set aktView = aktView.ReferenceView
    End If
  Dim ReferenceComponent As Document
  Set ReferenceComponent = aktView.GenerativeBehavior.Document
  aktView.GenerativeBehavior.Document = Part
Next
End Sub

Das Problem ist nur, dass ich eine Fehlermeldung bekomme. (Siehe  Anhang) und das Makro abbricht.

Wenn sich jemand damit auskennt bitte melden. Schon mal danke,
bis denne,

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

Bertel
Mitglied



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

Beiträge: 300
Registriert: 03.04.2002

CATIA V5 R26SP3HF21
Win10
Lenovo P52
Intel Xenon 16GB Ram
NVIDIA Quadro P2000
EUKLID V14
ViCADo 2015

erstellt am: 29. Mai. 2007 09:36    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 mortal sin 10 Unities + Antwort hilfreich

Hallo mortal sin,

bei mir funktioniert das so:

if not(GenView = DrwView.IsGenerative()) then
DrwView.GenerativeLinks.RemoveAllLinks
DrwView.GenerativeLinks.AddLink PartDocument.Part
end if

Gruß
Bertel

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

mortal sin
Mitglied
Dipl. Ing. Maschinenbau

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

Beiträge: 3
Registriert: 24.05.2007

erstellt am: 29. Mai. 2007 18:00    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

Erst mal danke für deine Antwort. Lässt du das ganze dann über alle Ansichten einer Zeichnung laufen? Das Hört sich nicht nach CATScript an, ist das VBScript oder VBA?

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

Bertel
Mitglied



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

Beiträge: 300
Registriert: 03.04.2002

CATIA V5 R26SP3HF21
Win10
Lenovo P52
Intel Xenon 16GB Ram
NVIDIA Quadro P2000
EUKLID V14
ViCADo 2015

erstellt am: 30. Mai. 2007 08:33    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 mortal sin 10 Unities + Antwort hilfreich

Hallo mortal sin,

das ist CATScript und läuft über alle Views eines Sheet.

For i = 1 to DrwViews.count

Gruß
Bertel

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

Locke101
Mitglied



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

Beiträge: 51
Registriert: 02.05.2007

erstellt am: 30. Mai. 2007 09:46    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 mortal sin 10 Unities + Antwort hilfreich

Hallo Zusammen,

habe das obige Skript bei mir versucht.

Gibt es eine Möglichkeit das die Maße in der Zeichnung ihre Referenzen an Kanten, usw behalten? Bis jetzt werden alle Maße zu toten Maßen!


Das heißt das nur der Link zu dem neuen Part ausgetauscht wird! Ist das möglich ??????????? 

Würde mir sehr helfen.

Gruß Locke 101

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

Lusilnie
Mitglied



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

Beiträge: 1486
Registriert: 13.07.2005

erstellt am: 31. Mai. 2007 22:00    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 mortal sin 10 Unities + Antwort hilfreich

Hallo Locke101,

was Du anstrebst, geht nur, wenn die Parts immer noch die gleiche UUID haben, sprich das zweite Part aus dem ersten Part mit "File_SaveAs" ohne "Save_as_new_document" entstanden ist.

Dann musst Du im Script von "Bertel" nur die Zeile:

Code:
DrwView.GenerativeLinks.RemoveAllLinks
weglassen und nachher manuell in jeder View im Kontext-Menü "View->Modify_links" den Link zum ersten Part löschen.
Dann sollten die Maße nicht verloren gehen, allerdings ist auch das nicht sicher!


mfg,
Lusilnie

------------------

Alle Aussagen zu DassaultSystemes-Produkten sind sehr optimistisch, selbst diese!!!

frei nach größeren Geistern

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

Locke101
Mitglied



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

Beiträge: 51
Registriert: 02.05.2007

erstellt am: 01. Jun. 2007 09:50    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 mortal sin 10 Unities + Antwort hilfreich

Hi Lusilnie,

da bin ich in dem Fall voll im Problem, denn ich habe ne andere UUID.
Gibt es da keine Möglichkeit die Referenzen der einzelnen Maße auszulesen und beim neuen Part zu zuweisen??? Die Namen der Kanten bzw. Flächen müssten ja noch gleich sein, oder irre ich mich da????

Gruß Locke101

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