Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Pro ENGINEER
  Jlink: Model regenerieren - Fehlermeldung

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 Creo
  
BOM Assistant für Stücklistenerstellung , eine App
Autor Thema:  Jlink: Model regenerieren - Fehlermeldung (1104 mal gelesen)
magic_halli
Mitglied



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

Beiträge: 361
Registriert: 03.07.2006

WF2 M210 / WF3 M110
Linux Fedora C4
WinXP Pro
Java 1.6.0_06

erstellt am: 14. Mrz. 2007 09:19    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,

ich möchte lediglich eine geöffnete Baugruppe regenerieren. Dazu habe ich nur diese Stück Code am laufen, welches ich auf die geöffnete BG anwende:

Code:

RegenInstructions inst = pfcSolid.RegenInstructions_Create(new Boolean(false), null, null);
Solid solid = (Solid) model;
solid.Regenerate(inst);


Ich erhalte hierbei immer die Fehlermeldung "...pfcException@XToolkitRegenereateAgain".
Diese erscheint, nachdem dieses Fenster mit dem Regenerationsstatus durchgelaufen ist.

Woran kann das liegen?
Habe ich irgendwas falsch gemacht oder muss man hierbei irgendwas beachten?

Gruß und Danke.

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

anagl
Ehrenmitglied V.I.P. h.c.
 


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

Beiträge: 4566
Registriert: 28.05.2001

CREO2 M140
PDMLink 10.2 M020
HW diverse
Das Schreiben bei CAD.de ist freiwillig und kein Muss !!!!!

erstellt am: 14. Mrz. 2007 09:38    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 magic_halli 10 Unities + Antwort hilfreich

Die Exception sagt Du musst nochamls regenerieren
wie sieht es interaktiv aus ?
Musst Du auch mehrmals regenerieren bist du einen grünen Punkt erhältst?
Hast Du zirkulare Referenzen ?

------------------
Servus
Alois

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

magic_halli
Mitglied



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

Beiträge: 361
Registriert: 03.07.2006

WF2 M210 / WF3 M110
Linux Fedora C4
WinXP Pro
Java 1.6.0_06

erstellt am: 14. Mrz. 2007 09:45    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

So, ich hab jetzt erstmal per Hand 2-3mal regeneriert und danach die Jlink-Funktion ausgeführt. Jetzt erscheint die Meldung erstmal nichtmehr.
Aber das ist trotzdem dumm, denn einen Anwender bringt so eine Meldung in der Programmabarbeitung bestimmt aus dem Konzept?!
Zumal ich diese automatische Regenerierung anwenden will, nachem per Jlink einige Parameter neu gesetzt wurden und danach geht die Programmabarbeitung ja noch weiter!

Kann mann das nicht abschalten oder evtl. so gestalten, dass so oft automatisch von allein regeneriert wird, bis diese Fehlermeldung ihre Gültigkeit verliert? (Ich hoffe, die Frage ist verständlich ausgedrückt    )

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

anagl
Ehrenmitglied V.I.P. h.c.
 


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

Beiträge: 4566
Registriert: 28.05.2001

CREO2 M140
PDMLink 10.2 M020
HW diverse
Das Schreiben bei CAD.de ist freiwillig und kein Muss !!!!!

erstellt am: 14. Mrz. 2007 09:55    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 magic_halli 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von magic_halli:
Kann mann das nicht abschalten oder evtl. so gestalten, dass so oft automatisch von allein regeneriert wird, bis diese Fehlermeldung ihre Gültigkeit verliert? (Ich hoffe, die Frage ist verständlich ausgedrückt     )

Frage ist verständlich
1. Ich würde abklären warum mehrere Regen-Läufe nötig sind
2. Wenn 1.ja dann solange regenerieren bist du diese Exception nicht mehr hast
3.Abschalten macht doch keinen Sinn und ist nach meinen Kenntnisstand auch nicht möglich

------------------
Servus
Alois

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

magic_halli
Mitglied



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

Beiträge: 361
Registriert: 03.07.2006

WF2 M210 / WF3 M110
Linux Fedora C4
WinXP Pro
Java 1.6.0_06

erstellt am: 14. Mrz. 2007 10:10    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

Wenn diese Meldung nicht abzuschalten geht, kann ich dass dann wenigstens irgendwie machen, dass nicht diese Meldung ausgeworfen wird, sondern ein nutzerfreundlicher Text ala: "Bitte regenerieren Sie!"???

