| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX |
| |
| NX Kinematik (Motion, Mechanism) |
Autor
|
Thema: Makro - Unterschied deu - eng (2958 mal gelesen)
|
mts Mitglied Konstrukteur
Beiträge: 173 Registriert: 04.12.2001 UG NX9.0.3.4 MP9 Teamcenter 10 Win 7 auf HP ZBook 32 GB Quadro K2100M
|
erstellt am: 19. Aug. 2010 09:13 <-- editieren / zitieren --> Unities abgeben:
Hallo Zusammen, habe in der eglischen NX-Umgebung ein einfaches Makro geschrieben und es unter den Kollegen verteilt. Bei allen, die in der deutschen Umgebung arbeiten, läuft es nicht: "Ihre Makro-Datei wurde erzeugt in Sprache und Codesatz: english 17, Und Sie arbeiten mit NX in Sprache und Codesatz: german 17" Somit kann die dynamische Layout-Prüfung in den Listeneinträgen fehlschlagen!" Und zwar bleibt es im Selektionsmenü in der Typauswahl hängen, da sucht es wahrscheinlich nach den englischen Begriffen. Gibt es eine Möglichkeit, das Makro zu ändern, oder muß ich es nochmal in deutsch rausschreiben? Gruß Stephan Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Basti77 Mitglied
Beiträge: 67 Registriert: 21.06.2006
|
erstellt am: 20. Aug. 2010 13:56 <-- editieren / zitieren --> Unities abgeben: Nur für mts
Ich hab das gefühl, daß das damit zusammenhängt, was das Macro macht. Wir haben einige Macros im zweisprachigen Einsatz, die aber nur ein Grip-Programm starten und ein paar mal auf OK klicken. Das ist wohl sprachunabhängig. Leider sind die Macros aber wirklich total dumm in NX... Wenn das Macro sprachabhängig ist, ist wohl das einfachste, es zweimal aufzunehmen, und dann durch entsprechende Variablen im Startskript festlegen, welches Macro gestartet werden soll. Da man die Macros mit jedem normalen Texteditor ansehen kann, kannst ja ein Macro mal testweise in beiden Sprachen aufnehmen und dann vergleichen... Evtl. ist es nur ein Wort, das du ändern musst? Gruß Basti Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Sirus Ehrenmitglied CAD Applikationsentwickler
Beiträge: 1569 Registriert: 03.06.2004 SolidWorks2022
|
erstellt am: 20. Aug. 2010 14:07 <-- editieren / zitieren --> Unities abgeben: Nur für mts
|
mts Mitglied Konstrukteur
Beiträge: 173 Registriert: 04.12.2001 UG NX9.0.3.4 MP9 Teamcenter 10 Win 7 auf HP ZBook 32 GB Quadro K2100M
|
erstellt am: 20. Aug. 2010 14:27 <-- editieren / zitieren --> Unities abgeben:
Das makro ist recht simpel. Es soll alle ID-Symbole auf einer Zeichnung zum löschen selektieren. Also: edit - delete - class selection - type - symbol - detail filtering - id-symbol mehr nicht. Zufälligerweise läuft es über das "symbol" noch drüber, weil das in deutsch und englisch gleich ist. Am "ID Symbol" bleibt es hängen, weil es im deutschen mit Bindestrich und im englischen ohne geschrieben wird. Sonst würde es wahrscheinlich funktionieren. Obwohl die Menüpunkte im Makro durchnummeriert sind, guckt er halt nach den Namen und dabei fliegt er raus. Die Frage ist jetzt, kann man ein Makro so aufzeichnen, das es in allen Sprachen geht, oder muß man immer alles doppelt machen. Gruß Stephan PS.: Wollte die Datei hochladen, aber unser Netz läßt das nicht zu?! "Access denied" Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mseufert Ehrenmitglied V.I.P. h.c. Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2690 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-2306 3D Printer Prusa MK2 S
|
erstellt am: 20. Aug. 2010 15:13 <-- editieren / zitieren --> Unities abgeben: Nur für mts
Hallo mts, wenn ein Makro zu empfindlich ist, wär' ein Journal die stabilere Variante. Lediglich bei der Selektion der Symbole muss Hand angelegt werden, d.h Aufzeichnen allein wird hier nicht ausreichen. Funktionieren wir'd dafür in jeder Umgebung. Gruß, Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mts Mitglied Konstrukteur
Beiträge: 173 Registriert: 04.12.2001 UG NX9.0.3.4 MP9 Teamcenter 10 Win 7 auf HP ZBook 32 GB Quadro K2100M
|
erstellt am: 24. Aug. 2010 08:18 <-- editieren / zitieren --> Unities abgeben:
Hallo Michael, mit Journal habe ich bisher nichts zu tun gehabt. So schnell wie ein Makro ist das ja nicht gemacht. Das mit der Selektion muß ich mir mal genauer ansehen. Schon mal vielen Dank für die Tips Gruß Stephan Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gfx-toxic.de Mitglied Konstruktion / Anwenderbetreuung
Beiträge: 501 Registriert: 09.06.2006 Teamcenter 11.3 / NX 11 Windows 10
|
erstellt am: 24. Aug. 2010 10:03 <-- editieren / zitieren --> Unities abgeben: Nur für mts
hier ein Journal wo das tut... Code: using System; using NXOpen;namespace NiXe { class Program { public static void Main(string[] args) { Session thesession = Session.GetSession(); NXOpen.UF.UFSession theufsession = NXOpen.UF.UFSession.GetUFSession(); Part workpart = thesession.Parts.Work; NXOpen.Session.UndoMarkId markId1; markId1 = thesession.SetUndoMark(NXOpen.Session.MarkVisibility.Visible, "Delete"); foreach (NXOpen.Annotations.IdSymbol symb in workpart.Annotations.IdSymbols) { NXOpen.NXObject symbolobject = symb; thesession.UpdateManager.AddToDeleteList(symbolobject); thesession.UpdateManager.DoUpdate(markId1); } } } }
gruß ------------------ Gruß Matthias ------------------------------------ ICQ: 163190295 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gfx-toxic.de Mitglied Konstruktion / Anwenderbetreuung
Beiträge: 501 Registriert: 09.06.2006 Teamcenter 11.3 / NX 11 Windows 10
|
erstellt am: 24. Aug. 2010 10:09 <-- editieren / zitieren --> Unities abgeben: Nur für mts
achja vorsicht! das ding löscht alle symbol ids - auf allen zeichnungsblättern...(nicht nur auf dem aktuellen) ------------------ Gruß Matthias ------------------------------------ ICQ: 163190295 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mts Mitglied Konstrukteur
Beiträge: 173 Registriert: 04.12.2001 UG NX9.0.3.4 MP9 Teamcenter 10 Win 7 auf HP ZBook 32 GB Quadro K2100M
|
erstellt am: 24. Aug. 2010 13:13 <-- editieren / zitieren --> Unities abgeben:
Hallo Matthias, das sieht gut aus, das muß ich mir mal in Ruhe ansehen. Das Schöne an dem Makro ist, daß es nach der Selektion abbricht und man noch mal kontrollieren kann. (Weil manchmal Kontrollmaße auch als ID-Symbol gemacht sind, und die sollen ja nicht gelöscht werden.) Danach drückt man OK udn alles ist gut. Gruß Stephan Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gfx-toxic.de Mitglied Konstruktion / Anwenderbetreuung
Beiträge: 501 Registriert: 09.06.2006 Teamcenter 11.3 / NX 11 Windows 10
|
erstellt am: 24. Aug. 2010 13:47 <-- editieren / zitieren --> Unities abgeben: Nur für mts
das wäre dann ungefähr so: Code: using System; using NXOpen;namespace NiXe { class Program { public static void Main(string[] args) { Session thesession = Session.GetSession(); NXOpen.UF.UFSession theufsession = NXOpen.UF.UFSession.GetUFSession(); Part workpart = thesession.Parts.Work; NXOpen.UI theui = NXOpen.UI.GetUI(); NXOpen.Session.UndoMarkId markId1; markId1 = thesession.SetUndoMark(NXOpen.Session.MarkVisibility.Visible, "Delete"); foreach (NXOpen.Annotations.IdSymbol symb in workpart.Annotations.IdSymbols) { NXOpen.NXObject symbolobject = symb; symb.Highlight(); thesession.UpdateManager.AddToDeleteList(symbolobject); } int result = theui.NXMessageBox.Show("SymbolID", NXMessageBox.DialogType.Question, "Sollen die markierten ID´s gelöscht werden?"); if (result == 1) { thesession.UpdateManager.DoUpdate(markId1); } if (result == 2) { thesession.UpdateManager.ClearDeleteList(); foreach (NXOpen.Annotations.IdSymbol symb in workpart.Annotations.IdSymbols) { symb.Unhighlight(); } } } } }
------------------ Gruß Matthias ------------------------------------ ICQ: 163190295 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |