Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  NX Programmierung
  workpart.expressions.toarray() - kurz vor dem Ziel

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:  workpart.expressions.toarray() - kurz vor dem Ziel (1393 mal gelesen)
Konrad
Mitglied
 


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

Beiträge: 53
Registriert: 02.05.2001

Version NX 5, NX 6, NX 7

erstellt am: 29. Okt. 2007 15: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 noch einmal........

Jetzt steh ich kurz vor dem Ziel, doch wieder mal mit aller Kraft auf dem Schlauch  ....
Ich möchte alle im Workpart vorhandenen Ausdrücke prüfen und brauche dazu alle Ausdrucksbenennungen.
NXopen bietet dazu:

Workpart.expressions.toarray()as expression

Mit UBound(Testarray) bekomme ich auch die korrekte Anzahl der Elemente (314), füge ich einen Ausdruck hinzu, erhöht sich die Zahl auch um eins.
Mit Testarray.rank kann ich auch abfragen, dass es sich wirklich um ein 1-dimensionales Array handelt.

Offensichtlich sind alle Elemente des Arrays vom Typ NXOpen.Expression

Wie kann ich jetzt aus den Elementen des Arrays die Ausdrucksbenennung auslesen ???????

Es winken leider nur Ü's, würde gerne mit einer guten Flache Wein winken 

Vielen Dank für einen Tip!

mfg
Konrad

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

SysRAdmin
Mitglied
SysAdmin


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

Beiträge: 39
Registriert: 05.12.2006

erstellt am: 29. Okt. 2007 17:26    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 Konrad 10 Unities + Antwort hilfreich

Hallo Konrad,
ich würds so machen:

Dim s As Session = session.GetSession
Dim teil As part=s.Parts.Work
Dim expressi() as expression = teil.Expressions.ToArray
Dim expresso as expression
Dim i as integer
Dim ausdruck as string
for i = 1 to expressi.length-1
expresso=expressi(i)
ausdruck=expresso.equation
next

Dann hast Du in ausdruck die Benennung und die Formel.

Mit

dim teilausdruecke() as string = ausdruck.split("=")

teilst Du Dir dann den String einfach und hast in
teilausdruecke(0) die Benennung und in
teilausdruecke(1) die Formel.

Und mit expresso.value kriegst Du den Wert.

Flasch Wein ist nicht nötig, aber vielleicht weißt Du ja wie man ID-Symbole mit Journal erzeugt und kannst mir dabei helfen 

MfG
Chris

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



Projektingenieur ? Wasserwirtschaft (m/w/d)
Im Auftrag der Zukunft ? Seit über 40 Jahren arbeiten wir als Experten für Wasserwirtschaft und Umwelttechnik. Unsere Kompetenzen konnten wir in mehr als 1000 erfolgreich abgeschlossenen Projekten stetig erweitern. Neben unserem wissenschaftlichen Hintergrund schätzen unsere Auftraggeber vor allem auch unsere tiefgreifenden praktischen Erfahrungen. Denn Wirtschaftlichkeit und Termintreue sind für unsere Kunden und uns ebenso wichtige Faktoren wie Innovation und Technik....
Anzeige ansehenProjektmanagement
Konrad
Mitglied
 


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

Beiträge: 53
Registriert: 02.05.2001

Version NX 5, NX 6, NX 7

erstellt am: 30. Okt. 2007 13:05    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

erst mal vielen Dank für den Tip!

habs aber in der Zwischenzeit noch etwas eleganter gelöst (ein Schnipsel daraus):

    Dim expression2 as NXOpen.expression
     
    AllExpressions = workPart.Expressions.ToArray()

        For i = 0 To UBound(AllExpressions)

            expression2 = AllExpressions(i)
           
            session.ListingWindow.WriteLine(expression2.Name)
        Next

Trotzdem vielen Dank!

mit dem ID-Symbol werde ich mich bei Gelegenheit am Wochenende mal beschäftigen!

mfg
K.

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