Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Eigenschaften ausfüllen per Makro

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:  Eigenschaften ausfüllen per Makro (3741 mal gelesen)
rembit
Mitglied
TZ


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

Beiträge: 30
Registriert: 25.09.2006

WinXP SP2
CatiaV5R16 SP5

erstellt am: 26. Jun. 2009 13: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


Eigenschaften.jpg

 
Hallo.
Brauche dringend Hilfe.
Ich soll bei Eigenschaften das Feld Nomenklatur an das Feld Teilenummer anpassen (übernehmen), und das alles in einem Produkt.
Die Eigenschaften sollen so aussehen: Dateiname=Teilenummer=Nomenklatur=Exsemplarname (+Instanz)siehe Bild. Da es sehr viele Teile sind, ist meine einzige Hoffnung es per Makro hinzubekommen.

Und jetzt Hilfeschrei an die Gemeinde, -Wehr kann mir so etwas empfehlen??????

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

ks-reichle
Mitglied
Konstrukteur


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

Beiträge: 33
Registriert: 06.03.2009

Catia V5-6 Release 2014
Servicepack 4 Build Number 24
Hotfix 33
Dell Precision M6800

erstellt am: 29. Jun. 2009 22: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 rembit 10 Unities + Antwort hilfreich

hi,

probiers mal damit,

ich hab hier noch eine Eingabe für die Revisionsnummer dabei

gruß

klaus

Language="VBSCRIPT"
' Globale Variable definieren (auch für Subroutinen)
Private Eingabe1


' jetzt gehts weiter

Sub CATMain()
Dim myproduct As Product
Set myproduct = CATIA.ActiveDocument.Product

Box = MsgBox(" Nomenklatur wird gleich dem Filename gesetzt", , "Hinweis")

'EingabeBox
Eingabe1 = "Rev 001"
Eingabe1 = InputBox ("Bitte hier Revision (default = Rev 001)", "Revision", Eingabe1)
' Die ganze Produktstruktur wird gescannt
ScanProductStructure myproduct

MsgBox "Alle Nomeklaturen wurden geändert"
End Sub
Sub ScanProductStructure(myproduct2 As Product) ' aus myproduct wird myproduct3
Dim currentprod As Product
Dim ii As Integer

On Error Resume Next

For ii = 1 To myproduct2.Products.Count
Set currentprod = myproduct2.Products.Item(ii)
If currentprod.Products.Count = 0 Then
Err.Clear

'Filename extrahieren und Endung ab . entfernen

Ausgabe = Left(currentprod.ReferenceProduct.Parent.Name, InStrRev(currentprod.ReferenceProduct.Parent.Name, ".") - 1)
currentprod.Revision = ""& Eingabe1 &""
currentprod.Nomenclature = ""& Ausgabe &""

If Err.Number <> 0 Then
End If

Else

ScanProductStructure currentprod.ReferenceProduct

End If

Next
On Error GoTo 0
End Sub

------------------
Klaus

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

Tobi1981
Mitglied
Technischer Zeichner


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

Beiträge: 24
Registriert: 11.09.2008

erstellt am: 13. Jul. 2009 07:52    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 rembit 10 Unities + Antwort hilfreich

Hallo,

ich habe hierzu noch eine Frage, und zwar wenn ich bei Hinzugefügte eigenschaften etwas drin stehen haben will, steht bei mir in der Makroaufzeichnung

Dim strParam1

da ich aber die deutsche Version nutze, wie heißt dieiser befehl im deutschem? Bzw wie sieht ein Makro im deutschem aus, indem auch hinzugefügte Eigenschaften ausgefüllt werden.

Kann das bitte jemand verraten.

Danke, Gruß Tobi

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

zoltan.bekesi
Mitglied



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

Beiträge: 321
Registriert: 22.10.2006

Job:
CATIA V5R19 / XP 32bit
MS Office 2003
Microstation V8 2004 Edition
DELL Precision M6300

erstellt am: 13. Jul. 2009 18:12    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 rembit 10 Unities + Antwort hilfreich

Hallo Tobi,

strParam1 ist einfach eine Variablenname, vermutlich für einen Parameter der Typ String.
Die Makros müssen (erfreulicherweise) nur auf englische Sprache erstellt werden, egal welche Sprachversion man verwendet. Erfreulicherweise, weil man so weniger Kompatibilitätsprobleme hat.
Die Sprachabhängigkeit kommt nur bei DisplayName ins Spiel.

Die zu den Properties hinzugefügte Parameter findest du unter UserRefPropreties Eigenschaft von einen Product.

Gruß,
Zoltan

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

rembit
Mitglied
TZ


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

Beiträge: 30
Registriert: 25.09.2006

WinXP SP2
CatiaV5R16 SP5

erstellt am: 29. Jul. 2009 11:33    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 Klaus,
(bin erst aus dem Urlaub gekommen)
Danke für deine Hilfe.
Das Makro ist sehr gut!!!
Eine Kleinigkeit fehlt mir noch.... Es werden Eigenschaften nur in Parts überprüft, die Produkte bleiben unverändert.
Habe keine Ahnung in Makroprogramierung, arbeite aber  sehr gern damit.
Wehre sehr dankbar wenn mir jemand helfen könnte.

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

ks-reichle
Mitglied
Konstrukteur


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

Beiträge: 33
Registriert: 06.03.2009

Catia V5-6 Release 2014
Servicepack 4 Build Number 24
Hotfix 33
Dell Precision M6800

erstellt am: 30. Jul. 2009 17:47    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 rembit 10 Unities + Antwort hilfreich


Hallo rembit,

Hoffe du hattest nen angenehmen Urlaub.
Ich hatte den Code aus einem Anderen Makro zusammengekürzt, und einen Teil zuviel rausgeworfen.

