Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  NX Programmierung
  Update event list beim öffnen von Parts mit Win Forms

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 NX
Autor Thema:  Update event list beim öffnen von Parts mit Win Forms (743 / mal gelesen)
didie
Mitglied
NX Admin


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

Beiträge: 106
Registriert: 29.01.2004

win 10
NX1953

erstellt am: 07. Okt. 2022 12:33    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


Updateeventlist.png

 
Hallo zusammen,

Ich habe ein Window Forms NX Journal, dass Parts die in einer Liste stehen öffnet bearbeiten und wieder schließt.
Dabei habe ich das Problem, dass bei manchen Parts die Meldung "Update event list" erscheint wenn zum Beispiel interpart expressions nicht gefunden werden. Der Anwender muss an dieser Stelle jedes Mal Ok drücken damit das Programm fortgeführt wird.


Das komische an der Sache ist, dass wenn ich das laden der Parts direkt in der Main Methode aufrufe kommt die Meldung "Update event list" nicht

Code:
      public static void Main()
        {
            _session = Session.GetSession();
            _activepart = _session.Parts.Work;
            _displayPart = _session.Parts.Display;

            new StandardPartForm2().Show();

            var _files = Directory.GetFiles("C:\\temp", "*.prt", SearchOption.AllDirectories);

            foreach (string file in _files)
            {

                NXOpen.BasePart basePart2;
                NXOpen.PartLoadStatus partLoadStatus2;
                basePart2 = _session.Parts.OpenActiveDisplay(file, NXOpen.DisplayPartOption.AllowAdditional, out partLoadStatus2);

                _activepart = _session.Parts.Work;
                _displayPart = _session.Parts.Display;
                partLoadStatus2.Dispose();
            }
        }


Wenn ich hingegen irgend eine andere Methode zum Beispiel ein Button Klick Event benutze erscheinen die "Update event list" Meldung

Code:

        private void button1_Click(object sender, EventArgs e)
        {
            var _files = Directory.GetFiles("C:\\temp", "*.prt", SearchOption.AllDirectories);

            foreach (string file in _files)
            {

                NXOpen.BasePart basePart2;
                NXOpen.PartLoadStatus partLoadStatus2;
                basePart2 = _session.Parts.OpenActiveDisplay(file, NXOpen.DisplayPartOption.AllowAdditional, out partLoadStatus2);

                _activepart = _session.Parts.Work;
                _displayPart = _session.Parts.Display;
                partLoadStatus2.Dispose();
            }
        }


Hat jemand eine Idee wie man diese Meldung "Update event list" unterdrücken oder im Journal bestätigen kann?

Gruß
didie

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

mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


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

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 07. Okt. 2022 15:43    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 didie 10 Unities + Antwort hilfreich

Hallo didie,

diese Mitteilungsbedürftigkeit von NX stört bei den meisten Batch-Programmen, das ist bekannt. Neben den Update Events gib't noch 'ne Reihe anderer Dialoge, die den Ablauf blockieren, z.B. "Material Version Control", "New Iray + ..." usw.

Die Lösung ist im Prinzip einfach 

Du überwachst den NX Prozess und suchst per Windows API nach zugehörigen Fenstern. Taucht ein unerwünschtes Fenster auf, wird's einfach geschlossen. So als hätte es der Anwender weggeklickt.
Damit können Batch Programme mit geringfügiger Verzögerung weiter laufen.

Gruß, Michael

------------------
Ein Mensch wird laut, wenn er was will;
wenn er's erst hat, dann wird er still;
Das "Danke" ist, nach alter Sitte,
Weit selt'ner als das "Bitte, Bitte".

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

didie
Mitglied
NX Admin


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

Beiträge: 106
Registriert: 29.01.2004

win 10
NX1953

erstellt am: 07. Okt. 2022 16: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

Hallo Michael,

das hast du schön ausgedrückt.

Zitat:
Die Lösung ist im Prinzip einfach

wenn man weiß wie.


Ich habe Code Schnipsel gefunden mit denen ich nach aktiven Fenstern suchen kann.
Nur ist mir nicht so ganz klar wie ich das umsetzten muss. Wenn mein NX Journal auf einen Fehler trifft, dann bleibt es zunächst mal stehen. Ich kann also die Überwachung der Fenster nicht in meinem NX Journal vornehmen. oder doch ?
Muss ich da parallel ein zweites Programm starten das mein NX überwacht?

Kannst du mir noch etwas auf die Sprünge helfen?

Gruß
didie


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

mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


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

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 08. Okt. 2022 11:27    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 didie 10 Unities + Antwort hilfreich

Hallo didie,

ein separates Programm geht in jedem Fall, das wüde ich empfehlen. Evtl. geht es auch aus einer Quelle, als extra Prozess oder Thread, damit sich nichts gegenseitig blockiert. Jedenfalls solltest du dich mit den Basics der Win API befassen.

Gruß, Michael

------------------
Ein Mensch wird laut, wenn er was will;
wenn er's erst hat, dann wird er still;
Das "Danke" ist, nach alter Sitte,
Weit selt'ner als das "Bitte, Bitte".

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

didie
Mitglied
NX Admin


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

Beiträge: 106
Registriert: 29.01.2004

win 10
NX1953

erstellt am: 10. Okt. 2022 08:34    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 Michael,

Ich habe eine Lösung für mein Problem gefunden.

In den Customer Defaults gibt es mittlerweile unter Standards/Gateway/General/Expressions die Schalter "Show missing cross-part expression warnings" & "Display warnings for referencing cross-part expressions".

Gruß
didie

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



Bauzeichner/in (m/w/d)

Wir sind ein inhabergeführtes Ingenieurbüro im Baugewerbe und unterstützen unsere Kunden bei der Planung, Koordination und Umsetzung von Bauprojekten. Unser Fokus liegt dabei auf der Erstellung von präzisen und maßstabsgetreuen Bauplänen. Dabei setzen wir auf modernste Technik und arbeiten eng mit unseren Kunden und Partnern zusammen, um optimale Ergebnisse zu erzielen. Unsere langjährige Erfahrung ...

Anzeige ansehenTechnischer Zeichner, Bauzeichner
mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


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

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 10. Okt. 2022 09:13    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 didie 10 Unities + Antwort hilfreich

Hallo didie,

solange keine weiteren Dialoge auftauchen, die den Ablauf stören dürfte das der einfachste Weg sein.

Gruß, Michael

------------------
Ein Mensch wird laut, wenn er was will;
wenn er's erst hat, dann wird er still;
Das "Danke" ist, nach alter Sitte,
Weit selt'ner als das "Bitte, Bitte".

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