| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Creo |
| |
 | BOM Assistant für Stücklistenerstellung , eine App
|
Autor
|
Thema: Mapkey mit Seitenwechsel? (1905 mal gelesen)
|
dibu Mitglied Konstrukteur
 
 Beiträge: 143 Registriert: 11.03.2003 WXP 2.4GHz 512MB DELL Workstation NVIDIA Quadro4 900 XGL<P> Inventor 10 PROE/WF2
|
erstellt am: 05. Jan. 2005 09:39 <-- editieren / zitieren --> Unities abgeben:         
Hallo Proeler, folgendes Problem habe ich und suche nach einer Lösung. Zum Erzeugen von dwg Daten bei Zeichnungen habe ich nun ein Mapkey erstellt, funktioniert super. Nur wird immer nur logischer Weise vom aktuellen Blatt die dwg Datei erstellt. Bei 8 Blättern macht das dann schon mal richtig Arbeit.  Hat jemand bereits eine Lösung für den automatischen Blattwechsel in Mapkeys erstellt? Dirk Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fossy Mitglied Dipl.-Ing. Maschinenbau (Kraftfahrzeugtechnik)
  
 Beiträge: 943 Registriert: 07.02.2001 Der einzige Mensch, der sich vernünftig benimmt, ist mein Schneider. Er nimmt jedesmal neu Maß, wenn er mich trifft, während alle anderen immer die alten Maßstäbe anlegen in der Meinung, sie passten auch heute noch. (George Bernard Shaw, ir. Dramatiker, 1856-1950)
|
erstellt am: 05. Jan. 2005 10:15 <-- editieren / zitieren --> Unities abgeben:          Nur für dibu
hi, ... erstellt noch nicht, aber mir fallen da zwei möglichkeiten ein. 1. du erstellst viele mapkeys - für jede blattanzahl einen. also z.b. dwg1 (für ein blatt), dwg2 (für zwei blatt), usw. oder 2. du definierst zwei mapkeys - einen für den export (z.b. dwg_export) und einen für den blattwechsel (z.b. naechstes_blatt). jetzt kommt's  du schreibst ein vbs-script, was dich fragt, wieviele blätter du exportieren willst und dieses führt dann über einen schleifen von i = 0 bis zu deiner eingabe immer ein sendkey-ergeignis "dwg_export" und dann "naechstes_blatt" aus. dieses script startest du dann z.b. über mapkey dwg
------------------ cu fossy meine kleine website Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
dibu Mitglied Konstrukteur
 
 Beiträge: 143 Registriert: 11.03.2003 WXP 2.4GHz 512MB DELL Workstation NVIDIA Quadro4 900 XGL<P> Inventor 10 PROE/WF2
|
erstellt am: 05. Jan. 2005 10:31 <-- editieren / zitieren --> Unities abgeben:         
Hallo fossy, danke für die Antwort das hört sich als Ansatz schon mal super gut an. jetzt kommt's Visual Basic = null,nichts Ahnung (Zeitmangel) Wie binde ich das Script ein? Welche Voraussetzungen müssen seitens Pro/E bestehen? Dirk [Diese Nachricht wurde von dibu am 05. Jan. 2005 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fossy Mitglied Dipl.-Ing. Maschinenbau (Kraftfahrzeugtechnik)
  
 Beiträge: 943 Registriert: 07.02.2001 Der einzige Mensch, der sich vernünftig benimmt, ist mein Schneider. Er nimmt jedesmal neu Maß, wenn er mich trifft, während alle anderen immer die alten Maßstäbe anlegen in der Meinung, sie passten auch heute noch. (George Bernard Shaw, ir. Dramatiker, 1856-1950)
