Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Ausspannung in CAM Process umbenennen

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:  Ausspannung in CAM Process umbenennen (1762 mal gelesen)
DaiVied
Mitglied



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

Beiträge: 50
Registriert: 19.09.2011

erstellt am: 20. Sep. 2011 17: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

Zur Übung habe ich mich an folgendem Code, um ein einfaches Item umzubenennen, versucht:

Code:

dim manufacturingProgram1, processDocument1, manufacturingSetup1

Sub CATMain()

  Set processDocument1 = CATIA.ActiveDocument
  Set manufacturingProgram1 = processDocument1.GetItem("Herstellungsprogramm.1")
  Set manufacturingSetup1 = manufacturingProgram1.GetItem("Aufspannung.1")

  manufacturingSetup1.name = "Standartaufspannung"

End Sub


Als Fehlermeldung bekomm ich immer: "GetItem fehlgeschlagen"
Weis vll jemand an was das liegt?
Vielen Dank für die Hilfe

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

meisterlumpi
Mitglied



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

Beiträge: 118
Registriert: 15.04.2011

Intel Core2 Quad Q6600 2.40 GHz | 4 GB RAM | Win7x64

erstellt am: 20. Sep. 2011 21: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 DaiVied 10 Unities + Antwort hilfreich

Hallo

probier's mal so..
gruß

Code:
Sub CATMain()
   
    Dim processDocument1 As ProcessDocument
    Set processDocument1 = CATIA.ActiveDocument
   
    Dim PPR1 As PPRDocument
    Set PPR1 = processDocument1.PPRDocument
   
    Dim process1 As PPRActivity
    ''Set process1 = PPR1.Processes.Item(1)
    Set process1 = PPR1.Processes.Item("Process")
   
    ''process1.ChildrenActivities.Item(2).Name = "Standartaufspannung"
    process1.ChildrenActivities.GetItem("Aufspannung.1").Name = "Standartaufspannung"
   
End Sub

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

DaiVied
Mitglied



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

Beiträge: 50
Registriert: 19.09.2011

erstellt am: 20. Sep. 2011 21: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

Super, deins funktioniert, wenn man die "As" anweisung weglässt.

Jetzt hab ich Intuitiv mein code anhand von deinem umgeschrieben (mit meinem Basis C-Wissen) und das Produkt funktioniert auch

Code:
Sub CATMain()

  Dim processDocument1
  Set processDocument1 = CATIA.ActiveDocument

  Dim PPR1
  Set PPR1 = processDocument1.PPRDocument

    Dim process1
    Set process1 = PPR1.Processes.Item("Process")

  Dim manufacturingSetup1
  Set manufacturingSetup1 = process1.GetItem("Aufspannung.1")

  manufacturingSetup1.name = "Standartaufspannung"

End Sub


Es wär Klasse, wenn du mir auch noch erklären könntest, was ich da genau mache.

Dim scheint mir eine variablendeklaration zu sein, ich hab schon Makros gesehen, da wird das nicht verwendet. Wann brauch ich das?

Was dann mit dem ganzen verschachtelten "Set" -zeug ist, glaub ich auch noch zu verstehen: Ich navigiere zu meinem umzubennenden item, oder?
Die struktur dahinter wird mir allerdings nicht ganz klar. warum mal mit GetItem, warum mal nur mit Item? gibts da vll irgendeine vorgehensweise?
dann mit .name wird eine Funktion aufgerufen, die den namen ändert?

vielen Dank für die erklärung

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

meisterlumpi
Mitglied



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

Beiträge: 118
Registriert: 15.04.2011

Intel Core2 Quad Q6600 2.40 GHz | 4 GB RAM | Win7x64

erstellt am: 21. Sep. 2011 03: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 DaiVied 10 Unities + Antwort hilfreich

Zitat:
Dim scheint mir eine variablendeklaration zu sein, ich hab schon Makros gesehen, da wird das nicht verwendet. Wann brauch ich das?

richtig, man muss die variablen nicht deklarieren. dann werden sie von vb automatisch als variant deklariert wenn sie das erste mal verwendet werden. Wenn du das "As" weglässt wird die variable ebenfalls als variant deklariert. variant variablen kann man alle datentypen zuweisen, allerdings sind sie nicht gerade speicherschonend.. daher sollte man alles deklarieren, soweit es geht. manchmal muss man allerdings variant oder object datentypen verwenden in catia (z.b. bei restricted interfaces).

"Set" verwendet man bei variablen, denen man ein objekt zuweist.

Objektzuweisung:
  Dim ActiveDoc as Document
  Set ActiveDoc = CATIA.ActiveDocument

Datentyp ganze zahlen, kein objekt:
  Dim Nummer as Integer
  Nummer = 5

Zitat:
Die struktur dahinter wird mir allerdings nicht ganz klar. warum mal mit GetItem, warum mal nur mit Item? gibts da vll irgendeine vorgehensweise?


Func GetItem( CATBSTR  IDName) As CATBaseDispatch 

Returns an object from its name.
Role: To retrieve an object when only its name is available. You should not use this method, but you can find it in the macros generated by the Tools->Macro command.


Func Item( CATVariant  iIndex) As CATIAActivity 

This method gets the specified activity on the current activities management.

also GetItem nur da verwenden, wo es nicht anders geht. oft hilft nur ausprobieren.

Zitat:
dann mit .name wird eine Funktion aufgerufen, die den namen ändert?

Property Name( ) As CATBSTR (Read Only)

Returns or sets the name of the object. The name is a character string you can assign to any object to handle it easier. In the case of an object part of a collection, the name can often be used in place of the object rank to retrieve or remove the object, providing the Item and Remove methods of the collection feature an argument with the Variant type. If the object has no name set, the name returned is the one of its parent.

.name kann also den namen abrufen oder ihn ändern.

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

DaiVied
Mitglied



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

Beiträge: 50
Registriert: 19.09.2011

erstellt am: 21. Sep. 2011 09:22    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

Kannst du mir vll sagen, wo du die englischen Dokumentation herbekomme?
Vielen Dank

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: 21. Sep. 2011 09:37    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 DaiVied 10 Unities + Antwort hilfreich

Servus
Im CATIA-Installationsverzeichnis die Datei: V5Automation.chm
(einfach danach suchen)

Gruß
Bernd

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

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

DaiVied
Mitglied



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

Beiträge: 50
Registriert: 19.09.2011

erstellt am: 21. Sep. 2011 09:52    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

Vielen Dank! Übrigens, ich hab eben gemerkt, dass ich im obigen Beitrag zwo sätze miteinander vermischt habe! Hört sich etwas seltsam an, sorry dafür

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