Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Parameter aus Part in TitleBlock-Editor/ Fehler beim Ändern der Parameter

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 aus Part in TitleBlock-Editor/ Fehler beim Ändern der Parameter (1141 mal gelesen)
AndreeX00X
Mitglied
Ingenieur


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

Beiträge: 48
Registriert: 14.08.2007

CATIA V5 R16

erstellt am: 17. Aug. 2007 13:01    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 habe mir mit VB und parallel dazu mit CATScript ein Macro erstellt, welches im Part (später soll dass auch im Product so laufen) Parameter im Strukturbaum erstellt, in denen ich Werte eintragen kann und die ich dann später im Draw ins Schriftfeld übertragn möchte.

Das mit dem Erstellen und Ändern der Parameter klappt auch soweit alles ganz wunderbar.

Nun habe ich angefangen mein Draw zu bearbeiten, in dem ich den TitleBlock-Editor verwende. Ich bin nun soweit, dass ich die selbst von Hand erstellten Parameter in den Eigenschaften/Properties (das sind nicht die Parameter, die das Macro erzeugt) ins Schriftfeld einlesen kann, jedoch bei den Parametern wie Teilenummer, Nomenklatur usw. klappt das nicht so recht. Die Felder im Editor sind zwar gelb hinterlegt, aber bei Teilenummer z.B. steht immer nur "K" und nicht das, was im Part im Strukturbaum bzw. in den Eigenschaften steht. Woran liegt das, ich habe mich eigentlich an die Anleitung gehalten.

Dann habe ich noch eine zweite Frage. Da es ja nun eigentlich schöner ist alle Parameter für das Schriftfeld in den Eigenschaften/Properties zu haben, habe ich mir gedacht, dass ich mein oben erwähntes Macro umschreibe, um damit dann an die Daten in den Eigenschaften zu kommen.

Das habe ich dann mit dem Makrorekorder machen wollen. Das Anlegen der Extra-Parameter funktioniert auch ganz wunderbar. Aber das Ändern nicht.

Beim Vergleich mit meinem bereits bestehenden Macro ist eigentlich kaum ein Unterschied außer dem Pfad festzustellen:

Funktionierendes Macro bei dem die Daten in den Parametern im Strukturbaum eingelesen werden.

Code:

Sub CATMain()

Dim partDocument1 As Document
Set partDocument1 = CATIA.ActiveDocument

Dim part1 As Part
Set part1 = partDocument1.Part

Dim parameters1 As Parameters
Set parameters1 = part1.Parameters
Dim strParam1 As Parameter
Set strParam1 = parameters1.Item("Erstellt_durch")
strParam1.Value = "Student"

Dim parameters2 As Parameters
Set parameters2 = part1.Parameters
Dim strParam2 As Parameter
Set strParam2 = parameters2.Item("Ausgabedatum")
strParam2.Value = "12.01.2007"

usw. ...


Nicht funktionierendes Macro , bei dem die Daten in den selbsterstellten Parametern der Eigenschaften eingelesen werden.

Code:

...

Dim part1 As Part
Set part1 = partDocument1.Part

Dim parameters1 As Parameters
Set parameters1 = part1.Parameters
Dim strParam1 As Parameter
Set strParam1 = parameters1.Item("Kasten\Eigenschaften\Erstellt")
strParam1.Value = "Student"

Dim parameters2 As Parameters
Set parameters2 = part1.Parameters
Dim strParam2 As Parameter
Set strParam2 = parameters2.Item("Kasten\Eigenschaften\Genehmigt")
strParam2.Value = "Ausbilder"

...


Ich verstehe nun nicht, warum es bei dem ersten funktioniert und bei dem zweiten nicht. Weiterhin kann ich mir auch nicht wirklich vorstellen, dass der Pfad beim zweiten Code-Ausschnitt so richtig ist, da dass Macro für jeden Part bzw. später auch Product funktionieren soll.

Ich habe auch schon in die V5Automation geschaut, da finde ich aber nicht wirklich ein Lösung für mein Problem, da ich wohl auch nicht weiß wo drunter ich genau schauen muss.

Kann mir das bitte einer erklären was dadran falsch ist und mir vielleicht auch eine Lösung geben?

Danke im Vorraus.

Gruss A.

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

Lusilnie
Mitglied



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

Beiträge: 1486
Registriert: 13.07.2005

erstellt am: 18. Aug. 2007 01: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 AndreeX00X 10 Unities + Antwort hilfreich

Hallo AndreeX00X,