|
erstellt am: 05. Jan. 2005 11:01 <-- editieren / zitieren --> Unities abgeben:          Nur für dibu
hi, ..... naja, wir wollen mal nicht so sein, weihnachten ist ja noch nicht so lange her  hier gibts übrigens die hilfe für wsh! config.pro
Code:
mapkey dwg @MAPKEY_LABELDWGexport;\ mapkey(continued) @SYSTEMc:\\wsh\\dwg.vbs;
inhalt der datei dwg.vbs in c:\wsh\ Code:
Option Explicit Dim Eingabe, Befehl, WshShell, i Set WshShell = WScript.CreateObject("WScript.Shell")Eingabe = InputBox("Geben Sie an, wieviel Blätter sie exportieren wollen") Sub sk(Befehl) WshShell.SendKeys(Befehl) WScript.Sleep 100 'Zeitangabe in Millisekunden End Sub 'Sucht das Pro/E-Fenster WshShell.AppActivate "(Aktiv)" WshShell.AppActivate "Pro/ENGINEER" WshShell.AppActivate " - Pro/ENGINEER" WshShell.AppActivate "(Aktiv) - Pro/ENGINEER" Wscript.Sleep 100 If Eingabe = "" Then 'MsgBox "Abbruch" Else For i = 1 To Eingabe sk("dwg_export") WScript.Sleep 1000 'Zeitangabe in Millisekunden sk("naechstes_blatt") WScript.Sleep 100 'Zeitangabe in Millisekunden Next End If
hth ------------------ cu fossy meine kleine website Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
dibu Mitglied Konstrukteur
 
 Beiträge: 143 Registriert: 11.03.2003 WXP 2.4GHz 512MB DELL Workstation NVIDIA Quadro4 900 XGL<P> Inventor 10 PROE/WF2
|
erstellt am: 05. Jan. 2005 14:41 <-- editieren / zitieren --> Unities abgeben:         
|
dibu Mitglied Konstrukteur
 
 Beiträge: 143 Registriert: 11.03.2003 WXP 2.4GHz 512MB DELL Workstation NVIDIA Quadro4 900 XGL<P> Inventor 10 PROE/WF2
|
erstellt am: 06. Jan. 2005 10:01 <-- editieren / zitieren --> Unities abgeben:         
Hallo Fossy, erstmal vielen dank für den Support in Sachen VBS. Nach anfänglichen Problemem hatte ich dann erkannt das ich ja noch ein Mapkey für den Seitenwechsel benötige. (Anfängerprobleme) Funktioniert jetzt super, werde es noch für andere Exportformat anpassen. Noch'ne kleine Frage hast du einen Tipp, wie ich noch die *.log.* files in dem entsprechenden Verzeichnis löschen kann. Dirk Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fossy Mitglied Dipl.-Ing. Maschinenbau (Kraftfahrzeugtechnik)
  
 Beiträge: 943 Registriert: 07.02.2001 Der einzige Mensch, der sich vernünftig benimmt, ist mein Schneider. Er nimmt jedesmal neu Maß, wenn er mich trifft, während alle anderen immer die alten Maßstäbe anlegen in der Meinung, sie passten auch heute noch. (George Bernard Shaw, ir. Dramatiker, 1856-1950)
|
erstellt am: 06. Jan. 2005 12:31 <-- editieren / zitieren --> Unities abgeben:          Nur für dibu
hi, Zitat: Original erstellt von dibu:
Noch'ne kleine Frage hast du einen Tipp, wie ich noch die *.log.* files in dem entsprechenden Verzeichnis löschen kann.
klar hab ich den :-) wenn die dateien im arbeitsverzeichnis erzeugt werden einfach Code:
WshShell.run "cmd /K del *.log.* & Exit", 7, True
ans ende des scripts anfügen und schon werden die dateien gelöscht. ------------------ cu fossy meine kleine website Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
dibu Mitglied Konstrukteur
 
 Beiträge: 143 Registriert: 11.03.2003 WXP 2.4GHz 512MB DELL Workstation NVIDIA Quadro4 900 XGL<P> Inventor 10 PROE/WF2
|
erstellt am: 06. Jan. 2005 13:46 <-- editieren / zitieren --> Unities abgeben:         
|
fossy Mitglied Dipl.-Ing. Maschinenbau (Kraftfahrzeugtechnik)
  
 Beiträge: 943 Registriert: 07.02.2001 Der einzige Mensch, der sich vernünftig benimmt, ist mein Schneider. Er nimmt jedesmal neu Maß, wenn er mich trifft, während alle anderen immer die alten Maßstäbe anlegen in der Meinung, sie passten auch heute noch. (George Bernard Shaw, ir. Dramatiker, 1856-1950)
|
erstellt am: 06. Jan. 2005 14:27 <-- editieren / zitieren --> Unities abgeben:          Nur für dibu
|
dibu Mitglied Konstrukteur
 
 Beiträge: 143 Registriert: 11.03.2003 WXP 2.4GHz 512MB DELL Workstation NVIDIA Quadro4 900 XGL<P> Inventor 10 PROE/WF2
