Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Ansichten sperren/entsperren

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:  Ansichten sperren/entsperren (6042 mal gelesen)
DocMurphy
Mitglied
Konstrukteur


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

Beiträge: 37
Registriert: 22.07.2009

Fujitsu Celsius W570Power (32GB RAM, Quadro P4000)
WIN10 1909
CATIA V5 R28
CATIA V5 R29

erstellt am: 15. Dez. 2010 09:23    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

Guten Morgen,

gibt es eine Makrolösung die alle Ansichten einer geöffneten Zeichnung lockt bzw. entlockt wenn diese gelockt sind?

Die Suche hierzu hat mich nicht wirklich weiter gebracht.

------------------
Arbeit zieht immer Arbeit nach sich!

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

Christian.O
Mitglied
Konstrukteur


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

Beiträge: 1212
Registriert: 17.07.2009

erstellt am: 15. Dez. 2010 09: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 Nur für DocMurphy 10 Unities + Antwort hilfreich

Servus,

Ansicht sperren:

Code:
          '***Ansichten ansprechen
          Set View = objSel.Item(intI).Value
          '***Ansichten sperren
          View.LockStatus = True

Ansicht entsperren:

Code:
          '***Ansichten ansprechen
          Set View = objSel.Item(intI).Value
          '***Ansichten entsperren
          View.LockStatus = False

zum Suchen der Ansichten:

Code:
      '***Performanceerhöhung der Suche
      CATIA.HSOSynchronized = False
      '***Ansichten suchen
      objSel.Search "Drafting.View.Name!=Background View"
      CATIA.HSOSynchronized = True

------------------
Mit freundlichen Grüßen aus Tirol
Christian Obholzer

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

DocMurphy
Mitglied
Konstrukteur


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

Beiträge: 37
Registriert: 22.07.2009

Fujitsu Celsius W570Power (32GB RAM, Quadro P4000)
WIN10 1909
CATIA V5 R28
CATIA V5 R29

erstellt am: 15. Dez. 2010 10:23    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

Danke,  ich wer mal versuchen das in eine Schleife zu packen und zum laufen zu bekommen.

------------------
Arbeit zieht immer Arbeit nach sich!

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

DocMurphy
Mitglied
Konstrukteur


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

Beiträge: 37
Registriert: 22.07.2009

erstellt am: 15. Dez. 2010 14:04    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

Leider komm ich nicht weiter.
Wie muss man vorgehen wenn man mehrere Blätter in der Drawing hat und er dies auch in allen Blättern tun soll?

------------------
Arbeit zieht immer Arbeit nach sich!

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

Starbirth
Mitglied
Konstrukteur


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

Beiträge: 119
Registriert: 22.10.2009

Catia V5-6 R24
Windows 7 64bit
Intel Xeon (4x3,5GHz)
32B Ram
Nvidia Quatro K4200

erstellt am: 15. Dez. 2010 14: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 DocMurphy 10 Unities + Antwort hilfreich

Ich würde noch eine For-Schleife ähnlich dieser drum herum bauen:

Code:
Dim oDoc As DrawingDocument
Set oDoc = CATIA.ActiveDocument
Dim oSheets As DrawingSheets
Set oSheets = oDoc.Sheets
Dim oSheet As DrawingSheet
Dim I as Integer

For I = 1 To oSheets.Count
   Set oSheet = oSheets.Item(I)
   'hier deine Anweisungen für oSheet
Next



EDIT: Vorher natürlich noch abfragen ob das ActiveDocument auch wirklich eine Zeichnung ist  

[Diese Nachricht wurde von Starbirth am 15. Dez. 2010 editiert.]

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

DocMurphy
Mitglied
Konstrukteur


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

Beiträge: 37
Registriert: 22.07.2009

erstellt am: 22. Dez. 2010 10:04    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

Hier die Lösung die ich danke eurer Hilfe erarbeitet habe:

Sub CATMain()

Dim oDoc
Set oDoc = CATIA.ActiveDocument
Dim oSheets
Set oSheets = oDoc.Sheets
Dim objSel
Set objSel = oDoc.Selection
Dim intI

'***Performanceerhöhung der Suche
CATIA.HSOSynchronized = False
'***Ansichten suchen
objSel.Search "Drafting.View.Name!=Background View"
CATIA.HSOSynchronized = True
'***Ansichten ansprechen

