| 
|  |  |  |  | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Creo |  |  |  |  |  | Online-Kurs: Grundlagen des 3D-Druck-Designs für Industrieingenieure , ein Kurs 
 |  
| Autor | Thema:  zeichenketten(namen) in berichten auswerten (1259 mal gelesen) |  | jossif Mitglied
 Ingenieurskünstler
 
  
 
      Beiträge: 43Registriert: 24.01.2004
 seit V20 mit an Board |    erstellt am: 25. Mrz. 2004 12:54  <-- editieren / zitieren -->    Unities abgeben:            
  Hi ProEngineers! Ich möchte Baugruppennamen in einem Bericht auswerten. Beispielsweise soll die Komponente namens "HALTERUNG_X12Y05" eine Ausgabe von "X12" bewirken. Klar, dass ich dazu mit String-Funktionen arbeiten muss, aber sobald ich asm_mbr_name an eine zeichenkette übergebe funktioniert nix mehr. Ein Bug? (arbeite noch mit 2001) Folgende Beziehung ergibt für <auszug> "X12"    name="HALTERUNG_X12Y05"auszug=extract(name,search(name,"X"),3)
 Jedoch ergibt diese Beziehung nur eine Fehlermeldung!    (&asm.mbr.name ergibt "HALTERUNG_X12Y05")
    name=asm_mbr_nameauszug=extract(name,search(name,"X"),3)
 Ich habe schon alles probiert, die Hilfe durchsucht und das Forum nach Ähnlichem durchstöbert - immer noch keine Ahnung... EDIT: Habe festgestellt, dass "nur" der "search"-Befehl in diesem Fall nicht zieht... Warum auch immer!!!Obwohl... interessieren tut es mich immer noch brennend!!!
      bitte, bitte löschen! regards - jossif [Diese Nachricht wurde von jossif am 25. Mrz. 2004 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |  | jossif Mitglied
 Ingenieurskünstler
 
  
 
      Beiträge: 43Registriert: 24.01.2004
 seit V20 mit an Board |    erstellt am: 29. Mrz. 2004 02:34  <-- editieren / zitieren -->    Unities abgeben:            
  Hmmmm... ...hat keiner zumindest eine Ahnung, woran es, ausser an einem Bug, noch liegen könnte? Was kommt denn alles in Frage, was habe ich vielleicht falsch gemacht? Will der Pudel denn dieses Mal gar keinen Kern haben? Bin für jeden kleinen Fetzen Lösungsansatz dankbar! - jossif Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |  | jossif Mitglied
 Ingenieurskünstler
 
  
 
      Beiträge: 43Registriert: 24.01.2004
 seit V20 mit an Board |    erstellt am: 30. Mrz. 2004 06:50  <-- editieren / zitieren -->    Unities abgeben:            
  Ok, da anscheinend nun wirklich niemand hier den leisesten Schimmer hatte, warum <search> in Verbindung mit asm_mbr_name nicht funktionieren will oder soll(?!)   , habe ich das total bescheuerte Problem nun mal ganz vulgär gelöst: /* bez=Bezeichnung (max. Länge 24)/* bezpur=zu filternder Bereich (soll mit "X" beginnen und eine Stelle vor "Y" enden)
 bez=asm_mbr_name
 /* falls sich kein Anfang findet:
 bezpur=bez
 /* und auf gehts...
 if string_length(bez)>1
 if extract(bez,1,1)=="X"
 bezpur=bez
 else
 bez=extract(bez,2,string_length(bez)-1)
 endif
 if extract(bez,1,1)=="Y"
 bezpur=extract(bezpur,1,string_length(bezpur)-string_length(bez))
 bez="_"
 endif
 endif
 if string_length(bez)>1
 if extract(bez,1,1)=="X"
 bezpur=bez
 else
 bez=extract(bez,2,string_length(bez)-1)
 endif
 if extract(bez,1,1)=="Y"
 bezpur=extract(bezpur,1,string_length(bezpur)-string_length(bez))
 bez="_"
 endif
 endif
 if string_length(bez)>1
 if extract(bez,1,1)=="X"
       bezpur=bezelse
 bez=extract(bez,2,string_length(bez)-1)
 endif
 if extract(bez,1,1)=="Y"
 bezpur=extract(bezpur,1,string_length(bezpur)-string_length(bez))
 bez="_"
 endif
 endif
 .
 .
 .
 insgesamt 24 mal, oder auch mehr (je nach max.Länge). Geschwindigkeit leidet aber spürbar bei umfangreichen Baugruppen!
 Warum gibt es eigentlich keine Möglichkeit für Schleifen??? Soll man dafür etwa C++ bemühen??? Aber zum Glück gibt's noch APFEL+V! Bill Gates sei dank!!!   Wirklich ein sehr einsames Thema, aber vielleicht hilft es ja in den nächsten Jahren noch mal jemand Anderem... Also viel Spass damit, unbekannter Kamerad!
  Dein Leupen-Macher
  - jossif
 [KEYWORDS: search extract string_length &asm.mbr.name asm_mbr_name pro/report wiederholbereich wiederholbereiche bericht berichte buggy bug bugs *!#*!!*#*!!***nochmal!!!] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |  | Stahl Mitglied
 unbeschreiblich
 
     
 
      Beiträge: 1475Registriert: 30.01.2001
 |    erstellt am: 30. Mrz. 2004 09:40  <-- editieren / zitieren -->    Unities abgeben:           Nur für jossif   
  Hi! Also der Grund, warum zB ich nicht auf den Artikel geantwortet hab, war "bitte, bitte löschen! regards - jossif". Da dachte ich das Problem hätte sich von selbst erledigt und man solle den Thread löschen...   Warum search() innerhalb von Pro/Report Beziehungen nicht geht, weiß ich nicht. Sieht irgendwie richtig aus, wie du es schreibst.Aber ich hätte eine Alternative anzubieten. Nämlich eine Beziehung in den jeweiligen Teilen.
 name=rel_model_name()
 auszug=extract(name,search(name,"X"),3)
 Und im Wiederholbereich &asm.mbr.auszug anzeigen lassen...   Beziehungen kann man zB über das sBatch Tool von Spekan super nachträglich in Teile einbringen. Man muss es nur schaffen, ein Mapkey aufzuzeichen, welches das kann. Und mit NEW_RELATION_UI  NO und "#Beziehung#Hinzufügen" (anstatt editieren) schafft mans. Ich hab das schon mal gemacht.
 Stahl.
 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |  | jossif Mitglied
 Ingenieurskünstler
 
  
 
      Beiträge: 43Registriert: 24.01.2004
 seit V20 mit an Board |    erstellt am: 30. Mrz. 2004 12:32  <-- editieren / zitieren -->    Unities abgeben:            
  Hi Stahl! Super! Danke für Deine Antwort, Stahl. Mit löschen war eigentlich mein -damals- erhitztes Gemüt gemeint... Irgendwie habe ich hier deshalb auch nicht den freundlichsten Eindruck gemacht, was die allgemeine Zurückhaltung ja auch erklären könnte. Bin halt etwas temperamentvoll, aber glaubt es mir bitte - trotzdem ein Menschenfreund!    regards - jossif Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |  | arni1 Ehrenmitglied V.I.P. h.c.
 
 
       
 
      Beiträge: 4038Registriert: 17.12.2002
 Pro/E seit Version 11Creo11
 DELL precision 3680
 Intel Core i5 3.5GHz
 64 GB RAM
 NVIDIA RTX 4000
 HP ZR30w
 Win11
 |    erstellt am: 03. Mrz. 2015 11:59  <-- editieren / zitieren -->    Unities abgeben:           Nur für jossif   |  | NicoFTB Mitglied
 Ingenieur Entwicklung/Konstuktion
 
    
 
      Beiträge: 806Registriert: 08.05.2012
 |    erstellt am: 03. Mrz. 2015 12:16  <-- editieren / zitieren -->    Unities abgeben:           Nur für jossif   |  | arni1 Ehrenmitglied V.I.P. h.c.
 
 
       
 
      Beiträge: 4038Registriert: 17.12.2002
 Pro/E seit Version 11Creo11
 DELL precision 3680
 Intel Core i5 3.5GHz
 64 GB RAM
 NVIDIA RTX 4000
 HP ZR30w
 Win11
 |    erstellt am: 03. Mrz. 2015 12:52  <-- editieren / zitieren -->    Unities abgeben:           Nur für jossif   |  | Anzeige.:
 Anzeige: (Infos zum Werbeplatz >>)
  |