Oder noch besser:
Kann ich auswerten, ob eine/diese Exception geworfen wurde? Mal in Worten ausgedrückt:
Wenn meine Funktion regenerateModel() eine Exception wirft (z.B. true/false abfragen), dann führe diese Funktion erneut aus.
Wäre sowas evtl. zu realisieren?

[Diese Nachricht wurde von magic_halli am 14. Mrz. 2007 editiert.]

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

magic_halli
Mitglied



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

Beiträge: 361
Registriert: 03.07.2006

WF2 M210 / WF3 M110
Linux Fedora C4
WinXP Pro
Java 1.6.0_06

erstellt am: 14. Mrz. 2007 14:47    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

So, ich hab jetzt als quasi Übergangslösung erstmal den Text der Message geändert, damit ein User auch weiß, was das bedeuten soll.


Eine endgültige, von mir angestrebte Lösung ist jedoch die, dass ich einen Regenerierungsablauf hinbekomme, der erkennt, ob eine BG nochmal regeneriert werden muss.
Dieser soll solange laufen, bis die BG vollständig regeneriert ist.

Kann man das mit Jlink realisieren?
Hat schonmal jemand sowas gemacht, oder davon gehört?

Gruß.

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

magic_halli
Mitglied



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

Beiträge: 361
Registriert: 03.07.2006

WF2 M210 / WF3 M110
Linux Fedora C4
WinXP Pro
Java 1.6.0_06

erstellt am: 14. Mrz. 2007 15:32    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

  Ich habs gelöst, dass solange regeneriert wird, bis es nichts mehr zu regenerieren gibt! Ist eigentlich total einfach, aber eben erstmal drauf kommen 
Ich habe eine Funktion, die ein Model regeneriert und diese ruft sich rekursiv im Fehlerfalle auf:
Code:

public void regenerateModel(Model model) throws Exception{
  try{
      RegenInstructions inst = pfcSolid.RegenInstructions_Create(new Boolean(false), null, null);
      Solid solid = (Solid) model;
      solid.Regenerate(inst);
  }catch(Exception err){
      //im Fehlerfalle rekursiver Aufruf:
      regenerateModel(model);
  }
}

So it works...

Gruß

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

bilch
Mitglied



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

Beiträge: 78
Registriert: 01.02.2005

erstellt am: 15. Mrz. 2007 08:03    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 magic_halli 10 Unities + Antwort hilfreich

Super Endlosschleife!

Wenn irgendein Fehler auftritt (Welcher auch immer), dann soll sich die Funktion rekursiv aufrufen.

Code:
}catch(Exception err){

Schon mal darüber nachgedacht, das es noch andere Fehler gibt?
Wie wär es denn damit?
Code:

} catch (XToolkitRegenerateAgain err) {
  regenerateModel(model);
  /*
    Ich würde hier noch eine Exception werfen,
    wenn mehr als 4 mal regeneriert wird. (Stichwort Endlosschleife).
  */
} catch (Exception x) {
  // TODO: Warnung "x" ausgeben, damit man weiß was schief gelaufen ist.
}

Ich halte es auch für bedenklich, wenn man Fehlermeldungen verwirft.

Gruss.

------------------
"Ich will keine neuen Kommunikationsmittel. Ich will neue Technologien, mit denen ich die Leute davon abhalten kann, mit mir zu kommunizieren." Dilbert.

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

magic_halli
Mitglied



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

Beiträge: 361
Registriert: 03.07.2006

WF2 M210 / WF3 M110
Linux Fedora C4
WinXP Pro
Java 1.6.0_06

erstellt am: 15. Mrz. 2007 09:47    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

Danke, Du hast recht mit der Endlosschleife...

Du wirst es kaum glauben - die selben Gedanken sind mir heute früh auch durch den Kopf geschossen!
Ich mache das jetzt so, dass einfach ein Parameter "Regenerieren" (Boolean) angelegt wird. Wenn dieser z.B. true oder gar nicht gesetzt ist (vom Konstrukteur), dann wird ganz normal rekursiv regeneriert bis von selbst Schluss ist, ansonsten maximal 10 mal rekursiv regenerieren.
Der Parameter wird vom Konstrukteur angelegt. Die Konstrukteure haben mir hier gesagt, dass sie ganz genau wissen, ob man eine BG endlos regenerieren könnte - wegen irgendwelchen Sachen in den Beziehungen (kenne mich da nicht so aus). Von daher sollte das erstmal soweit alles abgefangen sein.

Gruß

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