Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Problem mit Makro zur Umbenennung

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:  Problem mit Makro zur Umbenennung (3365 mal gelesen)
PukyRider
Mitglied
Student, Maschinenbau


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

Beiträge: 31
Registriert: 19.04.2013

erstellt am: 24. Apr. 2013 11:24    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

Guten Tag CAD-Gemeinde,

das ist mein erster Post hier im Forum, deswegen stelle ich mich kurz vor.
Ich bin Maschinenbaustudent und 22 Jahre alt.
Den Umgang mit Catia v5 habe ich im Studium angerissen und als Werkstudent vertieft.

Zu meinem Problem:
Ich habe hier im Forum, was mich schon oft weitergebracht hat (vielen Dank dafür), ein großartiges Makro gefunden. Leider finde ich den Post nicht mehr und kann desswegen den Urheber nicht nennen.

Das Makro nimmt den Dateinamen und ersetzt die Partnumber und den Instancename, mit der entsprechenden Aufzählung bei mehrfachem vorkommen.

Zitat:

SUB CATMain()
DIM acDoc
DIM acProd
DIM tmpString
DIM FileName
DIM  FileSeparator
FileSeparator = CATIA.FileSystem. FileSeparator

SET acDoc = CATIA.ActiveDocument
SET acProd = acDoc.Product

acProd.ApplyWorkMode  DESIGN_MODE

FOR EACH oDoc IN CATIA.Documents
  tmp = SPLIT(oDoc.FullName, FileSeparator)
  tmpString = tmp(UBOUND(tmp))
  tmp = SPLIT(tmpString,".")
  FileName = tmp(0)
  oDoc.Product.PartNumber = FileName
NEXT
InstanceName acProd
WalkThroughTree acProd
END SUB
'-------------------------------------

'-------------------------------------
SUB WalkThroughTree(oParent)
DIM iProduct
DIM oChild
FOR iProduct = 1 TO oParent.Products.Count
  SET oChild = oParent.Products.Item(iProduct)
  InstanceName oChild.ReferenceProduct
  WalkThroughTree oChild.ReferenceProduct
NEXT
END SUB
'-------------------------------------

'-------------------------------------
SUB InstanceName (oParent)
Set oDict = CreateObject("Scripting.Dictionary")
ON ERROR RESUME NEXT
DIM iProduct
DIM oItemToRename
DIM ItemPartNumber
FOR EACH oItemToRename IN oParent.Products
  ItemPartNumber = oItemToRename.PartNumber
  If oDict.Exists(ItemPartNumber) Then
  oDict.Item(ItemPartNumber) =oDict.Item(ItemPartNumber) +1
  Else
  oDict.Add ItemPartNumber,  1
  End If
  oItemToRename.Name = ItemPartNumber & "--tmpStringToStopERRORS" & oDict.Item(ItemPartNumber)
NEXT
oDict.RemoveAll

FOR EACH oItemToRename IN oParent.Products
  ItemPartNumber = oItemToRename.PartNumber
  If oDict.Exists(ItemPartNumber) Then
  oDict.Item(ItemPartNumber) =oDict.Item(ItemPartNumber) +1
  Else
  oDict.Add ItemPartNumber,  1
  End If
  oItemToRename.Name = ItemPartNumber & "." & oDict.Item(ItemPartNumber)
NEXT
oDict.RemoveAll
END SUB


Es klappt eigentlich Fehlerfrei, außer in einem Part wurde etwas mit dem Programm Type3 gemacht. Dann kommt die Fehlermeldung: Das Objekt unterstützt diese Eigenschaft oder Methode nicht.:’o.Doc.Product'
Line: 22
Column: 2
(Im Makro fett)
Ich hoffe ihr könnt mir weiter helfen, da ich Makros leider nicht gut kann.

Mit freundlichen Grüßen

PukyRider

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

CATIA V5R19

erstellt am: 24. Apr. 2013 12:35    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 PukyRider 10 Unities + Antwort hilfreich

