Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  NX Programmierung
  Wert einer Expression auslesen

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:  Wert einer Expression auslesen (2193 mal gelesen)
Hornauer
Mitglied
 


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

Beiträge: 41
Registriert: 26.01.2001

erstellt am: 15. Dez. 2009 15:29    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 zusammen,
als erstes möchte ich anmerken, das ich Anfänger bin.

So und hier mein Problem.

ich möchte mit VB.Net den Wert einer Expression auslesen.
Dies klappt auch, solange es keine STRINGS sind.

Versuche ich einen String auszulesen, bekomme ich die Meldung:

NXOpen.NXException Datatype error .......


Warum funktioniert der folgende Aufruf mit Zahlenwerten aber nicht mit STRINGS.

Dim expression1 As string = (workPart.Expressions.FindObject("Test").value)


Ich komme einfach nicht weiter.


Danke und Gruß

Rolf

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

little_ug
Mitglied
CAX/PDM Admin / PM


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

Beiträge: 389
Registriert: 20.03.2003

NX 7.5.4.4 mp1
Creo2 M020
TC UA 9.1.1.2

erstellt am: 15. Dez. 2009 16: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 Nur für Hornauer 10 Unities + Antwort hilfreich

Hallo Rolf,
du gehst in deinem Beispiel über den Journal Identifier. Das ist nicht so gut.... (FindObject("Test").value))

Ich würde hier mit einer ExpressionCollection arbeiten. Und dann das element filtern welches du benötigst.

------------------
Gruß

Michael

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

little_ug
Mitglied
CAX/PDM Admin / PM


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

Beiträge: 389
Registriert: 20.03.2003

erstellt am: 15. Dez. 2009 16:23    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 Hornauer 10 Unities + Antwort hilfreich

Bsp mit freundlicher Hilfe von M. Seufert :-)

Hier eine Sub fuer alle expr..

    Private Sub cycle_expressions()
        Dim cnt As Integer
        Dim exprs As ExpressionCollection = wp.Expressions

        lw.WriteLine("------ Expressions in Work Part ------")
        lw.WriteLine("Number".PadLeft(6) & "Name".PadLeft(12) & "Type".PadLeft(8) & "Value".ToString.PadLeft(16) & "Equation".PadLeft(40))

        For Each nx_expr As Expression In exprs
            cnt += 1
            If nx_expr.Type = "Number" Then
                lw.WriteLine(cnt.ToString.PadLeft(6) & nx_expr.Name.PadLeft(12) & nx_expr.Type.PadLeft(8) & nx_expr.Value.ToString.PadLeft(16) & nx_expr.Equation.PadLeft(40))
            Else
                lw.WriteLine(cnt.ToString.PadLeft(6) & nx_expr.Name.PadLeft(12) & nx_expr.Type.PadLeft(8) & nx_expr.StringValue.PadLeft(16))
            End If

        Next nx_expr

        lw.WriteLine("------ End of Listing ------")
    End Sub

------------------
Gruß

Michael

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



Spezialist Advanced Systems (m/w/d)

Möchten Sie mit uns bei PI die Welt verändern, bahnbrechende Möglichkeiten entdecken und unsere Leidenschaft für Technologie teilen?

Kommen Sie zu uns, dem globalen Markt- und Technologieführer im Bereich hochpräzise Positioniertechnik und Piezotechnologie der Marktsegmente Industrielle Automatisierung, Halbleiterindustrie, Photonik sowie Mikroskopie & Life Sciences!

Wir suchen Menschen, ...

Anzeige ansehenMechatronik
Hornauer
Mitglied
 


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

Beiträge: 41
Registriert: 26.01.2001

NX2007
TC13

erstellt am: 15. Dez. 2009 20: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

Hallo little_ug,
danke an Dich und M. Seufert für die schnelle und gute Hilfe.

Die Units sind unterwegs.


Gruß

Rolf

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