Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Parameter_mit_Eigenschaften_verknüpfen

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
Autor Thema:  Parameter_mit_Eigenschaften_verknüpfen (832 mal gelesen)
Felsen
Mitglied
Formenbau


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

Beiträge: 239
Registriert: 15.06.2004

HP Workstation Z800
3.7GHz
16GB RAM
QuadroFX4600
CATIA V5-6 Release 2016

erstellt am: 20. Sep. 2018 21:24    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

Servus forum,

wie kann ich hier auf die Bauteilnummer zugreifen?
Möchte Parameter und Eigenschaften per Makro miteinander verknüfen.

Language="VBSCRIPT"

Sub CATMain()

Set partDocument1 = CATIA.ActiveDocument

Set part1 = partDocument1.Part

Set relations1 = part1.Relations

Set parameters1 = part1.Parameters

Set strParam1 = parameters1.Item("      wie greif ich hier auf die Bauteilnummer zu?                      \Eigenschaften\BG")

Set formula1 = relations1.CreateFormula("Formel.30", "", strParam1, "Parameter_Stueckliste\BG ")

formula1.Rename "Formel.30"

........

------------------
Habe D`Ehre

Felsen

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 20. Sep. 2018 22:46    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 Felsen 10 Unities + Antwort hilfreich

Servus

Schau dir mal diesen Beitrag an, wie man auf die UserRefProperties  zugreifen kann.

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 26. Sep. 2018 16:16    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 Felsen 10 Unities + Antwort hilfreich

Servus Felsen

Ich hab dir mal einen kleinen Code zu deinem Problem zusammen geschrieben (damit ich in Übung bleib)

Code:
Sub CATMain()

Dim oPartDocument As PartDocument
Dim oParameterSet as ParameterSet
Dim oParameter as Parameter
Dim oUserRefPropertyParameter as Parameter
Dim strFormula as String
Dim oFormula as Formula
Dim i as Integer
Dim sParameterName as String

Set oUserRefPropertyParameter = Nothing

If TypeName(CATIA.ActiveDocument) <> "PartDocument" Then
    MsgBox "No PartDocument opened and active", vbCritical
    Exit Sub
End If

Set oPartDocument = CATIA.ActiveDocument
Set oParameterSet = oPartDocument.Part.Parameters.RootParameterSet.ParameterSets.Item("Stückliste")

for i = 1 to oParameterSet.DirectParameters.Count
    Set oParameter = oParameterSet.DirectParameters.Item(i)
    sParameterName = Right(oParameter.Name, (Len(oParameter.Name) - InStrRev(oParameter.Name,"\")))
    if sParameterName <> "" then   
        Set oUserRefPropertyParameter = GetUserRefPropertiesByName(oPartDocument.Product, sParameterName)
        if Not oUserRefPropertyParameter is Nothing then
            strFormula = oPartDocument.Part.Parameters.GetNameToUseInRelation(oParameter)
            Set oFormula = oPartDocument.Part.Relations.CreateFormula("", "", oUserRefPropertyParameter, strFormula)
        end if
    end if
next

End Sub


Function GetUserRefPropertiesByName(oProduct As Product, ParameterName As String) As Parameter

Dim UserProperties As Parameters
Dim I As Integer

Set UserProperties = oProduct.UserRefProperties

For I = 1 To UserProperties.Count
    If Right(UserProperties.Item(I).Name, Len(ParameterName)) = ParameterName Then
        Set GetUserRefPropertiesByName = UserProperties.Item(I)
        Exit Function
    End If
Next

Set GetUserRefPropertiesByName = Nothing

End Function


Viel Spaß beim nachvollziehen und verbessern.

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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