um die Parameter in den Properties zu ändern, sollte die Zeile wie folgt lauten:

Code:
Set strParam1 = partDocument1.Product.ReferenceProduct.Item("Erstellt_durch")
Die erste Frage verstehe ich um diese Uhrzeit nicht mehr, vielleicht morgen...


mfg,
Lusilnie

------------------

Alle Aussagen zu DassaultSystemes-Produkten sind sehr optimistisch, selbst diese!!!

frei nach größeren Geistern

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

AndreeX00X
Mitglied
Ingenieur


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

Beiträge: 48
Registriert: 14.08.2007

CATIA V5 R16

erstellt am: 18. Aug. 2007 16:42    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 Lusilnie

Danke für deine Lösung, jedoch hat es damit nicht so recht geklappt. Ich habe es aber trotzdem hinbekommen, nachdem ich mal ein wenig rumprobiert habe, wo der Fehler liegen könnte. Nachdem ich ReferenceProduct durch UserRefProperties ersetzt hatte (Zeile habe ich unten nochmal hingeschrieben), hat es dann genau so funktioniert, wie ich es haben wollte.

Code:

Set strParam1 = partDocument1.Product.UserRefProperties.Item("Erstellt")

Bei meiner oberen Frage muss ich zugeben, dass ich micht nicht so wirklich gut ausgedrückt habe, was ich eigentlich will.

Also:

Ich möchte meine Daten, die ich im Part erzeugt und eingegeben habe (über dieses gewisse Macro, welches jetzt so schön funktioniert) in einem Draw in das Schriftfeld übertragen, und später gewisse Daten in eine Stückliste (nicht die von CATIA erstellt) übertragen.

Ich hatte zuerst einen von CATIA mitgelieferten Rahmen mit Schriftfeld (Drawing_Titleblock_Sample1) nach meinen Bedürfnissen umgeschrieben. Der Rahmen und das Schriftfeld wurden auch immer erzeugt, wie es sein sollte. Jedoch habe ich keine Verknüpfung zu den Daten, die im Part eingegeben wurden, bekommen. Wenn das irgenwie möglich wäre, wäre das recht interessant zu wissen wie!!!

Dann habe ich das ganze nochmals mit dem Title Block Editor versucht und das Ergebnis war so, dass der Rahmen mit Schriftfeld, so wie es sein sollte erzeugt wird, und durch ein paar Veränderungen in der Datei title_block_config.tcl auch die von mir selbst erzeugten Parameter und auch die vorhandenen Parameter aus den Eigenschaften in das Schriftfeld übernommen wurden. Jedoch sind die Daten von TitleBlock_Text_Number ..._Nomenclature und so, nicht in das Schriftfeld eingefügt worden, sondern immer nur irgend etwas anderes. Ich habe den Fehler aber jetzt gefunden. Meine Eintragungen waren nicht ganz so korrekt gewesen.

Gibt es eigentlich die Möglichkeit bestimmte Felder zu sperren, so das man von TitleBlockEditor nicht drauf zugreifen kann? Z.B, dass die Blattanzahl angezeigt wird aber nicht manuell verändert werden kann.

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

Lusilnie
Mitglied



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

Beiträge: 1486
Registriert: 13.07.2005

erstellt am: 19. Aug. 2007 18:31    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 AndreeX00X 10 Unities + Antwort hilfreich

Hallo AndreeX00X,

sorry, es war wohl doch schon spät! Ich habe einfach das von Dir nun gefundene UserRefProperties vergessen, es sollte natürlich so lauten:

Code:
Set strParam1 = partDocument1.Product.ReferenceProduct.UserRefProperties.Item("Erstellt")
Was Deine anderen Fragen angeht:

1.) Ja, man kann einem Text mit einer Variable verknüpfen, z.B:

Code:
MyText.InsertVariable 0, 0, iParameter
Der Parameter muss natürlich im Drawing existieren, d.h. angelegt werden. Um ihn mit den Properties-Parametern von Part oder Product so zu verknüpfen, das er sich auch updated, muss man ihn dort publizieren. Wie das alles im Script funktioniert, weiss ich im Einzelnen aber gerade nicht.
2.) Zum TitleBlockEditor kann ich Dir leider nichts sagen, vielleicht greift aber auch dort das oben Gesagte.


mfg,
Lusilnie

------------------

Alle Aussagen zu DassaultSystemes-Produkten sind sehr optimistisch, selbst diese!!!

frei nach größeren Geistern

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