Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  CATIA V5 Programmierung
  Keinen Zugriff auf UserRefProperties

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 CATIA & Co.
  
KISTERS 3DViewStation mit neuer Zerschneidefunktionen und erweitertem PMI-Support, eine Pressemitteilung
Autor Thema:  Keinen Zugriff auf UserRefProperties (1301 mal gelesen)
MakroNovize
Mitglied
Konstrukteur, CAD-Admin


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

Beiträge: 60
Registriert: 20.07.2009

Windows XP SP3
CATIA V5 R18
Xeon 2x 3Ghz
3Gb RAM
NVIDIA Quadro FX 3450

erstellt am: 03. Aug. 2009 15:58    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


watch_UserRefProperties.JPG

 
Hallo an alle Hilfswilligen!!!

Ich möchte die benutzer definierten Properties auslesen. Dazu verwende ich erstens folgenden Algorithmus zum Analysieren der Baugruppe:
*****************************************
Function Analysieren(P As Product)

Dim PP As Products
Dim i As Integer

Call Schreiben(P, iArZ)

Set PP = P.Products
i = 0
Do While i < PP.Count
   i = i + 1
   Call Analysieren(PP.Item(i))
Loop
*****************************************

und mit folgenden Befehlen versuch ich die Daten in ein Array zu schreiben:

*****************************************
Function Schreiben(P, iArZ)
Dim URP As Object
Dim oPar As Object

iArZ = iArZ + 1
Set URP = P.UserRefProperties

ReDim Preserve aProps(6, iArZ - 1)

Set oPar = URP.GetItem("ZEICHNUNGSNUMMER")
aProps(0, iArZ - 1) = oPar.Value
*****************************************

Das merkwürdige daran ist, dass es beim Hauptprodukt funtioniert. Nur bei den Unterprodukten und Teilen fehlt irgendwie der Zugriff auf die UserRefProperties. Im Anhang seht ihr das Watch Fenster und die Ausgabe, das blau Markierte! Das kommt beim ersten Teil nachdem das Hauptprodukt ausgelesen wurde.

Ich hoffe ich konnte meine Problematik genau genug erklären und ihr könnt mir weiterhelfen.

------------------
Grüße

Christoph

*************************************************
Die Katia am Morgen, bringt dir reichlich Sorgen!

[Diese Nachricht wurde von MakroNovize am 05. Aug. 2009 editiert.]

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

DanielFr.
Ehrenmitglied V.I.P. h.c.
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 03. Aug. 2009 21: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 MakroNovize 10 Unities + Antwort hilfreich

Hallo Christoph,

Zitat aus der V5Automation.chm

Returns the collection object containing the product properties. All the user defined properties that are created in the reference product might be accessed through that collection.
Only available on reference products.

Das heißt du musst dir das ReferenceProduct Objekt instanzieren. Dort sind die UserRefProperties für Parts und Unterprodukte eines Rootprodukts verfügbar

Hier mal ein Beispielcode:

Code:
Sub CATMain()

    Dim oDoc As Document
    Dim oRoot As Product
    Dim oProds As Products
    Dim myAktiProd As Product
    Dim myRefProduct As Product
    Dim myRootUserRefs As Parameters
    Dim myPartUserRefs As Parameters
   
    Set oDoc = CATIA.ActiveDocument
    Set oRoot = oDoc.Product
    'Auslesen der UserRefProperties des Root-Produkts
    Set myRootUserRefs = oRoot.UserRefProperties
   
    Set oProds = oRoot.Products
    For i = 1 To oProds.Count
        Set myAktiProd = oProds.Item(i)
        Set myRefProduct = myAktiProd.ReferenceProduct
        'Hier werden die UserRefProperties von Parts und Untreprodukten ausgelesen
        Set myPartUserRefs = myRefProduct.UserRefProperties
    Next


End Sub


------------------
MFG Daniel

Die KATJA ist halt doch nur ne zickige Französin

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

MakroNovize
Mitglied
Konstrukteur, CAD-Admin


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

Beiträge: 60
Registriert: 20.07.2009

Windows XP SP3
CATIA V5 R18
Xeon 2x 3Ghz
3Gb RAM
NVIDIA Quadro FX 3450

erstellt am: 04. Aug. 2009 08:13    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

Hi Daniel,

danke das klappt einwandfrei. Da wär ich als Anfänger nie drauf gekommen. Echt super
       

Riesen Dank nochmals!!!!

------------------
Grüße

Christoph

*************************************************
Die Katia am Morgen, bringt dir reichlich Sorgen!

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

DanielFr.
Ehrenmitglied V.I.P. h.c.
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 04. Aug. 2009 08: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 MakroNovize 10 Unities + Antwort hilfreich

Hallo,

naja vielleicht hättest du die V5Automation.chm befragen können. Aber ich geb schon zu die ist für einen Anfänger teilweise noch kryptischer wie der Code selber 

------------------
MFG Daniel

Die KATJA ist halt doch nur ne zickige Französin

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

MakroNovize
Mitglied
Konstrukteur, CAD-Admin


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

Beiträge: 60
Registriert: 20.07.2009

Windows XP SP3
CATIA V5 R18
Xeon 2x 3Ghz
3Gb RAM
NVIDIA Quadro FX 3450

erstellt am: 04. Aug. 2009 08: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

Da es meine Bachelorarbeit ist bin ich bemüht eigentlich alles selber herbeizuzaubern, aber in diesem Fall ging nix. Ich hätte das jetzt dann irgendwie anders versucht. Dann wär das Programm aber wohl unnötig riesig geworden. Deswegen bin ich dir so dankbar ;-)

------------------
Grüße

Christoph

*************************************************
Die Katia am Morgen, bringt dir reichlich Sorgen!

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)2025 CAD.de | Impressum | Datenschutz