| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für PTC CREO |
Autor
|
Thema: Üblicher Name (2954 mal gelesen)
|
Creoianer Mitglied Konstrukteur / Berechnungsingenieur
Beiträge: 158 Registriert: 25.05.2014 Creo Parametric 6.0 Windchill PDMLink 11.1 Ansys Workbench 2020R1 Windows 10 64 Bit
|
erstellt am: 21. Mrz. 2015 12:06 <-- editieren / zitieren --> Unities abgeben:
Hallo Zusammen, ist es irgendwie möglich den Namen vom Modell (Common Name / Üblicher Name) in ein mapkey oder in ein VB-Script zu packen um diesen bei einer neuen Zeichnung einzutragen. Die Nummer habe ich bereits über ein mapkey und nachfolgendes VB-Script erfasst, allerdings über den Windows-Zwischenspeicher, somit müsste man irgendwie zwei Werte Zwischenspeichern. Jemand eine Idee? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
BergMax Ehrenmitglied V.I.P. h.c. Dipl.-Ing. (FH)
Beiträge: 2264 Registriert: 23.08.2005 Creo 4.0 M130 Creo 8.0.2.0 GT/SUT 8.0.0.0 HP z440, Quadro K2200, Win10 Enterp. DualView
|
erstellt am: 21. Mrz. 2015 15:31 <-- editieren / zitieren --> Unities abgeben: Nur für Creoianer
Moin, warum soll der Name über VB/Mapkey transportiert werden? Der übliche Name steckt doch in einem Parameter (PTC_COMMON_NAME), der in der Zeichnung aufgerufen werden kann. Oder was hast du genau vor?
------------------ Beste Grüße Max Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Creoianer Mitglied Konstrukteur / Berechnungsingenieur
Beiträge: 158 Registriert: 25.05.2014
|
erstellt am: 21. Mrz. 2015 20:04 <-- editieren / zitieren --> Unities abgeben:
Beim Anlegen einer neuen Zeichnung soll der Übliche Name neben der Nummer für die Zeichnung eingetragen werden (Neu --> Zeichnung). Ich kenne den Parameter (PTC_COMMON_NAME), jedoch ist mir keine Möglichkeit bekannt, wie dieser den Zeichungsnamen beeinflussen soll (in der realen Datei im Workspace)... Wir arbeiten auch mit Windchill PDMLINK, vielleicht ist es in dieser Kombination anders als ohne. [Diese Nachricht wurde von Creoianer am 21. Mrz. 2015 editiert.] [Diese Nachricht wurde von Creoianer am 21. Mrz. 2015 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
BergMax Ehrenmitglied V.I.P. h.c. Dipl.-Ing. (FH)
Beiträge: 2264 Registriert: 23.08.2005 Creo 4.0 M130 Creo 8.0.2.0 GT/SUT 8.0.0.0 HP z440, Quadro K2200, Win10 Enterp. DualView
|
erstellt am: 23. Mrz. 2015 08:46 <-- editieren / zitieren --> Unities abgeben: Nur für Creoianer
Tja, Windchillparameter in eine neu erzeugte Zeichnung bekommen, ist ein Thema für sich... Da benötigt man spezielle Windchill-konforme Zeichnungsrahmen. Aber da muss ich passen... Falls Prof. W. hier mitliest und Zeit hat, der kann da vermutlich mehr zu sagen... ------------------ Beste Grüße Max Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Wyndorps Ehrenmitglied V.I.P. h.c. Ingenieur
Beiträge: 4563 Registriert: 21.07.2005 Creo 8.0.1.0 Genius Tools 8.0 Windchill 12.0.2.0
|
erstellt am: 24. Mrz. 2015 08:53 <-- editieren / zitieren --> Unities abgeben: Nur für Creoianer
Also wenn ich die in den diversen Forenbereichen gestellten Fragen nacheinander durchlese glaube ich endlich zu verstehen, was Sie wollen: Ein Teil/BG erhält aus PDM eine automatische Nummer 12345, die auch als Dateiname 12345.prt/asm verwendet wird. Beim Anlegen des Teils/BG vergeben Sie manuell einen beschreibenden Namen als Üblichen Namen (PTC_COMMON_NAME) z. B. "Bla Bla". Beim Einchecken wird ein Wtpart mit ebenfalls derslben Nummer als Identifikator angelegt. Beim Ableiten einer Zeichnung von dem Teil/BG erhält diese entweder diesselbe Nummer 12345.drw oder einen neue Nummer (falls es bereits eine Zeichnung mit der Nummer 12345 gibt), soll aber zur Identifikation automatisiert denselben manuell vergebenen üblichen Namen "Bla Bla" erhalten? Wenn es das ist, was Sie wollen, kenne ich nur ein Tool, dass das macht - das ist die Funktion "Zeichnung aufrufen/erzeugen" aus den StartupTOOLS von INNEO. Ich glaube, man kann das aber jetzt auch einzeln über den Modellprozessor erwerben, aber das sollten Sie bei INNEO erfragen. Von VB- oder sonstiger Programmierung in Creo habe ich keine Ahnung. Kann man aber vielleicht auch damit lösen. Beispiel siehe Film.
------------------ ---------------- "Ich stimme mit der Mathematik nicht überein. Ich meine, daß die Summe von Nullen eine gefährliche Zahl ist." (Stanislaw Jerzy Lec) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Creoianer Mitglied Konstrukteur / Berechnungsingenieur
Beiträge: 158 Registriert: 25.05.2014
|
erstellt am: 24. Mrz. 2015 19:31 <-- editieren / zitieren --> Unities abgeben:
Hallo Herr Prof.Wyndorps, erst mal vielen Dank für Ihre Mühe, ich bin ein Fan ihres Buches! Ja, genau wie in dem Film gezeigt bzw. wie von Ihnen beschrieben wäre es so wie gewünscht. Wie gesagt müssen wir sowohl die Nummer 12345 (.drw) und den Namen "Bla Bla" zur Zeit händisch für die Zeichnung eingeben. Im Moment hoffe ich das Problem noch anders gelöst zu bekommen, da es in den Sternen steht ob und wann wir in unserem Unternehmen je Gelder für die StartUpTools bekommen werden. Gruss Creoianer Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
NicoFTB Mitglied Ingenieur Entwicklung/Konstuktion
Beiträge: 806 Registriert: 08.05.2012 Creo Parametric 3.0 M120 PDM Essentials 10.1 M040
|
erstellt am: 26. Mrz. 2015 13:34 <-- editieren / zitieren --> Unities abgeben: Nur für Creoianer
Über die VB-Api geht das schon. Ich habe mir selbst was mit Python zusammen gebastelt, dass das macht. Aber der Zugriff auf den CommonName funktioniert nur beim erzeugen einer Zeichnung. Sobald die im Workspace landet kann man nur noch per Windchill das Ding umbenennen. Hier mal die paar Zeilen die das bei mir machen (CamelCase sind API-Befehle): Code:
def openDrw(self): mdlname = self.session.CurrentModel.InstanceName cmnname = self.session.CurrentModel.CommonName mdltype = self.session.CurrentModel.Type if mdltype == 0: createDrw = True elif mdltype == 1: createDrw = True else: createDrw = False if createDrw: try: Cmdldesc = Dispatch("pfcls.pfcModelDescriptor") mdldesc = Cmdldesc.Create(2, mdlname, None) window = self.session.OpenFile(mdldesc) ##print 'window activate' window.Activate() except Exception: ##print 'Runmacro' self.session.RunMacro ("~ Command `ProCmdModelNew`") self.session.RunMacro ("~ Select `new` `Type` 1 `Drawing`") self.session.RunMacro ("~ Update `new` `InputPanel1` `" + mdlname + "`") self.session.RunMacro ("~ Update `new` `InputPanel2` `" + cmnname + "`") self.session.RunMacro ("~ Activate `new` `OK`; ~ Select `dwg_create` `rad_format` 1 `1`") ##self.session.RunMacro ("") self.session.RunMacro ("~ Activate `dwg_create` `psh_ok`") window = self.session.GetModelWindow(self.mdl('{0}.drw'.format(mdlname))) window.Activate() window.Repaint()
------------------ Grüße Nico \o/ Üs - ProE-Beziehungen [Diese Nachricht wurde von NicoFTB am 26. Mrz. 2015 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Creoianer Mitglied Konstrukteur / Berechnungsingenieur
Beiträge: 158 Registriert: 25.05.2014
|
erstellt am: 26. Mrz. 2015 18:00 <-- editieren / zitieren --> Unities abgeben:
|
NicoFTB Mitglied Ingenieur Entwicklung/Konstuktion
Beiträge: 806 Registriert: 08.05.2012 Creo Parametric 3.0 M120 PDM Essentials 10.1 M040
|
erstellt am: 27. Mrz. 2015 10:19 <-- editieren / zitieren --> Unities abgeben: Nur für Creoianer
Nein, das kann ich nicht. Das Programm das ich geschrieben habe funktioniert vielleicht auch bei anderen, aber es sind einige Sachen bei mir sehr speziell angelegt. Entweder du setzt dich mit der Materie selbst auseinander oder löst die Geschichte wie Wyndorps geschrieben hat. Ich wollte nur einen Tipp geben wie man es machen kann. Beim umsetzen der Programmierarbeit kann ich dann leider nicht helfen. ------------------ Grüße Nico \o/ Üs - ProE-Beziehungen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |