| | |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX |
| | |
 | Warum Siemens NX in der Holzindustrie?, eine Pressemitteilung
|
|
Autor
|
Thema: Sortieren mit GRIP? (703 mal gelesen)
|
Billyboy Mitglied Projektleiter, 3D- Designer
 
 Beiträge: 121 Registriert: 11.09.2003 Windows XP SP3 (32 bit) NX4 ProE WF4
|
erstellt am: 04. Feb. 2005 22:16 <-- editieren / zitieren --> Unities abgeben:         
Hallo, ich sollte eine Liste (Text- Datei) von Expressions sortieren. Das klappt mit dem SORT- Befehl auch soweit, nur dass die Sortierung an sich nicht das bringt, was ich haben müsste. Beispielsweise: Ist- Werte: p0 p1 p10 p11 p12 p2 p20 p21 p3 p4 Soll- Werte: p0 p1 p2 p3 p4 p10 p11 p12 p20 p21 Ich habe schon einen halben Tag recherchiert und komme nicht weiter. Einen eigenen Sortier- Algorithmus möchte ich nicht erfinden, das haben vor mir schon tausend kluge Köpfe getan. Wer kann mir helfen? Bin für jeden Tipp dankbar! ------------------ Bye - Billyboy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Hermes Mitglied
 
 Beiträge: 311 Registriert: 08.09.2002
