Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Vorgehensweise eines Makros beobachten

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:  Vorgehensweise eines Makros beobachten (1961 mal gelesen)
FahreS
Mitglied


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

Beiträge: 6
Registriert: 26.02.2013

erstellt am: 26. Feb. 2013 20:56    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!

Stand der Dinge ist, dass ich ein Makro für CATIA V5 programmiert habe, dass Geometrien verschiebt und verformt.
An dem Rechner, an dem ich das Makro programmiert habe, konnte ich die Vorgehensweise wunderbar nachvollziehen, da CATIA sämtliche Schritte visualisiert hat.
Nun wollte ich das Makro jedoch an einem anderen Rechner ausprobieren, allerdings visualisiert CATIA überhaupt nichts, obwohl das Makro vernünftig läuft.

Ich habe also das selbe Makro an zwei PCs ausprobiert. Beim ersten sieht man die Vorgehensweise des Makros und beim zweiten nicht.

Weiß jemand woran das liegen könnte und wie man das ändern könnte?

Ich vermute es handelt sich um irgendeine Einstellung in CATIA...

Dank für jede Hilfe!

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: 26. Feb. 2013 21:08    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 FahreS 10 Unities + Antwort hilfreich

Servus
Willkommen im Forum. Bitte Systeminfo ausfüllen.
Makros kannst schrittweise in VBA ausführen. Falls du das Makro alc CATScript erstellt hast kannst du (nahezu) 1:1 den Code in VBA übernehmen.
Um was für ein Makro handelt es sich? Was funktioniert an dem anderen Rechner nicht? Was meist du "ersten sieht man die Vorgehensweise des Makros"?

Gruß
Bernd

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

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

FahreS
Mitglied


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

Beiträge: 6
Registriert: 26.02.2013

erstellt am: 26. Feb. 2013 23:07    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

Zunächst Danke für die schnelle Antwort.

mir geht es darum, dass bei einem PC zu sehen ist wie die Geometrie verändert wird.
Bei dem anderen PC allerdings nicht, da die Oberfläche von CATIA einfriert und nicht mehr reagiert. Die Schritte werden zwar ebenfalls ausgeführt, aber man sieht nichts, da CATIA eben einfach einfriert.

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: 27. Feb. 2013 07: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 Nur für FahreS 10 Unities + Antwort hilfreich

Servus
Was meinst du mit einfrieren?
Ist beim einen Rechner vielleicht "manueller Aktualisierungsmodus" aktiviert?
Was veränderst du, Geometrie im Part, Positionen in der Baugruppe? (es gibt so viele verschiedene Einstellungen, du musst uns schon einen Tipp geben was sich nicht aktualisiert)

Gruß
Bernd

PS: Bitte Systeminfo ausfüllen.

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

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: 27. Feb. 2013 08: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 Nur für FahreS 10 Unities + Antwort hilfreich

Hallo und herzlich willkommen,

wenn die GUI von CATIA einfriert, dann liegt das daran, dass die Oberfläche keine Systemleistung zugeteilt bekommt, weil das Makro komplett blockiert. Du musst im Makro an sinnvollen stellen und vor allem in Schleifen ein DoEvents einbauen. Damit gibt das Makro kurzzeitig den anderen Anwendungen die CPU frei.

Ich habe mir angewöhnt, nach jedem Gui-verändernden Befehl und am Ende jeder Schleife ein DoEvents einzubauen.

------------------
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

FahreS
Mitglied


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

Beiträge: 6
Registriert: 26.02.2013

erstellt am: 27. Feb. 2013 12: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

Hallo!

Zitat:
Original erstellt von bgrittmann:
Servus
Was meinst du mit einfrieren?
Ist beim einen Rechner vielleicht "manueller Aktualisierungsmodus" aktiviert?


Bei dem PC, der nicht einfriert, kann während der Bearbeitung des Makros auch noch im Strukturbaum rumgeklickt werden.
Bei dem PC, der einfriert geht dies nicht. Stattdessen wird CATIA in weißen Nebel eingehüllt, als wenn dieses abgestürzt wäre.
Zitat:
Original erstellt von bgrittmann:
Was veränderst du, Geometrie im Part, Positionen in der Baugruppe? (es gibt so viele verschiedene Einstellungen, du musst uns schon einen Tipp geben was sich nicht aktualisiert)


Ich hab in dem Part eine Kugel. die Position dieser Kugel und der Radius sind über Parameter festgesetzt. Das Makro verändert diese Parameter und verschiebt die Kugel im CATPart hin und her (mit part1.update). Funktionieren tut dies einwandfrei bei beiden PCs. Sehen wie CATIA die Veränderungen durchführt kann mans aber nur bei einem der beiden PCs.

Die Systeminfo des PCs kenne ich leider nicht.

Zitat:
Original erstellt von RSchulz:
Hallo und herzlich willkommen,

wenn die GUI von CATIA einfriert, dann liegt das daran, dass die Oberfläche keine Systemleistung zugeteilt bekommt, weil das Makro komplett blockiert. Du musst im Makro an sinnvollen stellen und vor allem in Schleifen ein DoEvents einbauen. Damit gibt das Makro kurzzeitig den anderen Anwendungen die CPU frei.

Ich habe mir angewöhnt, nach jedem Gui-verändernden Befehl und am Ende jeder Schleife ein DoEvents einzubauen.