Servus
Ich welchem Format liegt das Teil (aus Type3) vor? (Dateiendung)
ggf kann könnte man einfach über Abfrage eine den Typ des Dokuments bestimmen: (ungetestet)
Code:
FOR EACH oDoc IN CATIA.Documents
  if TypeName(oDoc) = ("PartDocument" or "ProductDocument") then
    tmp = SPLIT(oDoc.FullName, FileSeparator)
    tmpString = tmp(UBOUND(tmp))
    tmp = SPLIT(tmpString,".")
    FileName = tmp(0)
    oDoc.Product.PartNumber = FileName
  end if
NEXT
gruß
Bernd

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

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

RSchulz
Moderator²
Head of CAD, Content & Collaboration / IT-Manager



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

Beiträge: 5541
Registriert: 12.04.2007

@Work
Lenovo P510
Xeon E5-1630v4
64GB DDR4
Quadro P2000
256GB PCIe SSD
512GB SSD
SmarTeam V5-6 R2016 Sp04
CATIA V5-6 R2016 Sp05
E3.Series V2019
Altium Designer/Concord 19
Win 10 Pro x64

erstellt am: 24. Apr. 2013 12:38    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 PukyRider 10 Unities + Antwort hilfreich

Hallo und Herzlich willkommen im Forum,

ich gehe nicht davon aus, dass das Part selbst das Problem ist, sondern die geladenen Dokumente.

Das Makro ist eigentlich "nicht" sauber bzw. zu Ende programmiert. Wenn du auf CATIA.Documents gehst, musst du noch eine Abfrage der Dokumententypen reinbringen. Es gibt nämlich durchaus Dateien die geladen sind, die garkein CATIA-Dokument darstellen, sondern eine Umgebung, Konfiguration oder ähnliches. Genau das passiert AFAIK nämlich auch bei Type3. Diese haben aber garnicht die Eigenschaft .Partnumber und können daher nicht derart bearbeitet werden. Hast du mal im debugger geschaut, was in "Filename" drin steht?

------------------
MFG
Rick Schulz

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

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

PukyRider
Mitglied
Student, Maschinenbau


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

Beiträge: 31
Registriert: 19.04.2013

erstellt am: 24. Apr. 2013 14: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

Danke für die schnellen Antworten.
@bgrittmann
Zitat:
Servus
Ich welchem Format liegt das Teil (aus Type3) vor? (Dateiendung)
ggf kann könnte man einfach über Abfrage eine den Typ des Dokuments bestimmen: (ungetestet)
Code:
--------------------------------------------------------------------------------
FOR EACH oDoc IN CATIA.Documents
  if TypeName(oDoc) = ("PartDocument" or "ProductDocument") then
    tmp = SPLIT(oDoc.FullName, FileSeparator)
    tmpString = tmp(UBOUND(tmp))
    tmp = SPLIT(tmpString,".")
    FileName = tmp(0)
    oDoc.Product.PartNumber = FileName
  end if
NEXT
--------------------------------------------------------------------------------

gruß
Bernd


Die Ergänzung resultiert leider wieder in einer Fehlermeldung:
Typ unverträglich: ’[string: “PartDocument“]“
Die Type3 Elemente sind per Geometrical Set eingefügt, also keine gespeicherten Dateien und keine Endungen.


@RSchulz

Zitat:
Hallo und Herzlich willkommen im Forum,
ich gehe nicht davon aus, dass das Part selbst das Problem ist, sondern die geladenen Dokumente.

Das Makro ist eigentlich "nicht" sauber bzw. zu Ende programmiert. Wenn du auf CATIA.Documents gehst, musst du noch eine Abfrage der Dokumententypen reinbringen. Es gibt nämlich durchaus Dateien die geladen sind, die garkein CATIA-Dokument darstellen, sondern eine Umgebung, Konfiguration oder ähnliches. Genau das passiert AFAIK nämlich auch bei Type3. Diese haben aber garnicht die Eigenschaft .Partnumber und können daher nicht derart bearbeitet werden. Hast du mal im debugger geschaut, was in "Filename" drin steht?