|
erstellt am: 07. Jan. 2005 08:53 <-- editieren / zitieren --> Unities abgeben:         
Hallo fossy, also ich habe den Eintrag wie angegeben in das VBS Script aufgenommen. Leider funktioniert er so nicht. Warum? Keine Ahnung. Dann habe ich mir die Hilfe rangezogen und den folgenden Script gefunden und angepasst. Code Dim oShell Set oShell = WScript.CreateObject ("WSCript.shell") oShell.run "cmd /K pushd d:\dwg & del *.log* & Exit" Set oShell = Nothing Nun ist es so, daß wenn ich den Code separat aufrufe werden die log files gelöscht. Hänge ich den Code an den dwg Script hinten ran funktioniert er nicht. Dann hatte ich das mapkey angepasst, geht auch nicht. mapkey dwgall @MAPKEY_LABELdwg von mehreren Seiten in d:\\dwg;\ mapkey(continued) ~ Activate `main_dlg_cur` `ProCmdWinActivate.help`;\ mapkey(continued) @SYSTEMK:\\ptc\\proe2001\\script\\dwg.vbs;\ mapkey(continued) @SYSTEMK:\\ptc\\proe2001\\script\\log.vbs; Meine Frage an dich wie kann der oben stehende Script eingebunden werden das er auch im dwg Script läuft? Dirk
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fossy Mitglied Dipl.-Ing. Maschinenbau (Kraftfahrzeugtechnik)
  
 Beiträge: 943 Registriert: 07.02.2001 Der einzige Mensch, der sich vernünftig benimmt, ist mein Schneider. Er nimmt jedesmal neu Maß, wenn er mich trifft, während alle anderen immer die alten Maßstäbe anlegen in der Meinung, sie passten auch heute noch. (George Bernard Shaw, ir. Dramatiker, 1856-1950)
|
erstellt am: 07. Jan. 2005 12:09 <-- editieren / zitieren --> Unities abgeben:          Nur für dibu
hallo nochmal, Zitat: Original erstellt von dibu:
oShell.run "cmd /K pushd d:\dwg & del *.log* & Exit"
... wie du sicher gesehen hast, ist das genau das selbe, was ich vorgeschlagen haben...  wenn du hinten " & exit" weglässt, dann wird das dosfenster nicht geschlossen und du kannst besser kontrollieren, was gemacht wurde und was nicht und dadurch eher den fehler finden... HTH
------------------ cu fossy meine kleine website Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
dibu Mitglied Konstrukteur
 
 Beiträge: 143 Registriert: 11.03.2003 WXP 2.4GHz 512MB DELL Workstation NVIDIA Quadro4 900 XGL<P> Inventor 10 PROE/WF2
|
erstellt am: 13. Mai. 2005 08:03 <-- editieren / zitieren --> Unities abgeben:         
Hallo Fossy, hab zum Thema Scriping und PRO/E noch ne Frage. Grundsätzlich bin ich "faul" . Ich habe Drawings mit mehreren Seiten unterschiedlichester Formate. Gibt es eine Möglichkeit das Format des aktullen Blattes abzufragen, um dann das entsprechende Mapkey zum Druck des Formates zustarten. Dirk Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fossy Mitglied Dipl.-Ing. Maschinenbau (Kraftfahrzeugtechnik)
  
 Beiträge: 943 Registriert: 07.02.2001 Der einzige Mensch, der sich vernünftig benimmt, ist mein Schneider. Er nimmt jedesmal neu Maß, wenn er mich trifft, während alle anderen immer die alten Maßstäbe anlegen in der Meinung, sie passten auch heute noch. (George Bernard Shaw, ir. Dramatiker, 1856-1950)
|
erstellt am: 13. Mai. 2005 10:34 <-- editieren / zitieren --> Unities abgeben:          Nur für dibu
hi, warum der aufwand mit unterschiedlichen druckern für die formate? lege eine pcf-datei an, in der unter anderem Code:
plot_scale plot 1.0 plot_sheets current !paper_size A0
mit enthalten sind (also kein paper_size. dann sollte eigentlich das format automatisch richtig an den drucker geschickt werden... ------------------ cu fossy baumrasen.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |