Hot News:
   

Mit Unterstützung durch:

  Foren auf CAD.de
  CATIA V6
  UserRefProperties in 3DExperience

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Kreisbogenmessung mit der KISTERS 3DViewStation - Videotutorial, ein Anwenderbericht
Autor Thema:  UserRefProperties in 3DExperience (33 mal gelesen)
Lionel Hutz
Moderator



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

Beiträge: 514
Registriert: 26.03.2014

CATIA V5 R20 und höher
3DExperience R2022

erstellt am: 01. Sep. 2026 10:34    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 auf spezifisch hinzugefügte Properties in meinen zugreifen, genaus so wie dieser Codeschnipsel es in V5 tut.
In welcher Collection sind die in 3DExperience gesammelt?
Code:
Sub CATMain()
    Set oActDoc = CATIA.ActiveDocument
    Set oProduct = oActDoc.Product

    For each oParameter in oProduct.UserRefProperties
        MsgBox oParameter.Name & " (Type: " & TypeName(oParameter) & "): " & oParameter.ValueAsString 'oder nur Value
    Next

End Sub



Copilot hat mir mit diesm Beispiel diesen Code generiert.
Code:
Option Explicit

Sub CATMain()

    Dim oEditor As Editor
    Dim oRoot As VPMRootOccurrence

    Dim oOcc As VPMOccurrence
    Dim oInst As VPMInstance
    Dim oRef As VPMReference

    Dim s As String
    Dim oItem As Object

    Set oEditor = CATIA.ActiveEditor
    Set oRoot = oEditor.ActiveObject

    Set oOcc = oRoot.Occurrences.Item(1)
    Set oInst = oOcc.InstanceOccurrenceOf
    Set oRef = oInst.ReferenceInstanceOf

    s = "Reference Name = " & oRef.Name & vbCrLf & vbCrLf

    On Error Resume Next

    ' Test UserRefProperties
    For Each oItem In oRef.UserRefProperties

        s = s & oItem.Name & _
              " = " & _
              oItem.ValueAsString & vbCrLf

    Next

    If Err.Number <> 0 Then

        s = s & vbCrLf & _
            "UserRefProperties FAILED" & vbCrLf & _
            Err.Number & " - " & Err.Description & vbCrLf

        Err.Clear

    End If

    InputBox "Copy Result", _
            "UserRefProperties Test", _
            s

End Sub



Damit stoße ich auf Error 92 - For loop not initialized, wohl weil es UserRefProperties nicht gibt.

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

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2026 CAD.de | Impressum | Datenschutz