------------------
MFG
Rick Schulz


Das mit dem geladenen Dokument habe ich mir auch schon gedacht, allerdings wüsste ich nicht wie ich so eine Abfrage schreiben sollte.
Und was meinst du mit dem Filename im Debugger?

lg. Tim

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

RSchulz
Moderator²
Head of CAD, Content & Collaboration / IT-Manager



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

Beiträge: 5541
Registriert: 12.04.2007

@Work
Lenovo P510
Xeon E5-1630v4
64GB DDR4
Quadro P2000
256GB PCIe SSD
512GB SSD
SmarTeam V5-6 R2016 Sp04
CATIA V5-6 R2016 Sp05
E3.Series V2019
Altium Designer/Concord 19
Win 10 Pro x64

erstellt am: 24. Apr. 2013 14: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 PukyRider 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von PukyRider:
Das mit dem geladenen Dokument habe ich mir auch schon gedacht, allerdings wüsste ich nicht wie ich so eine Abfrage schreiben sollte.
Und was meinst du mit dem Filename im Debugger?

FileName ist die Variable, in dem der Name des Dokumentes steht bzw. reingeschrieben wird und im Debugger kann man Haltepunkte setzen und direkt auslesen, was in dieser Variable steht. Nur so kannst du sehen, ob es wirklich das Part ist, was Probleme macht oder evtl. eine ganz andere Datei, die er versucht zu verarbeiten.

In den Debugger kommst du über Tools > Makros > Visual Basic Editor... bzw. ist die Programmieroberfläche automatisch der Debugger.

------------------
MFG
Rick Schulz

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

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

PukyRider
Mitglied
Student, Maschinenbau


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

Beiträge: 31
Registriert: 19.04.2013

erstellt am: 24. Apr. 2013 15: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

Leider ist das in der Umgebung nicht richtig Installiert, bekomme immer wieder die gleiche Fehlermeldung beim Versuch eine neue Libary zu erstellen.
PS: Ich weiß das es am Type3 leigt, da es Funktioniert, wenn ich die Elemente lösche.

Muss nochmal Editieren:
Es klappt, vielen Dank an euch beide.
Im Endefekt, habe ich bgrittmann's Zeilen ersetzt und "Part.Document" weg gelassen, so sollte ja die Selektierung trotzdem funtkionieren.
Ich weiß nicht ob jetzt wo anders Fehlermeldungen auftauchen, aber momentan läuft es!

MFG.

Tim


