Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Prüfen, ob Ansicht in Drawing vorhanden

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:  Prüfen, ob Ansicht in Drawing vorhanden (2267 mal gelesen)
n4426
Mitglied
CAx-Administration, Technischer Zeichner (Maschinen- und Anlagentechnik)


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

Beiträge: 65
Registriert: 17.01.2003

Windows 7 Prof. 64-Bit
CATIA V5-6 R2014 SP04

erstellt am: 14. Apr. 2011 13:14    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 bin gerade dabei ein VBA-Makro zu bastenl, welches mir den Pfad der Verlinkten Datei einer View im Drawing ausließt.

Jetzt möchte ich vorm auslesen Prüfen, ob die Ansicht überhaubt auf dem aktuellem Blatt vorhanden ist.

Code:
Dim drawingDocument1 As Document
Set drawingDocument1 = CATIA.ActiveDocument
Dim drawingSheets1 As DrawingSheets
Set drawingSheets1 = drawingDocument1.Sheets

Dim drawingSheet1 As DrawingSheet
'Set drawingSheet1 = drawingSheets1.ActiveSheet

Set drawingSheet1 = drawingSheets1.Item("01")
drawingSheet1.Activate

Dim drawingViews1 As DrawingViews
Set drawingViews1 = drawingSheet1.Views
Dim drawingView1 As DrawingView
Set drawingView1 = drawingViews1.ActiveView
'drawingView1.Activate
Set drawingViews1 = drawingSheet1.Views
Set drawingView1 = drawingViews1.Item("Front view")


drawingView1.Activate
Name = drawingView1.GenerativeLinks.FirstLink.Parent.Path & "\" & drawingView1.GenerativeLinks.FirstLink.Parent.Name


Hat da einer von euch einen VBA-Code dafür?

------------------
MfG

N4426

[Diese Nachricht wurde von n4426 am 14. Apr. 2011 editiert.]

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

RSchulz
Moderator²
Head of CAD, Content & Collaboration / IT-Manager



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

Beiträge: 5541
Registriert: 12.04.2007

@Work
Lenovo P510
Xeon E5-1630v4
64GB DDR4
Quadro P2000
256GB PCIe SSD
512GB SSD
SmarTeam V5-6 R2016 Sp04
CATIA V5-6 R2016 Sp05
E3.Series V2019
Altium Designer/Concord 19
Win 10 Pro x64

erstellt am: 14. Apr. 2011 14:24    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 n4426 10 Unities + Antwort hilfreich

Hallo,
meinst du soetwas?

Code:
Dim drawingDocument1 As Document
Set drawingDocument1 = CATIA.ActiveDocument
Dim drawingSheets1 As DrawingSheets
Set drawingSheets1 = drawingDocument1.Sheets

Dim drawingSheet1 As DrawingSheet
'Set drawingSheet1 = drawingSheets1.ActiveSheet

Set drawingSheet1 = drawingSheets1.Item("03")
if drawingSheet1 = Nothing then exit sub
drawingSheet1.Activate

Dim drawingViews1 As DrawingViews
Set drawingViews1 = drawingSheet1.Views
Dim drawingView1 As DrawingView
Set drawingView1 = drawingViews1.ActiveView
'drawingView1.Activate
Set drawingViews1 = drawingSheet1.Views
Set drawingView1 = drawingViews1.Item("Front view")


drawingView1.Activate
Name = drawingView1.GenerativeLinks.FirstLink.Parent.Path & "\" & drawingView1.GenerativeLinks.FirstLink.Parent.Name



------------------
MFG
Rick Schulz

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

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

n4426
Mitglied
CAx-Administration, Technischer Zeichner (Maschinen- und Anlagentechnik)


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

Beiträge: 65
Registriert: 17.01.2003

erstellt am: 14. Apr. 2011 14:31    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 Rick,

nicht so ganz. Ich möchte prüfen, ob auf Blatt "01" (war vorher ein Fehler, ist aber vom Prinzib her ja egal) eine View Namens "Front View" vorhanden ist.

Ich habs dann so versucht.

Code:
Dim drawingDocument1 As Document
Set drawingDocument1 = CATIA.ActiveDocument
Dim drawingSheets1 As DrawingSheets
Set drawingSheets1 = drawingDocument1.Sheets

Dim drawingSheet1 As DrawingSheet

Set drawingSheet1 = drawingSheets1.Item("01")

drawingSheet1.Activate

Dim drawingViews1 As DrawingViews
Set drawingViews1 = drawingSheet1.Views
Dim drawingView1 As DrawingView
Set drawingView1 = drawingViews1.ActiveView
'drawingView1.Activate
Set drawingViews1 = drawingSheet1.Views
Set drawingView1 = drawingViews1.Item("Front view")

If drawingView1 = Null Then
    MsgBox "ist nicht da"
Else
    MsgBox "ist da"
End If


aber Nothing kennt VBA bei mir nicht (Compile error: Invalid use of object).

Hast Du da noch eine Idee?

------------------
MfG

N4426

[Diese Nachricht wurde von n4426 am 14. Apr. 2011 editiert.]

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

RSchulz
Moderator²
Head of CAD, Content & Collaboration / IT-Manager



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

Beiträge: 5541
Registriert: 12.04.2007

@Work
Lenovo P510
Xeon E5-1630v4
64GB DDR4
Quadro P2000
256GB PCIe SSD
512GB SSD
SmarTeam V5-6 R2016 Sp04
CATIA V5-6 R2016 Sp05
E3.Series V2019
Altium Designer/Concord 19
Win 10 Pro x64

