Hot News:

Mit Unterstützung durch:

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

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:  Aufbau eines Makros (1243 mal gelesen)
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: 28. Mrz. 2010 11: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


Makro_001.rar


Makro_002.rar

 
Servus,

da ich noch neu und sehr unerfahren in der Welt des Makroprogrammieren bin, habe ich eine generelle Frage zum Aufbau eines Makros. Da nur ich meine Makros verwende weiß ich z.B.: welche Voraussetzungen geschaffen sein müssen um das Makro zu starten bzw. dass das Makro ohne Fehler durchläuft.

Anbei sind 2 Makros die alle Ansichten auf einem Blatt (Zeichnung) sperren bzw. entsperren. Wenn jetzt jedoch keine Ansicht vorhanden ist, kommt beim Makro_001 ein Hinweis, dass keine Ansicht vorhanden ist und das Makro deshalb beendet wird. Beim Makro_002 hab ich diesen Bereich als Kommentar (') gekennzeichnet. Wenn man jetzt das 002er ohne Ansicht startet kommt es zu einer Fehlermeldung. Da man dieses Makro eigentlich ohne Ansicht ja eh nicht startet komm ich nun zu meiner Frage. Soll man jeglichen Fehler der auftreten könnte durch einen solchen Hinweis wie im 001er dass keine Ansicht vorhanden ist, in die Programmierung mitaufnehmen?
Der Hintergrund dieser Frage ist jener. Wenn man Zeilenmäßig längere Makros hat und in diesem dann durch z.B.: eine falsche Auswahl eine Fehlermeldung wie im 002er erhält und man aber nicht weiß warum, diesen Fehler dann kommentieren soll, dass eine Voraussetzung für den reibungslosen Ablauf des Makros nicht stimmt?

Ich hoffe, dass mein Problem/Frage verständlich ist.

Ich bedanke mich schon im voraus für alle Antworten.

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

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

DanielFr.
Moderator
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 28. Mrz. 2010 12: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 Christian.O 10 Unities + Antwort hilfreich

Hallo Christian,

also den Hintergrund (dein letzten Satz) verstehe ich nicht  . Vielleicht liegt es daran das Sonntag ist  :

Aber nun zu deiner Frage:
Wenn du dein Makro NUR selber einsetzt brauchst du natürlich nicht jeden Fehler abfangen da du ja vor allem bei Randbedingungsfehler weiß warum dein eigenes Makro nicht funktioniert.

Grundsätzlich wird aber in der Programmierung JEDER Fehler abgefangen um eben keine Laufzeitfehler zu generieren. Gerade wenn man mit der Makroprogrammierung anfängt finde ich es auch wichtig solche Fehler abzufangen. Je komplexer die Makro´s werden desto komplexer wird auch die entsprechende Fehlerroutine (hier gibt es Fehler die das Makro beenden (Fehler die im weiteren Verlauf des Makros zu Laufzeitfehler führen würden), Fehler die nur einen Hinweis bedürfen (Fehler die keine Laufzeitfehler im weiteren Verlauf des Makros auslösen) und Fehler die ganz ignoriert werden können)).

Wenn man nun gleich am Anfang lernt diese Fehler mit einer unstrukturierten Fehlerbehandlung (als VBA) strukturiert abzufangen wird man sich bei komplexen Makros wesentlich einfacher tun.

Außerdem finde ich es persönlich auch angenehmer wenn ich von meinen eigenen Makro darauf hingewiesen werden (mit MsgBox) das das Makro unter den Randbedingungen nicht ausgeführt werden kann, wie wann sich mein Makro einfach mit einem Laufzeitfehler verabschiedet. Das ist natürlich auch wichtig wenn die Laufzeit länger wird. Dann ist es nämlich ärgerlich wenn ich erst 2 Minuten warte um dann festzustellen das ich irgendeine Randbedingung nicht eingehalten habe (auch wenn ich selber die Randbedingungen kennen).

Ein weiteres Argument ist das du dich vielleicht in einem halben Jahr (und ein paar Makros später) nicht mehr an die Randbedingungen erinnern kannst. Dann musst du dir wieder den Quellode anschauen um zu wissen das dein Makro ein View braucht um ausgeführt werden zu können.

Die meisten Fehler sind so und so Standradfehler (zu mindestens bei den Randbedingungen). Hier sind z.B. anzuführen: Falscher Dokumententyp, keine Features, keine Views, etc.. Um dich beim Programmieren zu unterstützen gibt es eine Tool Namens MZ-Tools (Freeware). Hier kann man sich Codeabschnitte als Vorlage speichern (z.B. falscher Dokumententyp). Dies bietet einerseits einen Geschwindigkeitsvorteil bei der Entwicklung, anderseits ein immer gleichen Programmierstil. Das ist für dich selber wichtig da du die Makro´s ja auch noch nach ein paar Jahren anpassen und ändern willst.

------------------
MFG Daniel

Systeminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)

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: 28. Mrz. 2010 14: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

Servus Daniel,

recht herzlichen Dank für die schnelle und ausführliche Antwort.
Wenn das so ist dann werd ich mich gleich an die Arbeit begeben und weitere Fehler abfangen. 

In diesem Sinne wünsch ich noch einen schönen Sonntag Nachmittag.

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

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