[Diese Nachricht wurde von PukyRider am 24. Apr. 2013 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: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 24. Apr. 2013 16:05    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 PukyRider 10 Unities + Antwort hilfreich

Servus
Dann ändere mal die Zeile in:
Code:
If TypeName(oDoc) = "PartDocument" Or TypeName(oDoc) = "ProductDocument" Then
gruß
Bernd

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

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

PukyRider
Mitglied
Student, Maschinenbau


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

Beiträge: 31
Registriert: 19.04.2013

erstellt am: 24. Apr. 2013 16:14    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

So Funktioniert es auch.
Einfach super, Danke

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

DasDon
Mitglied
Konstruktuer


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

Beiträge: 169
Registriert: 25.07.2011

R18 SP2. WIN

erstellt am: 25. Apr. 2013 16:11    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 PukyRider 10 Unities + Antwort hilfreich

Moin moin,

danke erstmals für:

Zitat:
ein großartiges Makro gefunden

Das Makro habe ich geschrieben/gepostet. Das war jedoch vor über einem Jahr und da war ich noch nicht so gut. Hoffentlich würde mir die schwachstelle heute auffallen 
Ich habe es im orginal post gerade korrigiet. danke für den hinweis.

gruß,
Dean

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

aurotaja
Mitglied
Modellbauer / Konstrukteur

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

Beiträge: 8
Registriert: 29.07.2005

Catia V5R19 SP9 HF89

erstellt am: 24. Mai. 2013 14:09    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 PukyRider 10 Unities + Antwort hilfreich

Hallo PukyRider,

kann es sein das ihr für Type3 keine Licence habt?

Soviel ich weiß läuft bei integrierten Type3 Elementen ohne Licence nicht mal ein normales Update
in V5 durch ohne Fehlermeldung.

gruß
Robert

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

K.Siebert
Mitglied
Tech Zeichner


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

Beiträge: 415
Registriert: 19.05.2007

Win XP
Catia V5 R19
Catia V5 R24

erstellt am: 24. Mai. 2013 23: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 PukyRider 10 Unities + Antwort hilfreich

Hallo,
nur ein kleiner Hinweis
ich weiß jetzt nicht ob man den Split auf „.CAT“ erweitern kann.

Weil in einer Struktur wo ein Punkt vorkommt funktioniert dieses nicht, z.B. in einer BMW Struktur

so könnte es auch aussehen:

Code:
if TypeName(oDoc) = ("PartDocument") then
FileName  = Left(oDoc.Name, Len("") -7 )
enf if

if TypeName(oDoc) =  ("ProductDocument")  then
FileName  = Left(oDoc.Name, Len("") -10 )
enf if


Edit: Zwei Beiträge weiter unten der Überarbeitete Code, mit zwei Beispiel Link's

(Den Code habe ich nicht testen können)

------------------
Sei Schlau bleib Dumm !!?!!

[Diese Nachricht wurde von K.Siebert am 29. Mai. 2013 editiert.]

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

PukyRider
Mitglied
Student, Maschinenbau


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

Beiträge: 31
Registriert: 19.04.2013

erstellt am: 29. Mai. 2013 10: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

Danke für euer Interesse.

@ aurotaja: Die Type Lizenz haben wir, daran ist es nicht gescheitert.
Und bis jetzt funktioniert auch alles.

@ K.Siebert: Bis jetzt ist mir noch kein Fehler aufgetreten. Ich weiß aber auch nicht genau, was du mit dem Punkt meinst.
Wenn ich Zeit habe, werde ich das Makro "umbauen".

Du meinst den Punkt im Dateinamen und jetzt verstehe ich auch deine Ergänzung.
Ich werde es so bald als möglich testen.

Catia sagt, "sie" kennt den Befehl Left nicht, bzw. ungültiger Prozeduraufruf oder ungültiges Argument.

[Diese Nachricht wurde von PukyRider am 29. Mai. 2013 editiert.]

[Diese Nachricht wurde von PukyRider am 29. Mai. 2013 editiert.]

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

HoBLila
Mitglied
Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx


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

Beiträge: 1118
Registriert: 29.05.2008

DELL PRECISION T3500
Intel(R) Xeon(R) CPU W3540 @ 2.93GHz
12285 MB RAM
NVIDIA Quadro FX 1800
Microsoft Windows 7 Enterprise Service Pack 1
CATIA V5 R19 SP09 HF69
VB6.5
CAA RADE CDC

erstellt am: 29. Mai. 2013 16: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 PukyRider 10 Unities + Antwort hilfreich

Hallo PukyRider,

Left darf nicht negativ sein.
Bei Len("") soll sicher etwas rein und nur als Beispiel dienen. :-)

------------------
Mit freundlichen Grüßen,
Henry Schneider
alias Lila

Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren:
Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen,
die Natur versucht, immer bessere Idioten zu bauen

Xing

[Diese Nachricht wurde von HoBLila am 29. Mai. 2013 editiert.]

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

K.Siebert
Mitglied
Tech Zeichner


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

Beiträge: 415
Registriert: 19.05.2007

Win XP
Catia V5 R19
Catia V5 R24

erstellt am: 30. Mai. 2013 00: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 PukyRider 10 Unities + Antwort hilfreich

Hallo,

Beip. von Word
  Zeichnung als PDF Speichern

Zahl eins erhöht um den Punkt bei ".CAT.." noch mit wegzunehmen >Len(oDoc.Name) -8 )<

Code:
if TypeName(oDoc) = ("PartDocument") then
FileName  = Left(oDoc.Name, Len(oDoc.Name) -8 )
enf if