|
erstellt am: 05. Feb. 2005 09:56 <-- editieren / zitieren --> Unities abgeben:          Nur für Billyboy
Eine Möglichkeit ohne zu programmieren bieter Excel (ich nehme an dass die Liste UG-Exproessions enthält, z.B. P23=123 - Liste mit in Excel importieren (copy/paste) - Parameter-Nr abspalten [ =MID(B2;2;FIND("=";B2)-2) ] - nach Parameter-Nr nummerisch sortieren Expressions numerisch sortiert p-Nr Expression 0 p0=123 1 p1=345 10 p10=234 11 p11=23 12 p12=111 2 p2=0 20 p20=33 21 p21=12345 3 p3=33 4 p4=666 ------------------ mit freundlichen Grüssen Toni
[Diese Nachricht wurde von Hermes am 05. Feb. 2005 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Billyboy Mitglied Projektleiter, 3D- Designer
 
 Beiträge: 121 Registriert: 11.09.2003 Windows XP SP3 (32 bit) NX4 ProE WF4
|
erstellt am: 06. Feb. 2005 18:32 <-- editieren / zitieren --> Unities abgeben:         
Hi Toni, ja, mit Excel könnte man das lösen. Doch könnte ich die Liste auch aus UG heraus erzeugen lassen (List- Window), speichern und dann weiterverwenden. Denn diese Liste IST sortiert, wenn ich dasselbe aus GRIP mache (EXPORT), dann kommt die Liste unsortiert. Mist. Da das Ganze aber doch mit etwas mehr 'Luxus' arbeiten sollte, muss ich eine Lösung für GRIP finden. Ich habe auch einige Ansätze, doch versprechen die alle viel Arbeit... Und mit zu viel Zeit bin ich im Moment wahrlich nicht gesegnet. Und doch wäre das Programm für mich im Moment (und auch für die Zukunft) sehr nützlich. Mal sehen, vielleicht hat sonst jemand dieses Problem bereits gelöst und kann mir da auf die Schnelle weiterhelfen. Wenn das Proggy dann fertig ist, werde ich es hier zur freien Verfügung reinstellen.
------------------ Bye - Billyboy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
stefan.f Mitglied
 
 Beiträge: 126 Registriert: 03.09.2002
|
erstellt am: 07. Feb. 2005 07:12 <-- editieren / zitieren --> Unities abgeben:          Nur für Billyboy
|
Billyboy Mitglied Projektleiter, 3D- Designer
 
 Beiträge: 121 Registriert: 11.09.2003 Windows XP SP3 (32 bit) NX4 ProE WF4
|
erstellt am: 07. Feb. 2005 08:22 <-- editieren / zitieren --> Unities abgeben:         
Hi Stefan, das Proggy habe ich schon getestet, und eine Menge anderer auch. Bloss haben die alle dasselbe Verhalten wie der GRIP- Sortier- Algorithmus. Diese Sortier- Problematik war doch beim Listen von Verzeichnisinhalten bei Windows lange auch so (wenn ich mich recht erinnere) - bis Windows 2000 waren die Listings entsprechend meinem ersten Beispiel, ab Windows XP gemäss dem zweiten Beispiel. Eine bekannte Problematik! Bloss finde ich da keine Code- Beispiele. Werde mich wohl doch selber da durchwursteln müssen. :-(
------------------ Bye - Billyboy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Hermes Mitglied
 
 Beiträge: 311 Registriert: 08.09.2002
|
erstellt am: 07. Feb. 2005 13:30 <-- editieren / zitieren --> Unities abgeben:          Nur für Billyboy
Zitat: Original erstellt von Billyboy:
... Diese Sortier- Problematik war doch beim Listen von Verzeichnisinhalten bei Windows lange auch so (wenn ich mich recht erinnere) - bis Windows 2000 waren die Listings entsprechend meinem ersten Beispiel, ...
im Windows Explorer kann die Sortierung durch einen Registry Eintrag beeinflusst werden ; http://ww3.cad.de/foren/ubb/Forum158/HTML/000053.shtml ------------------ mit freundlichen Grüssen Toni
[Diese Nachricht wurde von Hermes am 07. Feb. 2005 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Grips Mitglied Techniker
  
 Beiträge: 535 Registriert: 21.09.2004 WIN10 Aktuell TC/NX1973 (NX2306)
|
erstellt am: 08. Feb. 2005 16:36 <-- editieren / zitieren --> Unities abgeben:          Nur für Billyboy
|
Billyboy Mitglied Projektleiter, 3D- Designer
 
 Beiträge: 121 Registriert: 11.09.2003 Windows XP SP3 (32 bit) NX4 ProE WF4
|
erstellt am: 09. Feb. 2005 13:17 <-- editieren / zitieren --> Unities abgeben:         
Lieber Grips, ich habe dein Code- Beispiel mal gecheckt - die Parameter werden wirklich sauber sortiert (pnnn), hingegen die 'customer expressions' (z.B. 'Cutter_Diameter_1') nicht. Doch das ist schon mal ein Anhaltspunkt. Ich werde mich mal durch den Code kämpfen. Vielen Dank! 10 Unities sind auf dem Weg!
------------------ Bye - Billyboy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Grips Mitglied Techniker
  
 Beiträge: 535 Registriert: 21.09.2004 WIN10 Aktuell TC/NX1973 (NX2306)
|
erstellt am: 09. Feb. 2005 14:48 <-- editieren / zitieren --> Unities abgeben:          Nur für Billyboy
Hallo Billboy, hier ein kleiner tip zu dem code. für deine "customer expressions" wirst du dich wohl mit der ASCII tabelle beschäftigen müssen und vor dem blinden "repstr" in line 43..44 die expressions in einen string und eine zahl trennen müssen um danach in zeile 50 u. 52 einen string u. werte vergleich durchzuführen. mfg grips
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Billyboy Mitglied Projektleiter, 3D- Designer
 
 Beiträge: 121 Registriert: 11.09.2003 Windows XP SP3 (32 bit) NX4 ProE WF4
|
erstellt am: 09. Feb. 2005 14:51 <-- editieren / zitieren --> Unities abgeben:         
... ja, da bin ich gerade daran (ASCII- Code 48 ... 57). Ich hoffe, das Proggy wird noch diese Woche fertig, dann werde ich es nach einer Testphase hier veröffentlichen. ------------------ Bye - Billyboy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Grips Mitglied Techniker
  
 Beiträge: 535 Registriert: 21.09.2004 WIN10 Aktuell TC/NX1973 (NX2306)
|
erstellt am: 10. Feb. 2005 09:08 <-- editieren / zitieren --> Unities abgeben:          Nur für Billyboy
hallo billboy  noch eine kurze idee: wenn du schon beim trennen der expression in strings und zahlen bist könntest du diese mit blanks aufgefüllt in zwei reihen übereinander in die datei zurückschreiben. danach würde auch der grip sort/ befehl das richtige ergebnis liefern. nach dem sort die blanks wieder eliminieren. was vorallem bei großen datenmengen viel schneller laufen würde. gruß grips Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Billyboy Mitglied Projektleiter, 3D- Designer
 
 Beiträge: 121 Registriert: 11.09.2003 Windows XP SP3 (32 bit) NX4 ProE WF4
|
erstellt am: 10. Feb. 2005 09:21 <-- editieren / zitieren --> Unities abgeben:         
Hi Grips, ja genau, auf diese Idee bin ich auch gekommen und habe sie mit dem GRIP- SORT- Befehl getestet. Bloss habe ich keine Blanks sondern Nullen verwendet: p1 p10 p100 werden zu: p001 p010 p100 Nach dem SORT dann die führenden Nullen wieder entfernen. Wie immer, es führen viele Wege nach Rom... Danke für die Hilfe!
------------------ Bye - Billyboy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |