Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Doppelte Namen im Assembly Design automatisch ändern

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
  
3DVisualisierung für die Fertigungsindustrie
Autor Thema:  Doppelte Namen im Assembly Design automatisch ändern (250 / mal gelesen)
83SchuWa
Mitglied
Methodenplaner - Konstrukteur

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

Beiträge: 3
Registriert: 21.03.2024

erstellt am: 21. Mrz. 2024 08:28    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 zusammen,

zur Zeit habe ich einige WKZ von externen Lieferanten, die wohl nicht im Catia konstruiert wurden und "nur" umgewandelt wurden...
Leider gibt es viele umlaute im Namen, die ich aber mit einem "Search and Replace" Makro beheben konnte.

Es gibt aber zusätzlich viele Namen die mehrfach vergeben sind.
Gibt es da eine Möglichkeit einen "Zähler" einzubauen?
So das die Parts einfach "gezählt" werden und das im Namen dazu kommt?

Wäre super wenn ihr mir helfen könntet....

------------------
###83SchuWa###

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

Lionel Hutz
Mitglied



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

Beiträge: 423
Registriert: 26.03.2014

CATIA V5 R26

erstellt am: 21. Mrz. 2024 15: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 Nur für 83SchuWa 10 Unities + Antwort hilfreich

Ja, die Möglichkeit gibt es.
Code:
i=0
For Each oProduct in oPProductsToRename
    i = 1+1
    oProduct.PartNumber= oProduct.PartNumber & i
Next

Welche Products möchtest du denn umbenennen?
Wie findet dein Makro sie?

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

83SchuWa
Mitglied
Methodenplaner - Konstrukteur

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

Beiträge: 3
Registriert: 21.03.2024

erstellt am: 22. Mrz. 2024 06: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

Super Danke.
Werde es gleich mal probieren....

Code:
'Product: Macro replaces strings in Instance name / Part: Macro is searching for string and replaces it

Sub CATMain()
on error resume next
  Set actProd = CATIA.ActiveDocument.Product
  DName = CATIA.ActiveDocument.FullName
  origstr = Inputbox ("Insert string to replace", "Search and Replace (old string)")
  If origstr <> "" then
  Fehler = 0
  else
  Fehler = 1
  msgbox ("Please enter valid string and try again!")
  Exit Sub
  End If
  newstr = Inputbox ("Insert new string", "Search and Replace (new string)")
 
If Fehler = 0 then 
  If InStr(DName, "CATProduct") Then
traverse actProd, origstr, newstr
else
If InStr(DName, "CATDrawing") Then
msgbox ("In Drawing Workbench only names in tree will be replaced!"&Chr(10)& "Text inside views can be replaced by edit --> replace!")
End If
SearchCatPart origstr, newstr
End If
End IF

End Sub

'*******************************************************************************************************

Sub traverse(Prod, origstr, newstr)

  set refp = Prod.ReferenceProduct
 
  if instr(refp.Name, origstr) then
    newpname = Replace(refp.Name, origstr, newstr)   
    on error resume next
    refp.Name = newpname
    fehler=Err.Number
    On Error Goto 0
    If fehler <> 0 then
    Box = MsgBox("file:" + Chr(10) + (refp.Name) + Chr(10) + "is causing the error!" + Chr(10) + "special characters in name?" + Chr(10) + "please correct first!", vbInformation, "error!!!")
    Exit Sub
    end if
  end if
 
  if instr(refp.PartNumber, origstr) then
    newpnum = Replace(refp.PartNumber, origstr, newstr)
    refp.PartNumber = newpnum
  end if
 
  Set prods = Prod.Products
  pc = prods.Count
 
  If pc > 0 then
    For i = 1 to pc
      traverse prods.Item(i), origstr, newstr
    Next
  End If
 
 
End Sub

'*******************************************************************************************************

Sub SearchCatPart(origstr, newstr)

Set activePart = CATIA.ActiveDocument
Set selection1 = activePart.Selection
selection1.Clear
selection1.Search "Name=*"&(origstr)&"*,all"

For n=1 to selection1.count
set selection2 = selection1.Item(n).value
selection2.name = replace(selection2.name, origstr, newstr)
Next

selection1.Clear
End Sub

'*******************************************************************************************************

Sub SearchCatDrawing(origstr, newstr)

Set activePart = CATIA.ActiveDocument
Set selection1 = activePart.Selection
selection1.Clear
selection1.Search "CATDrwSearch.DrwText.TextString='"&origstr&"',all"

For n=1 to selection1.count
set selection2 = selection1.Item(n).value.text
selection2 = replace(selection2, origstr, newstr)
Next

selection1.Clear
End Sub



###83SchuWa###

[Diese Nachricht wurde von 83SchuWa am 22. Mrz. 2024 editiert.]

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: 11927
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 22. Mrz. 2024 07:53    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 83SchuWa 10 Unities + Antwort hilfreich

Servus

Was möchtest du alles umbenennen? Alle Feature (Bodies, GeoStes, Geometrie, ...)?
Ist der "Zähler" der Feature davor nicht eindeutig?

Gruß
Bernd

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

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

83SchuWa
Mitglied
Methodenplaner - Konstrukteur

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

Beiträge: 3
Registriert: 21.03.2024

erstellt am: 22. Mrz. 2024 08: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

Moin,
Eigentlich nur die Parts.
Meist sind es ja "Dumme" Konstruktionen...
Bei einer in Catia erstellten ist es ja nicht möglich Bauteile gleich zu benennen.

------------------
###83SchuWa###

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: 11927
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 22. Mrz. 2024 09:00    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 83SchuWa 10 Unities + Antwort hilfreich

Servus

Ich würde wohl erst die Namen der verbauten Parts und Products (PartNumber) korrigieren und dann die Instanzname anpassen (siehe zB inoffizielle Catia Hilfeseite)

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