Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  PTC Creo Elements/Programmierung
  Makro bei ME10

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
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für PTC CREO
  
MAIT erhält den Abas Partner Performance Award 2025, eine Pressemitteilung
Autor Thema:  Makro bei ME10 (2254 mal gelesen)
P.Greskamp
Mitglied
Ingenieur


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

Beiträge: 18
Registriert: 12.03.2003

erstellt am: 12. Mrz. 2003 18: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 zusammen,

ich hätte mal eine Frage zur Makroprogrammierung bei ME10. Möchte aus mehreren Ordner tiff-Dateien ausschreiben. Da es sich um sehr viele Zeichnungen handelt will ich nicht alle Zeichnungsnummer eingeben müssen. Gibt es da einen Befehl der alle .mi-Zeichnungen in dem Ordner liest und dann auch wieder ausschreibt. Das Makro soll dann selbstständig laufen und eine nach der anderen Zeichnung aufrufen, das klappt auch soweit wenn ich die Zeichnungsnummern händisch eingebe. Würde mir sehr helfen wenn jemand so einen Befehl kennt der den Inhalt des Ordners liest.

Vielen Dank im voraus.

------------------
Gruß Peter

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

baumgartner
Mitglied
Dipl.-Ing. Maschinenbau


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

Beiträge: 715
Registriert: 05.01.2001

Ing.-Büro Andreas Baumgartner bietet Lösungen rund um ME10.
* ME10-Makros
* ME10-Makroschulungen

erstellt am: 12. Mrz. 2003 19: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 P.Greskamp 10 Unities + Antwort hilfreich

hallo,
ungetestet, da ich jetzt weg muss

DEFINE CATALOG_LADE
  LOCAL dateiname
  CATALOG "" SELECT "FILE_NAME" "*.mi" DEL_OLD "catalog-datei.tmp"
  OPEN_INFILE 1 "catalog-datei.tmp"
  LOOP
    READ_FILE 1 dateiname
  EXIT_IF (dateiname="END-OF-FILE")
    IF (POS dateiname ".mi")
      (* ggf hier den Dateinamen so kürzen und bearbeiten, dass nur  der tatsächliche Dateiname erscheint. Ist abhängig von deinen Katalogoptionen *)
      DELETE ALL CONFIRM
      (* ggf. ON_ERROR, ERROR_TRAP wäre ganz hilfreich *)
      LOAD dateiname
      (* deine TIFF-Aktionen aufrufen *)
    END_IF
  END_LOOP
  CLOSE_FILE 1
END_LOOP

Wenn es noch Fragen gibt, dann darfst Du mich gerne kontaktieren. Ich halte auch individuelle Makrokurse zu diesen Thema. Aber jetzt noch nicht getestet, wenn ich Zeit finde mache ich es morgen noch.


------------------
Grüsse aus dem Schwarzwald 
www.Andreas-Baumgartner.de

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

P.Greskamp
Mitglied
Ingenieur


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

Beiträge: 18
Registriert: 12.03.2003

erstellt am: 13. Mrz. 2003 13:49    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 Andreas,

erstmal danke für die schnelle Hilfe. Hat mich etwas weiter gebracht, den Katalog schreibt er aus sind aber noch mehr Daten drin als gewünscht. Es soll ja nur der Dateiname eingetragen werden. Hab dir mal den Katalogdatei unten aufgeführt wie es ausgeschrieben wird. Kann ich den Namen irgendwie kürzen oder den Katalog so einstellen das nur die ersten 16 Ziffern genommen werden. Der Dateiname hat den Typ von 4-114025-1112.mi. Auch beim laden nimmt er den Name nicht, ist das ein Problem das er da ZAhlen drin hat, weil der "DAteiname" ist als '4-114025-1112.mi' definiert, aber es geht trotzdem nicht so laden.


Zu weit bin ich schon mit dem Makro:

DEFINE CATALOG_LADE
  LOCAL Dateiname
  CATALOG 'U:\Ordner\test' DEL_OLD "catalog-datei.tmp" SELECT "FILE_NAME" "*.mi"
  OPEN_INFILE 1 "catalog-datei.tmp"
  LOOP
    READ_FILE 1 Dateiname
  EXIT_IF (Dateiname="END-OF-FILE")
    IF (POS dateiname ".mi")
      (* ggf hier den Dateinamen so kürzen und bearbeiten, dass nur  der tatsächliche Dateiname erscheint. Ist abhängig von deinen

Katalogoptionen *)
      DELETE ALL CONFIRM
      (* ggf. ON_ERROR, ERROR_TRAP wäre ganz hilfreich *)
      LOAD 'test\Dateiname'
      Plot_pdf '' ''
      Plot_tiff '' '' ''
      delete all confirm     
      END_IF
  END_LOOP
  CLOSE_FILE 1
END_LOOP
END_DEFINE


------------------
Gruß Peter

[Diese Nachricht wurde von P.Greskamp am 13. März 2003 editiert.]

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

baumgartner
Mitglied
Dipl.-Ing. Maschinenbau


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

Beiträge: 715
Registriert: 05.01.2001

Ing.-Büro Andreas Baumgartner bietet Lösungen rund um ME10.
* ME10-Makros
* ME10-Makroschulungen

erstellt am: 13. Mrz. 2003 14: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 P.Greskamp 10 Unities + Antwort hilfreich

hallo,
die kleine Ergänzung für Dich ...

DEFINE CATALOG_LADE
  LOCAL dateiname
  CATALOG "" SELECT "FILE_NAME" "*.mi" DEL_OLD "catalog-datei.tmp"
  OPEN_INFILE 1 "catalog-datei.tmp"
  LOOP
    READ_FILE 1 dateiname
  EXIT_IF (dateiname="END-OF-FILE")
    IF (POS dateiname ".mi")
       (* hiermit wird die ausgelesene Zeile auf den Dateinamen gekuerzt *)
       LET DATEINAME (SUBSTR DATEINAME 1 ((POS DATEINAME ".mi")+2) )

      DELETE ALL CONFIRM
      (* ggf. ON_ERROR, ERROR_TRAP wäre ganz hilfreich *)
      LOAD dateiname
      (* deine TIFF-Aktionen aufrufen *)
    END_IF
   END_LOOP
   CLOSE_FILE 1
END_LOOP

Aber jetzt viel Spass... - ich hatte jetzt Zeit die Sache zu probieren. Um das Makro wasserdicht zu machen, wären TRAP_ERROR und ON_ERROR noch angebracht. Dank im voraus für die Unities.

------------------
Grüsse aus dem Schwarzwald  
www.Andreas-Baumgartner.de

Edit: Klammer ergänzt, Makro müsste jetzt laufen

[Diese Nachricht wurde von baumgartner am 13. März 2003 editiert.]

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

P.Greskamp
Mitglied
Ingenieur


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

Beiträge: 18
Registriert: 12.03.2003

erstellt am: 13. Mrz. 2003 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

