Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Syntax aus Speichernamen uebernehmen?

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:  Syntax aus Speichernamen uebernehmen? (457 mal gelesen)
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: 20. Aug. 2009 06:21    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!
Vielleicht kann mir einer von Euch helfen.
Ich moechte aus meinem Speichernamen bestimmte Bereiche fuer meine Part Paramter (Eigenschaften) abgreifen. Beispiel:
Meine Dateistruktur hat immer das Format 00000_00_001_.....
Die ersten 5 Stellen moechte ich mit einem gewissen Paramter verknuepfen und die 7+8, und 10+11+12.
Gibt es eine Moeglichkeit dies ohne grossen Aufwand zu realisieren?
Innerhalb des Parts kann ich ja mit ToString gewisse Werte abgreifen aber wie funktioniert dies in meinem Fall?

Vielen Dank fuer jedes Feedback.

Gruss 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

DanielFr.
Moderator
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 20. Aug. 2009 08:27    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 Norman Schulz 10 Unities + Antwort hilfreich

Hallo Norman,

naja da hast du mehrere Möglichkeiten. Die mächtigste und komplexeste ist definitiv dies mit regulären Ausdrücken zu machen. Dazu müsstest du die "Scripting Runtime DLL" einbinden (nur ein CATvba möglich). Hierbei hättest du die Möglichkeit auch auf einen variablen Dateinamen zu reagieren und den String exakt zu splitten. Die Scripting Runtime ist aber nicht die beste DLL-Datei. Sie bringt Rechner zum Absturz und ist nicht mal auf allen Rechnern installiert 

Du da aber einen fixen Dateinamen (also einen fixen String) hast lohnt sich der Aufwand nicht wirklich. Weitere Möglichkeiten sind das Stringsplitting mit "Split", "Mid", "Trim" etc. Dies sind alles VB Befehle (im System Namespace) die du aber auch in einem CATscript verwenden kannst.

Der Ablauf würde dann folgendermaßen aussehen.

1. Datei muss geöffnet sein
2. Makro ließt mit CATIA.ActiveDocument.Name den Dateinamen aus
3. Dieser Dateiname mit mit einem "Split"-Befehl an dem Separator "_" gesplittet
4. Das Ergebnis ist ein Array mit der Lenght 4

Das Array sieht nun folgendermaßen aus:

Item(0) = Der String aus den ersten 5 Stellen
Item(1) = Der String der Stellen 7 und 8
Item(2) = Der String der Stellen 10,11,12
Item(3) = Der Rest

Diese Itmes kannst du nun an deine Parameter übergeben.

Anmerkung:
M;Mit dem Befehl "MID" könntest du einen String nach gewissen Positionen zerlegen (z.B. wenn der Separator unterschiedlich sein kann). Der Befehl "Mid" baut sich folgendermaßen auf

Code:

Dim myString as String
Dim mySplit as String

myString= "00000_00_"
mySplit = MID(myString, 0, 5) 'Ergebnis sind die ersten 5 Stellen des Strings "myString"


Du siehst es gibt eine Menge Möglichkeiten einen String zu zerlegen. Hierzu findest du auch genügend Hilfe im Internet 

------------------
MFG Daniel

Systeminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)

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: 20. Aug. 2009 08: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

Hallo Daniel,

vielen Dank für die Rueckmeldung.
Ich werde mich mal daran versuchen.
Bei Erfolg gibt´s ne Rueckmeldung ;-)

Danke und Gruss

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

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