Hier der richtige.

Grüße

Klaus

Language="VBSCRIPT"
' Globale Variable definieren (auch für Subroutinen)
Private Ausgabe
' jetzt gehts weiter

Sub CATMain()
Dim myproduct As Product
Set myproduct = CATIA.ActiveDocument.Product

Box = MsgBox("Nomenklatur wird gleich dem Filename gesetzt", , "Hinweis")

' Die ganze Produktstruktur wird gescannt
ScanProductStructure myproduct

MsgBox "Alle Nomenklaturen wurden geändert"
End Sub

Sub ScanProductStructure(myproduct2 As Product) ' aus myproduct wird myproduct3
Dim currentprod As Product
Dim ii As Integer
On Error Resume Next

'für CATProducts__________________________________________________________________________

'Filename extrahieren und Endung ab . entfernen

Ausgabe = Left(myproduct2.ReferenceProduct.Parent.Name, InStrRev(myproduct2.ReferenceProduct.Parent.Name, ".") - 1)
myproduct2.Nomenclature = ""&Ausgabe&""

' Für CATPart_____________________________________________________________________________

For ii = 1 To myproduct2.Products.Count
Set currentprod = myproduct2.Products.Item(ii)
If currentprod.Products.Count = 0 Then
Err.Clear

'Filename extrahieren und Endung ab . entfernen
'für alle Parts
Ausgabe = Left(currentprod.ReferenceProduct.Parent.Name, InStrRev(currentprod.ReferenceProduct.Parent.Name, ".") - 1)
currentprod.Nomenclature = ""&Ausgabe&""

If Err.Number <> 0 Then
End If

Else
ScanProductStructure currentprod.ReferenceProduct

End If
Next
On Error GoTo 0
End Sub

------------------
Klaus

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

rembit
Mitglied
TZ


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

Beiträge: 30
Registriert: 25.09.2006

WinXP SP2
CatiaV5R16 SP5

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

Vielen Dank für deine Hilfe.
Es funktioniert
Super!!!

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

Norman Schulz
Mitglied
Konstrukteur Catia V4/V5


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

Beiträge: 300
Registriert: 18.03.2002

V5R19SP9 // V5R20SP7 //V5R24SP5
Lizenz MD2
Lenovo ThinkPad W540
WIN 7 64bit 16GB
Intel i7-4800MQ 2.7GHz

erstellt am: 17. Mrz. 2016 16:47    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 rembit 10 Unities + Antwort hilfreich

Hallo,

ich habe gerade dieses tolle Makro gefunden.
Leider funktioniert es nur (bei mir?) beim erstmaligen Ausfüllen der Nomenklatur.
Ich habe bereits "alte" Bezeichnungen drinstehen und möchte diese mit dem Partname aktualisieren.

Kann mir jemand einen Tip geben, wie dies umgesetzt werden kann?

Vielen Dank!

------------------
WTL Engineering GmbH          
n.schulz@wtl-group.de
http://www.wtl-group.de

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

joehz
Moderator
Freiberuflicher Konstrukteur


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

Beiträge: 1057
Registriert: 25.11.2006

Win7 Pro 64 + Ubuntu + Irix6.5.20
Dell Precision M6600 i7-2960XM 2.7GHz 16GB
NVidia Quadro M5010
Catia V5R19
VB6Pro.SP6/VBA 6.5.1053

erstellt am: 17. Mrz. 2016 17:39    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 rembit 10 Unities + Antwort hilfreich

Hi Norman,
anstatt
Code:

myproduct2.Nomenclature = ""&Ausgabe&""
bzw:
currentprod.Nomenclature = ""&Ausgabe&""


probier mal
Code:

myproduct2.Nomenclature = Ausgabe
bzw.
currentprod.Nomenclature = Ausgabe


Hope it helps,
Joe

------------------
Inoffizielle Catia Hilfeseite

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

Norman Schulz
Mitglied
Konstrukteur Catia V4/V5


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

Beiträge: 300
Registriert: 18.03.2002

V5R19SP9 // V5R20SP7 //V5R24SP5
Lizenz MD2
Lenovo ThinkPad W540
WIN 7 64bit 16GB
Intel i7-4800MQ 2.7GHz

erstellt am: 18. Mrz. 2016 03:49    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 rembit 10 Unities + Antwort hilfreich

Hallo Joe,

danke für die Rückmeldung.

Leider macht es keinen unterschied.
Es läuft zwar durch, aber ohne die Einträge zu ändern.

Was mich zudem wundert ist, dass ich obwohl als Language="VBSCRIPT" im Header steht, ich es als "CATScript" erzeugen musste.
Ansonsten gibt es eine Fehlermeldung. 

Gruß Norman

------------------
WTL Engineering GmbH          
n.schulz@wtl-group.de
http://www.wtl-group.de

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

Norman Schulz
Mitglied
Konstrukteur Catia V4/V5


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

Beiträge: 300
Registriert: 18.03.2002

V5R19SP9 // V5R20SP7 //V5R24SP5
Lizenz MD2
Lenovo ThinkPad W540
WIN 7 64bit 16GB
Intel i7-4800MQ 2.7GHz

erstellt am: 18. Mrz. 2016 04:25    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 rembit 10 Unities + Antwort hilfreich

Habe es nochmal an einer neu erzeugten Produktstruktur und an Vorlagen von einem anderen Kunden getestet.

Hier funktioniert es.

Scheint, woran auch immer, an speziellen Vorlagen zu liegen.

Da es bei dem einen Kunden funktioniert reicht mir das soweit erst mal.

Trotzdem danke für die Hilfestellung!

------------------
WTL Engineering GmbH          
n.schulz@wtl-group.de
http://www.wtl-group.de

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