tut mir ja leid das ich nerve aber das funktioniert nicht bei mir. Muss ich denn für "dateiname" was eingeben oder ist das der Name? Und wieso ist das einmal klein und gross geschrieben. Der Dateiname muss dann später z.B: 4-114025-1112.mi heissen. WEnn ich das mit dem
LET DATEINAME (SUBSTR DATEINAME 1 ((POS DATEINAME ".mi")+2) eingebe will er ein (Formel)Ausdruck, da fehlt wohl noch eine Klammer, und dann sagt er "für arithemtische Operation sind nur (srting) Zeichendaten zulässig. hast du das bei dir mal ausprobiert mit nem Dateinamen? Steh da irgendwie auf dem Schlauch.

Wäre cool wenn du mir nochmal helfen könntest.

Noch was: was sind Unities

------------------
Gruß Peter

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

rhoffmann
Mitglied
Techniker


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

Beiträge: 58
Registriert: 22.01.2003

erstellt am: 13. Mrz. 2003 17:01    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 P.Greskamp 10 Unities + Antwort hilfreich

Hast ja recht, es fehlt am Ende eine Klammer.
LET DATEINAME (SUBSTR DATEINAME 1 ((POS DATEINAME ".mi")+2))
Dann müsste es funktionieren.
Falls Leerzeichen im Dateinamen vorkommen,
muss dieser in Hochkomma gesetzt werden !!

MfG Robert

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

baumgartner
Mitglied
Dipl.-Ing. Maschinenbau


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

Beiträge: 715
Registriert: 05.01.2001

Ing.-Büro Andreas Baumgartner bietet Lösungen rund um ME10.
* ME10-Makros
* ME10-Makroschulungen

erstellt am: 13. Mrz. 2003 17: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 P.Greskamp 10 Unities + Antwort hilfreich

ja klar doch. Habe es ausprobiert und dann am anderen Rechner falsch eingetippt. Sorry, dennoch viel Spass mit der Lösung.

------------------
Grüsse aus dem Schwarzwald 
www.Andreas-Baumgartner.de

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

P.Greskamp
Mitglied
Ingenieur


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

Beiträge: 18
Registriert: 12.03.2003

erstellt am: 13. Mrz. 2003 20: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

hab immer noch probleme mit dem makro, aber bin am ausprobieren. beim ersten durchlauf sagt er mir dann das die "Datei 1" geschlossen ist. Verstehe ich nicht so ganz. Noch mal danke Andreas, hab dir 10 unities verteilt, wenn ich das so richtig geschnallt habe.

Jetzt noch was.

Gibt es auch einen Befehl der den ganzen Inhalt des Ordners mit allen Unterordnern einliest.

------------------
Gruß Peter

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

H.annes
Mitglied
CAD-Pfriemler


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

Beiträge: 482
Registriert: 02.07.2001

OSDD 8.7 - 13.20 ; OSDM 13.00

erstellt am: 14. Mrz. 2003 08: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 Nur für P.Greskamp 10 Unities + Antwort hilfreich

Morgen!

Tschuldigts, dass ich da auch noch reinpfusche:

Also: Baumgartner's Lösung ist astrein & müßte eigentlich klaglos funktionieren.

Einer Deiner früheren postings ist allerdings zu entnehmen, daß Du nicht das aktuelle Verzeichnis auslesen willst, sondern ein anderes: in diesem Fall ist noch eine kleine Anpassung nötig:

Code:

DEFINE Xxx
  LOCAL Dateiname
  LET Verzeichnis 'y:\zip\'
  CATALOG Verzeichnis SELECT 'FILE_NAME' '*.mi' DEL_OLD 'catalog-datei.tmp'
  OPEN_INFILE 1 'catalog-datei.tmp'
  LOOP
    READ_FILE 1 Dateiname
  EXIT_IF (Dateiname='END-OF-FILE')
    IF (POS Dateiname '.mi')
      LET Dateiname (SUBSTR Dateiname 1 ((POS Dateiname '.mi')+2))
      EDIT_PART TOP
      DELETE ALL CONFIRM
      TRAP_ERROR
      LOAD (Verzeichnis+Dateiname)
      IF (CHECK_ERROR)
        DISPLAY (Dateiname+' ... '+ERROR_STR)
      END_IF
    END_IF
  END_LOOP
  CLOSE_FILE 1
END_LOOP
END_DEFINE

Den Fehler mit "Datei 1 nicht offen" kann ich nicht ganz verstehen - außer Du hast das CLOSE_FILE in die Schleife geschoben ...


Noch ein Hinweis zur 2.Frage:
eine rekursive Liste aller Files im aktuellen Verzeichnis kriegst Du in DOS mit:
  dir /b /on /s /a-d


Gruß aus Österreich,
Hannes


------------------
oba geh ...

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)2025 CAD.de | Impressum | Datenschutz