'***Für jede gefundene Ansicht  tue folgendes: sperre Ansicht
For intI = 1 To objSel.Count
Set View = objSel.Item(intI).Value
'***Ansichten sperren
View.LockStatus = true
Next 

End Sub


Zum entsperren muss man nur in der drittletzten Zeile den Wert von true auf false setzen.

Danke an alle die geholfen haben,

Frohes Fest und Guten Rutsch!

------------------
Arbeit zieht immer Arbeit nach sich!

[Diese Nachricht wurde von DocMurphy am 22. Dez. 2010 editiert.]

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

MICHLICK
Mitglied
CAD Methodik Entwickler (CATIA; NX)


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

Beiträge: 454
Registriert: 20.06.2001

Der Aufwand bei Änderungen ist groß, wenn die Finger schneller klicken als das Gehirn denkt.

erstellt am: 22. Dez. 2010 14: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 DocMurphy 10 Unities + Antwort hilfreich

Hallo,

ich habe da noch eine alternative Lösung:

Code:

Option Explicit
Sub CATMain()
    Dim i As Integer
    Dim j As Integer
    For i = 1 To CATIA.ActiveDocument.Sheets.Count
        If Not CATIA.ActiveDocument.Sheets.Item(i).IsDetail Then
            If CATIA.ActiveDocument.Sheets.Item(i).Views.Count > 2 Then
                For j = 3 To CATIA.ActiveDocument.Sheets.Item(i).Views.Count
                    CATIA.ActiveDocument.Sheets.Item(i).Views.Item(j).LockStatus = Not CATIA.ActiveDocument.Sheets.Item(i).Views.Item(j).LockStatus
                Next
            End If
        End If
    Next
End Sub

Zeilen 3 und 4: Definition von zwei Zählvariablen (für Blätter und Ansichten)
Zeile 5: Start einer Schleife in der alle Blätter durchlaufen werden (Ende in Zeile 13)
Zeile 6: Wenn es sich um ein Zeichnungsblatt handelt (kein Detailblatt), dann wird die Zeile ausgeführt. Sonst weiter zum nächsten Blatt
Zeile 7: Wenn es auf dem Blatt Zeichnungsansichten gibt (View(1) = MainView; View(2) = BackgroundView), also mehr als 2 Ansichten vorhanden sind, dann wird die nächste Schleife ausgeführt.
Zeile 8: Start einer Schleife, die durch alle Ansichten eines Blattes läuft (ohne Main- und Background View) (Ende in Zeile 10)
Zeile 9: Wechsel des Lock-Status (alle gesperrten Ansichten werden entsperrt und alle entsperrten Ansichten werden gesperrt).

Man könnte natürlich auch eine Abfrage über eine MsgBox einbauen.
z.B.
Sollen alle Ansichten geperrt werden?
JA = sperren
Nein = entsperren
Abbruch = switch Lock Status (oder wirklich Abbruch)

Schöne Weihnachten

------------------
Gruß Michael B.

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

DocMurphy
Mitglied
Konstrukteur


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

Beiträge: 37
Registriert: 22.07.2009

erstellt am: 28. Dez. 2010 09:54    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

Klingt elegant!

Werds mir mal anschauen. Vor allem die Lösung mit dem umschalten!

Guten Rutsch!

------------------
Arbeit zieht immer Arbeit nach sich!

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

Maetes
Mitglied
Student


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

Beiträge: 118
Registriert: 05.05.2009

XP 64Bit
CATIA V5R19SP4
MS Office 2003

erstellt am: 12. Jan. 2011 14:05    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 DocMurphy 10 Unities + Antwort hilfreich

Hallo!
Was sagt den IsDetail genau aus?
Das Zitat aus der V5Automation Datei hilft mir auch nicht viel weiter..
Zitat:
Checks whether the sheet is a detail sheet. TRUE if the sheet is a detail sheet.

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: 12. Jan. 2011 15: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 DocMurphy 10 Unities + Antwort hilfreich

Servus
Wenn es sich um ein "Detailblatt" also einem Blatt mit 2D-Komponenten handelt (Einfügen -> Zeichnung -> Blätter -> neues Detailblatt) wird TRUE zurückgeliefert.

Gruß
Bernd

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

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

BADU
Mitglied
Konstrukteur


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

Beiträge: 124
Registriert: 02.07.2003

Catia V5R19 x64
Win7 x64

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

Hallo Zusammen,

ich benutze dieses Tool:
http://www.enggraph.de/de/downloads/cad-downloads

------------------
Gruss BADU

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