Deine Erläuterung klingt plausibel und auch auf das Problem passend.
Die Frage ist nur, wieso das Interface von CATIA nur bei dem einen PC einfriert, aber nicht bei dem anderen.

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: 27. Feb. 2013 13:18    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 FahreS 10 Unities + Antwort hilfreich

Das kann viele Ursachen haben...

Bei dem einen läuft es unter der Debugumgebung und bei dem anderen in der kompilierten Fassung.
Der eine Rechner hat deutlich mehr Leistung als der andere und der Flaschenhalz liegt wo anders.

...und und und...

------------------
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

FahreS
Mitglied


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

Beiträge: 6
Registriert: 26.02.2013

erstellt am: 27. Feb. 2013 13: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

Zitat:
Original erstellt von RSchulz:
Das kann viele Ursachen haben...

Bei dem einen läuft es unter der Debugumgebung und bei dem anderen in der kompilierten Fassung.
Der eine Rechner hat deutlich mehr Leistung als der andere und der Flaschenhalz liegt wo anders.

...und und und...


Es ist tatsächlich so, dass die Vorgehensweise des Makros nur beim Start aus dem VBA Editor sichtbar war. Bei Start über Tools -> Macro -> Macros war es bei keinem der beiden Rechner sichtbar.

Da ich das Makro allerdings bei beiden Rechnern aus dem VBA Editor aus gestartet habe, kann es daran nicht liegen.
Das die Prozessorleistung geringer ist wäre eine Möglichkeit, ich hatte allerdings auf einen anderen Grund gehofft 

Kann es daran liegen, dass bei dem zweiten Rechner zwei VBA Libraries fehlten, die ich zum Starten des Makros deaktivieren musste?

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: 27. Feb. 2013 14: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 FahreS 10 Unities + Antwort hilfreich

Jung nimm mirs nicht übel, wenn ich jetzt etwas schroff werde, aber die einzig wahre Lösung habe ich dir genannt und die lautet sauber an bestimmten Positionen ein DoEvents zu setzen!

Alles andere ist Käse und hat nicht mit Programmierung zu tun. Die Verarbeitung des Makros wird auch nicht spürbar verzögert. Das beläuft sich alles im tiefen Millisekundenbereich. Daher verstehe ich dein Engagement nun in diese Richtung nicht, da dies kein Fehlverhalten darstellt! Die Runtimelibraries sind nun mal anders und dementsprechend ist auch das direkte Verhalten anders. Das hat etwas mit den direkt verwendeten DLL´s zu tun, in denen sich durchaus eben auch mehr DoEvents oder Warteschleifen verstecken... Keep it simple!

------------------
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

FahreS
Mitglied


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

Beiträge: 6
Registriert: 26.02.2013

erstellt am: 27. Feb. 2013 15:42    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

Der Hintergrund meiner Frage ist halt:
Wieso verhält sich das selbe Makro bei zwei verschiedenen PCs unterschiedlich?

Mir geht es eigentlich nicht darum, das Makro so zu verändern, dass in jedem Fall die Vorgehensweise von CATIA gezeigt wird.

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: 27. Feb. 2013 16: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 Nur für FahreS 10 Unities + Antwort hilfreich

Servus
Dann sag uns was an den beiden Rechnern anders ist?
Oder füge nach den entsprechenden Codestellen "do events" ein.

Gruß
Bernd

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

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

HoBLila
Mitglied
Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx


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

Beiträge: 1118
Registriert: 29.05.2008

DELL PRECISION T3500
Intel(R) Xeon(R) CPU W3540 @ 2.93GHz
12285 MB RAM
NVIDIA Quadro FX 1800
Microsoft Windows 7 Enterprise Service Pack 1
CATIA V5 R19 SP09 HF69
VB6.5
CAA RADE CDC

erstellt am: 27. Feb. 2013 17:11    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 FahreS 10 Unities + Antwort hilfreich

Also wenn Du auf dem zweiten Rechner schon einmal Libraries deaktivieren musstest, dann ist sowohl dein VBA-Projekt als auch Deine Installationen Mist, da sie nicht gleich sind.

Zusätzlich wird wahrscheinlich deine Hardware markant unterschiedlich und eventuell nicht zertifiziert sein. Es kann ne Menge Ursachen haben. In dem Fall empfehle ich es einen Experten mit entsprechender Erfahrung einzukaufen, der wird Dir die Lösung schon entsprechend schnell und vor allem gut liefern. Das muss ich mit den wagen Angaben eben live sehen. Ansonsten siehe Ricks Beiträge, da steht bereits alles richtig drin, das kann man nicht besser erklären und sagen.

Fahr doch einfach mal einen aussagekräftigen Benchmark. Deine Makros scheinen ehh nicht für das parallele Arbeiten im CATIA konzipiert zu sein, also wen stört's?
Wenn aktiv etwas sichtbar sein soll, im CATIA, dann musst Du es auch aktiv programmieren mit DoEvents und RefreshDisplay.

------------------
Mit freundlichen Grüßen,
Henry Schneider
alias Lila

Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren:
Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen,
die Natur versucht, immer bessere Idioten zu bauen

Xing

[Diese Nachricht wurde von HoBLila am 28. Feb. 2013 editiert.]

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

FahreS
Mitglied


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

Beiträge: 6
Registriert: 26.02.2013

erstellt am: 28. Feb. 2013 14:26    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

OK, dank euch allen.

Ich hatte gehofft, dass es einfach irgendwo in CATIA eine Funktion gibt die aktiviert werden muss. Aber ich hätt mir eigentlich denken können, dass das ganze etwas komplizierter ist.

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