erstellt am: 14. Apr. 2011 14:53    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 n4426 10 Unities + Antwort hilfreich

Sry versuch es mal so...

if drawingSheet1 Is Nothing then exit sub

------------------
MFG
Rick Schulz

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

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

n4426
Mitglied
CAx-Administration, Technischer Zeichner (Maschinen- und Anlagentechnik)


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

Beiträge: 65
Registriert: 17.01.2003

erstellt am: 14. Apr. 2011 15: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

Also, Is Nothing kennt VBA. Es ist nur das problem, das wenn ich jetzt z.B. nach Blatt 05 suche (was es in der Drawing nicht gibt), steigt er mir schon eine zeile vorher mit einem Runt-time error 438 (Object dosn't support this property or method) aus.

Code:
Set drawingSheet1 = drawingSheets1.Item("05")
If drawingSheet1 Is Nothing Then Exit Sub

Hab ich da jetzt was falsch gemacht?

------------------
MfG

N4426

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 14. Apr. 2011 15:09    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 n4426 10 Unities + Antwort hilfreich

Servus
Du kannst einfach die Fehlerbehandlung kurzfristig ausschalteten:
Code:
On error resume next
Set drawingSheet1 = drawingSheets1.Item("05")
If drawingSheet1 Is Nothing Then Exit Sub
on error goto 0

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

n4426
Mitglied
CAx-Administration, Technischer Zeichner (Maschinen- und Anlagentechnik)


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

Beiträge: 65
Registriert: 17.01.2003

erstellt am: 14. Apr. 2011 15:27    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

super, so funktionierts.

Danke an euch zwei.

------------------
MfG

N4426

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

mycon
Mitglied



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

Beiträge: 58
Registriert: 14.02.2011

Catia V5R19

erstellt am: 17. Apr. 2011 19:25    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 n4426 10 Unities + Antwort hilfreich

Hi,

ich versuche gerade etwas ähnliches,
allerdings funktioniert bei mir das drawingView1.firstlink nicht.
Er gibt dann nur aus:

Run-time error '-2147467259 (8000-4005)': Method 'Firstlink' of object 'DrawingViewGenerativeLinks' failed

Weiss jemand wieso?

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

n4426
Mitglied
CAx-Administration, Technischer Zeichner (Maschinen- und Anlagentechnik)


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

Beiträge: 65
Registriert: 17.01.2003

erstellt am: 17. Apr. 2011 19:35    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,

versuchs doch mal so.

Code:
drawingView1.GenerativeLinks.FirstLink.Parent.Name

------------------
MfG

N4426

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 17. Apr. 2011 19:38    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 n4426 10 Unities + Antwort hilfreich

Servus
Hat die Ansicht überhaupt einen Link?

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

mycon
Mitglied



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

Beiträge: 58
Registriert: 14.02.2011

Catia V5R19

erstellt am: 17. Apr. 2011 20: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 Nur für n4426 10 Unities + Antwort hilfreich

Mit .parent tritt der gleiche Fehler auf.

Die Ansicht ist abgeleitet von der XY-Ebene eines .CatPart
Und von diesem CatPart (erstmal das finden *g) möchte ich den Instancename und die Nomenclature auslesen.

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 17. Apr. 2011 20:14    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 n4426 10 Unities + Antwort hilfreich

Servus
Versuch es mal mit drawingView1.GenerativeBehavior.Document das Dokument, von dem die Ansicht abgleitet ist abzufragen.

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

mycon
Mitglied



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

Beiträge: 58
Registriert: 14.02.2011

Catia V5R19

erstellt am: 17. Apr. 2011 20:20    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 n4426 10 Unities + Antwort hilfreich

Ebenfalls failed.

Run-time error '-2147418113 (8000ffff): Method 'Document' of object 'DrawingViewGenerativeBehavior' failed


Code:
Sub CATMain()

Dim drawingDocument1 As Document
Set drawingDocument1 = CATIA.ActiveDocument
Dim drawingSheets1 As DrawingSheets
Set drawingSheets1 = drawingDocument1.Sheets

Dim drawingSheet1 As DrawingSheet
'Set drawingSheet1 = drawingSheets1.ActiveSheet

Set drawingSheet1 = drawingSheets1.Item(1)
drawingSheet1.Activate

Dim drawingViews1 As DrawingViews
Set drawingViews1 = drawingSheet1.Views
Dim drawingView1 As DrawingView
Set drawingView1 = drawingViews1.ActiveView
'drawingView1.Activate
Set drawingViews1 = drawingSheet1.Views
Set drawingView1 = drawingViews1.Item(1)
'Set drawingView1 = drawingViews1.Item("Front view")

drawingView1.Activate

MsgBox drawingView1.GenerativeBehavior.Document.Name
End Sub


[Diese Nachricht wurde von mycon am 17. Apr. 2011 editiert.]

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 17. Apr. 2011 20:27    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 n4426 10 Unities + Antwort hilfreich

Servus
Du verwendest die falsche View: Item(1) = Vordergrund, Item(2) = Hintergrund, Item(3) ist die erste selbst erzeuge Ansicht

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

[Diese Nachricht wurde von bgrittmann am 17. Apr. 2011 editiert.]

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

mycon
Mitglied



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

Beiträge: 58
Registriert: 14.02.2011

Catia V5R19

erstellt am: 17. Apr. 2011 20: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 n4426 10 Unities + Antwort hilfreich

oha, vielen dank.
funktioniert gleich viel besser 

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