if TypeName(oDoc) =  ("ProductDocument")  then
FileName  = Left(oDoc.Name, Len(oDoc.Name) -11 )
enf if


Name der Datei = xxx.Name
Pfad zur Datei = xxx.Path
Pfad & Name    = xxx.FullName
Part Name (in Catia) = xxx.PartNumber

xxx = Platzhalter je nachdem von wo man auf diese Information zugreifen möchte.

------------------
Sei Schlau bleib Dumm !!?!!

[Diese Nachricht wurde von K.Siebert am 30. Mai. 2013 editiert.]

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

PukyRider
Mitglied
Student, Maschinenbau


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

Beiträge: 31
Registriert: 19.04.2013

erstellt am: 05. Jun. 2013 14:59    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

Danke für eure Antworten.
Konnte leider erst Heute die Vorschläge testen.
Kurz gesagt es klappt.
Langfassung: Es hat mich fast den ganzen Tag gekostet, bis es richtig Funktioniert hat. Musste viel über try and error versuchen.
Aber schlussendlich hat es dann doch funktioniert. Mein Problem war, Iih musste erst herausfinden wo genau die Zeilen von K.Siebert (danke nochmal) hingehören. Dann noch ein paar Extras hier und da und es war vollbracht.
In diesem Sinne,

Danke und einen schönen Tag noch.

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

PukyRider
Mitglied
Student, Maschinenbau


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

Beiträge: 31
Registriert: 19.04.2013

System:
Intel Xeon E5-1620 3,5GHz
16GB DDR3
Nvidia Quadro K220
256gb SSD
Kein Excel
Catia R19, R22 und R24(BMW, Porsche, Ford, VW)
Nx 10 Daimler

erstellt am: 16. Aug. 2013 15: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

Guten Tag
ich habe noch einen kleinen Nachtrag/Bitte zu diesem Makro.
Es funktioniert einfach wunderbar, allerdings ändert es alle Parts und Products, auch wenn diese schon die passenden Namen besitzen.
Ist es möglich das Makro so zu verändern, dass wirklich nur die "modified" werden, wo der Name geändert werden muss?

------------------
Vielen Dank für Ihr Interesse!

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

DasDon
Mitglied
Konstruktuer


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

Beiträge: 169
Registriert: 25.07.2011

R18 SP2. WIN

erstellt am: 26. Aug. 2013 11:15    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 PukyRider 10 Unities + Antwort hilfreich

Moin moin,

das müsste doch relativ einfach sein, oder?
Die Logik hast du schon in deine Frage.

Einfach die Umbennungvorgang mit der Abfrage ersetzen. Da du dein Code umgeschrieben hast, weiß ich nicht wo dein Umbennung nun statt findet, aber von org Post würde es hier passieren:

aus...
oDoc.Product.PartNumber = FileName

...mache ...

If oDoc.Product.PartNumber <> FileName then oDoc.Product.PartNumber = FileName

daraus.

Sprich wenn PartNumber nicht gleich DateiName dann PartNumber = DateiName.

Gruß,

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

PukyRider
Mitglied
Student, Maschinenbau


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

Beiträge: 31
Registriert: 19.04.2013

erstellt am: 26. Aug. 2013 11:41    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

Vielen dank für die Hilfe,
werde es Testen sobald ich Zeit habe.
Aber erfahrungsgemäß sind deine Lösungen richtig 

mfg.

Tim

------------------
Vielen Dank für Ihr Interesse!

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

PukyRider
Mitglied
Student, Maschinenbau


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

Beiträge: 31
Registriert: 19.04.2013

System:
Intel Xeon E5-1620 3,5GHz
16GB DDR3
Nvidia Quadro K220
256gb SSD
Kein Excel
Catia R19, R22 und R24(BMW, Porsche, Ford, VW)
Nx 10 Daimler

erstellt am: 06. Sep. 2013 08:37    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

Vielen dank, deine Lösung ist wie immer Gold wert.
Hat super geklappt.    

------------------
Vielen Dank für Ihr Interesse!

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