| |
| KISTERS 3DViewStation: Mit 3D-Montageanleitungen werden Produkte bei der Fertigung lebendig, eine Pressemitteilung
|
Autor
|
Thema: Automatisches umbennen des Speichernamens (3716 mal gelesen)
|
Klaus-Heinz Mitglied
Beiträge: 219 Registriert: 30.10.2009
|
erstellt am: 03. Mai. 2012 14:41 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen !! Gibt es die Möglichkeit das Catia den Exemplarnamen oder die Teilenummer als Speichernamen verwendet. Ich meine nicht bei einem neu aus, sondern bei einem schon vorhandenem Produkt/Part. So das,ich wenn ich Teile/ Exemplarnamen ändere nicht noch den Speichernamen ändern muss Habe schon mal was von einem Makro gelesen welches dies bewerkstelligt. Habe wirklich schon im Forum gesucht aber nicht das passende dazu gefunden. mit freundlichen Grüssen KH Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 12005 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 05. Mai. 2012 11:14 <-- editieren / zitieren --> Unities abgeben: Nur für Klaus-Heinz
Servus Grundsätzlich musst du "nur" mit einem Makro ein Produkt schrittweise durcharbeiten, ob der Dateiname dem Exemplarnamen entspricht. Dann falls erforderlich die Datei mit SaveAs neu abspeichern. Allerdings hat diese Methode mehrere Nachteile: - Was passiert mit der Zeichnung (muss diese auch umbenannt werden)? gibt es überhaupt eine Zeichnung dazu? - Wenn du ein Part mehrmals umbenennst müllst du dein Speicherverzeichnis mit alten Dateien zu diese mit der alten Benennung) Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Klaus-Heinz Mitglied
Beiträge: 219 Registriert: 30.10.2009
|
erstellt am: 07. Mai. 2012 09:08 <-- editieren / zitieren --> Unities abgeben:
Hallo Bernd !! Danke für deine Vorschläge.Ich werde wohl eine neu aus nachen und dann übernimmt er den Exemplarnamen/Teilenummer automatisch. Wenn dieser vorher gleich war setzt er meineswissens ein _1 hintendran. mit frendlichen Grüssen KH
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
K.Siebert Mitglied Tech Zeichner
Beiträge: 415 Registriert: 19.05.2007 Win XP Catia V5 R16 SP5 Hotfix 46 Catia V5 R19
|
erstellt am: 07. Mai. 2012 11:20 <-- editieren / zitieren --> Unities abgeben: Nur für Klaus-Heinz
Hallo, Hier ist das Skript was den Exenplarnamen anpasst dabei. Auch ein abgleich mit dem Dateiname sollte dabei sein, wobei der Partname an den Dateinamen angepasst wird.
------------------ Sei Schlau bleib Dumm !!?!! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Klaus-Heinz Mitglied
Beiträge: 219 Registriert: 30.10.2009
|
erstellt am: 07. Mai. 2012 13:26 <-- editieren / zitieren --> Unities abgeben:
|
Pant Mitglied
Beiträge: 16 Registriert: 09.10.2010 Catia V5 R19 SP9 Win 7 Sp1 Intel Xeon E5 32 GB Nvidia Quadro K5000
|
erstellt am: 27. Jun. 2019 11:06 <-- editieren / zitieren --> Unities abgeben: Nur für Klaus-Heinz
|
bgrittmann Moderator Konstrukteur
Beiträge: 12005 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 27. Jun. 2019 11:29 <-- editieren / zitieren --> Unities abgeben: Nur für Klaus-Heinz
Servus Ja das geht. Das könnte so aussehen (ungetestet!, Ersatz für 2_Punkt-5_Suche und Ersetze.CATScript:
Code: Sub AddPrefixToNameAndPartNumber(Prod, sPrefix) set refp = Prod.ReferenceProduct if left(refp.Name, Len(sPrefix) <> sPrefix then newpname = sPrefix & refp.Name refp.Name = newpname end if if left(refp.PartNumber, Len(sPrefix) <> sPrefix then newpname = sPrefix & refp.PartNumber refp.Name = newpname end if Set prods = Prod.Products pc = prods.Count If pc > 0 then For i = 1 to pc AddPrefixToNameAndPartNumber prods.Item(i), sPrefix next End If End SubSub CATMain() Set actProd = CATIA.ActiveDocument.Product sPrefix = Inputbox ("Eingeben welcher Präfix vor der Teilenummer ergänzt werden soll. ", "Präfix für Teilenummer") AddPrefixToNameAndPartNumber actProd, sPrefix End Sub
Viel Spaß beim nachvollziehen, testen und verbessern. Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Pant Mitglied
Beiträge: 16 Registriert: 09.10.2010 Catia V5 R19 SP9 Win 7 Sp1 Intel Xeon E5 32 GB Nvidia Quadro K5000
|
erstellt am: 27. Jun. 2019 11:42 <-- editieren / zitieren --> Unities abgeben: Nur für Klaus-Heinz
Hi, danke für die schnelle Hilfe! Er bringt leider einen Fehler: Quelle: Kompilierungsfehler in VBSkript Beschreibung `)`erwartet Anweisung: if left(refp.Name, Len(sPrefix) <> sPrefix then Linie:4 Spalte 45 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 12005 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 27. Jun. 2019 11:46 <-- editieren / zitieren --> Unities abgeben: Nur für Klaus-Heinz
|
Pant Mitglied
Beiträge: 16 Registriert: 09.10.2010 Catia V5 R19 SP9 Win 7 Sp1 Intel Xeon E5 32 GB Nvidia Quadro K5000
|
erstellt am: 27. Jun. 2019 12:48 <-- editieren / zitieren --> Unities abgeben: Nur für Klaus-Heinz
|
bgrittmann Moderator Konstrukteur
Beiträge: 12005 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 27. Jun. 2019 12:58 <-- editieren / zitieren --> Unities abgeben: Nur für Klaus-Heinz
Servus Werden die Products umbenannt? (im Baum, also nicht die Dateinamen) Hast du dir die Beschreibung zu den Makros durchgelesen und auch befolgt? Hast du verstanden was jedes der Makros bezwecken soll? Der Code hat noch einen Fehler bei der Teilenummer: Code: newpname = sPrefix & refp.PartNumber refp.PartNumber= newpname
Gruß Bernd PS: Ein Fehlerbeschreibung "es passiert nix" ist nicht hilfreich ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Pant Mitglied
Beiträge: 16 Registriert: 09.10.2010 Catia V5 R19 SP9 Win 7 Sp1 Intel Xeon E5 32 GB Nvidia Quadro K5000
|
erstellt am: 27. Jun. 2019 13:15 <-- editieren / zitieren --> Unities abgeben: Nur für Klaus-Heinz
Jetzt funktioniert es, danke! Die anderen Makros funktionieren alle. Entschuldigung, es kam das Feld mit der Anweisung welcher Präfix vor der Teilenummer eingegeben werden soll. Das habe ich bestätigt, aber es wurde nicht gemacht. Lag dann wohl an dem Name anstatt PartNumber. hier das editierte funktionierende Skript: Code: Sub AddPrefixToNameAndPartNumber(Prod, sPrefix) set refp = Prod.ReferenceProduct if left(refp.Name, Len(sPrefix)) <> sPrefix then newpname = sPrefix & refp.Name refp.Name = newpname end if if left(refp.PartNumber, Len(sPrefix)) <> sPrefix then newpname = sPrefix & refp.PartNumber refp.PartNumber = newpname end if Set prods = Prod.Products pc = prods.Count If pc > 0 then For i = 1 to pc AddPrefixToNameAndPartNumber prods.Item(i), sPrefixnext End If End Sub Sub CATMain() Set actProd = CATIA.ActiveDocument.Product sPrefix = Inputbox ("Eingeben welcher Präfix vor der Teilenummer ergänzt werden soll. ", "Präfix für Teilenummer") AddPrefixToNameAndPartNumber actProd, sPrefix
End Sub
[Diese Nachricht wurde von Pant am 27. Jun. 2019 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |